I know Sublime 2 is in Alpha still, and there are probably things that you’re already planning on doing, so a lot of this will be a bit redundant… Or perhaps I just missed something all together. The editor already knocks my socks off, but I would like to make a complete list of things I feel would “complete” the editor. So I apologize in advance if some of these things are “duh!”.
-
Shortcuts (key bindings): Getting some of the shortcuts in-line with some of the other applications like XCode or TextMate. Typically applications on the Mac tend to use the same shortcuts for the same things. Just like Linux buffs we love to use the keyboard too. For example Command-L is a shortcut in both Xcode and Textmate that brings up a small dialog to go to a specific line/character number (most useful, line number). I know that you could probably customize your key-bindings, but the default “out of the box” should be what Mac users are already familiar with. Another example is for column select the Mac uses Option not Control (the difference is Textmate was the only app that allowed you to type over, but in Xcode you could copy). By doing this you minimize the learning curve for newcomers and they can jump right in and start using the editor.
-
Conveniences: Many things are tucked away in the menu bar. It would be nice if in the bottom bar there were certain menu items that were available, like language select, tab size, symbols, and snippets (TextMate just replicated the bundle menu. Would be better to show the snippets of the currently selected/scoped language). Ruler size would be a good one as well (love that feature!). So would line endings CRLF, CR, LF.
-
A “bundle editor”. Language editing in TextMate was a pain. I would prefer just to edit the XML directly if I had to do it by hand. But the key is the ability to add/remove things in the bundle, similar to how TextMate does it, but less annoying. Would also be cool if each “package” was actually in a package like a .App or tmbundle.
-
I’m not sure if I see a way to customize color scheme, but this is something TextMate never had: Define default colors in bundle. The trouble with TextMate is it had “common” colored names that each bundle would use like functions or comments. When you set that color it would be used on every bundle. That’s “fine” but then you had unique elements like Markup which was html specific. If you were making a custom bundle and you wanted your own custom name colored you had to add it globally in Preferences. It’s not portable at all. It would be nice if you could specify in the language file which names are to be colored, and what their default color is. When you customize the color scheme it would show those elements depending on the selected language. Each change you make could be “global” or “language specific” (or just turned off so the bundle’s default colors are used). When you specify default colors in the bundle it would probably be a hexcode, but when you customize “global” or “language specific” colors it would be similar to TextMate’s “Font’s & Colors”, just not part of preferences (because it can be language specific).
-
For those of us migrating from TextMate, a wizard to import TextMate bundles (in full or in part).
-
Preferences that can be visually editable (not just in a text file), and a way to reload those preferences without having to close/open the editor. I know that there could potentially be a ton of settings and it wouldn’t make sense to make an interface for all of them, but something like Firefox’s about:config would be awesome.
-
I love split pane view because you can edit two files side by side… But what about editing the same file, as in looking at two different parts of the same file? (Similar to Terminal in Snow Leopard or Coda - they do it the same way - an icon at the top of the scroll bar) This isn’t a “die for” feature, but it would be awesome to have. At the very least an easier way to toggle split view without having to go to View -> Layout would be cool. Perhaps a discreet icon somewhere that opens up a visual menu demonstrating each view would be helpful (icons that show each view rather than words).
-
I like the side bar. I like the fact that files you’re working on show up at the top. I also like the fact that you can add any folder, even if it’s already there as a sub folder of another folder. This allows you to work on two key areas without having to hunt for the files.
Here are some things, based on my experience so far:
-
There seem to be two parts of the side bar: “Active Files” (tabs open) and “Folders” (which is pretty much your project). I feel that having “active files” in the side bar is a bit redundant… What’s the point if you can see the tabs? I know that when you have many tabs they get smaller and become impossible to read, but I really like what FireFox does: A menu on the right of each tab bar that shows each tab. I think a lot of editors do this as well. You also don’t need to show every single tab and squish them to death. At some point (where the names are still readable) the tabs should start to “fall off”. When they do you could have arrows to “slide” them over, or view them all through the menu. What it comes down to is I don’t think “active files” should be part of the side bar, at least not mixed in with the project files. If people prefer them to be on the side verses tabs it should be a separate scrollable side bar that stacks on top of the project side bar.
-
With having the “project” part being “the side bar” I will refer to the 2008 missing drawer for TextMate: github.com/jezdez/textmate-missingdrawer. It isn’t “perfect” and a bit buggy, but it shows “the look”. Basically it’s looks a lot like XCode’s side bar, but has literal folders and “groups” (yellow folders). Basically what I’m going for is adding multiple literal folders in the project (TextMate can only have one main one, even with the plugin) and having “Groups” which are virtual folders. You could drag an actual folder/sub-folder/file(s) into the Group and it would copy their references into the group. So essentially group’s are essentially a “virtual work space” (files aren’t actually open). When you press the delete key on a referenced file it would simply delete the reference. On the actual file it would ask you if you wanted to delete the file. On a top-level folder it would ask you if you wanted to delete it or just the reference. On a group it would ask if you wanted to delete the reference. Right clicking would give you the options. From the actual/referenced file/folder you could rename the file by pressing enter or choosing it from a right click menu. Each file would have that file type’s icon. Other items in the right click menu would be “Reveal “filename” in Finder” and for folders “Open “folder” in Finder”.
-
With the above mentioned project side bar the ability to drag/move file, delete, rename, copy, duplicate, etc…
-
Would be cool if the “Select More” (Command-D) option would only select words within the scope of a function or class (sometimes you may want to do the whole file, or just within the a for loop, or function, or class).
-
Do any of these exist? “Documentation for word” (takes you to php.net), “Documentation for function (tooltip)” (shows you function arguments), “Completions for word…” (tab through function arguments like a snippet).
-
“Spaces to Tabs” “Tabs to Spaces” and shortcuts (Command-L, Command-Shift-L) for converting case similar to TextMate. More shortcuts for things like Marks.
-
Block folding through tmlanguage (I know this one was mentioned)
-
Click to add/remove bookmarks.
These are pretty much all the things I can think of right now as far as the application itself. My biggest concern is just keeping this editor going and keeping the developers motivated. I love TextMate and Allan did a great job, but it really hasn’t been updated since Tiger (and Leopard and Snow Leopard has come out, with Lion on the horizon). I spent about $60 on his editor years ago, and I would have gladly spent another $60, or more, for TM2 (which after 4-5 years, to this day, never came out). I’m not sure how you guys are planning on doing your licensing, but I just want to let you know I’ll gladly pay an upgrade fee for Sublime 3 if/when it comes out. Hell, I’d be even interested in paying a subscription $5 per month to cover the cost of future versions. TextMate was my swiss army knife of development and it was very important to me. Up until now nothing has come close. Sublime has filled that void and I want to do everything I can to support it. The editor is the most important part of what I do, and Coda and Espresso just never matched up to the power of TextMate. I feel that not only does Sublime 2 match TextMate’s power, but it surpasses it. And that is really exciting/encouraging to see.