I wasn't aware that this is an issue. It seems to me that the existing feature is 'text-based' folding rather than 'code-based'. I wouldn't notice as indentation very closely follows the code block structure in most of the code-bases I edit.
It could be useful to open a feature request for 'code-based' folding, if the existing 'text-based' one is considered to be working as intended. That way we're not fighting over a definition but rather showing demand for a new capability that everyone would agree is absent.
Editors like visual studio IDE properly fold code so that it results in a compact layout once it's folded. I would guess indentation-based folding could be made more compact and not take unnecessary lines.
Any plan on developing a database tool? I think it would be a great complement to Sublime Text and Sublime Merge.
I believe Sublime HQ could really bring something in this space, because there are some good existing ones but none are great. Sublime DB could be great :)
Part of the attention to detail we bring is from the fact that we use the tools we build daily. We don't really have a use for a database tool, so I honestly doubt it would be any good.
Well if you ever change your mind, mySQL workbench is the only SQL GUI I've ever liked, and I haven't seen anything good (not electron, not Java, etc.) for postgres.
Have you had any thoughts about how to improve the indentation engine ST uses to handle the common "switch"/"case" statement style? As I understand, it would mainly require a way to unindent 2 levels at once when typing the closing brace (or just getting it to match the open brace line/position) and for the first `case` to not unindent, just the later ones (which to be fair, may already be possible with some creative meta scoping and tmPreferences fun, though perhaps just not easy to maintain).
Pretty sure you're the best thing to happen to ST since Will joined the team :)
What's your test suite like? Whenever something is regressed in a dev build, do you try to cover it with tests? Or are the UI side of things not tested in an automated fashion?
What are the plans for matching VSCode's useful features, like the one whereby all syntaxes can inject themselves into Markdown fenced code blocks etc?
It'd be great to see some better SQL syntax highlighting support - I saw a community effort on the Packages repo aiming to address this. Will there be a way to switch "active" sql dialect? Or configure it per project?
> Pretty sure you're the best thing to happen to ST since Will joined the team :)
Thanks, that means a lot :)
> What's your test suite like? Whenever something is regressed in a dev build, do you try to cover it with tests? Or are the UI side of things not tested in an automated fashion?
The UI toolkit as a whole and platform integrations don't have tests, but the core parts like file encodings, data structures, syntax highlighting, etc. are pretty well tested using both integration, unit and manual fuzz tests. We also make heavy use of debug asserts and asan to catch bugs during development.
> like the one whereby all syntaxes can inject themselves into Markdown fenced code blocks etc?
I can't say when, but something like this is certainly on my radar. It seems like a clear incremental improvement on the existing syntax highlighting functionality.
> It'd be great to see some better SQL syntax highlighting support - I saw a community effort on the Packages repo aiming to address this. Will there be a way to switch "active" sql dialect? Or configure it per project?
This one is a lot more tricky as there are various tradeoffs to make. It's in my backlog of things that need to be discussed with other package repository contributors.
This is only possible for syntaxes which ship with ST. If you want to put a Markdown fenced code block for a third party syntax like Svelte, then it won't be highlighted as Svelte currently.
I'm a huge fan. I've used sublime pretty much since the beginning of my career (switched over after emacs wrecked my hands a few months in). I've switched over to Intellij for java dev because its built in handling of things like going to definitions (cmd+click on my machine) and being able to swipe back to previous locations in the code, as if I were in a browser. Are these features supported in sublime, and if not, are there plans to add them? These navigation features alone would have me back over to sublime, today.
Goto-definition is powered by an index using the syntax highlighting, you can right-click on a symbol or use f12. Going backwards to a previous location is done using the menu Goto > Jump Back.
The lsp typescript package is substantially slower when finding completions than vs code typescript. Even though they are running the same typescript server I imagine. Any ideas why?
In v4 right now the definitions from packages do not expand automatically, and for ruby/rails, if you type “def” and press Tab, it will select whatever Sublime thinks matches better the pattern def*, and to make function wrapper macro work, I have to just type “d”, then press Tab, it will highlight “def”, then I press Tab again, and only then the macro expands.
In v3 I can type “def”, hit Tab and it works right away.
Are you considering adding the option to change auto-compete behavior to what was in version 3?
It's working for me. There's a number of settings to configure how auto-complete works: make sure "auto_complete_include_snippets" and "auto_complete_include_snippets_when_typing" are enabled.
What I like most is being able to work on a project I'm passionate for with lots of freedom to make decisions. What I like least is most definitely dealing with the platform APIs.
My question is, how did you make it run exactly the same on all platforms (Windows, macOS, and Linux). No other cross-platform software works as seamless like this.
We have our own fully custom UI toolkit with a platform abstraction layer. Since we're the only users of this toolkit we have the flexibility to quickly make sweeping changes that can go all the way from the platform, through the toolkit and to the application code. We also generally make platform integration a priority - which you can see from about ¼ of the changelog being platform-specific fixes. This would probably make a good blogpost some day :)
We don't have any current plans to do built-in remote editing, especially not anything platform-specific. It's particularly difficult to get right - especially regarding security - and not one we'd likely ever use at Sublime HQ ourselves.
That's the only thing that stands between me and buying ST.