While I know it might be a little hidden, I'd just like to say I'm really glad Will Bond of Package Control[0] was able to join[1] the Sublime Text team. Having first class support for Package Control in ST is definitely one of the features I value the most out of Sublime Text and IMHO one of the things that still keeps it very competitive with Atom other text editors.
I use packages from ST almost every day and plus I wouldn't have gotten my first job without Will (thanks for hiring me even after seeing all that terrible code I wrote), so I can actually say my life would be a lot different without his influence. I'm really happy he's officially part of the team.
The Sublime community is blessed to have his work supported in a way that lets him dedicate his time to Sublime Text as fully as he does. Given he one of few people who can work directly on Sublime itself, I am glad his focus is there.
Sublime is probably the first GUI text editor that left me satisfied. Everything else over the years was either non-portable, slow or lacking features. After two months of use I just had to buy it, it's worth the price.
- It's fast and responsive, can handle large files and personally I've never seen it leaking memory or crashing
- Love the goto anything and command palette, brilliant
- Text editing is great and can be easily enhanced with existing plugins
- Theming is great
- Project handling is a bit weird, but once you get the hang of it it's fantastic
I don't do use IDE-like features (auto-complete, linting, compiling, etc.) nor integration features (version control for example) so I can't say how it fares in that aspect.
Recently I tried VSCode and Atom. They are portable and feature rich out of the box, but God are they slow and memory hungry. I can definitely see the appeal for web devs but it doesn't work for me, I value responsiveness above all else (that's the main reason I avoid dedicated IDEs)
Have you ever seen UltraEdit? I dare you to try the trial, actually go through the exquisite configuration dialogs to make it yours, and then to ever look back :)
This isn't as a knock on ST, which I also like, and might even sometimes prefer for pure writing or temporary notes. But it doesn't even have printing out of the box, come on. For me that's too modern.. plugins are nice, but I guess I prefer UE to ST like I preferred old Opera to Firefox.
Could you mention what you're likely to be printing? What sort of uses do you have where you write notes in a plain text editor and print them out? I can't think of the last time I printed anything -- actually, I should say I can't think of the last time that I printed anything that wasn't a contract or HR paperwork type of stuff, which is never in plain text. I'm curious what else is still being printed these days. Also, they have plugins for that, if you're interested. You're correct that it's not built in, though.
I switched from UE to ST entirely because of UE's licensing/activation model.
Maybe it is different now, but UE used to require an internet connection for the registration... or you had to email your info for offline codes.
I have a bunch of isolated machines at work, physical and virtual, and got tired of dealing with UE and its registration requirements. Especially when ST gave a license key file I could copy around as needed.
So I switched. But yeah, I remember UE was a really good editor. Now I'm happy with ST.
I fell in love with UltraEdit about ten years ago, and then I forgot completely about it. It amazes me how "obscure" it is when it's a fantastic replacement for ST, VSCode, Atom, Brackets, and dare I say, even Emacs/Vim.
First: I love ST. It is an amazing software that runs just as good on Mac/Linux/Win. In a pinch I will download and use it and never complain. Python extensibility is also great, since Python is the language I do best.
That said, and I hate to be this guy (not really), but... Emacs?
* Text Editing: It is what emacs does best as a program
* Themes: Yes
* Project Handling: Projectile
* IDE Features: These exist
* Source Control Integration: Many people use emacs purely because of Magit, it is a great git UI that people won't know about in general because it is runs on emacs
I copy my ~/.emacs.d to a server, literally my whole environment minus some tty nuisances just works. Everything. All my package versions. Emacs is stable enough that not many things break between big versions 23/24/25.
There are two areas ST wins: Out of the box configuration and performance on very big things. It is true the learning curve to settle all of these features I am mentioning is non-trivial, but Emacs is open source and, like I mentioned, very stable. It has gotten enough right in its initial concept that it will always be a fine environment to mangle up some text in files into whatever you want.
This brings me to my next point, there is nothing really new under the sun regarding text editing. Atom/VS Code/Eclipse/IntelliJ/Emacs -- you want to edit a bunch of files in a directory structure, navigate quickly and easily between files and get context important information about the code. Everything else is just flavors of those same chores, often specialized to a few programming languages or whatever new things are popular at the time (JavaScript / Can we build an editor in JavaScript).
I have seen very little innovation in the field of text editing. Light table was interesting, and its no surprise it is very Clojure/Lisp oriented. I am in a giant lisp machine when editing code in emacs, I can whack out a lisp expression anywhere and emacs will faithfully evaluate it for me.
Next point: If you work in a language or big project you need a way to navigate and generate lots of boiler plate in some languages (Java). IDEs help there, but...
Final point: The speed with which we write text as programmers is not the limiting factor of how much software we can produce and never has been.
My conclusion was to invest in one editor that has been around a long time and just not worry too much about it. I can use emacs in 20 years probably. Who knows about atom or vs code or whatever. So it isn't a pro emacs, you should use emacs reply to you, but that over the long run, using the same system to edit text is probably worth it. Stick with one thing and ignore everything else unless you are forced to use some IDE, and even then really try to avoid it. Even then I am pretty sure I could do my job with Gedit or Notepad without much of a productivity hit.
> there is nothing really new under the sun regarding text editing
This may be true in for single heroic innovations, but sometimes the 'new' can emerge from successive refinement. I find this to be the case for IntelliJ. Working in it in static languages (at least the ones it knows well) just feels to me quite different from merely 'editing text'. The depth of code intelligence, combined with hundreds of small refinements in the way commands like refactoring work, affords a sense of working with syntax and structure, not 'text'.
> The speed with which we write text as programmers is not the limiting factor of how much software we can produce and never has been.
Again what IntelliJ adds for me isn't 'speed', but a cognitive sense of moving up the abstraction hierarchy. I'm thinking in terms of things like 'add a parameter to all call sites' much more than I am editing 'text'.
(caveat: I did use vim quite extensively many years ago, but never got beyond the learning shortcuts phase with emacs. It's possible either of the big 2 have similar refactoring and code intelligence packages available now)
I agree that finding an open source, well established and powerful editor is an investment worth making. That basically means vim or emacs. Once over the learning curve, you're setup for long term productivity gains and stability. Since neither editor is going anywhere and they run on pretty much anything.
But for many people, the initial learning curve just isn't worth it. Sublime, Atom and VS Code are all very popular because you just install them and start coding.
I'd love to see someone shake up the space with a "modern" take on emacs and vim: native, fast, powerful, very configurable, terminal based, but also with a conscious view on the initial learning curve and out of the box usefulness.
But when you're on Windows, boy you have to do a LOT to get it to just work. I tried it (and spacemacs, as I'm quite familiar with vim) last month for doing some python work on Windows... I just gave up after 2 days.
>That said, and I hate to be this guy (not really), but... Emacs?
I intentionally didn't include console editors, totally different beasts. Never used emacs, only learned vim and only touched the surface, mostly use it when I ssh to remote machines. The pinnacle of flexibility and responsiveness but the learning curve... it's just too much for me.
You're right though, it's a great investment and as the years pass and mouse usage takes its toll on my right hand fingers, keyboard only editors look even more appealing. Whenever though I sit down and try to code in vim I find my productivity plummeting. I know once I ride the curve things will improve but unfortunately I find it hard to persevere
Maybe grandparent poster just likes Sublime better. If he was an emacs user, would you have posted basically the same thing with "...and I hate to be this guy (not really), but... Sublime?"
Gonna take advantage of having an emacs wizard around -
I love vscode, but agreed, it's bog-slow sometimes, especially when I run in ubuntu. I'm looking around at emacs and I like what I'm seeing, but something that perhaps seems silly is still a bit of a turn off for me - it's pretty effing ugly. I don't mean in the theme sense, I mean in all the stuff cluttering the codepanes.
In VScode I usually ctrl+k z for "zen mode," where the only thing you see is the tabs of your open files, and the code. ctrl+shift+e opens my file explorer when I need it, ctrl+b puts it away (or ctrl+p to go straight to a filename). Same for terminal, ctrl+`, do a git thing, ctrl+` buh bye. Anything similar for emacs? That level of quick control over the UI?
I think if you work on servers a lot, then it's a major advantage to use something like emacs or vim, because your editing environment is 'just there'. But heaps of developers rarely, if ever, find themselves in a terminal, so the portability advantage just isn't there for them.
I prefer VSCode if the hardware can handle it, but otherwise Sublime is my goto. If Sublime ever had as good Git support as VSCode I would permanently switch back to Sublime
Honestly out of the box Git management for VSCode is really good. I'm surprised how quickly it got integrated to my regular workflow, and I'm a terminal gitter to boot.
If you want git support out of the box, please give me a thumbs up on this PR.
https://github.com/sublimehq/Packages/pull/1126
If you can read sublime-syntax files, code review is appreciated as well.
With this package, you can set Sublime to be your git editor like this:
I prefer VSCode mostly for the intellisense/auto-complete.
As far as git is concerned, I use it from the command line an cannot understand why anyone would want to interact with git from VSCode or any other text editor.
Have you ever tried TextMate? Since like me, you don't like "IDE-like features" I can imagine TextMate 2 could be a better fit than Sublime, especially in respect to file management. And a lot of Sublime bundles are compatible with TextMate (and the other way around of course, since these bundles originate from TM)
Sublime Text is among the best pieces of software I've used. I bought the license a couple of years ago, and would gladly pay the same amount again.
I love its core functionality: speed and stability, search, command palette, file navigation, Goto. I've used a number of editors over the years, and none have felt as fundamentally sound as Sublime Text.
The best feature of all is the Python plugin API. Sublime lacks some OOTB functionality of newer editors, but the plugin ecosystem makes this a non-issue if you're willing to invest in extending your editor. If you write code 6+ hours a day, you should be. Git integration (GitGutter and GitSavvy) is awesome, as is linting (SublimeLinter) and project management (ProjectManager).
I wrote an HTTP client plugin for Sublime called Requester (https://github.com/kylebebak/Requester) in a few thousand lines of code. It matches Postman, Insomnia, Paw et al. on features, and in my opinion handily beats them on usability. It's the plugin API that makes this possible.
Here's my guess on what Jon Skinner set out to do with Sublime Text: build a rock-solid text editor and make it as extensible as possible. Until someone does this better, Sublime is the best editor out there.
Sublime just makes editing fun for me. Especially with the ctrl+d multi-selection.
When it comes to editors, there's definitely a big spectrum of how much it does vs how lightweight/simple it is, and I think Sublime Text, for a majority of my usecases at least, is in the sweet spot.
Don't get me wrong, full fledged IDEs are useful sometimes too, but every time I go to use them, I always spend half my time searching and fighting the program instead of being productive. That's what I mean by Sublime making programming fun. Things don't get in your way and everything is very clean. Sure it may do less, but at least it doesn't drown you in features you don't use either.
The plugin API seems powerful enough but last time I tried to play with it, I didn't get into the groove of things because docs were incomplete/not-up-to-speed/blog-posts-elsewhere-also-often-outdated, all this combined with Python-the-language it felt a bit too fickle/messy to me to get serious --- there was no comparison to the quite brilliant docs at https://code.visualstudio.com/docs/extensionAPI/overview when I weighed my options ---
But now that 3 is out of beta, I'll take another look and once again hope for an exhaustive, complete, up-to-date and comprehensive documentation of plugin development
I've found the docs to be complete but lacking in examples.
Examples often say more in 10 lines of code than a page of docs, but I didn't find this to be an issue. To write Requester, I cloned plugins with features I wanted to implement (e.g. GitSavvy) and used them to complement the docs.
I think the docs could be improved with examples of small useful plugins that touch on various areas of the API. This might be a good project for the community.
In the past few months, I see some popular linux softwares started to using AppImage (https://appimage.org/) to distribute prebuilt binary. Not sure if it is a good option for SublimeText.
It's easy to write a PKGBUILD for Arch, and IDK RPM but writing a Debian package is not that hard too, I've written a .deb that installs all the software I use on Ubuntu Gnome and it's just a directory and two or three files. Its docs could use a bit of help though, the Debian handbook is sometimes very superficial.
I vastly prefer it to hunting for executables on websites, thank you. And there isn't that many relevant distress to target, especially with things like Flatpack etc.
I agree, too many just ship a deb or a simple archive, which is not the best update experience for non-Ubuntu users, even if i.e. the AUR solves most of the pain.
"One of the areas I'm especially proud of in Sublime Text 3 is performance". I totally agree with this statement. Writing software in sublime has certainly made my life easier. Kudos to Jon and team.
I opened 70mb file on a macbook air the other day, and apart from around 7 sec loading time, i didn't notice that it is any more than a 100 kb just by the UI feel. Really great job.
It's a superficial reason, but I've gotten very used to them in Emacs, IntelliJ IDEA, VS Code and Atom, yes, I'm still using all of them interchangeably :-(
I find it as superficial as enjoying your editor font. It definitely matters to many of us I think. Sublime has a lot to be desired on the font rendering front from my perspective. I will definitely revisit Sublime once they tackle that presumably in 3.1 or 4.
Kudos to the ST team for never trying to patent or sue random companies for using the multi-select feature. That feature alone has helped improve so many editors.
No, it wasn't. I believe TextMate had a feature where you could edit multiple lines at once, but it was part of a column selection mode, it certainly wasn't free form multiple selections.
Multiple Selections were one of the earliest core features built for Sublime Text, and weren't inspired from other software. I don't think TextMate existed when I implemented this.
EDIT: Leaving the original comment below for posterity, but it looks like the TextMate article I found on this doesn't predate ST's multi-select, so I have no idea which is true. I'll just take the ST devs at their word :)
Interesting. TIL
It even looks like TextMate implemented the individual copy/paste buffer for each cursor correctly as well, something that VSCode had horribly wrong the last time I tried to use it.
Do you know if this only worked with the cmd+click cursors, or did it also support the cmd+d mode to select the same word in multiple places?
Indeed, they at the very least made it known / very popular to use. I realized JetBrains IDE's have support for it as well and it comes in really handy from time to time.
I honestly can't believe I'm saying this, but: can you please enable me to buy a new license for 4.0 even though it may not even be on the road map yet? Or switch to / enable a subscriber model which is paid yearly and gives access to all upgrades?
I rely so much on sublime for my day to day work and I fear the $80 or whatever I paid for it whenever ago is too cheap for the amount of value I'm getting out of it, and I'd hate to see this magnificent piece of software fall by the wayside because of an unsustainable business model.
Of course, if the business is perfectly sustainable then you know, carry on as you where.
I understand your appreciation for the software but begging for another subscription fee? One feature here is that the authors charge a normal fee and are not greedy in your pockets, like 1Password and many others.
I really do appreciate the classic software pricing.
It could be a higher fee, or more frequent but I'm really tired of all the Recurring costs!
Thing is, software unlike say a book or a movie has sometimes significant maintenance costs. There are always bugs to be fixed, security vulnerabilities are found, third-party libraries need to be upgraded and so on.
The danger of the one-off model is that it sometimes creates the wrong incentives. Features and even bug fixes get pushed into newer versions, which may even delay their release until there's enough of them to justify a new version.
A good example of this going awry is the RAW file processing for Photoshop (pre-subscription). Newer cameras would get added to new versions of the Camera Raw plugin but you needed a new version of Photoshop to use the newer Camera Raw versions.
I honestly don't mind the subscription model and I think Jetbrains has about the best one of all: you get constant acess to upgrades. When you choose to stop subscribing, that simply locks in the latest version you can use (ie you don't lose access entirely).
The problem is many companies price subscriptions wrong. They say "our software costs $600 so we should charge $50/month". Because, you know, recouping that cost in a year is somehow reasonable.
Software is something that needs to be continuously developed and maintained. Charging a one-time fee is a fundamentally unsustainable approach. We all have to face reality and start paying for software as a subscription.
Now, that will likely end the bubble of "I can buy 100 apps, most of which I'll never use", which we have been in for the last 20 years or so. But perhaps the few apps that people will pay for will become better as a result. I'm hoping for it.
For a piece of software that enables your career, helps you to provide for yourself and/or family, that you probably utilize for thousands of hours over a given year?
ST3 is continuously improved. They are developers. They eat. They have families. Just like you receive a salary, because the software you work on, probably is never done. Why would anyone feel entitled to improvements for a flat rate? Is that not greedy?
Exactly, for every one person like this there are probably many who would not renew if they went subscription. It's not like they rely entirely on new customers, the company only has two employees and I'm sure ST3 will be out for a few years and then ST4 will come along. Software companies existed long before "cloud licensing" became the norm.
Noone's stopping you from buying more licences, if you really want to support the dev. I think it's overpriced as it is (as another commenter mentioned, considering the competition is FOSS), but I might buy it one day, when I have more disposable money (assuming I won't have switched to VSCode or $hotNewThing by then). I really do like Sublime, and I'm happy 3 is out of beta, but seeing the userbase migrate to Atom/VSCode is worrisome, and makes me doubt $80 is worthwhile investment (I'm mostly worried about third party plugin devs, which was once Sublime's biggest strength).
I use Sublime and paid for it a few years ago. That said, I also use VS Code which I really like for certain things. I actually use both of them daily and simply get different utility from them. If Sublime went to subscription then I would make do with other products. VS Code has a robust plugin ecosystem and I see that growing in the near future. I honestly think Sublime will eventually end up as FOSS. Whether that is from a drop or increase in subscribers I don't know.
Can someone please explain to me why $80 for Sublime Text is a good price for a text editor?
I'm not flaming, I genuinely want to know. I've tried Gedit, Atom, VS Code, Notepad++ and I fail to see what Sublime offers over those to justify the price.
>I'm not flaming, I genuinely want to know. I've tried Gedit, Atom, VS Code, Notepad++ and I fail to see what Sublime offers over those to justify the price.
It's better than Gedit in every way, it's way faster and more lightweight than Atom and VS Code, and it has a far better plugin ecosystem and functionality than Notepad++.
It's highly likely that OP simply stumbled upon it, or someone recommended it, and now he learned it and is used to it and knows how productive it can be.
Thing is, same is true for any other good IDE, of which there are plenty.
Personally, it always blows my mind that people don't use VIM :) if they actually spent 5-20hours learning VIM correctly they would not touch these inferior pretty looking UIs
I bought a license simply beacuse Sublime Text was the only editor that could open a wikipedia json data dump. I installed many editors before I more than willingly paid for Sublime.
It has almost all of the features of the Electron based editors (aka Atom) but with a C++ backend instead of HTML/JS toilet water. So you have all the customization you could ever want with the speed of low level code.
Speed and stability, search, command palette, file navigation, Goto.
And the excellent Python plugin API, which has made the plugin ecosystem so vibrant. Here's one I wrote, https://github.com/kylebebak/Requester, an HTTP client that goes toe to toe with Paw and Postman on features and outdoes them on usability.
I couldn't have have written something like this for any other editor, or any other platform.
I think it is in a similar situation as JavaScript. It is not strictly better than its competitors, but it still manages to attract an entire community of people[1] to contribute actively to the project and its popularity.
Nothing is faster for me when opening gargantuan text files. It's never broken for me and never lagged either. I think that's pretty impressive, not to mention the customizability options.
It's an organic, artisanal text editor lovingly hand-carved from gap-buffer wood by craftsmen from a remote Tibetan village. A steal at thrice the price!
What about the idea to sell 'silver/gold/diamond supporter' licences for 100/200/300$ to people who _really_ love your software?
I am not even talking about adding some special features, just enable people to pay more than the normal price and perhaps just add a nice 'Thanks for your extra support' badge to the 'Info' menu.
Totally. I bought my license in 2013 and just realized that I didn't even have to pay the 3.0 license upgrade fee! I have used Sublime daily for almost 5 years now and I almost feel guilty for paying so little. I'd be more than happy to pay for a future 4.0 upgrade fee now.
I'm not a ST dev, I have no financial interests in ST becoming more expensive or changing to a (for the company) more lucrative business model. I have tried alternative editors, anything from vi and emacs to VSCode and Atom, but nothing hits the marks for me as ST does. It has – in my opinion – great UX, its speed and efficiency is unmatched in the GUI editor space, and my favorite feature: it has rock solid buffer persistence.
I can't tell how many times ST has saved me from system crashes and just me being an idiot and restarting everything before saving anything, or removing a file but ST keeping a buffer. I've come to rely on this, and it's rock solid. Not once in the years since I started using it (I believe I bought my first license in 2012) have I encountered a situation where ST lost my data. I've never experienced this with any other editor (I'm sure vi and emacs can do this, but in years of trying, I can't come to grips with their UX – they're just not for me) and this feature alone has paid for the price of admission for me, many many times over.
In short – I don't care that there are FOSS alternatives. I don't care that there are alternatives that are "better" by some measure. Until they can match these three things, in increasing order of importance, they will never compete with ST for me:
- Great UX
- Speed and efficieny
- Rock solid buffer persistance, even for unsaved files
Someone in this thread suggested I buy licenses and donate to a local high school. I'm going to seriously look into this as a viable way to both support the company producing ST, as well as hopefully enabling kids to learn programming, or write novels, or whatever they want to do with the software.
Agreed. I am a very appreciative Sublime user as well and want to ensure your business is successful.
I started with Textmate during the Rails craze and transitioned to Sublime due to the portability of themes etc. I think I'm still using my 10 year old TM theme.
Thank you for the continued dedication to this project.
Amusingly, your 10 year old TM theme probably shows different/inaccurate colours than it did in TM unless you went to the trouble of converting it to sRGB for Sublime.
I concur with this. I'm appreciative of Atom -- and recommend it to folks who aren't professional programmers and can't imagine paying for a text editor -- and I've heard similar great things about VS Code, but ST and its ecosystem has just been so dependable for me. It was inconvenient to switch over from TextMate to ST initially, but ended up being a great move overall. I haven't yet seen anything on the horizon that would seem like the next phase from ST for me.
I left VIM after 20 year to VS Code. I find that the ecosystem at VS Code to be the best I have ever seen. Great job by Microsoft and I use it on my Linux box all day.
Yes. They could make some kind of small cloud service to pay for on a monthly/yearly basis. I would gladly pay for a service that would allow me to share my Sublime settings, addons and projects across all my Sublime installations. This can be done either way but I would happily pay Sublime devs for that.
You should buy multiple licenses of Sublime Text 3.0
I'm in a situation where if I had $10 or $80 extra, I would use it to buy baby supplies, not software. Many others are in the same situation, or worse (thinking of those in developing countries where $80 represent a week's worth of savings).
I agree on the point that useful software/service providers must have a sustainable business model, but I see your point about $80 being too cheap as just one data point (not that you were claiming otherwise, and you did appreciate the value that you get). There are many people for whom spending $80 every few years may be a bigger burden too. Subscriptions, without significantly lower per year prices, also favor the ones for whom these aspects don't matter as much.
I just wanted to put these points across since a single price probably may not well serve all user classes and the developer/company.
I would also like if the developer would agree to release the source code under a FLOSS license should he find working on Sublime Text is no longer worthwhile for him (could be financial but could also just be because he has lost interest in developing it, etc).
I don't feel like Sublime Text has the development momentum to justify the subscription model.
That isn't necessarily bad; it's a great editor and I've been happy to pay for all versions of it.
But if I am paying an ongoing, continual fee, I expect rapid delivery of updates and new features. I pay for an IDE from JetBrains, and they deliver solid incremental improvements and bug fixes, continuously. So I feel the continual fee is acceptable.
Sublime Text is known for going on hiatus for months at a stretch, with no or negligible updates. That would irritate me as a paying subscriber to the software; it doesn't bug me when I pay a lump sum for the big milestone releases.
I think I'm going to start buying licenses for my interns and students. It's an investment in our future. Today's interns and students are tomorrow's senior devs. Best to start them off proper.
Same here, I get wayyyyyy more than $80 of usage out of this software. I'm very very appreciative of the great work that has gone into this product and don't want it going any place!
Agreed, I just paid my upgrade fee and it seemed too small.
I feel ST could have a checkbox during checkout to add an additional $50 or something in that range. "I'd like to be a supporter for an extra $50". I'm pretty sure I would opt-in to that, but maybe I'm just saying that now because there isn't such an option....
Also, I don't see Sublime in the MacOS App store. I'd suggest it get added there, even if you have to charge more due to the percentage that Apple takes.
It has worked in the past, for example: I would consider the recent FontAwesome 5 kickstarter campaign a huge success both from a funding point of view and the backers getting what they wanted. This was only really possible in my opinion due to the reputation Dave Gandy built up by releasing the open source version of FA prior. One needs only to look at the myriad of failed software kickstarters for examples of what happens when a unknown person who hasn't proven they are capable of delivering what people want tries the same thing.
It fell by the wayside because 2.0 was the HL3 of text editor releases, IMO. Open sourcing it was too little, too late. Even though Sublime Text has had long periods of inactivity, the beta releases every quarter or two were just enough to keep people who loved the editor hooked. TextMate lost people like me because there was, for a long time, zero indication it would continue being developed.
I use packages from ST almost every day and plus I wouldn't have gotten my first job without Will (thanks for hiring me even after seeing all that terrible code I wrote), so I can actually say my life would be a lot different without his influence. I'm really happy he's officially part of the team.
[0] https://packagecontrol.io/
[1] https://www.sublimetext.com/blog/articles/sublime-text-3-bui...
https://github.com/jisaacks/GitGutter
Doesn't even appear in the installable list now. Hopefully he'll get some of these hickups with package manager sorted.
Package Control is open source and contributions are welcome! We finally get to rip out support for ST2 and Python 2.6 now also!
- It's fast and responsive, can handle large files and personally I've never seen it leaking memory or crashing
- Love the goto anything and command palette, brilliant
- Text editing is great and can be easily enhanced with existing plugins
- Theming is great
- Project handling is a bit weird, but once you get the hang of it it's fantastic
I don't do use IDE-like features (auto-complete, linting, compiling, etc.) nor integration features (version control for example) so I can't say how it fares in that aspect.
Recently I tried VSCode and Atom. They are portable and feature rich out of the box, but God are they slow and memory hungry. I can definitely see the appeal for web devs but it doesn't work for me, I value responsiveness above all else (that's the main reason I avoid dedicated IDEs)
This isn't as a knock on ST, which I also like, and might even sometimes prefer for pure writing or temporary notes. But it doesn't even have printing out of the box, come on. For me that's too modern.. plugins are nice, but I guess I prefer UE to ST like I preferred old Opera to Firefox.
Maybe it is different now, but UE used to require an internet connection for the registration... or you had to email your info for offline codes.
I have a bunch of isolated machines at work, physical and virtual, and got tired of dealing with UE and its registration requirements. Especially when ST gave a license key file I could copy around as needed.
So I switched. But yeah, I remember UE was a really good editor. Now I'm happy with ST.
A long time ago (>10 years) but then I mostly used IDEs for development. Didn't know it was still out there, I'll may give it another try, thanks
That said, and I hate to be this guy (not really), but... Emacs?
* Performance: Acceptable on modern day
* Goto Anything: Helm/Projectile, command palette = M-x
* Text Editing: It is what emacs does best as a program
* Themes: Yes
* Project Handling: Projectile
* IDE Features: These exist
* Source Control Integration: Many people use emacs purely because of Magit, it is a great git UI that people won't know about in general because it is runs on emacs
I copy my ~/.emacs.d to a server, literally my whole environment minus some tty nuisances just works. Everything. All my package versions. Emacs is stable enough that not many things break between big versions 23/24/25.
There are two areas ST wins: Out of the box configuration and performance on very big things. It is true the learning curve to settle all of these features I am mentioning is non-trivial, but Emacs is open source and, like I mentioned, very stable. It has gotten enough right in its initial concept that it will always be a fine environment to mangle up some text in files into whatever you want.
This brings me to my next point, there is nothing really new under the sun regarding text editing. Atom/VS Code/Eclipse/IntelliJ/Emacs -- you want to edit a bunch of files in a directory structure, navigate quickly and easily between files and get context important information about the code. Everything else is just flavors of those same chores, often specialized to a few programming languages or whatever new things are popular at the time (JavaScript / Can we build an editor in JavaScript).
I have seen very little innovation in the field of text editing. Light table was interesting, and its no surprise it is very Clojure/Lisp oriented. I am in a giant lisp machine when editing code in emacs, I can whack out a lisp expression anywhere and emacs will faithfully evaluate it for me.
Next point: If you work in a language or big project you need a way to navigate and generate lots of boiler plate in some languages (Java). IDEs help there, but...
Final point: The speed with which we write text as programmers is not the limiting factor of how much software we can produce and never has been.
My conclusion was to invest in one editor that has been around a long time and just not worry too much about it. I can use emacs in 20 years probably. Who knows about atom or vs code or whatever. So it isn't a pro emacs, you should use emacs reply to you, but that over the long run, using the same system to edit text is probably worth it. Stick with one thing and ignore everything else unless you are forced to use some IDE, and even then really try to avoid it. Even then I am pretty sure I could do my job with Gedit or Notepad without much of a productivity hit.
edit: formatting
This may be true in for single heroic innovations, but sometimes the 'new' can emerge from successive refinement. I find this to be the case for IntelliJ. Working in it in static languages (at least the ones it knows well) just feels to me quite different from merely 'editing text'. The depth of code intelligence, combined with hundreds of small refinements in the way commands like refactoring work, affords a sense of working with syntax and structure, not 'text'.
> The speed with which we write text as programmers is not the limiting factor of how much software we can produce and never has been.
Again what IntelliJ adds for me isn't 'speed', but a cognitive sense of moving up the abstraction hierarchy. I'm thinking in terms of things like 'add a parameter to all call sites' much more than I am editing 'text'.
(caveat: I did use vim quite extensively many years ago, but never got beyond the learning shortcuts phase with emacs. It's possible either of the big 2 have similar refactoring and code intelligence packages available now)
But for many people, the initial learning curve just isn't worth it. Sublime, Atom and VS Code are all very popular because you just install them and start coding.
I'd love to see someone shake up the space with a "modern" take on emacs and vim: native, fast, powerful, very configurable, terminal based, but also with a conscious view on the initial learning curve and out of the box usefulness.
But when you're on Windows, boy you have to do a LOT to get it to just work. I tried it (and spacemacs, as I'm quite familiar with vim) last month for doing some python work on Windows... I just gave up after 2 days.
I intentionally didn't include console editors, totally different beasts. Never used emacs, only learned vim and only touched the surface, mostly use it when I ssh to remote machines. The pinnacle of flexibility and responsiveness but the learning curve... it's just too much for me.
You're right though, it's a great investment and as the years pass and mouse usage takes its toll on my right hand fingers, keyboard only editors look even more appealing. Whenever though I sit down and try to code in vim I find my productivity plummeting. I know once I ride the curve things will improve but unfortunately I find it hard to persevere
I love vscode, but agreed, it's bog-slow sometimes, especially when I run in ubuntu. I'm looking around at emacs and I like what I'm seeing, but something that perhaps seems silly is still a bit of a turn off for me - it's pretty effing ugly. I don't mean in the theme sense, I mean in all the stuff cluttering the codepanes.
In VScode I usually ctrl+k z for "zen mode," where the only thing you see is the tabs of your open files, and the code. ctrl+shift+e opens my file explorer when I need it, ctrl+b puts it away (or ctrl+p to go straight to a filename). Same for terminal, ctrl+`, do a git thing, ctrl+` buh bye. Anything similar for emacs? That level of quick control over the UI?
I think if you work on servers a lot, then it's a major advantage to use something like emacs or vim, because your editing environment is 'just there'. But heaps of developers rarely, if ever, find themselves in a terminal, so the portability advantage just isn't there for them.
The shortcuts make it a non-starter for me.
Having to configure stuff even more so.
With this package, you can set Sublime to be your git editor like this:
As far as git is concerned, I use it from the command line an cannot understand why anyone would want to interact with git from VSCode or any other text editor.
I love its core functionality: speed and stability, search, command palette, file navigation, Goto. I've used a number of editors over the years, and none have felt as fundamentally sound as Sublime Text.
The best feature of all is the Python plugin API. Sublime lacks some OOTB functionality of newer editors, but the plugin ecosystem makes this a non-issue if you're willing to invest in extending your editor. If you write code 6+ hours a day, you should be. Git integration (GitGutter and GitSavvy) is awesome, as is linting (SublimeLinter) and project management (ProjectManager).
I wrote an HTTP client plugin for Sublime called Requester (https://github.com/kylebebak/Requester) in a few thousand lines of code. It matches Postman, Insomnia, Paw et al. on features, and in my opinion handily beats them on usability. It's the plugin API that makes this possible.
Here's my guess on what Jon Skinner set out to do with Sublime Text: build a rock-solid text editor and make it as extensible as possible. Until someone does this better, Sublime is the best editor out there.
When it comes to editors, there's definitely a big spectrum of how much it does vs how lightweight/simple it is, and I think Sublime Text, for a majority of my usecases at least, is in the sweet spot.
Don't get me wrong, full fledged IDEs are useful sometimes too, but every time I go to use them, I always spend half my time searching and fighting the program instead of being productive. That's what I mean by Sublime making programming fun. Things don't get in your way and everything is very clean. Sure it may do less, but at least it doesn't drown you in features you don't use either.
MarkdownEditing (https://github.com/SublimeText-Markdown/MarkdownEditing), optionally combined with Distraction Free mode, is my preferred setup for anything that's not code: docs, blog posts, prose, etc.
But now that 3 is out of beta, I'll take another look and once again hope for an exhaustive, complete, up-to-date and comprehensive documentation of plugin development
Examples often say more in 10 lines of code than a page of docs, but I didn't find this to be an issue. To write Requester, I cloned plugins with features I wanted to implement (e.g. GitSavvy) and used them to complement the docs.
I think the docs could be improved with examples of small useful plugins that touch on various areas of the API. This might be a good project for the community.
Same here... In fact, I just did plunk down my money again.
Looks like I'm going to have to. Only free upgrades to people to bought after 2013...
Major kudos to these guys for distributing their software properly on Linux!
Major kudos to these guys for enduring distributing their software properly on Linux!
Deleted Comment
See https://github.com/tonsky/FiraCode
It's a superficial reason, but I've gotten very used to them in Emacs, IntelliJ IDEA, VS Code and Atom, yes, I'm still using all of them interchangeably :-(
Multiple Selections were one of the earliest core features built for Sublime Text, and weren't inspired from other software. I don't think TextMate existed when I implemented this.
Interesting. TIL
It even looks like TextMate implemented the individual copy/paste buffer for each cursor correctly as well, something that VSCode had horribly wrong the last time I tried to use it.
Do you know if this only worked with the cmd+click cursors, or did it also support the cmd+d mode to select the same word in multiple places?
Regardless, kudos to TextMate as well :)
I rely so much on sublime for my day to day work and I fear the $80 or whatever I paid for it whenever ago is too cheap for the amount of value I'm getting out of it, and I'd hate to see this magnificent piece of software fall by the wayside because of an unsustainable business model.
Of course, if the business is perfectly sustainable then you know, carry on as you where.
I really do appreciate the classic software pricing.
It could be a higher fee, or more frequent but I'm really tired of all the Recurring costs!
The danger of the one-off model is that it sometimes creates the wrong incentives. Features and even bug fixes get pushed into newer versions, which may even delay their release until there's enough of them to justify a new version.
A good example of this going awry is the RAW file processing for Photoshop (pre-subscription). Newer cameras would get added to new versions of the Camera Raw plugin but you needed a new version of Photoshop to use the newer Camera Raw versions.
I honestly don't mind the subscription model and I think Jetbrains has about the best one of all: you get constant acess to upgrades. When you choose to stop subscribing, that simply locks in the latest version you can use (ie you don't lose access entirely).
The problem is many companies price subscriptions wrong. They say "our software costs $600 so we should charge $50/month". Because, you know, recouping that cost in a year is somehow reasonable.
Software is something that needs to be continuously developed and maintained. Charging a one-time fee is a fundamentally unsustainable approach. We all have to face reality and start paying for software as a subscription.
Now, that will likely end the bubble of "I can buy 100 apps, most of which I'll never use", which we have been in for the last 20 years or so. But perhaps the few apps that people will pay for will become better as a result. I'm hoping for it.
ST3 is continuously improved. They are developers. They eat. They have families. Just like you receive a salary, because the software you work on, probably is never done. Why would anyone feel entitled to improvements for a flat rate? Is that not greedy?
Dead Comment
I'm not flaming, I genuinely want to know. I've tried Gedit, Atom, VS Code, Notepad++ and I fail to see what Sublime offers over those to justify the price.
It's better than Gedit in every way, it's way faster and more lightweight than Atom and VS Code, and it has a far better plugin ecosystem and functionality than Notepad++.
I'd pay triple the price.
Thing is, same is true for any other good IDE, of which there are plenty.
Personally, it always blows my mind that people don't use VIM :) if they actually spent 5-20hours learning VIM correctly they would not touch these inferior pretty looking UIs
And it's fast, it's small, and it's got a lot of packages. What more do you want?
And the excellent Python plugin API, which has made the plugin ecosystem so vibrant. Here's one I wrote, https://github.com/kylebebak/Requester, an HTTP client that goes toe to toe with Paw and Postman on features and outdoes them on usability.
I couldn't have have written something like this for any other editor, or any other platform.
[1] https://packagecontrol.io/stats
Deleted Comment
I am not even talking about adding some special features, just enable people to pay more than the normal price and perhaps just add a nice 'Thanks for your extra support' badge to the 'Info' menu.
If there was a subscription available that offered some amount of extra features, I probably wouldn't have purchased anything at all.
(Some pretty great replies too – thanks!)
I'm not a ST dev, I have no financial interests in ST becoming more expensive or changing to a (for the company) more lucrative business model. I have tried alternative editors, anything from vi and emacs to VSCode and Atom, but nothing hits the marks for me as ST does. It has – in my opinion – great UX, its speed and efficiency is unmatched in the GUI editor space, and my favorite feature: it has rock solid buffer persistence.
I can't tell how many times ST has saved me from system crashes and just me being an idiot and restarting everything before saving anything, or removing a file but ST keeping a buffer. I've come to rely on this, and it's rock solid. Not once in the years since I started using it (I believe I bought my first license in 2012) have I encountered a situation where ST lost my data. I've never experienced this with any other editor (I'm sure vi and emacs can do this, but in years of trying, I can't come to grips with their UX – they're just not for me) and this feature alone has paid for the price of admission for me, many many times over.
In short – I don't care that there are FOSS alternatives. I don't care that there are alternatives that are "better" by some measure. Until they can match these three things, in increasing order of importance, they will never compete with ST for me:
- Great UX
- Speed and efficieny
- Rock solid buffer persistance, even for unsaved files
Someone in this thread suggested I buy licenses and donate to a local high school. I'm going to seriously look into this as a viable way to both support the company producing ST, as well as hopefully enabling kids to learn programming, or write novels, or whatever they want to do with the software.
I started with Textmate during the Rails craze and transitioned to Sublime due to the portability of themes etc. I think I'm still using my 10 year old TM theme.
Thank you for the continued dedication to this project.
I'd entertain such a model as OP to ensure the ongoing viability of the app.
I'm in a situation where if I had $10 or $80 extra, I would use it to buy baby supplies, not software. Many others are in the same situation, or worse (thinking of those in developing countries where $80 represent a week's worth of savings).
I just wanted to put these points across since a single price probably may not well serve all user classes and the developer/company.
That isn't necessarily bad; it's a great editor and I've been happy to pay for all versions of it.
But if I am paying an ongoing, continual fee, I expect rapid delivery of updates and new features. I pay for an IDE from JetBrains, and they deliver solid incremental improvements and bug fixes, continuously. So I feel the continual fee is acceptable.
Sublime Text is known for going on hiatus for months at a stretch, with no or negligible updates. That would irritate me as a paying subscriber to the software; it doesn't bug me when I pay a lump sum for the big milestone releases.
I feel ST could have a checkbox during checkout to add an additional $50 or something in that range. "I'd like to be a supporter for an extra $50". I'm pretty sure I would opt-in to that, but maybe I'm just saying that now because there isn't such an option....
Dead Comment