thecrumb

developer | thinker | tinkerer

Fixing Sublime Text When Things Go Bad


I'm not sure what I did but I managed to disable the sidebar in Sublime (or at least I initially thought that's what happened, keep reading).

Hitting the menu wouldn't turn it on, nor would the keyboard shortcut work.

Uh oh.

Since I knew Sublime stores all it's settings in text files I went looking and discovered:

C:\Users\jdpriest\AppData\Roaming\Sublime Text 2\Settings\Session.sublime_session

And it contained a bunch of useful looking settings like:

{% codeblock lang:json %} { "menu_visible": true, "show_minimap": false, "show_open_files": false, "show_tabs": false, "side_bar_visible": false, "status_bar_visible": false }

I tinkered with a few of those and restarted Sublime. Still no sidebar. Getting a bit desperate I deleted the file thinking Sublime would rebuild it when it starts up again with defaults.

Nope. I restarted Sublime and there was no new sublime_session file.

Hmmm.

I really didn't want to reinstall everything at work so I started tinkering around with my Sublime install at home.

Then I noticed you don't have a sidebar until you create/open a project!

I created a project and I got a new session file. Ah-ha!

I'm still a bit unclear how projects work in Sublime. I've simply been opening my code directory in Sublime. Adding the directory, Sublime prompted me to create a project file (I didn't pay much attention to this step when I first got started). This time I took note and it created two files:

  • Z:\mycodedir\myproject.sublime-workspace
  • Z:\mycodedir\myproject.sublime-project

Somewhere along the line my original sublime-workspace files got deleted!

The sublime-project files seems to simply contain the path to your project. I'm guessing you can define multiple paths:

{% codeblock lang:json %} "folders": [{ "path": "/Z/myproject" }]

Opening the sublime-workspace file it appears similar to your session settings file, it looks like you can configure things at the project level.

For example in Project A you could show the minimap, in Project B you could hide it.

{% codeblock lang:json %} { "menu_visible": true, "show_minimap": false, "show_open_files": false, "show_tabs": false, "side_bar_visible": false, "status_bar_visible": false }

I will definitely be looking more into how projects work in Sublime, and hopefully this will help others if your Sublime suddenly starts acting weird.


SublimeText Multi Select Easy Access To Terminal in Sublime Text

More like this...