SublimeText / PackageDev

Tools to ease the creation of snippets, syntax definitions, etc. for Sublime Text.
MIT License
436 stars 83 forks source link

Did the .tmLanguage stuff get removed from PackageDev? #173

Closed StoneCypher closed 6 years ago

StoneCypher commented 6 years ago

I went to go make a new language so that I could file it

All the .tmLanguage stuff seems to be gone. This is a problem: I need to support a bunch of web editors that only consume textmate grammars, and I can't seem to convert sublime syntax to textmate

Do I have to find a new route to write these highlighters? :(

FichteFoll commented 6 years ago

All .YAML-tmLanguage stuff is still available in the same places as previously (well, the file locations have changed, but Command Palette and Menu commands are still available). PackageDev never provided syntax highlighting for .tmLanguage directly, only for the converted YAML because nobody wants to edit Plist XML files by hand.

Do you want to create a new syntax definition or iterate on an existing one?

FichteFoll commented 6 years ago

Also, you cannot convert sublime-syntax to tmLanguage because they are not forwards compatible and sublime-syntax provides a superset of tmLanguage's capabilities.

StoneCypher commented 6 years ago

It's actually the menu commands I was looking for - specifically the ones that create a JSON tmLanguage, or the ones that compile an existing one to tmLanguage

Do you want to create a new syntax definition or iterate on an existing one?

Both, actually.

I want to iterate on my FSL highlighter, which is in JSON tmLanguage, which I no longer appear to be able to compile

I also want to be able to write a new tmLanguage because I need to load it into a half dozen editors, and none of those speak sublime syntax

If there's a non-menu way to get what I used to have, I would love some pointers

Thank you for the help

FichteFoll commented 6 years ago

The Command Palette (ctrl+p) has more entries since it's more organzied due to having fuzzy search. It includes three commands for creating a syntax definition for TextMate, including the JSON and YAML variants, and a command to convert a Plist file into YAML and prettifying it in the meantime. I intentionally removed some menu items to focus on the more frequently used commands and file types, since tmLanguages are deprecated by ST itself now.

I didn't willingly remove any functionality in that regard, so in case you're not able to, e.g., compile a JSON-tmLanguage that would either be a regression or user error. Maybe you could describe more specifically where something goes wrong and what exactly?

StoneCypher commented 6 years ago

Yeah, I think I just misunderstood that the removal from the menus meant it the functionality was gone. There's a good argument that this is user error.

I think I have a laptop at home with the old stuff that I can dig the names out of

since tmLanguages are deprecated by ST itself now.

ya i'm scared they're gonna get removed

the thing is, even if i write a sublime highlighter, if i want to support vs code, ace, atom, codemirror, brackets, textmate, the latex embedder, github, and some obscure inria stuff, I still end up needing to write a textmate highlighter

FichteFoll commented 6 years ago

Sure, I understand that the TextMate format is still widely used (by the tools you mentioned), which is why I didn't remove any support regarding them and don't plan to in the near future. I mean, some people (like you) are still using JSON transpilations of tmLanguage when YAML-tmLanguage has existed for years.

StoneCypher commented 6 years ago

ok cool

i guess this weekend i learn to edit sublime menus 😂

thanks for all your help here and over the years