3 ms·
> I prefer to have the choice of multiple plugins each with their own tradeoffs Just curios, do you know any languages besides Javascript for which this "freed
by nnq 9y ago
> I prefer to have the choice of multiple plugins each with their own tradeoffs
Just curios, do you know any languages besides Javascript for which this "freedom of plugins to do anything easily" resulted in any better editing experiences with Atom than with alternatives?
I'm pretty content with VSCode plugins for Python (including those for Jupyter integration and others from scientific computing area) and Go for example. Only real improvement that would actually help me would be truly intelligent (well, more like "not retarded" actually and "don't crash when trying to refactor" but anyhow...) refactoring capabilities for dynamic languages (like JetBrains IDEs have), but having the editor based on a browser + unlimited freedom of plugins to do anything with the UI wouldn't really help for such a feature, that would be implemented in a separate process anyway and could work fine even as a Vim plugin (well, Neovim, since it fixed the interprocess com and async limitations of Vim or so I've heard...).
- Klathmon 9y agoJetBrains tools are the gold standard for Java, and I use them as well when i'm in that world. But for Python, JS, go, and a handful of smaller langs Atom is treating me well. And while it's true that the browser-based nature of Atom won't help with refactoring tools, they do allow you to easily integrate any CLI tools with it (or I should say, they make it easy for ME to do!). I'm not trying to claim Atom is the best in every way, but if you are in it's target demographic, it's a good experience. I'm more than positive that many people have better setups using other toolsets, and i'm sure there are many people who are worse-off for using Atom at all. But for me, it's a great tool that enables me to do things faster than I could before I used it.
- nnq 9y agoWhat would be the "gold standard" Python plugin for Atom? Looking at https://atom.io/packages/python-tools https://atom.io/packages/python-tools I see "Show usages: [...] Currently only supports detection of symbols within the same file. This will be extended to support usages outside the current file in the future.". That's kind of useless. VSCode or Sublime may fail at refactor, but such a feature like browsing usage of a symbol (across multiple files, in a dynamic project), the UI experience is pretty gorgeous in VSCode (just took this screenshot for ex: http://dl4.joxi.net/drive/2017/08/23/0019/1932/1279884/84/dd0c69333d.jpg http://dl4.joxi.net/drive/2017/08/23/0019/1932/1279884/84/dd... ) despite the "limitations" of plugins, and usable in Sublime. I'm thinking of building a GUI for a "visual language" (ML-specific DSL) and whether to use Atom or VSCode as a base for a plugin actually (because it would be "visual" + "source" side by side, so bolting it atop an editor people already use for code and has good integration for git and all would make more sense), that's why I'm going to take a deeper look at how these "modern editors" beasts work actually...
- Klathmon 9y agoTo be honest my Python usage is much less than it was a few years ago. I generally only work in small standalone scripts and some contributions to larger projects every now and again... So I wouldn't be able to help all that much with that. But for your GUI that you want to build, you will have a significantly easier time doing that in Atom than in VS Code. I don't know much about writing plugins for VS Code, but I hear it's much more restrictive compared to Atom in terms of what you can and can't do. I believe that a plugin that can generate a "visual language" is going to be difficult or impossible to do with the tools provided by VS Code, they mostly have specific APIs for dealing with editor windows as text. With atom you could roll your own display stuff but you have the whole power of the browser to do any styling/layout/display you want. You'd basically just need to "render" your UI to a web page, then embed that as a pane in the editor. With some of the others like Sublime and VIM I know even less about their plugin abilities, but I have a feeling it's going to be difficult to do in either of them.