Build 3103 Changelog
Release date: 9 Feb 2016
"A second pattern has been added to the main context that matches a double quote character (note that ā"ā is used for this, as a standalone quote would be a YAML syntax error), and pushes a new context, string, onto the context stack."
https://www.sublimetext.com/docs/3/syntax.html
This finally fixes Sublimeās built-in destruction of HTML-CSS ācodeā formatting for style-declarations (compare PY āscriptā). CSS-HTML Package producers may still have to update their products to match Sublimeās sudden correction of prior aberrant focus. Not sure about that because I am not a programmer in any sense, just a web coder.
Natively, Sublime 3103 seems to auto-insert into Style declaration correctly, but still not completely. Prior edits of Sublime-keymap that fixed Sublime coding mess (for a year and a half, up to late Sep-2016, when all effort failed) is now partly restored to Sublimeās coder heydays, early 2014. Actually, Sublime is usable again - as usual, addictively so. Almost!
Now, no intention here to lambast what was wasted elsewhere. Are we finally ready to adapt? If in doubt, read (contributor) Patrick Griffiths notes on chapter 3 of XHTML and CSS (if you can find them). Letās look at a looming (ignored) problem that is going to make a mess again. Sublime now leaves the user to insert space-character after selector (good idea, since we could then insert comma, attribute bridging, and so on - then after user inserts opening curly bracket, Sublime correctly inserts a space, drops in the cursor where it blinks, followed by another space, and then closing curly bracket. Coder can begin entering the first style declaration.
Unfortunately, when user closes declaration with a semicolon; there is no auto-insertion of a space. We all know where this omission comes from. Suck it in, people. Space omission occurs because programmers are confusing W3C confirmed, formalized and established space insertion with an a-standard adaptation of LTR Hierarchy āaccepted temporarilyā by W3C as CSS2 was formalized. In spite of that temp occlusion of sanity (that spawned an entire generation of witless coders who must be destined to be Attribute-dummies) ALWAYS follow the semicolon with a space. What went wrong? How did Sublime lose its space-footing? Some cryptic programmer who must have been a newbie daddy at home decided it would be easier to understand words if each word (CSS LOGICAL STATEMENT) was placed on its own line, out-of-context with logical LTR data flow. Honestly, Sublime Text, there are no āinfantileā CSS coders out there any more. We all get it about a-word-has-meaning. No, Patrick is not to blame either. Someone else standardized the LTR hi-jack.
So the only problem with Sublime for coders now is mishandling of space-character after auto-insert and/or auto-recognition of semi-colon. Spaces would be very nice after every CSS and HTML-CSS semicolon! Perhaps Sublimeās producers think it should be up to CSS and HTML Package producers, to accommodate standards using the new Sublime 3103 foundation? Not good, and if you care to read on, you will know exactly why. No happiness pill here.
When Sublime updated my Mac to Sublime 3103, we had already installed a raft of favorite CODE, HTML, CSS packages, as followsā¦
Can I Use | Color Scheme - Thunderstorm | CSS Format | CSS3 | Google Search | Hammer Color Scheme | HTML5 | HTMLAttributes | HTMLBeautify | Package Control | Perfect Code | Placeholders | PlainNotes | SideBarEnhancements | SideBarFolders | View In Browser
Influence (s) of Sublime update on existing App and El Capitan 10.11.3 unknown - operation-cost constraints preclude Sublime removal prior to launching inline in situ Sublime 3103 update from the sanctioned App update popup on the Mac Desktop Display.
**In any case, Sublime is no longer totally fouling attempts to enter clean code. As stated above, a somewhat improvement did occur with 3103. This is how Sublime auto adjusts coding now, for any known property.
IMPORTANT: do not assume this marginal Sublime mess-for-coders is compatible with standard code interpretation by the browser. Sublime enforced code is NOT compatible code when performing most advanced CSS-HTML styling (especially for attribute handling). Failure to insert spacing is often a literal translate to display, which most often erases or sometimes distorts code output. Sublime must āsenseā code problems, since occasionally as it attempts to read advanced Attribute coding it will trash pages full of open files, rendering code unreadable. Always work with backups! But thsi is not a huge problem, in Sublimeās programming. Just one (1) feature is missing, a space.
Restraining obvious fury, here is our native Sublime effort:
selector{ property: value;property: value; } <div style="property: value;property: value;">
However, this is what CSS stylesheet code compatible with standards should look like:
selector { property: value; property: value; }
<div style="property: value; property: value;">
Semi-colon spacing and curly bracket-spacing are obviously difficult for the Sublime developers to include. Anyone who manages to get their attention in GitHub will be insulted in writing and have their post swatted into the Trash can. Though its typically greedy development team is more interested in grabbing $100 for their half-what effort to date, sadly if coding is your need, Sublime remains for three years running a very risky investment.
For any Sublime developer (s) who can suck in their pride and find time and energy to fix whatās wrong, solution involves a simple correction of an historical abomination that was inflicted on the coding community by none other than one of the W3C family members, Adobe (or perhaps, one of Adobeās notable programmers who deftly pushed things around to satisfy some sadistic urge, whatever- you senior programmers will nkow exactly what and who I refer to)⦠Some clux came up with the idea that (for āinfantileā CSS coders who āmust be lostā when CSS arrived to beef-up HTML for the masses who truly were having Attribute troubles) there was a need to ākonckā CSS out of the usual left-to-right hierarchy and line up each selector separately along the left margin. Now, anyone who prefers compressed code or writes ltr CSS intelligently, without āinfantileā line breaks, knows there is a reason the W3C standards stipulate that style selector and declaration format is issued the way that it is issued!
selector { property: value;
property: value; }
`
Programmers building Sublime ace only one tricky bit. Inline space has to be automatically added everywhere following the semicolon, for both CSS and HTML. However, the closing double quote that closes the inline style tag (or inline style statement) has to initiate an auto backspace. Currently, there is only one problematic Attribute relationship where the inline style tag-statement conflicts with a proxy CSS Head or Stylesheet assembly, but that has retroactively been pushed by Microsoft early 2015 into the nth forever, so it is no longer an excuse to refuse code performance.
Until now, it has evidently been too much for the nuts and bolts of Sublime Text to observe code standards. Sublime is a scripting tool, not a coding tool. If the productās human component was honest, it would state on the Sublime home page, what the product is for, not what inherited stupefaction wished it was for. Yet⦠perhaps that long overdue admission is not what is required.
Keep in mind that it is by no fault of Sublime that teething W3C did itās āinfantileā upchuck all over the HTML-CSS population. They knew their āinfantileā solution was going to make a mess, and even stated so. The barfaholic who initiated that big boo-boo should be kept out of the resolution snapshot⦠and āsnapshotā is all that is required. Convert Sublime break-break-break dependency to Trash and give back to HTML-CSS languages the LTR default it so richly requires to code any web page correctly. Good luck (mom and dad).
Fyi, there was even a big argument in W3C about how to spell āKonk, konkā, so dictionary? Anyway, just clean up your HTML CSS, and no more useless GitHub referrals. Avoid W3C spelling like the plague.