It is vital to be comfortable with your editor when developing, whether it be a fully featured IDE or an extensible text editor you will learn it’s intricacies and quirks like an artisan would know the exact weight and feel of their trusted hammer. I’ve tried a variety of editors over the years trying to find the right fit, jumping around IDEs such as Coda and Netbeans through to more lightweight solutions such as Notepad++ (and occasionally dabbling in the insanity that is vim).
My heart finally set on “Sublime Text”, an editor which makes it a joy to code and has an extremely strong plugin backbone that is easily managed through “package control”, a third party plugin manager.
Why do I love ST so much? It’s highly configurable without the gargantuan learning curve of an editor like Vim or Emacs. There are a massive amount of settings you can override, below are a few of my favourites:
"bold_folder_labels": true // makes folders in the explorer have bold text for easier navigation
"caret_style": “phase", // causes your cursor to fade in and our rather than blink, it was removed from html standards for a reason guys
"fade_fold_buttons": false // makes fold buttons constantly visible so there’s no losing track and thinking your code is lost to the nether
"line_padding_bottom": 1, // increases line height, while this may seem silly it makes my code so much more readable!
"translate_tabs_to_spaces": true, // ensures that all tabs are registered as x spaces, as it should be.
"highlight_line": true, // highlights the current line to easily track where you are
All minor quality of life changes, but it makes staring at code for hours on end a lot more bearable during long sessions. Please note that any settings you change should be stored in user preferences, as default preferences are overridden every time ST updates.
Here are some shortcuts I use regularly to jump around the code, some of these you may already know, some may be brand new. Regardless each of them gave me a small eureka moment!
cmd + p = file switching, allows you to jump around the project very quickly
cmd + r = Goto symbols, jump around functions in large files
cmd + d = select the next instance of highlighted text, allows you to edit multiple lines at the same
time to refactor those ridiculous variable names before a commit
cmd + click = multi cursor select
cmd + g = Goto line, jumps your caret to the line entered, useful for jumping to problematic lines
your debugger is screaming about
cmd + k + b = show/hides the sidebar, useful when dealing with code written by a developer who is
trying to minify on the go, frees up some screen width
cmd + shift + spacebar = select all text between quotation marks, very useful when dealing with
cmd + shift + v = paste while maintaining indentation
Of course all of these key combinations can be overridden in user settings to whatever strange shortcuts your last editor taught you. To round out editor we get to the fantastic third party packages, ST has the most active non-vim plugin community around right now and has some truly fantastic offerings. Here’s a few of my favourites:
Package control - https://packagecontrol.io/ - There’s no reason to make your life difficult, use package control, it makes managing plugins a cinch.
Alignment - https://packagecontrol.io/packages/Alignment - Keeps your code nice and aligned
Anaconda - https://packagecontrol.io/packages/Anaconda - Turns sublime text into a fully featured python IDE, pretty crazy.
Bracket Highlighter - https://packagecontrol.io/packages/BracketHighlighter - Self explanatory, useful for at a glance information
Can I use - https://packagecontrol.io/packages/Can%20I%20Use - Provides information on browser support
Color Highligher - https://packagecontrol.io/packages/Color%20Highlighter - Totally useless, I like it though because it gives your colour hex values a nice underline!
Dayle Rees Colour Schemes - https://packagecontrol.io/packages/Dayle%20Rees%20Color%20Schemes - A collection of colour schemes, there’s a demo site linked on the github page to preview them
DocBlockr - https://packagecontrol.io/packages/DocBlockr - A LIFE SAVER. Makes writing comments a breeze, can’t live without this.
Git - https://packagecontrol.io/packages/Git - Provides some git integration into ST, I personally don’t use it but some people swear by it.
jQuery - https://packagecontrol.io/packages/jQuery - Syntax highlighting for jQuery
SASS - https://packagecontrol.io/packages/Sass - Highlighting and code completion for SASS
Theme - Sodarized - https://packagecontrol.io/packages/Theme%20-%20Sodarized - Popular UI theme
Theme - Spacegray - https://packagecontrol.io/packages/Theme%20-%20Spacegray - My personal favourite theme, very minimal.
Trailing Spaces - https://packagecontrol.io/packages/TrailingSpaces - For those of you who got marked down for trailing spaces in your school assignments, this plugin does it for you.
I hope that this has been informative and you have gotten something from it! Even if it’s simply a package :D