Sublime Forum

Sublime Text 3 vs the Others

#1

I am really liking the new updates in Sublime Text 3. Nice work team. My colleagues however keep telling me I need to get with a more modern editor like Visual Studio Code or Atom. Can anyone with experience tell me if I am missing anything sticking with Sublime? I did try Atom once and found it very slow.

Is development with Sublime active again? Are new plugins still being developed as many look like they have not had updated in a few years? Are new features being worked on to keep SAT3 up to date with the latest VSC and Atom options?

I am not really looking to promote any one product as every developer has the tools they prefer, but I am just trying to get some honest opinions for someone just getting into the world of text editors. I used to use an IDE like PHPStiorm and I found it was extremely heavy for my needs.

I am missing the integrated terminal however. We need this in Sublime!

Thanks in advance.

2 Likes

Sublime Text versus Visual Studio Code in 2019
#2

Is development with Sublime active again?

Yes

Are new plugins still being developed as many look like they have not had updated in a few years?

Certainly! LSP is new and exciting. Can’t help that some packages get stale, it happens with Atom and VS Code packages too, but the community here is very much alive and kicking.

Are new features being worked on to keep SAT3 up to date with the latest VSC and Atom options?

I don’t think it’s being approached as having to “keep up”, but new stuff is certainly coming. Two dev build just in the past week: Dev Build 3148

As for what you’re missing? Well, do you feel like you’re missing anything?

I find git integration in Atom and VS Code to be superficially more fancy, but GitGutter and Gitsavvy for ST are excellent and I doubt you’ll be missing features there. I switch to GitUp anyway to review commits. Atom in general has more fancy UI for some other things, but I found none of them to be really useful or of high enough quality. I don’t think Atom has anything else of any real value that isn’t covered by ST. VS Code has the debugger of course, never had a need for that. Last time I tried their build system integration was way behind ST’s.

I think you can get integrated terminals in both, and while I like the idea of that after a day or two I stop caring and just switch back to a separate terminal anyway.

The way I see it, Atom and VS Code try to integrate utilities into an IDE-like monolithic whole, whereas with Sublime Text you’d generally switch to a dedicated (best-in-class) application (eg. Terminal, SourceTree).

ST also hardly ever trades performance for features. It was already super fast before 3.0 and they decided to make it faster, and now faster still with 3148. Browser-based editors will never catch up to that.

8 Likes

#3

Thanks so much for the replay. I am so happy to see ST3 back up and going strong. The only features I would really like to see in Sublime that is not in the core is the integrated terminal and possibly a linter panel. I like how VSC has that bottom panel with the Problems and Terminal Views. Sublime Linter is great but it displays in that tiny status bar. If there is a way to make it bigger where it would remain displayed I would love to know. The Show Errors option is great but does not stay up continually. It would be great to have a bottom panel for these uses. I have been using a plugin called Terminal View which is very close for terminal integration, but a first party solution would be better. It is great for a screen real estate thing more than actual functions.

LSP looks amazing! I have not seen that before. How can I stay up to date with what is new and exciting coming to Sublime?

0 Likes

#4

I wouldn’t expect a terminal integration coming from the core devs, like I said integration of such features isn’t a focus, it doesn’t fit the philosophy.

LSP has a better implementation of an output panel that displays errors. Depending on your needs and the languages you work with it may already be a better fit than SublimeLinter. I expect language server implementations like that to supplant linters completely in the coming years. Anyway, it’s not that SublimeText doesn’t support panels like that, but SublimeLinter doesn’t use them to their fullest.

This forum, package control, and you can join the chat:

0 Likes

#5

Someone was working on a SL addon to show linter errors and warning in a panel, but later retracted it as they considered the LSP to be better.

For a terminal within the editor, there is the TerminalView package, which does not work on Windows however.

0 Likes

#6

Is there way to use the HTML and SCSS LSP packages with Sublime? I installed LSP but trying to figure out how to install the actual language servers now.

0 Likes

#7

No such language servers that I know of at this point.

0 Likes

#8

I found the Gulp plugin which does about 80% of my terminal needs. Thanks everyone.

0 Likes

#9

Can someone explain to me what a language server is and how it works?

0 Likes

#10

I would like to know more about this as well. I understand core concepts but how can it help me with HTML, SCSS, Twig which is what I code in mostly?

0 Likes

#11

http://langserver.org/

3 Likes

#12

I don’t think it’s going to be replacing CodeComplice anytime soon, just set it up for php and autocomplete is poor doesn’t always suggest and when it did it was giving me access to private and protected methods from outside the class.

I’m on the latest dev build and it was very laggy and sluggish when typing.

If anything it’s made me appreciate CodeComplice more.

0 Likes

#13

CodeComplice looks cool. I have just been using SublimeCodeIntel.

0 Likes

#14

Then your life has just changed for the better :slight_smile: This actually works for me, SublimeCodeIntel never did.

1 Like

#15

Some cool features Sublime Text 3 misses and should have that Atom has and developers of Sublime Text and of packages should learn:

  1. Snippets
    • Snippets of Atom are very easy and quick than those of Sublime Text.
    • You can group many CSS snippets in one CSS snippet, or then group many same snippets in one CSS, HTML, PHP file, etc at the same time. Different of Sublime Text, you can’t group, you have to create each snippet for each Sublime snippet file.
      For example and notice text.php, .text.html which are grouped, at the same time, by many same snippets:
  '.text.php, .text.html':
    'Image':
      'prefix': 'img'
      'body': '<img alt="" src="">'
    'Link':
      'prefix': 'link'
      'body': """<link rel="stylesheet" type="text/css" href="$1">"""
    'Script':
      'prefix': 'script'
      'body': """<script type="text/javascript" src="$1"></script>"""
    'Script 2':
      'prefix': 'script2'
      'body': """<script type="text/javascript">$1</script>"""
    'Inserir php echo':
      'prefix': 'php2'
      'body': '<?php echo $1 ?>'
    'Inserir rapidamente define':
      'prefix': 'def'
      'body': """define('$1', "$2");"""
  '.source.clp, .source.clips':
    'Autoria':
      'prefix': 'gus'
      'body': 'Gustavo Costa'
  1. Init and Keymap:
    • Imagine you want to select a word or a sentence and to insert or wrap quickly <p> </p> into a word or a sentence as if was a snippet without having to type.
      For example, in the file init:
atom.commands.add 'atom-text-editor',
  'custom:wrap-bold': ->
    editor = atom.workspace.getActiveTextEditor()
    for selection in editor.getSelections()
      textToWrap = selection.getText()
      selection.insertText("<b>#{textToWrap}</b>")
  'custom:wrap-italics': ->
    editor = atom.workspace.getActiveTextEditor()
    for selection in editor.getSelections()
      textToWrap = selection.getText()
      selection.insertText("<i>#{textToWrap}</i>")
  'custom:wrap-p': ->
    editor = atom.workspace.getActiveTextEditor()
    for selection in editor.getSelections()
      textToWrap = selection.getText()
      selection.insertText("<p>#{textToWrap}</p>")
  'custom:wrap-h1': ->
    editor = atom.workspace.getActiveTextEditor()
    for selection in editor.getSelections()
      textToWrap = selection.getText()
      selection.insertText("<h1>#{textToWrap}</h1>")
  'custom:wrap-h2': ->
    editor = atom.workspace.getActiveTextEditor()
    for selection in editor.getSelections()
      textToWrap = selection.getText()
      selection.insertText("<h2>#{textToWrap}</h2>")
  'custom:wrap-a': ->
    editor = atom.workspace.getActiveTextEditor()
    for selection in editor.getSelections()
      textToWrap = selection.getText()
      selection.insertText("""<a href="">#{textToWrap}</a>""")

Then in the file keymap:

'atom-text-editor':
  'cmd-b': 'custom:wrap-bold'
  'cmd-i': 'custom:wrap-italics'
  'ctrl-shift-w': 'custom:wrap-p'
  'ctrl-alt-cmd-1': 'custom:wrap-h1'
  'ctrl-alt-cmd-2': 'custom:wrap-h2'
  'ctrl-alt-cmd-3': 'custom:wrap-h3'
  'ctrl-alt-cmd-4': 'custom:wrap-h4'
  'ctrl-alt-cmd-a': 'custom:wrap-a'
  1. PHP Server

    • I tested all the server packages and nothing worked. None of commanded “php -S localhost:anynumber $anyfile” and open automatically the PHP file in any browser. Some of are outdated. For example: https://atom.io/packages/php-server
  2. Color Highlighting and ColorPicker:

    • They do not detect the CSS root colour variables, for example: var(–dark-green) that Pigments do.
  3. Stylesheet

    • It allows you to modify any class of any UI part – function colour, variable colour, comment colour, font size, style font and face font, hyperlink colour, disable or enable ligatures, etc. While in Sublime Text, you can change only background colour, the UI theme, the face font and the size font or you have to modify the theme file.
0 Likes

#16

Biggest problem for editors like Sublime (Atom, VSCode and etc.) that plugins are developed by regular users and not by developers. I mean that native support is always better because in some case it brings guaranties that plugins will be maintained in a future with new release.

For me personally lack of support for Sublime plugins and lack of integrated terminal - two reason why i still not buying it and use not often.

I’m in Python development and plugins like Anaconda makes me mad. It should work like charm out of the box and it doesn’t.

P.S.: For example: https://github.com/wuub/SublimeREPL/issues/481

0 Likes

#17

I agree. Sublime plugins are the biggest issue for me. Many are over 2 years old with no updates. VSC and Atom have very active development and many people have left Sublime for them. I am hoping we can get some of them back, but VSC is very good and most people that try it are hooked. Out of the box it has a lot of needed plugins that we all use in Sublime in the core.

2 Likes

#18

The same issues really are out there for VSC and Atom as well. They are just newer products so you don’t see all the abandonment yet. Many plugins have not been touched in a while. The biggest advantage of VSC is that it has pretty much all you need in the core. I normally only add one or two plugins to VSC total, where I need about 10 in Sublime.

0 Likes

#19

Are you using VSC for the terminal?

0 Likes

#20

VisualStdio Code doesn’t have right packages similar to ColorPicker and Pigments, the colour picker plugins in Visual Studio Code are awful because of the original Windows colour picker window. It misses some cool features of Atom.

0 Likes