Reno, NV    +1 (800)0 621-0871

Go back

Development | Industry | Tutorial

Switching to MacVim

  |  November 5, 2015

Text Editors are essential to the life of a developer. While some (and I’ve been part of this group) use IDEs, there’s still a big number of developers who prefer to use plain old text editors.

I’ve gotten used to coding on IDEs (Netbeans, Eclipse, Bloodshed Dev, etc) back in college because they taught us how to code with them. I remember a friend from a different university also taking up Computer Science telling me about her experience doing her coding with notepad and command prompt and I couldn’t imagine how hard that might have been.

Then I interned here at AELOGICA and Sublime Text and the terminal were introduced to me. It wasn’t that hard because Sublime Text was just like a normal text editor + slick features. 

Screen Shot 2015-11-04 at 3.26.50 PM

It wasn’t until I started working here and got paired with a senior developer that I got to try working with vim—MacVim to be precise.

Screen Shot 2015-11-04 at 3.25.57 PM

Most of the developers here use MacVim or Vim, or Sublime with vim bindings. Just in case you don’t know, vim is a text editor-an improved version of vi, the editor distributed in most UNIX systems. And MacVim is just vim with a GUI, integrated very well with the Mac OS.macvim logo

Thinking of the code’s logic wasn’t the only thing slowing me down during my first few weeks but also the struggle with working on MacVim. During the times my pair partner would leave me on my own, I’d secretly switch back to Sublime Text just to be able to actually do something. 

tumblr_lj0fohWlzu1qibz0jo1_r1_500

But I wouldn’t want to pass up the opportunity of learning something new just because I was having a hard time, so I told myself I’d use Sublime Text less and will officially switch to MacVim. Sometimes I’d google for commands and sometimes I’d ask other MacVim users here for shortcuts and after a few weeks I just got used to vim commands that sometimes I even 'dd' (delete the whole line) while I’m on Sublime Text. I was even less productive then because I kept on typing wrong commands

One of the commands I learned and like (because they were helping me type code faster—well maybe that’s what they’re really meant to do) is ‘ci' + (double quotes/single quotes/parenthesis/braces/etc)’  which means ‘change anything inside the symbols (stated previously) and go into insert mode’ like: ci "  and ‘cs' + (double quotes/single quotes/parenthesis/braces/etc) + (double quotes/single quotes/parenthesis/braces/etc)’  like: cs ' " which will change the symbol surrounding a word/phrase/etc into the new symbol you want. ‘This is perfect for #{interpolation}’ will change into “This is perfect for #{interpolation}” in just four keystrokes, without the use of a mouse!

I like MacVim because you’re still allowed to use the mouse and other Mac commands, it integrates nicely with the clipboard, so you can paste via command + v unlike vim. I liked MacVim so much I kept convincing other people to switch from Sublime to MacVim, telling them there are much simpler ways to do some stuff with vim commands.

Learning new stuff really takes time and if you aren’t challenged at first then maybe you aren’t learning something new. It’s not that big of an accomplishment and my MacVim learning curve was steep, it’s still a little bit steep but I know I’ve learned something. I still am, because I’m still asking others for shortcut commands. Yay!

Yoda-meme

Vim/MacVim might not be for everyone, not everyone enjoys having a hard time learning something, but I suggest you just put up with the pain these editors will give you at first and you’ll see how lovely these editors are. :))))