Emacs can be controlled entirely with the keyboard.
Ranked in these QuestionsQuestion Ranking
Pro Keyboard-focused, mouse-free editing
Emacs can be controlled entirely with the keyboard.
Pro Total customizability
Customizations can be made to a wide range of Emacs' functions through a Lisp dialect (Emacs Lisp). A robust list of existing Lisp extensions include the practical (git integration, syntax highlighting, etc) to the utilitarian (calculators, calendars) to the sublime (chess, Eliza).
Pro It's also an IDE
You can debug, compile, manage files, integrate with version control systems, etc. All through the various plugins that can be installed.
Pro Works in terminal or as a GUI application
You can use Emacs' command line interface or graphical user interface.
Pro Self documenting
Emacs has extensive help support built-in as well as a tutorial accessed with C-h t.
Licensed under GNU GPL.
Pro Great documentation
With 30+ years of use the Emacs documentation is very thorough. There are also a lot of tutorials and guides written by third parties.
Pro Mini buffer
You can pass complicated arguments in the mini buffer.
Fully compliant GNU-emacs is available on many platforms, and they all understand .emacs configuration files.
Pro Rectangular cut and paste
Emacs can select rectangularly.
Pro Lisp customizations
With lisp customization, any behavior of Emacs can be changed. Update with pre-release patch can be also applied without recompiling the whole Emacs.
Pro Vi keybindings through Evil mode
Evil mode emulates vim behaviors within Emacs. It enables Vi users to move inside the Emacs universe.
Pro Visual selection and text objects with Evil
Evil is an extensible vi layer for Emacs. It provides Vim features like Visual selection and text objects.
Pro Support multi-line editing, multiple frame, powerful paren, crazy jumping style
Review the "Emacs Rocks" video.
Pro Provides org-mode
Advanced planning and publication which can start as a simple list.
Pro Has been widely used for a long time
Pro dabbrev-expand (Alt-/)
Dynamic word completion.
Works on Linux, Windows, Macintosh, BSD, and others.
Pro Enormous range of functionalities (way beyond simple "text editing")
Through its programmability, a very broad range of functionalities can be integrated in emacs, turning it even into a "single point of contact" with the underlying operating system.
Pro Integrates planning in your development process
You can jump straight from your org-mode files to programming tasks - and back - and build a seamless workflow.
Pro Helm plugin adds even more power to Emacs
Powerful commands, search, and more with the Helm plugin.
Pro GTK+ widgets support
Pro Provides quick fixes
Eclipse with JSDT provides you with quick fixes every time a warning or error is raised by the IDE. This feature is particularly helpful at places in code where errors were caused by the programmer just being a little "lazy", such as missing out the
+ sign between two operands or a variable being out of scope.
Pro Smart Code completion
Just like all other IDEs, Eclipse offers you inline code completion (even with any external JS libraries added to the project).
Pro Free and cross-platform
Eclipse runs on Windows, Linux and Mac, and is totally free of cost.
Pro Code refactoring
Eclipse's refactoring features are quite similar to Webstorm's. It provides almost the same functionalities which include renaming, moving, and member extraction to make your code tidier
Pro Code auto-completion for brackets and parenthesis
This feature is particularly useful when you've added a lot of nesting in your code and you're unable to recall which opening bracket corresponds to which closing one.
Pro Large selection of plugins
Eclipse has a large and active community, which has resulted in a wide variety of plugins.
Pro Highly customizable
Thanks to the large variety of plugins and various configuration options available, Eclipse is very customizable.
Pro Seamless integration with web servers like Apache or Jetty
Eclipse lets you integrate web servers (like Apache or Jetty) into the IDE, which you could use for in-container testing or providing services.
Pro Good integration with git using eGit plugin
Pulling, pushing, staging, stashing, etc., are all available in Eclipse as IDE functionalities.
Con Learning curve is long
While it's better than it used to be, with most functions being possible through the menu, Emacs is still quite a bit different from your standard editor. You'll need to learn new keyboard shortcuts.
Con Sometimes the extensibility can distract you from your actual work
If I ever want to lose half a day, I'll start by tweaking my .spacemacs config file.
Con Chorded keyboard combinations can be baffling
For example, for navigation it uses the b, n, p, l keys. Which for some people may seem strange. But don't worry, you can change it.
Con A lot of jokes in this serious software
Con Using Emacs on a new machine without your .emacs file
Con Uses a lot of memory
Eclipse hogs a lot of memory, although this can be controlled by the IDE start-up ini file.
Con Plugins can be unstable
Though there are plenty of plugins to choose from, they aren't always reliable. Some aren't maintained, bug fixes can be slow, and you may need to download plugins from multiple sources.
Con Support and problem solving is difficult to find
The Eclipse forums have more tumbleweed than users. Stack-overflow also has very little info.