Atom vs Emacs vs Vim

Need advice about which tool to choose?Ask the StackShare community!

Atom

12.7K
10.6K
+ 1
2.7K
Emacs

1.1K
947
+ 1
284
Vim

18.3K
14K
+ 1
2.3K
Advice on Atom, Emacs, and Vim
Rogério R. Alcântara
Needs advice
on
Vim
and
Neovim

For a Visual Studio Code/Atom developer that works mostly with Node.js/TypeScript/Ruby/Go and wants to get rid of graphic-text-editors-IDE-like at once, which one is worthy of investing time to pick up?

I'm a total n00b on the subject, but I've read good things about Neovim's Lua support, and I wonder what would be the VIM response/approach for it?

See more
Replies (5)
Recommends
Vim
Neovim

Neovim can basically do everything Vim can with one major advantage - the number of contributors to the code base is just so much wider (Vim is ~100% maintained only by B. Mooleanaar). Whatever you learn for Neovim you can also apply to Vim and vice versa. And of course there is the never ending Vim vs Emacs controversy - but better not get into that war.

See more
Jeffrey Johnson
Recommends
at

Actually, the biggest advantage with Neovim (as a VS user) is that you can embed REAL Neovim as the editor UI, rather than using a "Vim emulation", you're using actual NVIM, embedded in VS!

"asvetliakov.vscode-neovim" is the extension you are looking for:

  1. Install the 'vscode-neovim; extension (https://marketplace.visualstudio.com/items?itemName=asvetliakov.vscode-neovim)
  2. Install Neovim version 0.5+ nightly
  3. Start winning.

(You can install neovim-nightly separately for just vscode, I usually build and install it to /opt/nvim - it's enough enough to do - let me know if you need help).

Works wonderfully. It might not work out of the box if you have some 100K epic nvim initialization file, but the plugin documents a workaround for having an embedding/VS specific configuration.

See more
Kudos Beluga
Recommends
Neovim

I don't actually notice much of a difference between the two, as the end result looks identical. If you use Vim and are switch to Neovim it's an extremely easy 1-minute process. I switched from Vim to Neovim. I can't say I found much of a difference, but the key points where Neovim could be better than just vim is that first, there are much more people maintaining Neovim compared to vim, which means fewer bugs and a modern code base. It also has a smaller code base which might result in a small speed improvement. Another thing is that it's basically just a fork of vim, so what harm can it do? ;)

See more
Tarcísio Gruppi
Recommends
Vim

I recommend using vim 8+ it has native plugin support if you need language supports you can install the package vim-nox which will come with support for python, lua, ruby, etc

See more
Rogério R. Alcântara
Recommends
Neovim

The hints on the codebase's contributors and the VSCode integration helped me make up my mind.

I really appreciate all comments, though.

Thanks a bunch!

See more
View all (5)
Decisions about Atom, Emacs, and Vim
Andrey Ginger
Managing Partner at WhiteLabelDevelopers · | 3 upvotes · 245.3K views

Since communication with Github is not necessary, the Atom is less convenient in working with text and code. Sublim's support and understanding of projects is best for us. Notepad for us is a completely outdated solution with an unacceptable interface. We use a good theme for Sublim ayu-dark

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of Atom
Pros of Emacs
Pros of Vim
  • 526
    Free
  • 444
    Open source
  • 341
    Modular design
  • 318
    Hackable
  • 316
    Beautiful UI
  • 170
    Github integration
  • 147
    Backed by github
  • 119
    Built with node.js
  • 113
    Web native
  • 107
    Community
  • 34
    Packages
  • 18
    Cross platform
  • 5
    Multicursor support
  • 5
    Nice UI
  • 5
    TypeScript editor
  • 3
    cli start
  • 3
    Simple but powerful
  • 3
    Open source, lots of packages, and so configurable
  • 3
    Chrome Inspector works IN EDITOR
  • 3
    Snippets
  • 2
    Awesome
  • 2
    Code readability
  • 2
    Smart TypeScript code completion
  • 2
    It's powerful
  • 2
    Well documented
  • 1
    "Free", "Hackable", "Open Source", The Awesomness
  • 1
    works with GitLab
  • 1
    full support
  • 1
    vim support
  • 1
    Split-Tab Layout
  • 1
    Consistent UI on all platforms
  • 1
    User friendly
  • 1
    Hackable and Open Source
  • 1
    Made by github. YAY
  • 63
    Vast array of extensions
  • 41
    Have all you can imagine
  • 39
    Everything i need in one place
  • 37
    Portability
  • 31
    Customer config
  • 14
    Your config works on any platform
  • 11
    Perfect for monsters
  • 11
    Low memory consumption
  • 8
    All life inside one program
  • 6
    Extendable, portable, fast - all at your fingertips
  • 3
    Extensible in Lisp
  • 3
    Widely-used keybindings (e.g. by bash)
  • 3
    Runs everywhere important
  • 3
    Enables extremely rapid keyboard-only navigation
  • 2
    Git integration
  • 2
    May be old but always reliable
  • 2
    Powerful UI
  • 2
    Asynchronous
  • 2
    Powerful multilanguage IDE
  • 1
    FOSS Software
  • 343
    Comes by default in most unix systems (remote editing)
  • 323
    Fast
  • 308
    Highly configurable
  • 292
    Less mouse dependence
  • 241
    Lightweight
  • 139
    Speed
  • 97
    Plugins
  • 94
    Hardcore
  • 80
    It's for pros
  • 64
    Vertically split windows
  • 25
    Open-source
  • 23
    Modal editing
  • 21
    No remembering shortcuts, instead "talks" to the editor
  • 19
    It stood the Test of Time
  • 14
    Unicode
  • 11
    Dotfiles
  • 11
    Stick with terminal
  • 11
    Everything is on the keyboard
  • 10
    VimPlugins
  • 10
    Flexible Indenting
  • 9
    Programmable
  • 8
    Large number of Shortcuts
  • 8
    Efficient and powerful
  • 8
    Hands stay on the keyboard
  • 7
    Everywhere
  • 7
    A chainsaw for text editing
  • 6
    Unmatched productivity
  • 6
    Modal editing changes everything
  • 6
    Because its not Emacs
  • 6
    You cannot exit
  • 5
    Themes
  • 5
    Developer speed
  • 5
    Super fast
  • 5
    Makes you a true bearded developer
  • 4
    Most and most powerful plugins of any editor
  • 4
    Habit
  • 4
    EasyMotion
  • 4
    Intergrated into most editors
  • 4
    Plugin manager options. Vim-plug, Pathogen, etc
  • 3
    Shortcuts
  • 3
    Intuitive, once mastered
  • 3
    Great on large text files
  • 3
    Shell escapes and shell imports :!<command> and !!cmd
  • 2
    Perfect command line editor

Sign up to add or upvote prosMake informed product decisions

Cons of Atom
Cons of Emacs
Cons of Vim
  • 19
    Slow with large files
  • 7
    Heavy and slow
  • 6
    Slow startup
  • 1
    Most of the time packages are hard to find.
  • 1
    Can be easily Modified
  • 1
    Not default preinstalled in GNU/linux
  • 1
    Hard to learn for beginners
  • 7
    Ugly UI
  • 3
    Hard to learn

Sign up to add or upvote consMake informed product decisions

- No public GitHub repository available -
- No public GitHub repository available -

What is Atom?

At GitHub, we're building the text editor we've always wanted. A tool you can customize to do anything, but also use productively on the first day without ever touching a config file. Atom is modern, approachable, and hackable to the core. We can't wait to see what you build with it.

What is Emacs?

GNU Emacs is an extensible, customizable text editor—and more. At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming language with extensions to support text editing.

What is Vim?

Vim is an advanced text editor that seeks to provide the power of the de-facto Unix editor 'Vi', with a more complete feature set. Vim is a highly configurable text editor built to enable efficient text editing. It is an improved version of the vi editor distributed with most UNIX systems. Vim is distributed free as charityware.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Atom?
What companies use Emacs?
What companies use Vim?

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Atom?
What tools integrate with Emacs?
What tools integrate with Vim?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

What are some alternatives to Atom, Emacs, and Vim?
Sublime Text
Sublime Text is available for OS X, Windows and Linux. One license is all you need to use Sublime Text on every computer you own, no matter what operating system it uses. Sublime Text uses a custom UI toolkit, optimized for speed and beauty, while taking advantage of native functionality on each platform.
Visual Studio Code
Build and debug modern web and cloud applications. Code is free and available on your favorite platform - Linux, Mac OSX, and Windows.
Brackets
With focused visual tools and preprocessor support, it is a modern text editor that makes it easy to design in the browser.
cell
cell is a self-constructing web app framework powered by a self-driving DOM. Learning cell is mostly about understanding how cell works, and not about how to use and memorize some API methods, because there is no API.
Element
Element is a Vue 2.0 based component library for developers, designers and product managers, with a set of design resources.
See all alternatives
Reviews of Atom, Emacs, and Vim
Review of
Atom

Atom is Github's text editor, at the time of this writing it's still in private beta.

It uses Chromium Embedded at it's core, and integrates with node.js. It provides easy access to extensibility features, including an autocompletion API.

The result is that you will likely soon be looking at an editor that features full node.js autocompletion in javascript and coffeescript.

Everything you see in your editor window is in a DOM. This is akin to Codemirror or Ace. Meaning you get both the benefit of debugging your extensions with a webkit console, and the harm of having dom overhead everywhere in your text buffer.

Since the main editor is essentially a browser, you can also preview html directly in the same window. At the time of this writing you can live preview your markdown like with other markdown editors based on similar technology. Currently it's not possible to preview other html pages in there, but it's likely that this is in the works.

Review of
Atom

Atom is clearly an early look at a new code editor and much work remains to be done to produce a good community, a wide array of plugins as well as improving upon the performance of the product.

That aside, GitHub clearly cares about this product and is working hard to produce something that may well be great. Feedback has been responded to promptly and updates are rolling out to address issues.

The process of producing and publishing plugins is very smooth with a good set of tools to assist in the progress. Documentation is still in progress.

There are still performance problems with larger files and really large files can't be loaded at all. However, this is still a beta, so it remains to be seen what happens here.

Senior Software Engineer
Review of
Atom

Atom is a great editor that feels very familiar if you're used to Sublime Text. The UI is almost copied verbatim and you will feel right at home.

It comes with a package manager built right into the system, with plugins as a first class citizen.

All of this greatness comes to a screeching halt though:

  1. You cannot open files larger than 2MB.
  2. It's built on Webkit so it's slow as molasses.
Robotics Engineer
Review of
Atom

I use atom in every bit of programming from markup, styling to customised autocomplete for python and JS. Nuclide theme is an awesome tool for React Native which is light version of both Android Studio and XCode.

Founder & CEO at CodeCarrot
Review of
Atom

It is truly a hackable editor but along with that it's very slow and takes lots of memory.

How developers use Atom, Emacs, and Vim
Jeff Flynn uses
Atom

Have gone from TextMate to Sublime and now to Atom - in love with it - it's open source, it's got a massive contributor community, and it works well. (A bit slow and bogged down with lots of files, but we'll all make it faster over time)

Kang Hyeon Ku uses
Vim

cli 환경에 익숙 해지지 위해 리눅스를 자주 쓰려고 했는데, 많이들 추천 하는 에디터가 vim 이 였다. 맨 처음에는 불편했는데, 플러그인 다는 재미가 솔솔 했다. 결국 플러그인도 많이 안쓰게 되더라...vim 자체를 잘 안쓰게 되는 거 일지도, 항상 잘하고 싶지만 잘 안쓰게 되는 에디터 인것 같다.

papaver uses
Vim

my go to editor for all things. been a vimer for over a decade now. this is where all the magic happens. still so much to learn, the most amazing tool i use.

Wing Tang Wong uses
Vim

Vim lets me edit the Markdown content of the Hugo powered site with ease. The low bandwidth needs means I can remote in and get changes updated without issues.

Darren Buse uses
Vim

Tool a while to get used to but one of the best things I have learnt recently, great training from Drew Neil over at VimCasts.

SmartLogic uses
Vim

Our developers use Vim, which is great for remote pair programming. We even have a server—Bruizer—set up to host shared terminal sessions.

Yoandy Rodriguez uses
Emacs

Emacs is my text editor/frontend to git/ blog editor/ filesystem explorer/ tool for editing remote files.

Andrew Watt uses
Atom

My primary Text Editor. Custom snippets help cut down on boiler plate and keep my work flow efficient.

Ana Phi Sancho uses
Atom

Self taught : acquired knowledge or skill on one's own initiative. Platform: OSX 10.8 or later, Windows

doodledudes uses
Atom

Tons of free package available and most of all its from github so managing your repo is that easy.

Tiago Ferreira uses
Atom

My main code editor for everything not iOS, including Ghost themes, swift frameworks, etc.

Mathias Vonende uses
Emacs

'The' editor for erlang/otp-systems, integrates niceley with git.

Ismael Arenzana uses
Emacs

Editor of choice. Vi fanboys please don't comment.