-
Notifications
You must be signed in to change notification settings - Fork 7
Home
VimMic is well-documented vim configuration along with a set of plugins for the Vim text editor. It stand for Vim Make It Clever and is aimed to keep this editor light and efficient. It should be easy to use and customize for anyone who is familiar with Vim.
You may need to Update your .vimrc.preconf
and .vimrc.postconf
.
Adding and removing plugins use a new syntax described in the help.
Note we highly recommend to backup your previous .vimrc
if not already done
as we are going to erase it through the installation process.
We highly recommend having a Vim build supporting Python. To check if Python
is supported, run: vim --version | grep python
and see if +python[...]
is
present.
Dependencies listed here are recommended but not required for all plugins:
-
flake8 is used by the plugin for Python
flake8-vim. Install it through pip:
pip install --user flake8
. - ctags installed for better completion / code search support. Consider using Universal Ctags which is more up-to-date.
Quick installation script:
DIRNAME=".vimmic"
cd ~
git clone --recursive https://github.com/CharlesGueunet/vimmic.git "${DIRNAME}"
ln -sf "${DIRNAME}"/.vimrc .
Notice you can use whatever you want in $DIRNAME
, as long as you do not
modify the directory path afterward (as it may break the symbolic link).
If you want to update all plugins at once, simply run :Update
in Vim.
For those who would like to try with neovim, use the following snippet to link your vim configuration with your neovim configuration:
mkdir -p ${XDG_CONFIG_HOME:=$HOME/.config}
ln -s ~/.vim $XDG_CONFIG_HOME/nvim
ln -s ~/.vimrc $XDG_CONFIG_HOME/nvim/init.vim
- The default Leader Key is
,
(it is recomanded to rebind capslock on it). - You can press
;
instead of:
- If you want persistant undo (survive vim restart) create a
.undodir/
folder in the Vimmic installation folder. - If you want to display saved session at Vim startup, save them in
sessions/
folder in the Vimmic installation folder. - You can see the Vimmic keymap with the command:
:map
or with 3x leader.
You may need to restart Vim for your changes to the configuration to apply.
Please read the Vimmic's help ( :help vimmic
) as it is well documented
and provide many tips and tricks!
As described in the vimmic-config help, if you want to disable / enable
plugins, you can use the $HOME/.vimrc.preconf
file to force our plugin
manager (Dein) to add / remove a plugin. More details are available in the
sample in extra/vimrc.preconf.sample
.
Do not forget to restart your Vim afterward,
the editor can ask you to call :Update
if nedded.
All plugins are configured in their own files in config/plugins/
.
Other files do not affect them (the .vimrc load them)
.vimmic/ # Vimmic install directory
.vimrc # Loads Vimmic environment, configuration and plugins
config/
editor.vim # Original vim config (files, buffers, search...)
shortcuts.vim # Defines some shortcuts on the original vim functionalities
functions.vim # Some cool functions to update all plugins, fold, debug...
plugins/ # per-plugin related configuration. Files should use the following sections:
# Settings: Plugin related settings and variable
# Shortcuts: Mapping for this plugin
# Theme: Colors configuration for this plugin
We also use two other files defined in the user home directory (you can see
examples of those files in the extra/
directory):
-
$HOME/.vimrc.preconf
: tweak vimmic by adding or disabling plugins, changing the leader key, disabling part of the configuration... -
$HOME/.vimrc.postconf
: override plugins configuration, change themes, add your own features...
Default configuration. On the left we see the NerdTree pane to navigate in the project. The Install word is highlighted by the search.
The configuration using true-colors colorscheme as explained in the sample .vimrc.preconf and .vimrc.postconf of the extra/ folder. Here, we see on the left the Nerd Tree with the project files, the Undo Tree with the historic of the current file modification and on the right the Tag bar with the current function highlighted. Moreover, Git information are shown on the left of the text.
To learn Vimmic, you can use the Visual Shortcut panel. (Triple leader)
For code development, the left window shows the error reported on the editor line 15. The right window shows the clever completion (Ctrl-x x).
This configuration have started by a look at spf13, another vim distribution. spf13 is great but heavy so I decided to make my own configuration much lighter.
Another great distribution is SpaceVim, but here again this configuration is really complexe and most of the configuration should be made using thier own defined functions.
For the navigation and some highlight, we used this post
Lots of idea where taken from the jetbrains ide wich are among the best ones.
For those who want to use space as the leader key, this website can be usefull.
For later, build tools and shortcut might come from this conf.
Another great website about vim plugins is vimawesome.
Some tricks about buffer and viml evaluation come from this dotfile.
This git is maintained by Charles Gueunet <[email protected]>
Copyright (C) 2016 Charles Gueunet
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.