]> git.sthu.org Git - vimconf.git/blob - README.md
plugins: Enable airline's vimtex extension
[vimconf.git] / README.md
1 # A modular vim configuration
2
3
4 <div class="hideonwebsite">
5 This repository is a replication of the repository <a
6 href="https://git.sthu.org/?p=vimconf.git;a=summary">here</a>. The <a
7 href="https://www.sthu.org/code/codesnippets/vimconf.html">website</a> gives
8 further details and more screenshots.
9 </div>
10
11
12 This is my personal vim configuration. The [git
13 repo](https://git.sthu.org/?p=vimconf.git;a=summary) of this configuration is
14 under constant flux, however, it should be compatible with (g)vim (8.0+) and
15 neovim (0.2+), yet some features are only available with newer versions.
16
17 ![A demo screenshot](https://www.sthu.org/code/codesnippets/img/vimconf-startify.png)
18
19
20 ## Flavors on different machines
21
22 I would like to use this configuration on a large variety of machines with
23 different needs. To accommodate for this, the configuration is split up into
24 multiple files and a different set of plugins is used:
25
26 - In any case, the plugin set in `plugins.vim` is loaded.
27 - If run as non-root user, an additional plugin set in `plugins-noroot.vim` is
28 loaded.
29 - If run on a no-low-end-box, an additional plugin set in
30 `plugins-noroot-nolowendbox.vim` is loaded. A low-end box is indicated by the
31 existence of the file `lowendbox`, e.g., on my Raspberry Pi installations.
32 - Also, if `plugins-local.vim` exists, this plugin set is loaded, too. For
33 instance, on one machine I have gnupg and corresponding vim plugins
34 configured.
35
36 Similar to `plugins-local.vim`, also the following files are sourced if
37 existent:
38
39 - `macros-local.vim`
40 - `keymaps-local.vim`
41 - `init-local.vim`
42
43 Example files are shipped with the repository.
44
45 ## Installation
46
47 ### Requirements
48
49 The install script that is shipped with this configuration also checks
50 for the following requirements:
51
52 - python3 support for vim/gvim
53 - neovim python3 module
54 - aspell
55
56 Under a Debian-like Linux system you can install these by the following commands
57
58 ````
59 sudo apt-get install aspell aspell-de python3-pip
60 pip3 install neovim
61 ````
62
63 Note that vim-tiny in Debian does not support python3, but vim-nox, vim-gtk3 or
64 neovim does. You also want to make sure that you have curl and git installed.
65
66 ### Clone & install
67
68 If you already have a vim configuration in place then you may first move your
69 `~/.vim` directory first
70
71 ````
72 mv ~/.vim ~/.vim-old
73 ````
74
75 Assuming that there is no `~/.vim` anymore, simply clone this repository into
76 `~/.vim` and invoke `install.sh` therein.
77
78 ````
79 git clone https://git.sthu.org/repos/vimconf.git ~/.vim
80 ~/.vim/install.sh
81 ````
82
83 This install script creates backups of existing configuration files (e.g.,
84 `~/.vimrc`) and then creates symlinks to configuration files in `~/.vim`.
85
86
87 ## Terminal color settings
88
89 For consistent background colors you may change the background colors of your
90 terminal program to the gruvbox black #1c1c1c. Otherwise regions of your
91 terminal may appear in a saturated black (#000) rather than the gruvbox black.