Swap Your Laptop for an iPad + Linode
Vim: My Home from Home
Perhaps the only reason this transition has been so smooth is because my favourite editor/IDE looks and feels almost exactly the same running on an iSSH console as it did running locally on my MacBook. iSSH supports xterm-256color, which means you still can have pleasant color schemes despite working in a terminal. All my plugins are there, my code-completion, quick navigation and so on.
Figure 3. Vim on iPad
I found Ubuntu's default Vim didn't have everything I wanted, but
don't worry! It's easy to download and build it yourself. See Listing 1
(also available at
Listing 1. Building Vim
install-vim.sh # apt-get install mercurial apt-get build-dep vim hg clone https://vim.googlecode.com/hg/ vim cd vim ./configure --enable-rubyinterp --enable-pythoninterp ↪--with-features=big make make install
I honestly can't remember which plugins I installed and which ones I actually use. I just copied the existing .vim folder from my MacVim installation. I definitely use these every day though:
You can get them all from http://www.vim.org/scripts, but you may want to install pathogen and get them that way instead. Note that command-t requires you to build a stub—follow the install instructions in command-t.vim, and it just works.
To use the clang_complete plugin, you'll need clang. Typing
install clang should do the trick. I had to play around with it a bit
to get it working on my project, which included adding all the -I and -D
command-line options to a .clang-complete file in the project directory.
Everybody configures Vim differently. Listing 2 shows my .vimrc (also available at https://gist.github.com/1357590). Some of the things here relate to our internal tracker system and won't be interesting for you, but it should be clear what most of these things do and which keys are bound to them.
Listing 2. .vimrc
In short, it's a seamless transition from my MacVim environment. If I were developing OS X apps with Xcode or used Eclipse or Visual Studio regularly, this change probably would have killed me.
As it happens, working in the terminal on a remote Linode is even better than working locally, thanks to the magic of GNU Screen.
Mark O'Connor is a Munich-based programmer, occasional writer and part-time startup founder. He believes in dynamic typing, first-class functions and the immortal essence of the human soul. He also likes tea. You can reach him at @yieldthought or http:
Practical books for the most technical people on the planet. Newly available books include:
- Agile Product Development by Ted Schmidt
- Improve Business Processes with an Enterprise Job Scheduler by Mike Diehl
- Finding Your Way: Mapping Your Network to Improve Manageability by Bill Childers
- DIY Commerce Site by Reven Lerner
Plus many more.