Hacker News new | past | comments | ask | show | jobs | submit login
Sublime Text (sublimetext.com)
91 points by ivank on Sept 17, 2009 | hide | past | favorite | 72 comments



After a 15-minute test drive, here are the things I liked:

- It's really fast.

- Minimap is a really great feature, especially in conjunction with search.

- Multi-pane layouts are nice, but what they lack is the ability to put the same file in two different panes.

- Multi-select is a nice feature, but it doesn't seem like something I would use very often.

- Search & replace interface is nicely placed -- as a bar at the bottom, instead of a pop-up window -- so that it doesn't get in the way.

Here's what's keeping me from switching:

- No out-of-the-box feature for opening remote files, especially SFTP. I know it says it can integrate with WinSCP, but what I'm talking about is: download, install, run and be able to open a remote file right from the menus.

- No code folding. This would have been a serious problem for me in and of itself, but it's especially annoying when you consider the next point.

- Configuration and preferences are modified by editing XML and text files, instead of having a GUI for that.

Give me those features and I'll be happy to shell out those 60 bucks.


Multi-select seems really cool to me, but I can't find any way to engage it with the keyboard. It seems there should be some way to do that.

Another really cool feature: Visible whitespace on highlight.

There are some things that bug me though. One, there are bugs. The "All Hallows" theme gives an error when loading, and any time I've turned on the console, I've managed to get it full of error messages pretty quickly. Also, there should be a way to move the cursor to the next/previous whitespace line like on emacs.

The minimap should be resizable.


Multi select with the keyboard: * Option one: select a few lines, then press Ctrl+Shift+L to split the selection into one per line * Option two: Ctrl+Alt+Up or Down

Thanks for the heads up about All Hallows Eve... I'll fix it for the next beta. Minimap is tediously resizeable via Preferences/General Preferences (change the value for the minimapMaxWidth value).

There's no built in command to move to the next/prev whitespace line, but it'd be pretty easy to whip up with a Python plugin.


Awesome. Kudos on actually doing something new with text editors. I use emacs because it's the best out there, not because I think it's the best possible. I think it's cool that the config is text. It gives me hope for something like dired (absolutely one of the best features of emacs) too.


Another bug report. Bracket matching incorrectly counts brackets in strings.


> - No out-of-the-box feature for opening remote files, especially SFTP. ....

> - No code folding. .....

> - Configuration and preferences .... a GUI for that.

> Give me those features and I'll be happy to shell out those 60 bucks.

FWIW the Zeus editor has these features: http://www.zeusedit.com


FWIW so do Komodo Edit, which is free, and UltraEdit, which is not. I used to use UltraEdit until I got pissed off because I paid for a newer version only to get more (instead of fewer) bugs than the one I had. On top of it, these guys do their support by e-mail, instead of having a ticket system.

That's what made me switch to Komodo and I've been pretty happy with it, except for the fact that it's so slow to start. At this point, it will take an editor with a very compelling set of features and really good support to make me switch, especially if it's a commercial one.


One of the screenshots shows side-by-side of the same file I think.


I stand corrected. The caption for central screenshot is "Edit side by side in widescreen", but no matter what I tried I during the initial test-drive, I couldn't make it happen with the same file. I finally managed to do that now, so for those who haven't discovered it, the option is in the File menu and it's called "New view into <filename>" (where <filename> is the name of the file in the active tab).


Without looking any deeper into it, the zoomed out view on the left ('MiniMap') looks amazing and I'd love my editor (MacVim) to incorporate it.

Is this for Windows only?

I tend to love features that need no explanations, no marketing, just a small screenshot for you to instantly see that it's a) amazing, b) useful, and c) should have been existent for a while now. Mark of a fantastic feature if you ask me.


DrScheme has the zoomed out view sidebar: View › Show Program Contour.

Screenshot: http://imgur.com/6mkPT.png


Cool! I'm just getting into scheme with a class this semester and this is awesome. Thanks!


The site states: "Sublime Text requires Windows Vista, Windows XP, or Windows 2000 (with DirectX 9 installed)."

Something this pretty looks like it belongs on a Mac.


Here's hoping TextMate 2 will be this good.


with DirectX 9 installed

Oooh! I, for one, have been looking forward to when editors will begin to experiment with code representation other than text and text folding.


Ok, now as being someone right in the middle of implementing yet another ide/editor, I gotta ask, how's such a feature useful to you at all? What would it provide? Except just looking cool at a glance.


I tend to rely on my spatial reasoning a lot, even when programming -- as I suspect many other programmers do.

When working on large project files, I find that I have to spend a lot of time scrolling up and down trying to find a particular function, especially if a project file contains lots of similar-looking wrapper functions. OTOH, in my brain, I know exactly where, spatially, the function resides relative to the document. I just have to find it.

So for me, the mini-map is a huge win, on the level of, "oh wow, how have I been programming all this time without it?"

And I loathe pop-up and drop-down menus with all of my function names. They only resolve one tiny aspect of my hunting; I don't have to scroll, but I still have to find the function I'm looking for.

With mini-map, I should be able to zero in on any part of the code that I'm looking for with a single click. I really want that.


Reasonable explanation, thanks.


Must be able to check my email ;) Or really provide a extension system so I could do that.


I was only referring to the mini map feature. While you, my friend, are definitely rooting for an emacs discussion :)


What is the appeal of the mini-map? [honest question]

I see negatives (takes up screen space, is distraction) and the positives (quick nav?) I already have without mini-map.


I'd like to have more of a spacial sense of code. If only to help organize things. I work with huge fonts when coding (so I can lean back, instead of in), but in exchange I give up a lot of surrounding context. A sidebar like that would make organization a little easier. Not sure how it'd compare to a quick-jump list though.


Taking c++ as an example: It would be nice if when my cursor is in function Foo::bar() it highlights all functions in Foo which depend on variables modified by bar() and highlight all functions which modify variable bar() relies upon. Pretty trivial to do, but might be useful.


The comments from 2007 (http://www.sublimetext.com/blog/articles/anatomy-of-a-next-g...) have a pointer to this:

http://bigasterisk.com/projects/skim

which may give someone a starting point.


I built a prototype of something like this for the Mac OS X Cocoa text system several years ago - I called it "TextShapeView", and I was intending to make it into a Cocoa text system plugin (InputManager) so you could pop up this view next to any TextView in any program. I might have gotten further with that, but I can't remember.

Here's a blog post with details, links, and a screenshot:

http://michael-mccracken.net/2009/09/textshapeview/

The code is hosted at http://leverage.sourceforge.net/ , where there are a few other text system hacks that I did a few years ago - one of my favorites showed a hierarchical outline view next to any text view that would show the nesting of any kind of simple syntax, and let you move the selection around by selecting in the outline. It is unfinished but still pretty useful.


This is great! Thanks! I spent some time trying to learn how Cocoa's text system works and this should help quite a bit. Also, I'll try to include something like this in MacVim.


Perhaps with this feature we can finally use ASCII art to navigate through our code!


The author of Sublime Text is using DirectX so it's Windows only for now. Most everything in the app is written in Python so in theory he could move things over to OpenGL.


Pretty sure that would be the case regardless of language.


taglist.vim gets you most of the way there, unless you have ridiculously long functions or something.


Site's not loading for me. Anyone have a cache?


Could someone summarize it in a paragraph or two? I've skimmed the comments here but it doesn't help a massive amount - too many details. I don't really care about seeing it if it's down, but what is it?

(Edit: http://feedblog.org/2008/01/18/sublime-text-high-level-navig... seems to have a summary of sorts.)


It's a text editor, looks to be curses based(?) using python. For me it wasn't worth looking at - posts should have descriptions of what they're about. Grrr!


Me neither. I got the cached front page. Not sure he was expecting a lot of traffic today. It's a shame since this product looks really cool from the descriptions and screen shots I can make out from the cached page.

Love the landing page though.. Really elegant and straight to the point. Definitely inspired me for my upcoming projects.


I think the developer is in Australia, so hopefully he'll wake up in a few hours and fix it.


So, this morning I got up, and noticed my ssh session had died overnight. Didn't think much of it, and headed into the day job.

While doing the morning rounds, and saw that: 1) Cool! Someone likes my editor enough to post it on HN! 2) Well, now I know why my ssh session died.

Unfortunately, there's not much I can do about it from here, so the web site will have to remain down for a while. Thanks for all the kind comments though!



Good find, thanks. At about 40% of that page there's a long comment from the code author. He says: "double click - instant find in file is my favorite feature"

Sounds like a good idea for other implementations.


Also Notepad++ has such feature (instant document-wide highlight on selection). It's indeed quite useful.

http://notepad-plus.sourceforge.net/uk/site.htm


Would anyone who uses this care to describe how it compares to other text editors we might be more familiar with (vim, emacs, TextMate, Notepad, ...)? The minimap is obvious (and a very nice idea); what else is in there?


Side-by-side editing. Textmate still doesn't support this without opening a new window and fuddling with resizing (heinous).


From the site, it looks like it has regex search/replace and multiple/vertical selection. It also looks like it can automate tasks (with macros, perhaps?).

I use vim, but I've been thinking lately that all you really need to efficiently edit text are the above things listed. Vim and Emacs are extremely powerful, but your first experience with them was probably awful, and the learning curves are steep. Is a powerful AND intuitive text editor possible?


I figure you know this already as a user of vim but I thought it might be worth pointing out that vim has all of those features.


I think jcw's point was that while vim has these features, no additional features are really required.

I interprete the exchange this way: question "how does it stack up". answer: "meets minimum bar".


I took a look and thought the same thing. Doesn't help that it looks really similar to my current setup w/ gvim: http://img24.imageshack.us/img24/3051/gvim1.png


Yes, what are the "bullet point" features of this editor.

I downloaded it and tried it out on some python code. It has run your project and there is a console for running python apps. Anything else I missed?

It is very pretty.


Is the text on the minimap readable? Good application for those subpixel fonts.


That minimap is a nice piece of innovation. I'll be waiting until someone ports it to EMACS though :-)


I do C-x 3 and load a homebrew "tiny-mode" that shrinks the font size in the second window. Maybe I'll package it up and post it later.


Please do, I'm curious to take a look at it.


Here's a first crack at the effect: http://gist.github.com/188773

I'm not much of an elisp programmer, but this seems to work reasonably well. It depends on Emacs 23. To use, load and run mini-map-mode.


Anyone still following this should use the minimap mode at http://www.emacswiki.org/emacs-en/ThingsEmacsCannotDo. It's better in (almost) every way than mine.


Emacs crashed on M-x mini-map-mode, in Clojure Box.

I pasted the link content into .emacs, downloaded highlight-current-line, and changed the font to Courier New (don't have Consolas). Do you have any ideas?

edit: As far as I can tell, it crashes even with clojure-mode not loaded. Emacs 23.0.91.1, btw.


This may be of interest: http://feedblog.org/2008/01/18/sublime-text-high-level-navig...

I don't know how easy it would be to integrate into an existing text editor though. Firstly, the rendering itself. I do it via using the GPU to render textured quads, to get trilinear filtering without a big load on the CPU. Without this filtering, the quality goes out the window: standard font rendering algorithms don't render fonts nicely at tiny sized.

The other issue is performance: consider a large file, and just scrubbing up and down with the scroll bar. With the minimap, you have to be able to render thousands of lines of text efficiently, to keep scrolling smooth. I built the rendering structure around this requirement, and I suspect without a lot of attention, typical text rendering code wouldn't be able to layout and draw the text fast enough. Then again, it's not so bad if you would be happy to accept a few limitations, such as fixed width fonts and no soft word wrapping.


Dear Coda - please look long and hard at that minimap codebrowser!


Seriously - this is making me consider a switch.


What is amazing to me is not the features this editor has, but that editors haven't had these features for the last 10 years.


The Sublime appears to be down for me :(


Minimap is cool, but it'd be even cooler if things like module, class, and function names were slightly magnified at their definition points.


Just tested it under wine, the basic functionality with the 'minimap' seems to work fine, haven't got round to testing macros etc. though.


Bleh. No most-recently-used-first control-tab behavior. Uninstalled.

Also, I'd expect easier preferences setting than editing a config file for $59.


I am curious to see what the macro system is like but I do not have any windows machines at my disposal. Time for virtual box!


Looks like it uses Textmate packages, so a lot of code is already available for different languages.


The black background really makes it difficult for me to read for long periods of time :/


You can change the colour scheme within the editor - try Preferences/Apply Color Scheme/Dawn for a black-on-white colour scheme


Aye, *nix port, please.


pretty pretty please


Oh someone please do add minimap to Notepad++


Sublime HTTP 500 error.


Aquamacs for life! But I'll try this out when it comes to a mac near me.


i'm so implementing the side scroll thing in vim


Stick it on Github and reply to this comment with the link s'il vous plait. I'll give it a shot myself, but my vimscript is extremely weak.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: