This repository contains my personal [neovim](https://neovim.io/) configuration file. This way I am able to synchronize this configuration between different clients. ## Installation ### Install neovim On Ubuntu, with root rights, this can be done by running: ```bash sudo apt-get install neovim ``` Alternatively it has to be build from source: ```bash 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 ```bash 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: ```bash sudo apt-get install fonts-powerline sudo apt-get install exuberant-ctags pip3 install --upgrade pip pip3 install jupyter ``` Without root rights the software has to be compiled manually. To install the powerline fonts, run: ```bash 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](http://ctags.sourceforge.net/). Then run: ```bash tar -xzvf ctags-.tar.gz cd ctags-. ./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`: ```bash alias vi='nvim' ``` Then, clone the repository into you local `~/.config/nvim` directory, using: ```bash git clone https://git.dennispotter.eu/Dennis/neovim-config ~/.config/nvim ``` To make sure the environment stays up to date, set a ```bash (cd ~/.config/nvim && git pull) ``` in your `~/.bashrc` or as a crontab. Alternatively, if you want to be able to update the config files on any client, setup a new git directory: ```bash cd ~/.config/nvim git init git remote add origin git remote add origin git@dennispotter.eu:Dennis/neovim-config.git git pull origin master ``` To make sure the environment stays up to date, set an `git pull` in a crontab.