Sublime Text 3 Beta
sublimetext.com
sublimetext.com
I started to port one of my plugins to Sublime Text 3 beta, but basic things are broken. Importing urllib.request raises an exception on OS X:
>>> import urllib.request
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "X/urllib/request.py", line 2456, in <module>
ImportError: No module named '_scproxy'
Except for a few well-documented edge cases, a properly-built Python behaves the same on OS X, Linux, and Windows. I really hope Jon Skinner gets better at building Python. Dealing with these random platform-specific issues is very frustrating.That said, I am a fan of Sublime Text. (Otherwise what am I wasting my time writing plugins for?) It's like TextMate, but cross-platform and not abandonware. :)
This is no longer true since Textmate 2 has been open sourced. Textmate 2 is now very active, it is common to see a release every few days. See the changelog [1], or the activity of Allan Odgaard on GitHub [2].
[1] https://github.com/textmate/textmate/blob/master/Application...
I actually use TextMate 1.5 more than I use Sublime Text. Unfortunately, TextMate 1.5 was never open-sourced and TextMate 2 broke plugins designed for 1.5. So for me, it is abandonware. :(
Considering that the author clearly went through serious burnout during that time, no, I would not joke about that: http://news.ycombinator.com/item?id=1388905
Sure if you built something people loved, theres ton of pressure to follow up with something just as good.
But it's biology. People get bored, exhausted or uninspired with their projects.
At the end of the day he made a ton of money and built something thousands of people use everyday. That should be more important than having a good sequel. There will always be competitors who will keep customers happy. Thats not his full responsibility forever because he did it once.
Besides, he'll get motivated again one day and do something interesting.
The best quote I've read on the subject was that if people care enough to complain about your product, that means you did something right.
People do take things personally. This isn't constructive criticism we're talking about. It's not even a criticism of the product itself. It's making fun of someone for getting burnt out.
While I see your perspective, I think it's going to get pretty boring around here if we have to walk on eggshells for fear that somebody who probably isn't even paying attention might be offended at a jovial (if accurate) characterization of one of their shortcomings.
If you had serious depression going with your exhaustion at least, you might have had burn out.
The trivialization of burnout is damaging to the victims of burnout.
Burnout a temporary state (by nature) brought on by legitimate causes.
If it was depression, then that is a separate issue with plenty of it's own clinical treatments and reasoning.
You can't deal with burnout by suppressing everyone who brings it up.
It has to be accepted. He has to accept that there are fans of Textmate who are disappointed while being able to appreciate that he accomplished something really great regardless.
He accepted he can't finish the project and open sourced it, which was also a very nice gesture and made the fans quite happy.
There will always be people who are ignorant to the effects of burnout and try to make fun of failed projects. But that doesn't mean it has to be damaging to the project creators.
I’ve been very tempted to switch to ST2, but I realized that the TM2 delay could not have happened if it was open source.
Since then, I’m using Textmate 2 and Vim, and I plan to fully switch to Vim soon: open source, powerful, extensible, large community, lightweight, and multi-platform.
A Kickstarter campaign to raise enough money to pay the ST developer to make ST open-source.
If ST becomes open-source, that solves one of the biggest issues many people have with ST, especially those coming from a vim/emacs background. This is something I know I would pay for, and I believe others would as well.
A Kickstarter campaign to raise enough money to pay Microsoft to make Windows open-source.
If Windows becomes open-source, that solves one of the biggest issues many people have with Windows, especially those coming from a Linux background. This is something I know I would pay for, and I believe others would as well.
A Kickstarter campaign to raise enough money to pay The Government to make Everything Free.
If Everything becomes free, that solves one of the biggest issues many people have with The Government, especially those coming from a Poor background. This is something I know I would pay for, and I believe others would as well.
Anything sounds ridiculous at scale
It also requires a post-scarcity economy. Which, supposedly we could achieve if we worked towards it, but again, that human thing keeps us from doing that.
WooThemes is an obvious example of a company that makes a heap of money selling open source software.
Without going into whether the open-sourcing is good or not, I'd just like to point out that you're wrong about this. I sincerely doubt that Sublime Text has more than, say, 5% marketshare in terms of what people are using. It gets a lot of talk on HN because we tend to a) know about new things and b) overly use Text Editors in favor of IDEs, but this is not reflective of the world at all.
Much more convincing than making analogies which most people can dismiss pretty easily.
What do you think the odds are that Sublime Text sells a million licenses in the next 5 years? I think the equation solves itself from here.
Of course, I'm probably an outlier here.
I think your assumption of 1.1 million installs belonging to 10% users is way off. Many people probably never purchase ST, but still install the Package Manager, especially since ST remains basically usable without paying. I'd think it's closer to 1%.
Of course, that still leaves us with quite a lot of money. To be honest, I hadn't looked at the figure of how many installs the package manager had - I'm pretty surprised (and happy) that ST is this popular. Guess I'll have to keep dreaming.
The open source avenue (awesome as it would be) is effectively stopping any future income for releases.
That means finding an alternative business model for the developer to sustain himself. Sounds like a lot of risk and hassle, if i were the developer, why should i expose myself to that?
The flip side is, for long term adoption, it pretty much has to open source itself.
Really? I don't see IntelliJ Idea suffering much from NOT being Open Source. Or even TextMate for that matter, which still has friends even while being mediocre at launch and 7 years late to show any improvement.
>TextMate was suffering from not being open sourced, and hadn't shown any improvement in 7 years. So he open sourced it, and it is now actively developed by the community.
I follow the repo but I don't see any exciting action. Maybe in a few more years (which is my definition of stagnating).
>IntelliJ CE has been open source for quite some time now.
Yes, but that's just a gimmick. All the interesting stuff is in the commercial edition, and it's not like IDEA is managed like an Open Source project, it's just released as one (like Oracle's MySQL).
Had TM continued in its previous, active commercial mode, it may be ever more popular today, not having given alternatives a chance to in turn become popular.
Yeah definitely. Idea & Visual Studio (among others) are top quality products, and yet both nothing more than a chapter 11 filing away from being vague memories.
Contrast adoption of Idea vs Eclipse.
Consider when Windows is no longer relevant, VS will necessarily degenerate to being a niche product (even though it is arguably one of the finest IDEs available at any price today).
I just wanted to pick a bone with something you said though:
>> Some times there are benefits to having a small closed source, private paid team of professionals writing software
This is a comment about development methodology - the Cathedral and the Bazaar. Take out the words "closed source" (e.g. think Chromium browser) which have no baring on your statement, and then i agree.
I'm probably an outlier in that I work on lots of different systems, but I wouldn't be surprised if the 1.1 million package manager installs represents far less than 1.1 million uniques, and that's before you start adjusting down for pirates and non-paying users who just live with the nag dialog.
unless you.on_a_mac
comment.does_not_applyIn July 2002, Ton managed to get the NaN investors to agree on a unique Blender Foundation plan to attempt to open source Blender. The "Free Blender" campaign sought to raise 100,000 EUR, as a one-time fee so that the NaN investors would agree on open sourcing Blender. To everyone's shock and surprise the campaign reached the 100,000 EUR goal in only seven short weeks. On Sunday Oct 13, 2002, Blender was released to the world under the terms of the GNU General Public License.
I say open source it, but continue to sell licenses for it.
My point is that just because it's commercial software doesn't mean it should be closed source. If it was open source it could be 'easier to steal', but I bet most people seriously using it would still buy it. Anybody that took the time to patch the source would never have bought it anyway - so there is nothing lost.
I'm not sure why I'm getting down voted. For a bunch of open source evangelists that's pretty hypocritical.
My point was that it's already freely available today. Just go to the site and download it.
For a bunch of open source evangelists that's pretty hypocritical.
wat?
Two levels of wat, really. You think Hacker News readers are open source evangelists? And you think downvoting is hypocritical for open source evangelists?
And it makes ST another bloody Open Source project, designed by a community, to fall by the wayside and stagnate like Gnome, Emacs, Vim etc...
But in another sense, people are still using vim/emacs 20+ years later. Not everyone, which is why I think a modern reboot of them is in order, but I don't think you can say the same for much commercial software from 30 years ago.
For example, with all it's lisp scripting capabilities and 30+ year history, Emacs is an early nineties editor UI, UX and codebase wise.
One of the reasons it works so well is that it has a lot of code written in C++. With a very specific feature-set of C++, as all single programmer C++ codebases are.
An opensource project would focus in the slower Python part as most open source developers hate C++ and swear by scripting languages. Or would go on countless religious wars about what specific subset of C++ should the project use. They would even waste a lot of time editing out perfectly valid preprocessor macros simply because 'macros are evil'.
So far it has been proven to be better managed by its owner than it could have been by the community.
Let the OSS people improve on Notepad++. You can even setup a Kickstarter for them, and it would be good enough for that project.
If I wanted to extend it in a way that is not supported in the Python API, I simply can't.
However I'm not sure that's one of the biggest issue from people coming from a vim/emacs background.
I'm using Emacs because there is more than one million line of elisp code in Emacs and all its mode and there's no way anything is going to offer anywhere near close what Emacs has to offer.
Just an example: you can search and replace on a regexp and use friggin' Lisp substitution in the replacement. Say I've got this:
foo = 1 bar = 2 ... = . // 96 more lines come here baz = 99
I'm not saying it would be good style or anything to have "code" like that, but if I want to replace it with
foo = 5 bar = 10 ... = . // 96 more lines come here baz = 495
Well.. This is trivial under Emacs. And it's not trivial because that particular use case has been thought of previously: it's trivial because search and replace can use Lisp substitution, which is wild.
There are too many to names but I'm regularly using, under Emacs: real-time validation of XML files using Relax NG, ace-jump-mode, paredit (sweeter than sweet), magit, org-mode, etc.
But, most importantly, instead of having to adapt myself to the "text editor", I can adapt the text editor to myself.
Is ST3 as extensible as Emacs?
How complicated would it be to, say, implement the equivalent of vim's easymotion / emacs' ace-jump-mode to ST3? I'm not asking if someone did it: I'm asking how "complicated" it is for one to be able to adapt his too the way he needs.
I'll try ST, to see what the fuss is about...
In general, ST is pretty easy to write plugins for, as its got a simple API and everything is in Python. It was so much easier that even I wrote plugins for it, back in the days of ST1. I've since written some vimscript, and, let's just say, it's nicer to use a "true" programming language like Python than vimscript.
Here's what I think you should focus on with ST: Multiple Cursors. I've been beating the Multiple Cursors drum for a while, but a vast number of things can be done with them, and they're amazing. Many macros in emacs/vim can be done using Multiple Cursors, with the advantage that they usually work right the first time, and if you make mistakes, you get instant visual feedback so you can fix your mistake, instead of "record and pray" the way you do with vim/emacs.
Seriously, Multiple Cursors are ST's killer feature, in my eyes.
And for everything else, ST simply does all the things you want an editor to do well, and it does them beautifully, easily, and by default.
If we do a vim/ST comparison, I'd say ST wins the "I just want to install something and get to work" battle (easily), vim wins the "I can be amazingly productive with the actual text editing" battle, but ST wins the "I want to do cool manipulations to lots of similar text" because of Multiple Cursors.
Isn't this a clever way to make users buy into a paid upgrade for a stable version of an editor they already bought?
If not for the save your ass by not losing work bit, I like it for not being annoying.
- I run it on Linux, and had an unstable distribution for a while. I had a couple of occasions where the OS hard-locked, but on reboot Sublime started right back up to its last state -- including unwritten changes to multiple files.
- During a move to a new distribution, once I got my old /home remounted, Sublime amazingly did the right thing and again reloaded all of its state from the last operating system. I was expecting to have to re-open 30+ tabs/files and redo all of my user settings. Nope, Sublime did the right thing again.
- An update on my current OS has caused a problem with fuse which is causing my development directory to get unmounted on a regular basis. Sublime doesn't have a problem with this; any files that it loaded from the now-unavailable mount point are still there, the content is still all there, it doesn't freak out, it just marks the file as dirty (letting me know I need to remount that directory again).
- An rsync went afoul and nuked a pile of changes to a local development copy of a site. I was able to retrieve a bunch of my work from Sublime's open tabs.
None of these things are really examples of brilliant new engineering, but, in my experience they're all the kinds of details that too many other programs don't get right. Sublime just always seems to do what I would expect software to do in 2013.
That, plus ctrl-D is beautiful.
If I had to think of something I don't like about it, about the only things would be that occasionally the autocompletion is a nuisance, and occasionally I'll need to open a really really big file and a plugin causes it to stall for a bit. It sounds like the latter problem has been taken care of now in v3.
If Sublime were a bro, I'd always buy his beer. Instead, I'll be more than happy to pay the upgrade price.
I'm happy to pay Jon as long as he keeps cranking out fast, high-quality software. Think of it as a subscription where you still own the software if you want to get out of it.
I paid for Sublime Text 2 with the expectation of continued support of the quality we had during beta, but instead we have waited months for bug fixes which have never arrived. ST2 was essentially abandoned after it left beta, and now we find our money hasn't gone into supporting the product we paid for, it's gone into funding the next one.
As a developer I know this makes excellent business sense, but as a user it feels like I've been tricked. The changelist looks more like a point release, but one we have to pay another 50% for in the hope our bug reports will eventually be acknowledged. Given the past 6 months I have no confidence that'll happen.
Perhaps I'm being unfair - after all, I use ST2 all the time, and I've certainly got my money's worth out of it, even with the bugs - but something about this just doesn't feel right.
Rationally, as a software guy, this seems somehow unfair. After all, even as it was launched and without any further changes, ST2 is a good product at a low price.
But the reality is that I feel the same way as radiac. When I chose to spend real money on a text editor -- not exactly a field where the free competition is lacking -- I did so because I wanted to support and encourage a project that did seem to have a lot of nice little touches and did seem to keep coming out with them. The obvious and abrupt end of the stream of incremental updates the moment ST2 went final does irritate me.
Unfortunately, contrary to the post I just read about how stable ST2 is, I have seen irritating crashes that stopped me using it for some work, and I haven't seen a bug fix even for that, nor any other improvement since I sent the money. I probably won't pay for ST3 at this point, because at least now I've figured out what does crash ST2 and how to avoid it, and fairly or otherwise, the assumption in the back of my mind is going to be that ST3 might make a few minor improvements of the kind we used to get anyway, but if it has any sort of crash or data loss bugs they won't get fixed.
As a prospective user of Sublime Text (3, now), it's interesting to think about how I would feel had I bought ST2 a year ago, and now felt compelled to upgrade. The price is semi-negligible, in terms of how much one pays for a quality tool -- it's a fraction of the price of Komodo IDE or PyCharm, for example -- but the hassle is still annoying.
As Silhouette points out, it really makes one wonder about how long "support" (bugfixes, etc) will last for the current version. I think one of the more interesting questions to arise from this thread has been what the difference is (or should be?) between a point release (vN.5) and version N+1.
That's what I view as honest, "I'm going to work on ST3 to convince you that its worth buying."
I haven't faced the same quality issues you speak of. TM2 has been rock solid for me. The only thing that never felt right was the theme (install Soda) and icon (Yuck, reminds me of Comic Sans)
As both a user and a developer, I don't think it's unreasonable to expect paid software to get support and bugfixes for a while - at least until the next version leaves beta. "Pay an extra 50% and maybe I'll fix the bugs" doesn't seem fair.
[Not that I'm saying this upgrade isn't worth it]
I don't get these price discussions. If you earn your money by programming, I think it is crazy to be cheap on your tools if you can get the job better done using them.
If you program occasionally, then use some free open source editor.
People on construction sites don't use the cheapest tools available for a reason. If you use it to earn money, you shouldn't be short sighted.
If you tell me a Ford Taurus costs $40,000, justifying that by telling you I spent $100,000 on a broken bike doesn't make the former a good deal.
The way I see it, $70 on its own is meaningless. A lot of people are taken aback because it feels like $70 for an advanced text editor. And in many ways, it is that with some IDE flair built-in.
I own a license and honestly still find myself in Notepad++ for a bunch of things. As a professional programmer, I have come to the conclusion that for my purposes it's overpriced. Your mileage ... well, it should vary.
My point is you can't quantify the value or justify the cost in this way. Surely, a $40,000 Ford Taurus provides more value than the $100,000 broken bike, but that doesn't mean the Ford Taurus is priced appropriately for needs.
I'll happily pay for the upgrade if it keeps the author cranking away at a similar pace.
Absolutely.
>Goto to symbol is great, but all other bullet points taste like what I expected 2 to have once it left beta (basically, speed and not letting plugins crash my session).
I bought ST2 without expecting all these features. Taking the effort to add out-of-process plugins? That's more that the TextMate guy has done in all 6 years of dabbling with 2.
On top of that, it has other nice stuff I want. It might be OK calling it 2.5, but it's not a scam by any imaginable stretch of the word.
>Isn't this a clever way to make users buy into a paid upgrade for a stable version of an editor they already bought?
No. Did you find ST2 any less stable than any other editor out there? I use it for a year for working on 3-4 different languages and it never has crashed on me.
So, I appreciate the cynicism but it's misguided here.
This is a discussion about sublime, not other editors. And if other editors have shortcomings, it's not an excuse.
I also think that after paying for software the least you can expect is relatively bug-free code or quick updates to fix them, and a reduced number of crashes. That is, for software that has left beta to be labelled stable.
Yes, but only if by "spreading shit on everyone else" you mean:
1) a comparison between the speed of development/releases of ST (which was the very topic of this comment thread) and that of TextMate.
2) a generic statement that ST2 was as stable as any other competing browser.
So, really NO, not at all. Oversensitive much? As if "the other editors" (of which I only mention _one_) are gonna feel hurt?
>This is a discussion about sublime, not other editors.
No discussion about anything can be made without relating to other things, especially of it's own category.
If someone tells you "is this editor worth it" the only possible answer will take into account the other editors and what they offer.
this, and the rest of API-specific features will add 0.5 to make it completely "worth" the 3.0 tag.
I'm not sure if the beta will conivince me in paying another 30$ for hope that this will some days come.
I just don't see the differences between the two being enough to justify me spending that amount of money, especially not when I'm doing just fine with Sublime Text 2 (and yes, yes, the old Hammer being used as a screwdriver argument will inevitably pop up now I've said that) and have no real reason to switch.
Emacs has been the only editor that has never lost a change for me. Whenever you try to make a modification it checks the underlying file is as expected, and tells you if not. I tried SL2 and it quite happily ignored the fact that the file had changed. I'm also evaluating AppCode and it has perhaps the worst behaviour - it silently updates the editor window. But some of the time it doesn't notice the change and hence overwrites it. Consequently you can't trust the editor.
gedit also notices changes proactively (compared to emacs' reactively) but I don't use it regularly.
Surely not hard to implement (if it's easy to say, it's easy to code, right??)
Weird. I use Sublime Text 2 exclusively across all three platforms. Whenever an open file changes (e.g. I sync to Perforce), it pops up a modal dialog box when I bring that file's tab back into focus. If you're referring to a file that's changed in the background as you're actively editing it, I admit I haven't tried that.
I don't know what mechanism SL uses. A lot of my current work is using sshfs with editing happening on Linux and the endpoint being MacOS. inotify won't work for that, but more paranoid and repeated stats will.
If the fine hasn't been changed in SL2, it just reloads it with a message displayed in the status bar. If it has been edited in SL2, it asks if you want to reload the file.
You do lose the ability to jump to the exact line an error is on which is a mild nuisance but nearly enough to make me stop using ST.
Damn! There goes the whole of the Linux/ARM community!
ARM devices are happening.. without having seen your codebase I can't speak for how hard it'd be to build for a new target, but given that you're targeting win32 and posixy systems already it seems achievable.
Wouldn't you much rather be the badass that works everywhere than snrk at a growing niche?
Android. It's sitting on a desk near you.
A complex resource-hungry IDE is just what the Android platform has been missing.
While you're at it, add Common Lisp support. That is literally the #1 request on the announcement.
Most Android devices are sold free with contract or with low tier phones to people who don't care much about smartphones. As for Android tablets, they don't sell that well, period. That's the huge majority of Android users. A minor one is geeks like us, open source fans, etc, that prefer it to iOS. (And that still leaves tons of geeks preferring iOS).
If you need any proof that the majority of Android users are not that technical, just check these "relative number of active devices": http://developer.android.com/about/dashboards/index.html
Half a year later, only 10 percent have the latest release. And over 50% are two releases behind.
Neither the majority not the minority of Android users are much likely to buy a programmers' editor for their Android phone or tablet.
There have been plenty of interest in Sublime Text 2 builds for Android, I've seen people ask about it for both the Exynos Chromebook and the jailbroken Surface RT.
Amazingly, I can use ALL of my desktop software (except VirtualBox) on Linux/ARM and it's just like using an Intel machine. The only thing missing are proprietary apps like ST that can't have an ARM build generate for it automatically.
If there was one thing that disappointed me about ST2 it was that it wasn't very competent with massive log files and the like. ATM I use an ide for Java, ST2 for nearly everything else (other languages, random text) and less / vi / others for logs and other massive files.
Would love to be able to kill off another tool.
For fun I tried some other editors (this is on OS X):
BBEdit 10.5: instant
vim 7.3: instant
TextEdit 1.8: instant
Textmate 2.0.0a9351: hung the entire app for 15 seconds
ST2: 9 seconds
So yeah, ST3 still seems to fare pretty poorly in this regard.
If he worked out a robust way to have file open performance on par with the likes of vim then I'd upgrade in a heartbeat.
"How well large files are supported is mostly a function of the syntax definition being used. Sublime Text 3 does have performance improvements compared to Sublime Text 2 here, but not significantly so."
Big disappointment for a lot of us.
If I work with many small SQL/XML/whatever files, then I want it to look pretty; but if I open a 100+ mb datadump, then Sublime should be able to open it as plain text without waiting for half an hour.
There are valid text files floating around with sizes above 1gb - why shouldn't I be able to open it, run searches and browse the contents? The computing power can do it, you can map it to memory if needed, I can spare 10gb ram if working on that size of data; but it needs to work reasonably fast.
Turning syntax off helps; simply it's a real pain to switch it on/off manually every time, as I'm working both with small and large files of the same type. I'd like the software to do that automagically based on file size or loading time estimates.
Vim does perfectly fine for the odd occasion I need to do something like that (very large files often mean you're Doing It Wrong™)
I've seen how GDB works, and debugging this way seems much less productive. You don't see your whole source code, and you don't constantly see the values of watched or local variables, etc... Is there a different debugger you use for this task when developing using only a text editor (vim/emacs/sublime)?
I'd ask the reverse of you. Why do you spend time in a debugger at all? For 99% of the bugs logical thinking and a few printfs work faster and better ran blindly running around setting breakpoints and examining values.
Though learning how to use the debugger is a good skill to learn, these days I don't know anyone around me who has ever used a debugger, or even finds a use for it. I think the best tools of our age are really REPL's, which allows you to test out your guesses/hypothesis in the form of snippets.
Personally I have probably used a debugger 5-6 times in my whole programming career, these days I hardly find a use for it.
On the other hand, I find tools like these very useful: https://metacpan.org/module/Devel::NYTProf
Memory stomp bugs. Race conditions.
And some Entrprise OO problems - inspecting 260 layer stacktrace and exploring very complicated structures.
I agree that printf works better than "blindly running around setting breakpoints", but so does pounding a 12-pack of beer and then hitting yourself in the face with a mallet until the solution comes to you.
On the other hand, learning to use a modern, advanced debugger and then applying that skill along with some of that logical thinking can be extremely effective in finding the cause of bugs as quickly as possible.
For languages like Objective-C or Java, I think the 'real men don't need a debugger bro' attitude is nuts. It is different for a lot of newer and/or more dynamic programming languages, which simply don't have debuggers anywhere close to as powerful as those of IntelliJ or Xcode/lldb.
Also I hate writing prints over and over. Sometimes it is imply faster to put a breakpoint, look at the value and then pop it away. As opposed to manually writing the print, then check, and then removing it.
Thats just my opinion though.
Once you learn how to use a debugger properly it is infinitely better than printfs.
I've been programming professionally for nearly 20 years, in languages ranging from Perl to C/C++ to Javascript, and the only times I've used GDB in the last 15 years have been when C/C++ code is segfaulting and I want a stack trace. The rest of the time I use print/printf statements. I've built some pretty successful software this way, some of which you've probably heard of or used.
On the other hand if I were coding exclusively in C/C++, or Java, or using an IDE for my work, I might use a debugger more.
I'm getting up there too. And I know lots of older programmers with very bad habits. Many who have also working on household names. Age+popularity != skill/quality.
Doing that in anything but interpreted and micro applications seems like a massive waste of time and effort(both placing the printfs, recompiling, removing them recompiling.
We've all done it. It doesn't mean its a good way to do it.
And like I said above it can introduce bugs into your code doing so. I remember one case where a printf for debugging changed the memory in such a way as to make an uninitialized variable work. After testing when the printfs were removed the application would stop working.
Introducing code into your code base with the intention of removing it later when there is an easy way to not do so is asking for trouble.
But honestly, visual debugging is nice and all but I don't know if the debugger is really the biggest loss of not using an IDE - for me it's more the code completion, navigation and refactoring support I'm after. You can get most of that going pretty well with Vim but it's a bit of a hassle.
Firing up GDB for those rare segfaults which I don't immediately know the cause of (the last 2 lines I wrote, usually) gives me a stack trace very quickly, and lets me dump the values of the variables in that frame. I rarely need more. That wasn't the case back in my enterprise days.
GDB is very powerful, check out its integration with emacs for example (not something I've used).
I'm also Vim user who has considered jumping to Sublime several times, but never quite managed to achieve escape velocity. (Though I hadn't realised until now that the Vintage package is an open repository)
Some random things off the top of my head:
* No block cursor (the block cursor plugin doesn't really work)
* When you switch between files, it keeps jumping back to insert mode, but you don't immediately notice (especially since there is no block cursor). There's a setting, but I've never been able to make it work.
* Autocomplete and the dot command don't work together
* Macros are flakey
* Visual mode and the dot command don't work well together
Otherwise, here's the issue page: https://github.com/sublimehq/Vintage/issues?state=open
About 25% of those issues annoy me personally. There are a lot of commands that leave the cursor one off, which messes with my muscle memory.
As far as a vim-style editing plugin goes, vintage has by far been the best I've encountered. It's one of the few where it's fairly straightforward to add in the hacky things I've done to vim and still get a similar experience.
The problem is that if you want all the fixes you pretty much have to compile a version with all the pull requests yourself as they don't get merged into mainline in a timely fashion. I would personally be much more keen to fix these things if I knew that my efforts along with everyone else's were expediently dealt with.
I do have vintage_start_in_command_mode set, but that apparently only works on startup (I read somewhere on the forums that it's a per-file setting, whatever that means).
Vintage is pretty good, but I don't agree that it is top shelf - ViEmu and jVi are both better Vim emulators IMO, and Vrapper and XVim are better in at least some regards.
* Set `"vintage_start_in_command_mode": false` in the vintage preferences.
* You can remove the autocomplete on '.', just look through whatever plugins settings or bindings.
Also, make sure you get the plugin VintageEx.
Myself having registered less than a year ago, thinks this update is a little premature. Users in the official forums have been worried for months that development had stalled and all of the sudden an announcement of a paid update for seemingly incremental features? Are we to expect a beta period similar to ST2 or will be be expected to pay for what seems should be a minor release? I for one expected at least 2 years of support for my ST2 purchase. Coupled with the increase in price (which now compares to JetBrains IDEs) I see much fewer reasons to upgrade and/or recommend this to others.
I like textmates uniform OSX style and VIMs uniform terminal style, using the "Tomorrow" theme on both [1].
Although I'm also a part designer so the aesthetics matter to me as much as functionality. If you're measuring functionality I can't imagine sublimes better than VIM.
Sadly I can't run ST2 on our work machines as the RHEL version we use has a libc (glibc?) that is too old. I'm unable to host my own libc due to a binary format change that is incompatible with the system dynamic loader.
It's better than IDEAVim, but certainly ViEmu and jVi are better. Maybe even Vrapper and XVim beat it too.
The advantage of sublime is that it works well out of the box and with package control it is very easy to install any package you may need.
If you decide to give it a try, try sublime 2 with package control (I believe the trial is still free for sublime 2).
There is Vintage mode, but IMO it doesn't work very well. The differences are small but numerous, and it's very annoying when the behaviour doesn't match Vim's. Others have rightly pointed out that many advanced features are missing, but I'm not talking about those - I'm talking about your bread and butter navigation/editing commands.
To make matters worse, while there is the occasional pull request, official development of Vintage mode seems to be at a complete halt.
I purchased Sublime and really, really tried switching to it (I think I gave it about six months), but I had to switch back.
I really liked Sublime but VIM like a good pair of Levis' 501 never goes out of style.
What I liked: well, I didn't actually like anything beside the ease of modifying/adding keybindings.
Some of what I didn't like:
* The whole UI felt wrong from alpha to omega and overly gimmicky: the whole thing relied too much on the mouse and the things that relied completely on the mouse like the options in the search panel were poorly sized/designed. The many roundrects and shades and gradients created a mess that left a very bad impression.
* The underlying engine is very poorly used by ST: just activating vintage mode is enough to tap a lot deeper than the default UI lets you. The engine is great but it only shines when you try to use it as another app. That's weird.
Using Vim is a spoiler, I guess.
I can't reasonably tell you to not make the switch. I have no idea what knowledge you have of Vim but I can say that I find Vim not only extremelly more powerful than ST but also a lot better designed on almost all fronts.
Once the beauty of subsitutions, :global, ranges, Ex commands, text-objects and motions is ingrained in your brain, using ST2 may feel like using (a pretty) TextEdit. Hell, even folding is nicer in Vim.
In the last year, I had the impression that a bunch of people blogged about their decision to switch to ST2 from Vim. Each time, I felt that the blogger didn't use much of Vim to begin with so switching may have made some kind of sense. If you are reasonnably advanced, I don't think there's any reason to switch.
But the find panel is the sole reason I cannot use ST2. Every time I bring it up I can't remember what button does what. And then I get stuck in the panel and have to click to get rid of it. Or hit escape.
But if I hit escape before hitting enter it assumes I didn't want to search after all and scrolls the viewport to somewhere random. Even though the term I wanted to search for is clearly highlighted on the screen.
It's a very very frustrating experience and even my co-worker who uses ST2 every day for the past year or two still gets tripped up by the find panel.
If I had a way to import the TextMate 2 find dialog into ST2 /3 I would buy a license.
couldn't care less about startup time while the speed problem on windows lies in loading/editing files greater than a couple of mb. I start ST only once a day but I load files like a hundred times and I'm not the only one with that workflow :] so to me the last one seems like a higher priority?
On my work laptop (which I have no option to upgrade, and is encrypted) takes a good 9 seconds to start sublime. (Without even giving it a file to open!)
I have to contemplate if I need to open sublime sometimes, and just use notepad instead.
This has been available (using cscope) on VIM and Emacs for ages.
That's a pretty big jump. Not saying it's not worth it.
I'm growing fairly dependent on plugins, though -- I hope the new API isn't too hard for plugin devs to upgrade. Although with most plugins hosted on Github these days, compat is just a pull request away.
Edit: My mistake - I just can't read. It was an $11 increase in price.
edit: it appears I was right and I just misread: the price increased from $59 to $70.
Although it's a silly error, I made the same one, and I know that I bought ST for $59. So I think the problem here is with the wording, not with us.
Edited: I'm dumb.
I think that ST gives good value for the money. Unless you are a developer in second or third world country the price tag is hovering around an hour wage.
And because of the sublimely generous trial model you can use as much as you like it if you happen to be on tight budget.
Looks like I might have to bite the upgrade bullet this year.
The only thing that gives me hope is that the Pro fits a small but important niche in the overall ecosystem: a system better suited for the developers of iOS applications than the iMac is.
More cores, more RAM, more GPU grunt to drive more screens.
I eventually bit the bullet and bought a new Mac. But TM2 never came and I paid thousands of euros for nothing.
Since then I've moved to Linux at home and I use Vim everywhere. For some reason, I can't imagine being unable to build Vim 7.4 on this machine.
And now that I feel very comfortable in Vim, I can't imagine switching to ST or back to TM.
A ssh/text-only version of sublime text would be interesting ;)
As I started off with Emacs, I would love to return it to it for this reason. However, I've never been able to smoothly recreate two or three of the features that I need, despite spending hours playing around with different plugins.
1) For Dynamic language development, a 'goto arbitrary file' as slick as Sublime is all I need. This one feels simple to achieve, but I haven't been able to find anything similar.
2) For Java, a working tags or 'goto symbol' implementation with disambiguation and even the slightest awareness of the language and scope.
I would probably have more success writing own editor from scratch that learning emacs lisp however!
That's "vi".
All kidding aside, I've no idea how someone would pull this off. A lot of the best features in Sublime wouldn't translate well to a terminal. The minimap, for example.
But 70 Dollars is really expensive in my point of view. I'm not sure if I'll upgrade to version 3 (paying upgrade).
Why different prices based on when the purchase date?
I can't imagine carpenters are incensed when Ryobi brings out a new $300 drill. You either buy the new drill, or you keep the old one. Nobody expects new hardware for free, why software?
In the first case, the value of your goods and of their use to you is more than just one drill.
In the second case, you end up paying more than the price of the newest software, for just the newest software.
From this, one could make the argument that the most fair upgrade price would be $11 - the difference between the old and new software.
That doesn't work.
"What sort of development are you doing that isn't worth $30 for the single tool that allows you to do it?"
I do light programming, mostly web stuff. Sublime certainly isn't the only tool that allows me to edit code, I used Notepad++ for years, and I'm sure there's a dozen other options. I also just use it as a regular old notepad.I suppose what I'm saying is my expectation was that for a premium tool, I would be supported with updates and bug fixes for a longer period of time. I probably will buy the upgrade, but I would hope for a longer period of support with version 3. If this turns into a recurring payment model I may need to switch back to strictly free and open source tools.
To work out the math a bit, say the developer is looking to make 70k a year (which is quite low IMO, especially if you are self employed). If his release cycle is every two years, he needs to make 140k over one version. At $59 for S2, thats around 2400 sold copies over two years. Not a small number for a product that is tailored to such a niche market. Also considering that there comes a point where the purchases trail off, so the developer needs to find a way to sustain an income. Upgrades seem like a very reasonable way to do that.
With S3, if the developer wanted to offer a reasonable way to allow S2 owners to upgrade at a discount, it comes at a loss of income for the next two years. Given that the amount of people who would buy the editor have already bought S2, so the pool of possible purchasers decreases. So it seems like a reasonable balance to allow that discounted upgrade, while increasing the full price to make up for the loss of new purchasers.
Try Googling "Richard Stallman".
Or simply reflect upon the fact that > 95% of the software used by the author of ST to create it was free to him.
Seriously, though, the code intelligence tools there are much better than SublimeIntel.
http://www.henriquebarroso.com/my-top-10sublime-2-plugins/
Some of my favorites are there! If you haven't done so, check it out too!
I'm confident they'll sort it out and I'm happy to pay them $30 when they do, but it looks like I won't be beta testing for a while. :/
Oh god, I've got some plugin fixing to do..
If it had gui options and supported apt or pip I'd be sold. Still sticking with geany or notepad++ for standard text editing tasks and the heavy-duty ones for more.
Edit: looks like it may be in debian, but not ubuntu w/o ppa.
When I tell people how much I love ST2, Package Control is definitely responsible for some of that love.
If JetBrains bought it and integrated it in IntelliJ that would end killing the original project and I'd be forced to go berserk on Prague, big time.
Anyway, this is all speculation.
It's 2013 and we generally still use text editors to work with code. The result is that code is typically tied to plaintext buffer by hacks and kludges in a quite awkward way. Highlighting is done by one subsystem, code analysis (if any's possible) is performed by completely another one (so highlighter output may accidentally contradict code analyzer), folding is totally separate from all those, and so on.
JetBrains has another approach to this, as most clearly seen with MPS.
One of these tools where I actually bought a license and enjoy every moment of using the product.
I wonder if this also means official repositories.
I'm also amused that he's now restricting the ST3 BETA to registered users only, where ST2 had a long BETA period.
There are some nice changes, but not the ones that would make great extensions (like those in Emacs world) possible/easier to write.
I like ST, and it serves my needs well enough, but I already paid $59 for this software and that's enough for a text editor.
Paying yet another $30 isn't worth it for me, especially when I didn't ask for these upgrades.
That's a little disappointing, still, I'm happy with the money I paid for ST 2.
I feel it's very appropriate to ask for some more money at this stage, ST has been through a lot.
Plus, I'd happily pay a lot more money for many of the features I'd want ST to have.
This only makes sense if: (a) I guess you're not a software developer, so you don't actually "make money" from the productivity increases of a text-editor good for you? or (b) you plan to switch to some other editor that's open-source (emacs? vim?) or (c) you're and IDE guy and rarely use a "simple" text editor.
Please mention your use case before saying "that's enough for a text editor", because for most that's really pocket change compared to what others pay for other services or software licenses (think designers!).
Badically, I'm content with my $59 purchase (it's sturdy software that never gives me grief) but wouldn't eek another $30 of value from it.
Ultimately, I think continued development of plugins will force the issue, and upgrades will be required.
If you use Sublime Text privately, I can see your point.
A 2% increase isn't very good IMO. I'd rather look for other efficiencies that won't cost me more money.
If you are saying there are efficiencies elsewhere for which that formula yields a higher number then you should do those as well.
And yes, you are right. Every bit counts, and I'm willing to pay for software that will help me. I just don't think it gets much better for me and ST.
A 2% improvement is a week's worth of effort in a year at a full time job. Even a small improvement will be worth it unless there's a larger opportunity cost (such as using a substitute text editor that will yield even larger improvements), or if there's a risk of something going wrong (such as it being buggy and wiping out a week's worth of work). There's also switching costs of learning new features, which may be significant, depending on what you do and how you you'd use it.
You should obviously make your own choice, but the rationalization can be valid, and 2% productivity improvement is nothing to sneeze at.
And I thought 2 development has slowed down after release (sparse new dev builds etc).
We'll have Sublime Text 3 before Textmate 2 beta 2.