29
votes
What do you Tildians think of Atom?
I was looking for an open source editor and I found Atom. It looks pretty cool. What do the experienced programmers, etc. think about it?
I was looking for an open source editor and I found Atom. It looks pretty cool. What do the experienced programmers, etc. think about it?
User-friendly trendy editors come and go from year to year, giving a man a fish.
Vim is power undying, an eternal river of understanding, teaching a man to fish.
Vim is so not performant. Let me say that I use vim mode everywhere, browser, text-editor (sublime), etc. The way of vim is great, however, as far as GUI/CLI goes, it is the least performant text-editor I have ever tried. Once you add addons (for auto-complete, snippets, syntax-highlight, etc), it becomes so infuriating.
So, in my case, if I use vim, I have to choose between the terminal (vim) or the GUI (gvim). Snippets and auto-complete are extremely laggy in the terminal, so I have to choose the GUI. Well, guess what, the cursor lags in the GUI. I type stuff and you see the cursor lagging behind. There is a long issue about this on vim's repo, but seem to not care about performance.
To sum it up, vim-mode is great. Vim, the editor, is shit for any non-basic file editing.
I used vim for years, with tens plugins and a vimrc almost 1k lines. Never experienced this. Have you searched for the cause of your issues? It might be a troublesome config, bad plugins, or suboptimal external tooling.
Yes, the cursor lagging has to do with syntax-highlighting, which I cannot live without. But, I invite anyone to send me their config and I'll test it out. I had a friend who told me that he did not experience lag and then I tried it on his PC and he did in fact experience, he just didn't notice it.
So, if you've a config handy, send it to me please and I'll give it a try. I really wish I was wrong so I could start fully using vim instead of a closed-source software.
EDIT: For those interested, check this issue: https://github.com/vim/vim/issues/2163
Have you tried neovim? It's vim, but faster and asynchronous.
Neovim also has this issue. Check this out: https://github.com/neovim/neovim/issues/9452
You might be interested to note that the issue is now closed. Maybe worth a giggle?
Damn, it seems like I created this post 2 weeks ago. It has been more than 1 month ago. God damn it, time flies.
I still have the same issue. However, it is more noticeable in GUIs.
I have lost that config, unfortunately (I use Emacs since quite some time). Are we talking about an external syntax plugin, tho? It is possible that it has a bug. Maybe try communicating with the devs?
Nevertheless if vim does not float your boat and you want an OSS text editor, I suggest you go with VSCode (or VSCodium, which I learned about thanks to a commenter on this topic). It is really performant and has nice plugins. I only used it for flutter and did like it. Flutter plugin was great. I am sure it has a vim plugin too.
I'd suggest Emacs but it can be sluggish with heavy config. It is a trade off between very fast and hackable, it is not slow, but not as fast as the competition. Personally, I sure buy hackable over very fast. But some like things that just work and in my experience VS Code is quite good at that.
The devs already know about it. I edited my post to add a link to a github issue.
Thank you for the recommendations but I want to avoid electron editors. ST is perfect for my needs right now. I do wish it was FLOSS, but I don't see anything better as of now. There is "oni2", which is a frontend for neovim, but it's still alpha.
Is this also an issue in neovim?
I haven't tested in a while, but there were no good GUIs for neovim back when I tested. As far as CLI goes, the lagginess of auto-complete and snippets was still there.
There's definitely a good (gtk+) GUI for neovim: https://github.com/daa84/neovim-gtk. I've been using it for about a year now with no issues, with some plugins (you complete me, vimtex, auto pairing of the top of my head). So far it's been fantastic for me, but I never used too many of the GUI features in gvim, so if you rely on those it might not fit the bill.
I remember trying that one and it was absolutely unusable. Do you mind sharing your vimrc?
No problem, I just pushed it to github :) https://github.com/GorrillaRibs/neovimrc
Ok, so that GUI does seem better than it was a while ago. However, it still has huge performant issues when paired with latex.
Please, check this minimal latex document: https://bin.snopyta.org/?642387085f1c7e9e#PPGkFgsq0wNZrteCEGz1J+X9W6WkYvzSnkPyBJpCgys=
Enable syntax highlight and type on. You should notice your cursor lagging behind (type fast).
I do notice it! Doesn't seem to affect my writing speed, as in the characters appear just as fast, but the cursor lags behind them sometimes. I would expect it to start adversely affecting that once the document gets larger though. I'm curious as to what's causing this, as I'm sure it can be corrected - I couldn't replicate the behaviour with the same plugins in my terminal (VTE3 based, so not the fastest terminal by any stretch), so I see no reason why the GUI can't reach the same level of performance. Thanks for pointing it out!
Interesting. I don't use any GUIs for nvim so I can't comment on that, but I have great performance using it as an IDE for Rust with deoplete and LanguageClient-neovim plugged in.
Yes, this is also an issue on neovim. Check this out: https://github.com/neovim/neovim/issues/9452
Can you link to your config? You're asking everyone else to link to theirs, but I think it would probably be more productive if you linked to yours and we could strip out the non-performant lines.
My current PC is an X200 circa 2009, and it works fine with vim, no lag. Albeit with no syntax highlighting. When I started programming using vim (around 6 years ago) I was using an old Pentium IV from 2002, and had a pile of plugins along with syntax highlighting, and never saw the latency problems that you describe.
Sure I can. Here it is: https://bin.snopyta.org/?122153f782d6339e#VYNechPTrPUko+KuJXvyjIAiQm6G5lcCT48w9Ij74gs=
Also, here is a latex document. I notice the cursor lagging more in tex: https://bin.snopyta.org/?642387085f1c7e9e#PPGkFgsq0wNZrteCEGz1J+X9W6WkYvzSnkPyBJpCgys=
Enable syntax highlight and type on. You should notice your cursor lagging behind (type fast). This is true for nvim-gtk (and gvim). For terminal, you don't notice the cursor lagging behind that much because there is an input delay. It is not as fluid as GUIs.
I would start by pulling out ncm2 and seeing if that makes a difference, tbh. I don't have time to test it right this moment but I have a suspicion that would give a performance gain
It's the same (maybe even worse) with you-complete-me. It's really a bug that has already been raised in several repos (gvim, vim, nvim, nvim-gtk).
I think your computer might be the issue here, I’ve used vim for years and it’s never had an issue with lag. Are you using it in a vm? Or over SSH (your internet connection could be slowing it down if that’s the case)? Gvim is trash imo, I only ever use terminal
No, I use it locally. Please send me your config and I'll test it out. I doubt it's the computer. I've tried it in both my laptop/desktop and, while they're not power-houses, they're just fine for a text-editor lol.
https://comic.browserling.com/20
I tried Atom a couple years back and it had pretty terrible load times with many extensions enabled or when loading a large file (>500KB).
Personally I'm using VSCodium (VSCode without proprietary Microsoft bits) and had positive experiences with Sublime Text 3 and Onivim. It's also handy to know your way around a terminal so
nano
or (neo)vim
would be good to learn/use too.Edit: Ultimately, it's about acclimating to and customizing the text editor to support your workflow. Use whichever one you want as long as it performs well and gets out of the way to help you.
I had exactly the same experience with Atom and ended up using VSCode, thanks so much for recommending VSCodium, I didn't know about it.
Also glad to hear about VSCodium, and upset to learn MS has been bamboozling me this whole time.
Thanks for bringing VSCodium to my attention.
If I switch, do I retain all of my settings and extensions? Do I still get regular updates in-app, or do I have to check for and download the new versions manually?
I used VSCodium from the start, so I'm not sure. It uses a different settings and extensions folder so it should be ok to symlink. VSCodium doc for migration.
Edit: It looks like auto-updates are still being worked on. In the meantime you could follow the github project, set up a rss feed, or use the unofficial deb/rpm repo (it just repackages the latest release).
Update script from above linked issue for Debian/Ubuntu:
Alternatively you could use the OSS flatpak (different project, similar goal to remove telemetry).
I'd like to ad if you are using a Mac, you'll need to run the following to set the Configuration:
Extensions should be the same.
Onimvim looks pretty sweet
It also has a very nice tutorial/game to introduce the basics of modal editing. I'm quite excited for oni2 (in development)!
Can you explain what is "revery"? I am not a software engineer so I don't know all the lingo. Is it electron-like? He says "native", so probably not. I guess what I am asking is:
I'm not familiar with reason or revery. Perhaps someone can give a better explanation.
revery's README (emphasis mine):
So I would say it should have comparable performance, but I don't know if it will be as performant.
It looks like that is the maintainer's goal https://www.reddit.com/r/neovim/comments/ae7ef6/comment/ednq9hz
Totally Native React with Revery (Bryan Phelps, starting at 5:28:53)
Bryan gave a talk about Revery at ReactEurope 2019.
VS Code is legit FOSS, but the binaries MS provides are under a different license.
Unless something has changed. Did MS add something I don't know about?
I looked into it and here's how the Microsoft binary is different from one that is built from the source:
Additionally, some debuggers are licensed restrictively to only work with an official binary.
Ouch!
Thanks for the corrections.
Visual Studio Code is better in every way when asking most people, including myself
Is it really that good? I downloaded it but I'm too new to programing to understand what's so great about it I think. On the other hand, the value of intellij is apparent as soon as it suggests some code for me.
You are mistaking an editor for an IDE. Visual Studio Code is an editor with some added functionalities whereas Intellij is an IDE and therefore has loads of other features.
VSCode really walks that line between editor and IDE. I'd call it more of an "IDE, batteries not included"; you do have to install the extensions but they're also just right there.
Shows what I know. What makes visual studio so great in terms of it being an editor?
It is a nice, fast editor that is featureful and that supports plugins, which are plentiful. Personally, as an Emacs user, I used it when trying out Flutter, and the Flutter plugin for VSCode was very good, worked out of the box (which is a surprise given how horrible is the developer experience (DX?) when working with Android. It is similar to Sublime Text, but it is open source.
IMO nothing really. I suppose it's got a decent community and plugin selection.
Doesn't Visual Studio do that too?
Visual Studio and Visual Studio Code are two different products. The former is an IDE like IntelliJ, the latter is an extendable text editor like Sublime.
The answer for both VS and VS Code is yes.
Last time I tried it it was too sluggish. Most people blame it on Electron, but Visual Studio Code runs just fine, and it uses Electron too, so I'm not sure what's up with that.
Huh. I had the same experience with Atom and made the same assumption that it was because of Electron. Also had no idea VS Code uses Electron too, and it works fine for me as well. I don't have any more insight than you do, but thanks for pointing it out. It's very curious.
I believe vscode strategically uses native widgets to mitigate the worst of electron.
When not editing files through I terminal I use Sublime Text. Yes it's not open source, yes it's not free, but much prefer it over these "web app" text editors for one main reason: launch speed.
I tried using VSCode for a bit, but the longer delay between me typing the name, hitting enter and the program being ready for use really put me off.
I've used Atom (with vim-mode-plus) as my daily editor at work and have been very happy with it. I have had no significant performance issues and enjoy the customizability and hackability.
Meh. I tried it and didn't mind it, but I prefer Visual Studio Code.
I'm only using it because it has a dark theme compared to Notepad++ and a file browser.
So far it's main disadvantage is that it boots really, really slowly compared to Notepad++ which booted near instantly.
I learned vim about 12 years ago and have continued using it during that time.
A lot of interns that have come through my workplace used Atom, and with some of the plugins it seemed usable. When the platformio IDE came out, it was initially built on Atom. So, I used it and then decided to try Atom more seriously for a while. I liked some aspects of the interface. Ultimately, I found myself switching back to vim because of the load time of the editor and productivity.
I guess it depends, I really like Pycharm (for python) and IntelliJ for Java coding, they are heavier and a bit more sluggish but I get too much out of the plugins and auto-completes.
I know its not ideal for everyone, but it's a small, personal opinion.
I've never tried it. I've tried several editors over the years, and ultimately vim and Eclipse (for Java) are the ones that stuck. I want to like Emacs, I really do, but everytime I've tried it, I get overwhelmed by the options, and the extensions I try don't work correctly. Vim's efficiency and university, and Eclipse's strong out of the box IDE features, are hard to pass up.
The problem with Atom specifically is, if I were able to figure out a massive text editor's ecosystem, Emacs' is much older and richer than Atom's, afaik at least, and it's more cross platform and lighter on system resources to boot.
Tried it... two years ago now, together with vim, Visual Studio Code and a bunch of other editors. I wanted to move away from Sublime and use a FOSS editor, but Atom was far too sluggish and memory-hungry for my tastes.
Things have not probably changed that much since, if only because my laptop is still the same 4-GB-having one as two years ago, and I have already settled on Emacs.
Atom takes too much resources and my computer lags with Atom + Firefox + some other applications running together. For simple editing I use nano and if it involves constantly moving up/down or some other stuff that would be hard on nano, I use gedit.
Before this I've tried lots of editors and find nothing that is light and just does the job, I'm looking into emacs maybe I'll try it someday.
kakoune! or vim. But kakoune!
I think it's bloated. I needed it for one thing (tidalcycles), and tried to expand my use to others, and it was so kludgy and slow I gave up. I switched to emacs, and use vim for general text-editing and basic scripting.
I used to use vim exclusively, but over the past couple years I’ve used vscode. I switched because I could never quite get the last bit of friction out of my vim experience, and there were a couple essential features I couldn’t get to work. These days I only use vim if I need to use macros on a file.
Edit- I forgot about how bad vim gets when syntax highlighting large files.
What's nano?
A pretty simple but solid command-line text editor for linux:
https://www.nano-editor.org/
I wish Juno, or something like it, was available for (neo)vim. If that was the case, I would never use Atom.
I like atom and use it quite a bit for hobby programming. It's nice to use and look at, I find the git integrations to be very helpful. Performance isn't great but that's not a huge deal to me, maybe that'd change if I programmed for a living.
Anyway if you like it then use it, don't worry too much about what editor/IDE you use.