Maybe I'm the exception, but I can't see why people, why programmers, bother investing their editing-skills in a closed-source editor and toolkit.
Sublime is closed source. When it croaks up and dies, all the skills you've built up will be wasted, and you'll have to rebuild them elsewhere.
Why not invest in something open instead? There's more options than ever before, and they're all good.
For me, VS Code seems to provide pretty decent Python IDE capabilities almost out of the box.
For those a little more deeply invested, Emacs with elpy and realgud gives me all I need: code-completion, docs, debugging, breakpoints, etc. And it's something I as a programmer can adapt to my needs and build on.
Sublime has been around for a while. Why should it go away anytime soon? And even if it did, it's pretty stable and I bet will continue to work for years, even if the developers did stop working on it.
I guess people prefer Sublime over Atom / VS Code because of its performance. To them (including me) that matters more than what might happen in 20yrs.
I do myself. It is good to see that it is still being developed, but I wish the dev would do a paid update with new features so I would worry less about it's future.
> Sublime is closed source. When it croaks up and dies, all the skills you've built up will be wasted, and you'll have to rebuild them elsewhere.
Sublime is not Vim or Emacs, you just move on to the next CUA text editor or IDE. It's not like you need more than 20 or so extra commands to be effective in a CUA IDE:
* go to class/function/file/symbol
* build/run/debug/run tests
* debug commands (step over, step into)
And you pick those up in 15 minutes. Good editors and IDE have remapable keys or can even emulate ones from other editors and IDE.
And this is on top of the default: save is Ctrl-S, copy is Ctrl-C, cut is Ctrl-X, paste is Ctrl-V, close tab is Ctrl-W, etc., etc.
Yes, and the reply is the same. I just quoted that one whopper for effect. Editors (serious ones) aren't just equivalent bags of commands, they're work paradigms people literally spend years learning and customizing.
I program pretty much the same regardless of editor. The main difference seems to just be how they navigate the ui and the features. I feel like the guy without a hat in this (https://xkcd.com/915/) XKCD
It boggles my mind that people like the one in the hat exist. I am aware of their existence, but find them so insufferable to interact and have a conversation with that it's easier to pretend they don't.
One wonders what leads someone to become such a snob and how to prevent it.
And before someone accuses me of being a human-snob, well, we don't really have a choice, do we?
Sublime is not really an IDE imho. It's a very good text editor though, which has a lot of feature overlap with IDEs, but I wouldn't prefer to develop within Sublime.
There are diminishing returns for learning really obscure text manipulation features. It's always cool to see someone make it look easy with emacs on an i3-gaps desktop with anime wallpaper, but most of us can get by with learning some basic regex/replace, navigation commands, and editing commands. I'd rather be learning a different language than a text editor.
VSCode is Microsoft's product, and they are doing solid job with it now, but who knows what they will do with it in 5 years' time. I won't be surprised if they try to integrated it with Azure more closely and do some things which are not relevant to me. Plus it's Electron app which I won't use.
And it's not like open source solution can't fail and be abandoned.
Only two editors that I think will last forever (at least it seems so now) are emacs and vim. Everything else has similar chances of surviving test of time.
My opinion is that an advanced text editor or IDE should be written in a low level language to be light weight and fast. Everytime I try atom it performs so bad and slow that I need to switch back to sublime. I even have a probably unfair paranoia bias against editors written in Java because it might be slower than one written in C. Electron has a lot of great uses, but an IDE is antithetical to it's performance capabilities. BTW, I'm in the market for IDE recommendations.
I would be interested in seeing how that 3GB looked like though.
For instance Emacs has no issues with huge files (logs with many lines), but can completely choke when the lines are really long (like a minified JS-file without lineshifts).
I guess similar constraints may exist in other editors too.
Without knowing how those 3GBs looks, it's hard to make a decent judgement of what the "load" test actually tests.
So, somewhat long lines, but not unreasonably huge.
For me, working on a nasty legacy codebase with 10-15k LOC classes - VS Code is slow enough with syntax highlighting that I pretty much need to use something else.
Actually do you have any prime examples of fast electron apps? I'm interested in finding a DOM-free electron alternative, but if I had a good case study for a legitimately fast electron app, that would be valuable insight for me.
Because it works and it works great. It's fast and it never crashed on me. Give me an equivalent opensource editor that works and looks like Sublime and I'll use it. No, Atom and VS Code don't cut it. They're slow, they choke on big files and eat up hundreds of megabytes of RAM. I don't need or use plugins, so I don't care if it's extensible in <insert trendy language here>.
Vim is also nice but I only use it for remote console work. It doesn't have the nice features that Subline has (PCRE, select and Ctrl+D editing) or they're clunky.
Well that's what was using on Linux before I installed Atom, although it's hardly a replacement for Sublime (which gets used on the Mac at the office for real work). Really, I've tried just about everything.
A different, yet very simple additional benefit of open source software dawned on me when I tried if I could use a chromebook for development tasks:
Astoundingly few text editors run on ARM CPUs.
Open source means you can compile them yourself if necessary (if they're written in a proper platform-independent fashion). That I couldn't use it on every device I own was the reason I left Sublime for good, although I quite liked it so far.
Exactly my thoughts. I'm using VS Code for Python and it's a complete pleasure. Integrated Git, IPython, scripting, everything is easily available. I do own Sublime and I haven't used it for a while.
I don't get these comments. I use Atom on my Chromebook (via Ubuntu/Crouton) and the other day I did a 9-hour stint switching between atom (~80% of the time) and Firefox, from full charge. At the end of the 9 hours I still had 8% left in the battery. Perhaps you are doing something very different with electron apps than me, but for bog standard coding and doc writing, my battery lasts longer than I do!
I don't think I was able to get realgud working when I tried.
However, I agree! I think open source has helped the industry to move forward quicker, since a lot of people get to see what the code for things that work look like.
Adobe Brackets is open sourced, and I don't see a ton of people heralding its usefulness. The same could be said of Eclipse. Just because it's open sourced doesn't make it useful or well-built.
This setup is a total replacement for PyCharm for me. Code Refactoring, code definition jump, IntelliSense suggestions and help, linting, virtualenv support, code formatting etc. etc.
And last but not least VSCode and this extension are both free, open source... unlike Sublime and PyCharm.
My biggest problem with VSCode was the loss of ST's support for working across multiple project folders. When I'm working with Django I'll break code out into reusable apps but find it difficult to work concurrently on these separate folders of code.
Would love to hear if there's a setting I was missing as I'd like all the other features in VSC.
I have each project open in a different VSCode — is that what you're asking for? You can do File > New Window and then open another project in it or just set "window.openFoldersInNewWindow": "on" to always open directories in a new window.
My only issue with vscode and the python plugin is the debugger. It's completely broken for django projects even if you can manage to figure out the special incantations from piecing together information from the wiki and 5 or 6 issues (some closed) in the repo.
For those interested:
* expose the right port (if remote debugging)
* install ptvsd into the virtualenv
* ptvsd.enable_attach(..) # in manage.py
* ptvsd.wait_for_attach() # in manage.py
* run the debug server in single threaded mode
* run the debug server with noreload
PyCharm debugging is really top notch, but I don't like the editing experience nearly as much as in sublime or vscode. The keybindings and shortcuts feel so much better in vscode that I'd rather use ipdb in a terminal when I need to debug.
> The final requirement for a reasonable IDE experience is to be able to follow a debugging session in the file where the code exists.
> There is no plugin for SublimeText that supports this. But there is a Python package you can install into the virtualenv for each of your projects that does it.
This drives me batty whenever I see "turn XYZ into an IDE for (foo)." The author of this post at least lists debugger integration as part of the IDE experience, but comparing against actual full fledged commercial / non-plugin-composite IDEs? I haven't seen one article for turning Atom/ST/Vim/etc into an "IDE" that comes close (edit: that is, close to a reasonable debugging experience, in an integrated way) capability-wise.
There's nothing wrong with taking that approach, but if you need to shim on GDB and use a plugin to just follow along in source (forget setting watches, gutter-click breakpoints, conditional breakpoints, etc., from Sublime Text), that's pretty definitively not integrated into Sublime.
That's one thing I really miss in Vim when writing C++. I have reasonably good autocompletion with YouCompleteMe and good code indexing by a combination of exuberant-ctags and rtags, but no debugger integration. To me the editing gains outweigh the lack of GDB integration, since I only infrequently have to debug, but when I do I basically just open GDB in a separate terminal window and set it to "layout src". That said, I also get to use rr[1] from time to time and its productivity gains obliterate any downsides to having to type everything in the terminal, especially for debugging memory corruption. Just record your program until it crashes, then run it backwards with a breakpoint set on the corrupt memory address to see where it gets overwritten. Only downside is that it can't support shared memory.
> The final requirement for a reasonable IDE experience is to be able to follow a debugging session in the file where the code exists.
Having a cursor follow along in the file is just one part of a visual debugger. Seeing the call stack and being able to move up/down, the ability to see scope variables, the ability to enter console commands are all essential. Lack of these is why I stopped using SublimePdb, instead switching to pudb: https://pypi.python.org/pypi/pudb
I highly recommend it as the lightest weight interactive debugger out there for Python.
I have the same feeling every time I see these types of "turn your editor into an IDE" posts. There are a lot of features of PyCharm I like, but its debugger is definitely the best and most essential for me.
I'd be very happy if the console output when you build something on sublime was smarter, and parsed the output to make out the file and line where the error occurred, and clicking on the error would take me there.
It wouldn't do step debugging or breakpoints, but at least for scripting and even simple c programs it would work well.
>I haven't seen one article for turning Atom/ST/Vim/etc into an "IDE" that comes close capability-wise.
Well, then again, I've never seen an IDE that comes close to ST/Vim/etc in their lightness, speed of opening, editing, switching files, and pleasantness of the core editing experience, much less one without a heavy beast of a UI. Or one that you can setup exactly as you want, as heavy or as light as you like, plugin by plugin, without all kinds of crap builtin.
When it's all said and done, all that matters is that you're able to get the work done. Take vim, for example. You can quite often use CLI tools to get the work done due to vim's integration into the surrounding ecosystem, and this includes things such as debuggers.
For a language like C#, you're never going to find as integrated an experience as you will with Visual Studio. It's just not going to happen.
But for everything else, you absolutely can be as productive in something like vim, the workflow is just different.
My definition of what? I literally said there's nothing wrong with taking that approach. I quite purposely did not argue productivity.
My issue is with the acknowledgment by the author that the standard for "IDE" includes debugging capabilities and then goes on to provide a plugin that provides follow-along only via running GDB, which would need to be configured (I assume, since the author does not specify) the normal ways.
If you want to argue UNIX is the IDE I can get behind that definition, but the debugger is absolutely not integrated into Sublime (or Vim or Atom or N++ or ...) in any meaningful way.
The point is to get work done, not do it all in a single window. you talked about "capability" as if because someone uses an external debugger you can't debug effectively or very well when using something like vim.
It's a flawed definition of effective.
When you use something like vim, the entire ecosystem is your IDE.
I've edited my OP and hopefully what I'm saying is more clear.
If the entire ecosystem is your IDE, you're not "Turning Sublime Text into a Lightweight Python IDE".
I don't know how else to phrase this to make it clear that I'm not attacking, denigrating, claiming inferior, etc., composite workflows like vim + GDB. But if you get to an article that says XYZ is now your IDE, and it offers a piss-poor debugging experience unless you leave XYZ, then that article is not turning XYZ into an IDE.
It doesn't matter if you're attacking, denigrating, claiming inferior, etc. The point you made is flawed or inaccurate, and that doesn't change because your motivations are clean.
- Sublime Text (when I wanted something comparable to Emacs with some niceties thrown in and a single license cost)
All in all I think PyCharm is the most productive I have used. Minimal setup, the best code inspection I have used, nice integrations with things like git out of the box.
But Sublime Text has my heart at the moment because with the Emacs Pro package it has a very Emacs-y feel with almost identical key bindings (slight differences here and there). The package manager may be a bit "odd" and feel like a sidecar, but coming from Emacs...it feels pretty straightforward.
Sublime Text is also language agnostic so that's a plus.
At the moment I use PyCharm Professional for work and Sublime Text for personal stuff...and I think it strikes a good balance. Productivity where my requirements are strict and cost not a factor and flexibility where I like to try new things and recurring fees don't appeal.
I have had a similar path, except for VS. I have been happy (and still am) with Emacs for a very long time (in particular, I really like how easy it is to have some code in the left window, which I can easily send to an IPython REPL in the right window), but recently, for a new job, I picked up PyCharm Pro, and I must say that it's been pretty transformative. Three aspects stand out IMO:
- It's a fantastic tool to explore and understand big, industrial codebases
- The testing and debugging support is stellar
- The Emacs binding emulation is great (so it's easy to feel relatively at "home")
It's actually quite easy, as it comes pretty much out of the box with recent versions of Emacs (24+) and python.el (not to be confused with the older python-mode.el). I could not find a nice web source for python.el's documentation, but it turns out that directly reading its code is not so bad in this case:
In particular, you need to set the `python-shell-interpreter` variable to "ipython" (which must be in your path preferably). You can then invoke `run-python` to start a REPL, and C-c C-c to send a buffer to it.
There are a couple more interesting commands with this mode, see:
PyCharm is the BEST IDE. Cant imagine working without it. It has become a part of how I think about code. The type hints and instant error check it provides for python are unmatched.
Completely agree. I can't use even the best editor if it doesn't provide basic navigation, and debugging functions. 20 years ago, people claimed that IDEs were bad, but now the situation have changed. PyCharm has almost everything that Sublime has, and even more, there's vim mode, which moved editing to a new level.
I totally agree PyCharm's navigation and debugging functionality are fantastic. That said, when I last tried it (about 2-3 years ago), my Python code ran incredibly slow. I have a relatively large but not huge Django based python project (~2M LOC with libraries), but with debugging enabled my Python code practically ground to a halt. It's possible I misconfigured the debugger, and I can't remember how long I spent trying to get it to work, but it was discouraging enough that I dropped it.
My debugging now is just logging.info and some fancier log aggregation tools, but still feels like the early 1990s.
Pycharms 2017 debugger (pydev), is much faster now. You meed to use python 3.6 though. The debugger window suggests to install some bindings. If you do that the debugger runs much much faster.
They've made some improvements to the debugger recently. Enabling Cython doubles the speed but the biggest improvement is using Python 3.6. They now use the frame eval hook that was added and they claim it's 40x faster.
>20 years ago, people claimed that IDEs were bad, but now the situation have changed. PyCharm has almost everything that Sublime has
Whether "PyCharm has almost everything that Sublime has" is not really relevant to whether people claimed IDEs were bad -- seeing that people didn't claim IDEs were bad for lack of features.
It's the slugginess and especially the "take it or leave it" bundle of stuff that comes built-in into an IDE that annoy(ed)s people.
Anyone who thinks PyCharm is sluggish, needs to reevaluate. I use it inside of VM as my daily driver, the startup is the only "sluggish" thing about it, and even that is negligible. They introduced "zero-latency typing" a while ago.
Also, I'd argue PyCharm has much more than sublime.
I really want to use VSCode, but the one HUGE thing holding me back is lack of a hot key to show/hide VSCode. I use iTerm and am used to opening/closing it with Ctrl + `. Having to use Cmd + Tab and then making sure I actually choose VSCode and note another application that I was just in really slows me down.
I'd like to mention this because I've mentioned it before for anyone using Visual Studio already the Python Tools for Visual Studio are definitely on par with PyCharm I say this having used both. These are the two best choices I would offer anyone for Python development aside from just using whatever you favorite editor is with plugins (though Sublime seems to be a decent choice here). Edit: I also say this as someone who bought all the IDE's from JetBrains and because some people might have Visual Studio and only Visual Studio at their jobs.
I was going between vim and sublime text for python code, and my team lead suggested pycharm. I was doubtful, but it makes alot of things so easy so I use it almost always for python code now. However like another person mentioned, the startup time can be painful. I just open it and leave it up to avoid that part.
Jetbrains does not play. There is not a ton of software I am so impressed by I will publicly support it any chance I get, but the list includes most everything by Jetbrains.
The rest of the list is pretty short: Plex and 1Password (less so these days).
I've never had it take 5 minutes on a ~3 year old Intel i5 with a cheap SSD. Maybe 10 seconds. Scanning a large project might take 30-60 seconds. 5 minutes would be painful. What kind of set up do you have and what size project?
I find startup time of PyCharm to be really stochastic. Sometimes it's 10-20 seconds and sometimes it takes a couple of minutes, even on relatively tiny projects.
That being said I think PyCharm is good enough that I'm willing to put up with that.
Sublime Text comes with a great system for Package Control. [...]
To install a plugin using Package Control, open the command palette with shift-super-P (ctrl-shift-P on Windows/Linux). The super key is command or ⌘ on OS X. When the palette opens, typing install will bring up the Package Control: Install Package command.
Sublime doesn't actually come with Package Control and Package Control itself is a confusing usability nightmare. It's a fine and snappy cross-platform editor but the whole extensibility thing has unfortunately turned out ugly and unpleasant.
True.. I have never bothered to find out how the ST community grew so much. It's a paid product and somehow people have built plugins for a package manager that is not even part of the core IDE. Does anyone know the history here?
When Textmate stalled between versions for years on end, Sublime came in with Textmate compatibility and simply scooped up a huge userbase who wanted something like Textmate on other platforms or were tired of waiting on Textmate to release a new version. Sublime is a Textmate clone that outdid the thing it was cloning but worked with all the existing Textmate bundles. That's how.
Yep, I think this hits the nail on the head. I'd add that on Windows there wasn't a good, native, option past Notepad++ (which is fairly limited in comparison).
I think it got really popular, especially in the Rails community, because of the flashy multi-cursor demos on the site. I believe it was the first CUA/mainstream editor with multiple cursors.
I could be mixing them up, it's been a while. But I do remember some spiffy videos demoing the multi-cursor thing and I don't think TextMate supports (supported?) those.
I also vaguely remember that most of these demos were on Macs and they were showing off editing of Ruby code.
I really have no issue with paying for it and have easily got my money's worth out of it. I just had some naive hope it might develop into something emacs-like (in terms of extensibility) but less crufty and it's mostly become less-than-emacs-like but just as crufty.
For starters you can use it for free indefinitely. The package manager might not be in the core product, but I recall it was bought by Sublime so it's official.
I always thought that was a little odd. Not sure why it's not just "preinstalled" already. I doubt the author of ST doesn't use plugins? If he wanted it to be optional he should make it opt-in as a default that you could take off if you didn't want it....
I'm not really sure what it is, perhaps the authors of Sublime want to keep to a very basic minimal core and leave a lot of the other stuff as an exercise for the extension mechanism.
VS Code seems to strike a good middle ground on this - it's all still a pile of JSON config files but the UI for managing it doesn't make you want to run away from home and become an itinerant chartered accountant.
Of course the creator of Package Control now works for the creator of Sublime Text and the install is automated from a menu item. I wouldn't be surprised if it gets integrated further, especially now that they've started to cleanup the UI and icon.
Yeah, it's a mess. For what it's worth though, it's a far sight better than ELPA in my experience. Though I stick mostly to JetBrains products because the experience is very nicely integrated.
> Part of the reason is allowing it to have a different release cadence, but also to not default to making outbound network connections without a user opting in.
I have used similar setups in Sublime Text for Python development, the main issue is instability and inefficiency. Installing these set of packages in sublime makes things slower and more unstable.
Multiple times while editing large files my editor would slow down or crash.
I love Sublime Text. But it's also a real pain to get set up correctly. I want to like PyCharm . . . but it's also a real pain to get set up correctly, and it's slow as junk.
Then again there's straight up Visual Studio with Python tools, which is also a real pain in the ass to get set up and ready for use. And slower than I want it to be.
And vim, which is great when you get it going, but is also a huge pain in the ass to get set up.
Are we seeing a trend here?
I am. And the trend is that comprehensive IDEs really just take a lot more work with dynamically typed languages than they do with statically typed ones. Code introspection and completion is just a lot harder when you're guessing about stuff.
I don't know. I haven't found the sweet spot, and I prefer to spend my time getting things done instead of configuring tools.
My instinct is to choose the tools that are fast. Vim, Sublime Text. But fast has limitations. I have a pro license for PyCharm on my own dime, but I've always just given up when it comes to configuring it to something that makes sense.
Blargh.
This situation is a thing that makes me just a tiny little bit envious of the C# crowd. Visual Studio + Resharper is basically the best in class of coding tools. Yeah, you're going to spend some time with setup, and you are not going to edit shit on the fly on a server.
That tooling really works and works well. And SSMS is the gold standard for SQL IDEs. The open source Python part of me is incredibly jealous of the Microsoft tooling stack.
Some of the limitations with Python are by nature of the language, and some are because we just seem to be willing to settle for good enough.
But damn, I really miss Visual Studio environment when working with Python and Postgres instead of C# and SQL Server. I'm actually playing with C# and SQL Server for toy projects sometimes just because the tools are so good. If you happen to have a Windows box laying around. Which, you do, if you play any games.
PyCharm is the closest thing to that experience, but it's so gross, I just kind of can't stand it. Every time I sit down and decide, "Okay, I'm going to make this work for me. Today." I just give up. Fuck it. I'll just go back to vim and Sublime Text. They are good enough.
I am using Notepad++ (I'm a windows user) for more than 5 years for python/django development. Never regreted it - never found something better. I stuck to Notepad++ even when I was using a Mac for some months (through Wine) - I couldn't find something better or faster.
Everything else is way too slow (Atom, VS Code, pycharm) or way too inefficient (Vim / Emacs - inefficient for me they may be great for you) to replace Notepad++. An IDE is not really needed with python - it's not java - If you want to debug something just add a breakpoint to drop directly to your program (I have actually written a tutorial for that https://spapas.github.io/2016/06/07/django-werkzeug-debugger...) - you'll then have a full repl to do whatever you wish!
I really think that notepad++ is a great editor (at least for windows users) and should get more traction.
I had tried sublime text a bit and the only feature I found usefull that notepad++ lacks is the quick switch to file - but I can live without it, especially since Notepad++ is Open Source!
I also use Notepad++. Was starting to feel left out reading the comments. I roll up my sleeves and work with the junk behind the scenes manually. I think it somehow improves my understanding of how everything work.
Only if you haven't worked on Pycharm, you can say this. Try the latest Pycharm on a medium/big size project and you will understand. It is the best Python IDE out there, right now.
Pycharm is good - I've used it. However there are various disadvantatges to it:
a. It is not open source
b. It is slow on my (Celeron based) PC
c. I don't really need the capabilities of a full-flexed IDE (auto-completion, debug etc) for Python
Well, I think you are mistaken here. There is an Open Source Community Edition of all versions of Pycharm if you are so inclined to the Open Source. That is quite good enough. Celeron is quite old and slow and it is not fair to expect an IDE to work fast on that old PC. Though you can still disable some advanced features(
inspections) and make it reasonably fast.
Again, it totally depends on the project you are working. For a reasonable sized project, you can do away with an editor. But with large codebases, IDE support is a great difference. And this is coming from someone who has been writing all his code on Vim for last 6 years or so. Basically, all you require is a productive environment that doesn't hold you back and enables you to write faster and correct code. For me and a lot of other people, Pycharm is quite that tool.
If you still have a .edu email address they offer a student license but I get the feeling you're doing non educational/hobbyist work so that might violate the TOS
Pycharm is good, but it really depends on the project size - I'd use Pycharm for larger projects, but at the same time I'll open smaller separate scripts in Sublime even if I have Pycharm already open.
Did you try sublime on OS X? I like notepad++ too, I'd say it's pretty interchangeable with sublime on Windows - but I'd be surprised if it on wine is better than sublime native.
No I didn't try it on OS X - I didn't have a license and, because I was going to use OS X for some months (not permanently) I'd bitten the bullet and went the wine-way.
Probably you are right though, if I was using OSX as my main OS I'd definitely consider buying a sublime license since there were some problems with the Notepad++ (mainly with its filesystem integration).
I'd say it's pretty interchangeable with sublime on Windows
Depends on usage maybe? Haven't used NPP in a while anymore, but IIRC it lacked built-in functionality or plugins for go to definition/got to anything/PEP8/Flake8/GitGutter/... which work as good as Sublime's?
PyCharm is better for pure Python development, but I still use Sublime because of inertia. It does most of what I need it to without changing much regardless of which language I'm currently programming in so I'm pretty happy with it. Plus I spent $80 or whatever the cost was to pay for it myself so I have more incentive to use it.
I'm confused. I've been using Jupyter as my go-to Python IDE. It has auto-code completion, nice charting abilities and even nice tools to convert my notebooks into presentations for execs.
What am I missing by not having PyCharm or the other IDEs mentioned here? Thanks
Jupyter is probably much better if you're doing what it's suited for. I work on web application development in Python and Jupyter is not suited to that at all, however my colleagues who work on business intelligence/analytics/data-science/etc love it.
Indeed. I use both. If I have to do something quick, I just open it in Sublime(chances are I have it already open because it's also my notepad) but if I need the full env I just fire up IntelliJ.
Sublime Text is a nice text-editor with bolted on pieces that bring it closer to an IDE, but it's not really "integrated" -- PyCharm does this all much better.
A colleague of mine really likes VSCode for Node, as it's more of an IDE than Sublime text. However, for text editing, outside of vim itself, I haven't encountered anything remotely as good as sublime text. Really. Why would I use Atom with all its slowness for most text editing tasks? And VSCode has more features than I need for text editing. Is it particularly pleasant to open a bunch of XML, JSON, YAML, etc files in VSCode?
Before Sublime, textmate was okay but I always liked BBEdit/TextWrangler for OSX best. Crimson Editor was the best thing I could find for Windows in the early 2000's, before I moved away from Windows environment.
When was the last time you used atom? I switched from sublime a few months ago and have been quite happy. The only thing I really miss is an easy Node.js build system. I probably just haven't figured out the atom equivalent.
I haven't tried Atom since one of its earlier releases. I haven't tried it again since the slowness seems to be the number one complaint. I figure when it's not the most common complaint, maybe it'll be worth another shot; I suppose if everyone is doing this and makes comments like my previous one, no one will actually ever try it again.
I don't understand this attitude. Atom's look/feel/functionality/default keybinds are based on sublime text. Sublime text is a lot faster/more reliable. Atom has a large community building addons for it.
Take your pick. I used atom until I got annoyed by how it choked on large files and crashed semi-frequently.
There's nothing wrong with using multiple editors for different tasks. I'm currently using vscode after a stint with atom for the majority of my editing. But I use sublime text for scratch space or quickly opening large files or one off text files.
Atoms too slow, and I have never felt lacking for using ST, plugins give you linters, autocomplete, autoformatting (yapf, prettier), you can integrate git, though I prefer CLI.
ST just works, is blazing fast and I love its jump to and multiediting shortcuts
Atom and VSCode are the new (and newer) hotness in programmers editors, which means they dominate trend-driven discussion. But they probably don't dominate use, even in the sub-IDE editor segment.
What is so hard to get people? VS Code and any other Electron based software is too slow. It is not performant at all. First of all, UI responsiveness is just not on par with native editors, second, the entire thing absolutely croaks, especially search, with a large code base. It's not as bad as Atom, but still not usable.
I know those of you who love VS Code are not working with large projects. You could argue that you can load up your project in a more modular way, or search just parts of your projects, not all files, but then you've lost a lot of functionality, and you might as well use another piece of software which actually handles a large code base.
I've been happy with VSCode, far more so than I was in trying Brackets and Atom... and with the plugin model, I think it's better than ST from usability... Though I wish some of the config stuff was more in the box instead of editing JSON files directly... that said, the features are very rich in the box, and plugins have been great.
It doesn't only works in remote machines, but in docker as well. It's a killer feature. You can have nice UI of OSX and be as close as possible to the deployment platform.
despite it being an electron application, I prefer Atom over Sublime, because 1) It's FOSS 2) it was easier to configure for Python 3) It takes the best parts of Sublime without requiring C#
Sublime is closed source. When it croaks up and dies, all the skills you've built up will be wasted, and you'll have to rebuild them elsewhere.
Why not invest in something open instead? There's more options than ever before, and they're all good.
For me, VS Code seems to provide pretty decent Python IDE capabilities almost out of the box.
For those a little more deeply invested, Emacs with elpy and realgud gives me all I need: code-completion, docs, debugging, breakpoints, etc. And it's something I as a programmer can adapt to my needs and build on.
Sublime? None of that. So what's the appeal?