dotfiles/README.md
2018-06-20 17:41:21 +02:00

3.2 KiB

This repository contains my personal neovim configuration file. This way I am able to synchronize this configuration between different clients.

Installation

Install neovim

On Ubuntu, with root rights, neovim can be installed through the packet manager with

sudo add-apt-repository ppa:neovim-ppa/stable
sudo apt-get update
sudo apt-get install neovim 

or with the AppImage

curl -LO https://github.com/neovim/neovim/releases/download/nightly/nvim.appimage
chmod u+x nvim.appimage
./nvim.appimage

Alternatively it has to be build from source:

git clone https://github.com/neovim/neovim
make CMAKE_BUILD_TYPE=RelWithDebInfo CMAKE_EXTRA_FLAGS="-DCMAKE_INSTALL_PREFIX=/full/path/"
make install

Install plugin Manager

To install plugins automatically from Github, run

curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

Then, it is possible to install plugins in nvim with :PlugInstall and update them with :UpdateRemotePlugins.

Install Prerequisites

To make use of all plugins in the init.vim file some additional software has to be installed. With sudo rights on Ubuntu this can be done with:

sudo apt-get install fonts-powerline
sudo apt-get install exuberant-ctags
sudo apt-get install cmake
sudo apt-get install clang
curl https://sh.rustup.rs -sSf | sh
pip3 install --upgrade pip
pip3 install jupyter

Without root rights the software has to be compiled manually. To install the powerline fonts, run:

git clone https://github.com/powerline/fonts.git --depth=1
cd fonts
./install.sh
cd ..
rm -rf fonts

To compile the Exuberant Ctags, download the latest version from their website. Then run:

tar -xzvf ctags-<X>.<Y.>tar.gz
cd ctags-<X>.<Y>
./configure --prefix=$HOME
make && make install

Setup environment

Since you don't want to use Vi(m) anymore after you setup this awesome environment, place an alias in your ~/.bashrc:

alias vi='nvim'

If you want to use Neovim for some (or all) of the editor alternatives, use the following commands:

sudo update-alternatives --install /usr/bin/vi vi /usr/bin/nvim 60
sudo update-alternatives --config vi
sudo update-alternatives --install /usr/bin/vim vim /usr/bin/nvim 60
sudo update-alternatives --config vim
sudo update-alternatives --install /usr/bin/editor editor /usr/bin/nvim 60
sudo update-alternatives --config editor

Then, clone the repository into you local ~/.config/nvim directory, using:

git clone https://git.dennispotter.eu/Dennis/neovim-config ~/.config/nvim

To make sure the environment stays up to date, set

(cd ~/.config/nvim && git pull)

in your ~/.bashrc or as a crontab.

Alternative synchronization

If you want to be able to push changes back to the repository, setup a new git directory:

cd ~/.config/nvim
git init
git remote add origin git@dennispotter.eu:Dennis/neovim-config.git
git pull origin master

Again, to make sure the environment stays up to date, set

(cd ~/.config/nvim && git pull origin master)

in a crontab.