Updated README.md.

This repository is not solely used for Neovim anymore. Furthermore, the
description should be distribution independent.
This commit is contained in:
Dennis Potter 2018-11-25 16:33:05 +01:00
parent aeba0dd830
commit c8c2c9c162
1 changed files with 19 additions and 91 deletions

110
README.md
View File

@ -1,98 +1,26 @@
This repository contains my personal [neovim](https://neovim.io/) configuration file. This way I am able to synchronize this configuration between different clients.
This repository contains my personal dotfiles. All dotfiles are managed by [dotdrop](https://github.com/deadc0de6/dotdrop).
## Installation
### Install neovim
On Ubuntu, with root rights, neovim can be installed through the packet manager with
In order to install all dotfiles, run:
```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
git clone https://git.dennispotter.eu/Dennis/dotfiles
cd dotfiles
git submodule init
git submodule update
sudo pip3 install -r dotdrop/requirements.txt
./dotdrop/bootstrap.sh
./dotdrop.sh --cfg=config.yaml 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'
## Prerequisites
Below, a list of applications that are managed and of their prerequisites to make full use of all configuration.
```
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
- tmux
- neovim
fonts-powerline
exuberant-ctags
cmake
clang
rust
jupyter
```
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.