99 lines
3.2 KiB
Markdown
99 lines
3.2 KiB
Markdown
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, neovim can be installed through the packet manager with
|
|
```bash
|
|
sudo add-apt-repository ppa:neovim-ppa/stable
|
|
sudo apt-get update
|
|
sudo apt-get install neovim
|
|
```
|
|
or with the AppImage
|
|
```bash
|
|
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:
|
|
```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
|
|
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:
|
|
```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-<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`:
|
|
```bash
|
|
alias vi='nvim'
|
|
```
|
|
If you want to use Neovim for some (or all) of the editor alternatives, use the following commands:
|
|
```bash
|
|
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:
|
|
```bash
|
|
git clone https://git.dennispotter.eu/Dennis/neovim-config ~/.config/nvim
|
|
```
|
|
To make sure the environment stays up to date, set
|
|
|
|
```bash
|
|
(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:
|
|
```bash
|
|
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
|
|
```bash
|
|
(cd ~/.config/nvim && git pull origin master)
|
|
```
|
|
in a crontab.
|
|
|
|
|
|
|