Here’s the Deal
Slant is powered by a community that helps you make informed decisions. Tell us what you’re passionate about to get your personalized feed and help others.
I've tried every editor on the list of text manipulation tools for Windows and almost every editor on the list for Linux. I remember when Github released Atom as the first open source electron-shell based code editor and it ran like garbage but was still an awesome toy to play around with on a powerful computer. I've got a decade of experience writing code and about five years of that time has been lived in vim. I think the best thing about vscode is that because it's electron based it can run on any platform pretty easily and it does almost everything needed out of the box, or with a few quick and easy plugin install commands. Vim is still my home but it's inarguably more complicated to setup a plugin management system with something like vim-plug, and find/add the plugins that will help you get your work done. With vscode you can get everything you need on Windows, Mac, and Linux quickly and painlessly. See More
You'll spend a lot of time learning all the commands and modes supported in Vim. You'll then spend more time tuning settings to your needs. Although once it's tuned to your needs, you can take your .vimrc to any machine you need and have the same experience across all your computers. See More
The fact that very few, if any, people claim to be a "Vim Master" is a testament to the breadth and depth of Vim. There is always something new to learn - a new, perhaps more efficient, way to use it. This prevents Vim from ever feeling stale. It's always fresh. See More
No need to memorize different key combinations for things like deleting the text inside of a block or deleting the text inside of a pair of quotes. It's just a series of actions, or nouns and verbs, or however you prefer to think about it. If you want to delete, you select "d"; if you want it to happen inside something, you select "i"; and if you want the surrounding double-quotes, just select ". But if you were changing the text, or copying it, or anything else, you'd still use the same "i" and ". This makes it very easy to remember a large number of different extremely useful commands, without the effort it takes to remember all of the Emacs "magic incantations", for example. See More
Interaction with Vim is centered around several "modes", where purpose and keybindings differ in each. Insert mode is for entering text. This mode most resembles traditional text entry in most editors. Normal mode (the default) is entered by hitting ESC and converts all keybindings to center around movement within the file, search, pane selection, etc. Command mode is entered by hitting ":" in Normal mode and allows you to execute Vim commands and scripts similar in fashion to a shell. Visual mode is for selecting lines, blocks, and characters of code. Those are the major modes, and several more exist depending on what one defines as a "mode" in Vim. See More
As with all vi-like editors, Vim provides a modal paradigm for text editing and processing that provides a rich syntax and semantic model for composing succinct, powerful commands. While this requires some initial investment in learning how it works in order to take full advantage of its capabilities, it rewards the user well in the long run. This modal interface paradigm also lends itself surprisingly well to many other types of applications that can be controlled by vi-like keybindings, such as browsers, image viewers, media players, network clients (for email and other communication media), and window managers. Even shells (including zsh, tcsh, mksh, and bash, among others) come with vi-like keybinding features that can greatly enhance user comfort and efficiency when the user is familiar with the vi modal editing paradigm. See More
Vim allows users to include many features found in IDEs and competing editors, but does not force them all on the user. This not only helps keep it lighter in weight than a lot of other options, but it also helps ensure that some unused features will not get in the way. See More
There's no need to reach for the mouse or the Ctrl/Alt buttons again. Everything is a mere key press or two away with almost 200 functions specifically for text editing. Vim does support the mouse, but it's designed so you don't have to use it for greater efficiency. Versions of Vim, like gVim or MacVim, still allow you to use the mouse and familiar platform shortcuts. That can help ease the learning curve and you'll probably find you won't want to (or need to) use the mouse after a while. See More
Vi/vim exists on almost all Unix-like platforms. It's the de-facto Unix editor and is easily installed on Windows. All you need to make it work is a text-based connection, so it works well for remote machines with slow connections, or when you're too lazy to set up a VNC/Remote Desktop connection. See More
Since Vim 8, Vim can exchange characters with background processes asynchronously. This avoids the problem of the text editor getting stuck when a plugin that had to communicate with a server was running. Now plugins can send and receive data from external scripts without forcing Vim to freeze. See More
As it loads the whole file into RAM, replacing all string occurrences in 100 MB+ files is quick and easy. Every other editor has sort of died during that. It is extremely fast even for cold start. Vim is light-weight and very compact. In terminal, it only uses a small amount of memory and anytime you invoke Vim, it's extremely fast. It's immediate, so much so you can't even notice any time lag. See More
When compared to modern graphical editors like Atom and Brackets (which have underlying HTML5 engines, browsers, Node, etc.), Vim uses a sliver of the system's memory and it loads instantly, all the while delivering the same features. Vim is also faster than Emacs. See More
Multiple cursors and column selection allows for versatile ways of editing. ctrl + d will select the current word and each time the command is repeated, it adds the next occurrence of the word to the selection. ctrl + click or middle-mouse click will place another cursor in the place that's clicked. Cursors can then be controlled together. This also permits selecting vertically. ctrl + shift + l will place a cursor on every highlighted line. See More
Sublime Text uses TextMate's syntax declaration files to support new languages, it has all its menus and keybindings generated from JSON files, and it can be scripted to add new features using Python. If Sublime Text doesn't support a desired language or feature, it's usually not long before someone implements it themselves - examples include the plugin package manager and the 'open in browser' command. See More
Installing Atom adds two command line commands - atom and apm. The first one runs the application itself while the second is the Atom Package Manager that's used to add and remove various components from the package listing. While these features can be set up with other editors as well, Atom takes care of them out of the box. See More
As Atom is still relatively new, it's missing nice little touches that other text editors have implemented over the years. From simple ease-of-use items like middle-mouse button multi-cursor select, to the ways pasted information from a spreadsheet is interpreted in multi-select situations. See More
One of the goals of Atom is to be a text editor for both experienced and beginner programmers. You can add keyboard shortcuts, change themes, install plugins, and change core settings by clicking through a GUI, or by manually editing config files the old-fashioned way. It has the added advantage of being built using the same engine that powers Google Chrome, so actions like opening and closing tabs feel familiar, even to new or non-programmers. See More
Due to its modular design, almost any aspect of the editor can be changed. Even seemingly core packages, like those taking care of search and replace functionality, can be forked on GitHub, and changed and replaced in the editor. The documentation for creating new plugins is also great, making it easier for developers to jump in and create plugins for Atom. See More
Multiple cursors and column selection allow for versatile ways of editing. ctrl + d will select the current word and each time the command is repeated, it adds the next occurrence of the word to the selection. ctrl + click or middle-mouse click will place another cursor in the place that's clicked. Cursors can then be controlled together. This also allows for selecting vertically. See More
It's convenient because I can store the code and call it immediately. See More
Help millions of people make better decisions.
Each month, over 2.8 million people use Slant to find the best products and share their knowledge. Pick the tags you’re passionate about to get a personalized feed and begin contributing your knowledge.