Skip to main content

Best Packages for Sublime Text 3 (Excluding Themes)

Sublime Text 3 is pretty good out-of-the-box but reaches a whole new level when you install some of the great packages on offer.

Below I'll list my favourite packages for Sublime Text. These are all packages which will enhance your productivity across all languages, so no themes or language-specific packages will be listed here.

 1. Terminus

Do you often find yourself switching between Sublime Text and your terminal?

Terminus lets you open terminals (like Command Prompt or Git Bash) within Sublime Text itself. You can open the terminals using the Command Palette or with Keyboard Shortcuts.

Terminus takes a few minutes to setup. I made a video to help you with it here.

 2. SideBarEnhancements

I find myself regularly leaving other IDEs and opening Sublime Text just to use some of the features in this package.

SideBarEnhancements does exactly what you expect. It enhances the sidebar!

After installing this package right clicking on a file/folder in the sidebar will give you a lot more options. Here are just some of the options it adds:
  • Create new files/folders
  • Open with ...
  • Open In Browser
  •  (Mac) Open With Finder
  • Copy/Paste/Duplicate
  • My favourite: You can perform an Advanced Find which will search through all the files in a folder and list all occurrences with links to them

3. Sublimerge3 and GitGutter

If you use Git a lot then installing these packages is a must.

GitGutter adds coloured dots to the sidebar telling you where files have been changed/staged since the last commit. It also shows git differences next to the line numbers when comparing with another branch/commit.

Sublimerge is similar but allow you to open a split screen window comparing your code with another branch/commit, highlighting differences. It's also really helpful in fixing merge conflicts.

4. ColorPicker

Stop playing the game of trying to guess the right hex code!

With ColorPicker when you need to find the hex code for the right shade of blue,  just press Ctrl+Shift+C and you can select the colour you want. It automatically inserts the hex code for you.

5. MarkdownLivePreview

Do you often work with Git repositories and need to read markdown files or write your own?

MarkdownLivePreview isn't the best Markdown renderer in existence. For example, it sometimes struggles getting image sizes right, and the font sizes don't match GitHub's markdown renderer very well. But it is amazing considering it works within Sublime. You can open your markdown files into a split screen view with the markdown code on the left and the rendered file on the right.

And did I mention it is 'live'? That means it will automatically re-render while you are typing!

6. CodeComplice

I didn't want to mention language specific packages in this post, but CodeComplice isn't entirely a language specific package. Some functionality like 'Go to Definition' does only work for the supported languages (of which there are a few big ones), but it also gives code completion on all files.

It works by remembering all words previously used in a file. When you start typing a new word it will suggest any of the words you've used before which match. I find this really useful on non-code files, like boring markdown and .txt files.

But if you are working heavily in a specific language, you might want to see if your language has a SublimeLinter package instead (which it probably does, look here).

7. AutoFileName

This one is a life saver, especially for web developers working on larger codebases. AutoFileName adds auto-completion for your directory and file names. It gets triggered when you start entering a relative file path, or when entering properties like 'src' in HTML.

8. Clickable URLs

Clickable URLs will highlight any URLs you type, and open your web browser to them when you use the shortcut Ctrl+Alt+Enter. Simple!

9. BracketHighlighter

BracketHighlighter doesn't need much explaining. It highlights the start/end of pairs of brackets and tags, to stop you getting lost in your code.

10. Browser Refresh

Browser Refresh is another package which does what it says on the tin. It adds a keyboard shortcut (Ctrl+Shift+R) which refreshes your web browser. It can also bring your browser into focus.

If you are interested in this package, you might also want to take a look at GhostText. It works in a completely different way but might be just as useful.

11. DocBlockr


Their page on the Package Control website explains this much better than I can but basically they can add comments known as 'docBlocks' above your functions/methods when you use their keyboard shortcut. The docBlock automatically gets all parameters and return values listed, and you can just press TAB to cycle through the gaps and fill in the descriptions.

Technically this doesn't work with every language because it doesn't always alter the docBlocks which each language's specific syntax. But it does support a good range of languages out-of-the-box and will work with many languages not in the 'supported' list (where it uses the 'default' docBlock format).

For a .net version which will add <summary> tag comments for a language like C#, consider installing XmlDocs.

12. SyncedSideBar

Initially I wasn't sure about this package, but after using it for a few months it has been more helpful than annoying, so is definitely worth mentioning.

Whenever you have bunch of folders open in the sidebar, SyncedSideBar will automatically expand the folder containing the file you have open and focus on it.

This is really useful if you often open files outside of Sublime, e.g. opening them through Window's File Explorer, because Sublime will automatically open in the folder you were just looking at (providing you already have your folders loaded into Sublime's sidebar).

However, occasionally when switching to a small file to make a quick change, you might end up losing your place in the sidebar. On really big projects this can cause some irritation.

And there are so many more ...

Just to name a few others:
  • Color Highlighter - Highlights colour hex codes showing the actual colour as a highlight. It also includes a colour picker, but personally I prefer ColorPicker for this.
  • A File Icon - Adds a nice range of file icons to the sidebar for different file extensions 
  • Emoji - Lets you insert emojis into your file using the Command Palette.
  • Emmet (essential for web developers)
  • Babel (for JS and better code highlighting) 
  • SublimeLinter - The most popular code linting framework for Sublime (this is language specific, but it does have packages for a large range of languages. Take a look at all their packages here
  • XmlDocs - Similar to DockBlockr, but for C#
  • SASS (for SASS :)
  • JSHint
  • GhostText
  • And technically PackageControl is itself a package
Finally I can't help but mention my favourite theme/color-scheme combo:
Theme: Material Twilight - from Materialize package
Colour Scheme: Monokai Phoenix - from Babel package
(I also quite like the Predawn package)

And I can't complete this post without a screenshot:


Please comment if I missed anything!

Comments

Popular posts from this blog

What is Homomorphic Encryption?

Homomorphic Encryption is a promising cryptographic technique for keeping data private. In this post I give a short a simple summary of Homomorphic Encryption including a clear definition with an example use case in cloud computing.

Google Apps Script - Introduction With Some Tips and Tricks

Google Apps Script allows you to write and deploy code scripts through Google Drive. These scripts (written in JavaScript) run server-side and have full access to Google's APIs. This means you can use them to automate all sorts of things, from sending emails to editing spreadsheets.

I've added some examples I use regularly to this repository on GitHub.