# A modular vim configuration
-This is my personal vim configuration that is partly inspired by SpaceVim. It
-is compatible to neovim and (g)vim (version 8 or higher). The configuration is
-split up into multiple files such that personal customization is separated from
-boilerplate code.
+<div class="hideonwebsite">
+This repository is a replication of the repository <a
+href="https://git.sthu.org/?p=vimconf.git;a=summary">here</a>. The <a
+href="https://www.sthu.org/code/codesnippets/vimconf.html">website</a> gives
+further details and more screenshots.
+</div>
-## Installation
-Simply clone this repository into ~/.vim and invoke install.sh therein. The
-install script just creates symlinks to vim/gvim/neovim configuration files and
-directories.
+This is my personal vim configuration. The [git
+repo](https://git.sthu.org/?p=vimconf.git;a=summary) of this configuration is
+under constant flux, however, it should be compatible with (g)vim (8.0+) and
+neovim (0.2+), yet some features are only available with newer versions.
-````
-git clone https://git.sthu.org/repos/vimconf.git ~/.vim
-~/.vim/install.sh
-````
+![A demo screenshot](https://www.sthu.org/code/codesnippets/img/vimconf-startify.png)
+
+
+## Flavors on different machines
+
+I would like to use this configuration on a large variety of machines with
+different needs. To accommodate for this, the configuration is split up into
+multiple files and a different set of plugins is used:
+
+- In any case, the plugin set in `plugins.vim` is loaded.
+- If run as non-root user, an additional plugin set in `plugins-noroot.vim` is
+ loaded.
+- If run on a no-low-end-box, an additional plugin set in
+ `plugins-noroot-nolowendbox.vim` is loaded. A low-end box is indicated by the
+ existence of the file `lowendbox`, e.g., on my Raspberry Pi installations.
+- Also, if `plugins-local.vim` exists, this plugin set is loaded, too. For
+ instance, on one machine I have gnupg and corresponding vim plugins
+ configured.
+
+Similar to `plugins-local.vim`, also the following files are sourced if
+existent:
+
+ - `macros-local.vim`
+ - `keymaps-local.vim`
+ - `init-local.vim`
+
+Example files are shipped with the repository.
+
+## Installation
+
+### Requirements
-The install file also checks requirements for the configuration and the plugins
-added:
+The install script that is shipped with this configuration also checks
+for the following requirements:
- python3 support for vim/gvim
- neovim python3 module
- aspell
+Under a Debian-like Linux system you can install these by the following commands
+
+````
+sudo apt-get install aspell aspell-de python3-pip
+pip3 install neovim
+````
+
+Note that vim-tiny in Debian does not support python3, but vim-nox, vim-gtk3 or
+neovim does. You also want to make sure that you have curl and git installed.
+
+### Clone & install
+
+If you already have a vim configuration in place then you may first move your
+`~/.vim` directory first
+
+````
+mv ~/.vim ~/.vim-old
+````
+
+Assuming that there is no `~/.vim` anymore, simply clone this repository into
+`~/.vim` and invoke `install.sh` therein.
+
+````
+git clone https://git.sthu.org/repos/vimconf.git ~/.vim
+~/.vim/install.sh
+````
-## Specialization for local machines
+This install script creates backups of existing configuration files (e.g.,
+`~/.vimrc`) and then creates symlinks to configuration files in `~/.vim`.
-I personally would like to have the same vim configuration on all my accounts.
-Still, on certain machines I would like to personalize and specialize the
-configuration. The following files are read if existent:
- - plugins-local.vim
- - macros-local.vim
- - keymaps-local.vim
- - init-local.vim
+## Terminal color settings
-For all four example files are shipped with the repository.
+For consistent background colors you may change the background colors of your
+terminal program to the gruvbox black #1c1c1c. Otherwise regions of your
+terminal may appear in a saturated black (#000) rather than the gruvbox black.