This introduces the '.vim' folder to my dot-files repository. I'll have
to think about splitting my '.vimrc' file into multiple files inside the
'.vim' folder.
I usually code in C99 and C++17 because that's EPITA's guidelines.
I'll have to check out the new C11/C18 features (notably threading and
type genericity...) someday.
I wanted to try something else, lightline seems more fun than the vanilla
statusline, and easier to modify than airline.
This is the bare minimum of status bar for me, without powerline
separators because I don't like them very much, and with basic
vim-fugitive integration.
I couldn't type most of my two letter leader bindings with such a short
timeout... This makes deletions in visual mode a bit longer, but I don't
think that's a terrible tradeoff.
I have never used `gutentags` or `gutentags_plus`, mostly because the
only project that I have done that could have benefited from it (the
Tiger Compiler) did not play well with `universal-ctags`.
To make navigation inside my configuration file easier, I added a
modeline at the end to enable markers for folding and added the markers
on all levels.
I added the `set hidden` option to keep modified buffers open in the
background and used that opportunity to modfify the order of my settings
and their categorisation.
I forgot to save the commit mapping last time...
I also added mapping to automatically write the push, pull, and merge
commands of vim-fugitive. They all populate the quick-fix list with
their output.
All fugitive specific mappings are prefixed by <Leader>
- ga : add file in current buffer
- gb : add blame information to the left of current buffer
- gc : commit all staged changes, open a new tab with commit message
- gd : open a diff view
- gs : open a buffer with the current git status
- gm : use git-mv to rename a file in the project
You can use the do and dp commands while in diff view to stage a partial
commit. Mappings have been added to make them work in visual mode too.
Mappings for vcs files, all files, buffers, buffer history, and tags
have been added to the Vim configuration.
The installation process automatically adds the fzf sourcing commands to
both Bash and Zsh configuration files.
I had a <Leader>qf mapping to toggle the quick-fix lis, but no mapping
to toggle the location list... The <Leader>ql mapping is now there to
complement it.
I prefer having them available to change the indentation of a block of
code instead of having an easier time using vim-unimpaired, which I
haven't even bothered trying to learn yet...