Trying Out Sublime Text 4

After using Neovim for years, I'm trying out Sublime Text to see what that's like.

Author avatar
Albin Groen

Posted 2021-12-31


Why?

Neovim is a really great editor, and I most likely will move back to it eventually. Now though, I'm pretty excited to try out something new. The slight issue I've been having with Neovim is that it can be a little bit flaky on Mac OS, and it sometimes didn't feel as snappy as I wanted it.

When I found out the Sublime team had released a new version of Sublime Text (version 4), with native syntax highlighting for the TypeScript suite and LSP support, I decided to give it a shot. The really great thing about Sublime Text 4 is its speed. It's literally so snappy, and feels incredibly native to Mac OS.

Plugins

In order to get Sublime Text to what I want to have, I had to install some plugins. These are that ones that I currently have installed to achieve things like auto-completion, Vim bindings, linting, formatting and more niceties.

  • Emmet
  • Terminus
  • Svelte
  • LSP
  • LSP-typescript
  • LSP-svelte
  • LSP-html
  • LSP-json
  • LSP-eslint

Settings

Here are the settings I'm currently using with Sublime Text to make everything a little bit cleaner and run a bit smoother. For example, when using Vintage Mode, auto-completion (meaning suggestions as you type) can be a little bit annoying. Hitting escape once will close the suggestions, and hitting it again will then go back to normal mode. I disable this and instead just hit ctrl+space when I actually want suggestions (which turns out to not be that often).

{
  "tab_size": 2,
  "translate_tabs_to_spaces": true,
  "font_size": 18,
  "fold_buttons": false,
  "relative_line_numbers": true,
  "scroll_past_end": true,
  "color_scheme": "Mariana.sublime-color-scheme",
  "ignored_packages": [],
  "folder_exclude_patterns": [
    ".svn",
    ".git",
    ".hg",
    "CVS",
    ".Trash",
    ".Trash-*",
    "node_modules",
    ".*",
    "dist",
    "build",
    ".next"
  ],
  "theme": "Default Dark.sublime-theme",
  "vintage_start_in_command_mode": true,
  "vintage_ctrl_keys": true,
  "auto_complete": false
}

Vintage mode

Since I've been using Vim & Neovim for quite a long time, I've gotten very used to the modal way of editing code at this point, and feel quite lacking when I can't use the same method of editing. Therefor I've enabled Vintage Mode in Sublime Text 4. It's Sublimes' version of Vim bindings inside of Sublime Text. It's fine but it's not nearly as good as the real deal, especially not when using a non-English keyboard.

Sublime Merge

At the same time as I'm trying out Sublime Text 4, I decided to check out the Git client Sublime built as well. It's a really powerful visual Git interface that goes really well with Sublime Text. I have been using terminal Git for as long as I've been a software developer, but I thought I'd give this a shot for the hell of it. It's pretty nice, but sometimes I just really have to get back to the terminal, where I feel I'm in more control of it all. It's a pretty sweet app though!

Sublime Merge

Verdict

Since I've only been trying out Sublime for a couple of weeks, I don't have a lot to say quite yet, so I'll probably write a new post in a few months. What I can say now though is that it's very nice experience. There however a couple of things that I had to get used to that differ from using Neovim. I'll keep on using Sublime for a bit and see how it goes. I will post more regularly about my experience on twitter.com, so feel free to give me a follow there to stay in the loop!

@albingroen