January 15, 2016

Arch Linux Day 4: Switching Over to neovim

  1. Installing neovim
  2. vim to neovim
  3. vim-airline
  4. Transparent Terminal

As if changing over to i3 window manager wasn't enough, I decided to change my default editor from vim to neovim. Of course, some things may break (which they did).

Installing neovim

To install neovim on Arch, you must build it yourself because it is not in the default repository - it is in the Arch Linux User Repository (AUR).

cd ~/build
git clone https://aur.archlinux.org/neovim-git.git
cd neovim-git

makepkg -sri            # Build the package

vim to neovim

Of course, things won't work out-of-the-box with vim settings in neovim. After symbolically linking my .vim/ and .vimrc files to my '.config/nvim/' and .config/nvim/init.vim files, I started up neovim.

nvim

Immediately, I was told that my favourite autocomplete plugin, YouCompleteMe, doesn't work with it and I needed to compile it with python2 support. After pressing enter to a bunch of different questions about my English spell checking dictionary, I was in. It looks exactly the same, feels exactly the same. I heard that, unlike vim, neovim has asynchronous callbacks instead of synchronous ones, making it faster. I searched online and saw that neovim doesn't compile with python by default - I needed to enable it with pip.

sudo pacman -S python2-pip
sudo pip2 install neovim

I reopened neovim, and voila, YouCompleteMe works!

vim-airline

I saw that other people's vim/neovim screen shots had a very pretty status line. That's why I wanted to install vim-airline.

NOTE: AFTER INSTALLING THE FONTS FOR VIM-AIRLINE, PLEASE RESTART. OTHERWISE, YOU WOULD SPEND AN HOUR TRYING TO FIGURE OUT WHY VIM-AIRLINE DOESN'T WORK.

An hour and a half later, I was done with it - vim-airline was successfully installed, along with the correct font file, and I was elated.

Transparent Terminal

See what I did there? No?

Another thing that bothered me since installing GNOME was that there was no option for an opaque background in the GNOME terminal. I remembered that I could do that in my Fedora distribution, so I googled it.

Apparently, the Fedora distribution patched the GNOME terminal so that there would be an option for transparent background for the terminal. Of course, the main branch would not have that, which explains why my GNOME terminal doesn't have this feature. To get around it, I had to install a patched version of the GNOME terminal through the AUR. Here we go again.

NOTE: THE BELOW COMMANDS WILL REPLACE YOUR DEFAULT gnome-terminal WITH THE PATCHED VERSION. JUST BE WEARY.

cd ~/build
git clone https://aur.archlinux.org/gnome-terminal-fedora.git
cd gnome-terminal-fedora

makepkg -sri

It installs nicely, replacing my old terminal and some other things (vte), and works! Great!

Tags: terminal neovim config transparent linux vim