top | item 4795824

Configuring Sublime Text 2

183 points| manlycode | 13 years ago |mutuallyhuman.com

90 comments

order
[+] eta_carinae|13 years ago|reply
Something the article misses: Sublime Text 2 already comes with a command line front end called "subl". Just copy it in your favorite bin/ directory and you can open your files with it from any shell.
[+] pygy_|13 years ago|reply
Even better: use a symlink.

You won't have to copy each update.

    ln -s target link
thus:

    sudo ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl
[+] jemeshsu|13 years ago|reply
Always wondering why the version '2' is emphasised heavily. Never heard of Sublime Text when it is version 1. The version number is part of the app binary file name. It is the only OS X app in my Mac that has the app name together with version number on the menu bar. Nothing wrong with this "unconventional", just that it will break a little thing when Sublime Text 3 is released. For example to change command prompt linking as in "ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime".
[+] molecule|13 years ago|reply
My first piece of advice is to set up a command line alias for Sublime...

Sublime ships w/ a command-line executable:

    /usr/bin/subl
[+] subpixel|13 years ago|reply
Nitpick: the trailing 'l' has always seems superfluous to me - my alias is 'sub'
[+] knotty66|13 years ago|reply
Maybe on OS X, on Linux I always end up rolling my own ...
[+] ryanpetrich|13 years ago|reply
You can also pipe text into subl and it will open in a new Sublime Text tab.

     find . | subl
[+] jurre|13 years ago|reply
This hasn't been working for me for some reason on OSX, the posted alternative however did work so I'm quite excited!
[+] shade|13 years ago|reply
Another useful tip for navigation - when using the fuzzy search, you can start typing a filename to jump to that file, then with that still in the search box, hit # and start typing a keyword to jump to in that file.

So if you wanted to find something with the class btn_order in index.aspx, in Windows you'd hit CTRL-P and type "index#btn", hit enter, and there you are. You can of course scroll up/down through the available files matching the filter before you hit # -- the keyword search applies to the currently selected file.

[+] heelhook|13 years ago|reply
An even better one IMO is @, same thing as with # but it uses symbols.
[+] grimgrin|13 years ago|reply
Here are two other sources that I found pretty useful when switching to Sublime.

http://net.tutsplus.com/tutorials/tools-and-tips/essential-s...

I'm not a huge fan of video sources when I could just look at images/read text and get it done faster, but these do offer some pretty good stuff. I was fond of him giving me the idea to use the Gist plugin, creating a new account, and have a great way to manage snippets.

http://net.tutsplus.com/articles/news/perfect-workflow-in-su...

[+] doktrin|13 years ago|reply
This (free) video walkthrough is a terrific resource, and with no disrespect to the OP, is a better resource regarding getting the most out of ST2.
[+] ivanbernat|13 years ago|reply
Sublime team by default need to advertise Packages and just how much you can customize the thing. You'd be amazed just how powerful this thing can be - once you get the hang of it, the shortcuts and some basic packages.

My favorite ones are Zen Coding (now deprecared in favor of Emmet) and SublimeERB when working with ERB - the front-end dev in me cries of joy when using them :-)

[+] decad|13 years ago|reply
I agree I recently installed Emmet and it has vastly improved my life (front-end dev)
[+] alexpopescu|13 years ago|reply
> FileDiffs - This can be a really useful tool for diffing files. [...]

This is something I've been looking for. I had to use an external diff tool or vimdiff, but this might change things quite a bit.

The other thing that would be a great addition to ST2 (if not existing already) would be a search by symbol in all project files. Currently Cmd+R is great for navigating to a symbol in the current file. Extending this to a whole project would be awesome.

[+] SquareWheel|13 years ago|reply
I've been tweaking my Sublime for 5 months or so, and this is how my config file looks so far.

    "color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme",
    "detect_indentation": false,
    "detect_slow_plugins": false,
    "font_size": 10,
    "highlight_line": true,
    "highlight_modified_tabs": true,
    "margin": 0,
    "move_to_limit_on_up_down": true,
    "remember_open_files": false,
    "shift_tab_unindent": true,
    "tab_completion": false,
    "tab_size": 4,
    "translate_tabs_to_spaces": false,
    "word_wrap": false
I'd suggest going through the default settings file to see what options there are to change. It's pretty darn configurable.

I'd also like to suggest the plugins Bracket Highlighter and Emmet (previously Zen Coding). I also use Package Manager, Sublime Linter, and FileDiffs as mentioned in the article.

[+] wldlyinaccurate|13 years ago|reply
This is just my opinion, but I think detect_indentation should always be turned on. The reason being that having mixed indentation in a file is worse than having the "wrong" indentation.
[+] manojlds|13 years ago|reply
What I need to know is how are people versioning the settings? For Vim, a simple .vimrc is all I need to take care of. What do people do for Sublime?
[+] heartbreak|13 years ago|reply
Maybe you should, you know, download Sublime and try it out? The settings are stored similarly to Vim.
[+] yen223|13 years ago|reply
Same way. The user settings are stored in a few plain-text JSON files.

Also I would hardly call .vimrc files "simple".

[+] scq|13 years ago|reply
I set Ctrl-Tab and Ctrl-Shift-Tab to behave like they do in web browsers and notepad++:

    [
        { "keys": ["ctrl+tab"], "command": "next_view" },
        { "keys": ["ctrl+shift+tab"], "command": "prev_view"}
    ]
[+] hayksaakian|13 years ago|reply
Tip I figured out accidentally: command + 1 through x changes to the 1 through xth tab in the current window.
[+] feniv|13 years ago|reply
As a python programmer, these were the first two settings I configured after installing Sublime Text.

    "tab_size": 2,
    "translate_tabs_to_spaces": true

You can either set them as Preferences > Settings - Default or Settings - Syntax specific
[+] nicholassmith|13 years ago|reply
If you're using Sublime I'd highly recommend writing some Snippets, there's plenty you can write and it gets you digging into Sublime's docs. Helped me get used to Sublime a lot more.
[+] wldlyinaccurate|13 years ago|reply
This post reminded me that 90% of the developers I work with don't set their editor up properly. I'm constantly finding Windows line endings and trailing whitespace. I wrote this (really short) guide that I send to new developers, but imo editors should come configured like this out of the box. http://wildlyinaccurate.com/setting-up-your-editor
[+] gavanwoolery|13 years ago|reply
For those who sometimes prefer straight GUI, you can just drag the folder into Sublime Text (or Textmate) and it will open it in the sidebar (probably obvious to some, but I did not know to do it until I saw somebody else do it).

Also, another thing I have grown really attached to:

Command-Option [1,2,3,4] to open up multiple views within one window, good for viewing several files at once.

[+] batgaijin|13 years ago|reply
Does sublime text 2 work well with CL or Haskell?
[+] shriphani|13 years ago|reply
I tried using it with Clojure (FWIW) and I really disliked the REPL's style (maybe I am too used to Emacs here).

I have since decided to use Sublime Text for Python, LaTeX, C, C++ (it really shines there) and Emacs for Racket and Clojure (I don't use it so much).

[+] jewbacca|13 years ago|reply
I use it to write Haskell. The syntax highlighting screws up the first line of multiline record declarations. Out of the box, it can't run a Hoogle search or launch GHCI like TextMate did. It's definitely not a fully-featured Haskell IDE, but it's a usable basic editor. Depending on what you're used to, it may or not be adequate. I switched because I liked the default color theme better (... I mean... because TextMate was being abandoned).
[+] jfb|13 years ago|reply
No idea, but trying to write lisp in anything other than Emacs/SLIME seems like an exercise in purest madness.
[+] tylermauthe|13 years ago|reply
This is the real lesson of this article: "As a craftsmen it is important to understand and use our tools properly. Just as a painter needs to use the best paint and brushes - and understand how to use them - a developer should understand and use the best software tools available. For me, Sublime Text is the highest-quality brush available."

Great stuff, thanks!

[+] modeless|13 years ago|reply
The biggest win I've had from configuring Sublime Text is in setting up build systems. Specifically, configuring F4/shift-F4 (skip to next/previous error). The build system integration is rudimentary (and I hope that's a focus for Sublime Text 3) but "skip to next error" is all you really need to be productive.