Vim and Atom

Graham Turner
2 min readJul 11, 2016

--

A dive into the world of text editors.

A cheatsheet for learning Vim commands

Where I’m Coming From

I’ve been teaching myself to program for the past 5 months. I’ve spent a significant amount of that time learning Ruby, Javascript and markup languages. I’ve also spent an unfortunate amount of energy getting pulled down the rabbit hole of developer opinions. I’ve bounced around multiple text editors, installed an alternate command shell and spent far too much time thinking about fonts and themes.

While reviewing a demo of someone building a test-driven command line game, I was amazed by their skill with Vim. They were effortless traversing the screen, selecting words, editing content, all without taking a moment to pause. I was familiar with Vim as an idea, but not its practical benefits.

To Vim or not to Vim

Vim is based off of vi, a text editor written in 1976 before the advent of the GUI. Vim relies on keyboard input and is typically run in the command line. It gives programmers the benefit of not having to leave their home row of keys to navigate the page, among other things.

After watching a handful of developers use Vim, I knew I wanted a piece. The only problem is Vim is a pain to get running, and not always the most pleasant thing to look at. If I’m going to be using a program all day, I better enjoy its aesthetics. So where does that leave me? Fortunately, the team at Github have built a text editor called Atom, which in many ways is a spiritual successor to Vim.

A look at my Atom setup

A Look at Atom

Out of the box Atom doesn’t seem to share much in common with Vim, it doesn’t even require the user to navigate with the keyboard and it isn’t modal. Put the true nature of Vim’s power lies in its extensibility and open source nature. This is something that Atom has done a fantastic job bringing into the 21st century. I can easily customize Atom to look however I like, add some useful packages, and even give it most of the power of Vim using the vim-mode package.

Still Learning

I’m still not an expert at the way Vim does thing, but I’m excited to be learning in Atom. I won’t make my pair programming partners suffer though my sad attempts at navigating, but during any downtime I’ll be using all of the resources at my disposal to learn the art of Vim. Watch out world.

--

--