This is my personal VIM config, I like it very much.
The configuration is split up in multiple .vim
files,
so everything looks nice and clean (and maybe even
modular).
It is verified to work on these systems:
vim
on GNU/Linux in GNOME terminal or kittyvim
on Termux for AndroidMacVIM
on MacOS
If you want this VIM config, do this in your Terminal:
mv ~/.vim ~/.vim__NOTSOAWESOME;
mv ~/.vimrc ~/.vimrc__NOTSOAWESOME;
git clone https://github.com/cookiengineer/dotvim ~/.vim;
ln -s ~/.vim/.vimrc ~/.vimrc;
Afterwards, start vim
and execute :ZenInstall
and :ZenUpdate
.
Now go ahead and enjoy responsibly.
Fixes
- Copy/Paste from GUI applications into Terminal
- Copy/Paste leads to auto-indented code
Auto Commands
BufWritePre
removes trailing whitespacesBufWritePre
andFileWritePre
creates non-existing folder pathsFileChangedRO
,FileChangedShell
,FileChangedShellPost
have been modified to echo the warning instead of an annoying shell
Key Bindings / All Modes
All key bindings are defined in mappings.vim.
[F1]
opensnetrw
as sidebar[F2]
turns off highlighting (/<search>
in normal mode)[F3]
formats, auto-indents and auto-lints the current buffer[+]
toggles current window zoom (aka fullscreen mode)[Shift] + [T]
creates a new tab[Shift] + [Page Up]
opens previous tab[Shift] + [Page Down]
opens next tab[Ctrl] + [W], [C]
closes tab[Ctrl] + [W], [G], [Arrow Key]
moves current window[Ctrl] + [W], [G], [H/J/K/L]
moves current window[Ctrl] + [Arrow Up]
or[Ctrl] + [K]
moves to previous linting error.[Ctrl] + [Arrow Down]
or[Ctrl] + [J]
moves to next linting error.
Key Bindings / Visual Mode
[Ctrl] + [J / K]
moves blocks in visual mode (under cursor)[g], [f]
opens file (under cursor)[g], [x]
opens browser or application viaxdg-open
(under cursor)
Templates
The templates are defined in templates.vim
,definition
inserts the lycheejs/definition.js template,index.html
inserts the lycheejs/index.html template,index.js
inserts the lycheejs/index.js template