Master vimplus: Fast Automated Vim Configuration for Linux
This guide introduces vimplus, an open‑source tool that automates Vim setup on Linux, outlines its benefits, supported platforms, step‑by‑step installation, multi‑user support, update process, core configuration files, default plugin list, useful keybindings, and shows typical startup screenshots.
Overview
vimplus is an open‑source automation tool that configures Vim on Linux systems. It clones the repository, installs required dependencies, and sets up a predefined collection of plugins and key mappings, allowing a ready‑to‑use development environment with a single command.
Supported Linux Distributions
Ubuntu / UbuntuKylin
Debian
Kali Linux
Deepin
Linux Mint
Elementary
CentOS
Fedora
Arch Linux
Manjaro
openSUSE
Android 64‑bit (Termux)
Installation
git clone https://github.com/chxuan/vimplus.git ~/.vimplus cd ~/.vimplus ./install.shAfter installation set the terminal font to a Nerd Font (e.g., Droid Sans Mono Nerd Font ) to avoid garbled characters.
Multi‑User Deployment
To make the configuration available to additional users, run:
sudo ./install_to_user.sh user1 user2 ...Update
Pull the latest changes and refresh plugins with:
./update.shConfiguration Files
~/.vimrc– default configuration generated by vimplus. ~/.vimrc.custom.plugins – user‑defined list of extra plugins. ~/.vimrc.custom.config – user‑defined settings that override defaults.
Default Plugin Set
cpp-mode – function implementation generation, header/source switching, and declaration/definition navigation.
vim-edit – convenient text editing utilities.
change-colorscheme – quick theme switching.
prepare-code – inserts predefined code templates when creating new files.
vim-buffer – enhanced buffer management.
vimplus-startify – start page (optional).
tagbar – displays class, method, and variable outlines.
vim-plug – fast plugin manager (replaces Vundle).
YouCompleteMe – semantic auto‑completion for C/C++, C#, Python, PHP, etc. (installed by default but may require manual build).
NerdTree – file explorer.
nerdtree-git-plugin – shows Git status in NerdTree.
vim-devicons – file‑type icons (optional).
airline – lightweight status line.
auto-pairs – automatically closes quotes, brackets, braces.
LeaderF – powerful fuzzy file search.
ack – fast text search.
vim-surround – add/change surrounding characters.
vim-commentary – quick commenting.
vim-repeat – repeat the last command.
vim-endwise – auto‑complete end statements.
tabular – align text, tables, and code.
vim-easymotion – rapid cursor movement.
incsearch.vim – incremental fuzzy search.
vim-fugitive – Git integration.
gv – view Git commit history.
vim-slash – improved search with automatic highlight clearing.
echodoc – shows function signatures during completion.
vim-smooth-scroll – smoother scrolling.
clever-f.vim – enhanced f/F motions.
vim-gutentags – automatic tag generation (custom install).
indentLine – visual indentation guides (custom install).
mathjax-support-for-mkp – Markdown MathJax rendering (custom install).
markdown-preview – live Markdown preview (custom install).
Key Bindings
, – Leader key (customizable).
<leader>n – Toggle NerdTree file explorer.
<leader>t – Toggle function list.
<leader>a – Switch between .h and .cpp files.
<leader>u – Jump to function declaration (uses ctags).
<leader>U – Jump to function implementation (uses ctags).
<leader>o – Open include file.
<leader>y – Copy function declaration.
<leader>p – Generate function implementation.
<leader>w – Word jump.
<leader>f – Search files under the home directory (configurable).
<leader>F – Search text in the current directory.
<leader>g – Show Git repository commit history.
<leader>G – Show current file commit history.
<leader>gg – Show file content at a specific commit.
<leader>ff – Auto‑fix syntax errors (FixIt).
<c-p> – Switch to previous buffer.
<c-n> – Switch to next buffer.
<leader>d – Delete current buffer.
<leader>D – Delete all buffers except the current one.
rr – Replace text.
<leader>r – Global replace within a single file.
rev – Reverse word or selected text.
gcc – Comment selected code.
gcap – Comment a paragraph.
vif – Select function content.
dif – Delete function content.
cif – Rewrite function content (select + delete).
vaf – Select function including braces and name.
daf – Delete function including braces and name.
caf – Rewrite function including braces and name.
fa – Find next occurrence of a character.
<leader>e – Quickly edit ~/.vimrc.
<leader>s – Reload ~/.vimrc.
<leader>vp – Edit ~/.vimrc.custom.plugins.
<leader>vc – Edit ~/.vimrc.custom.config.
<leader>h – Open vimplus help document.
<leader>H – Open Vim help for the word under the cursor.
<leader>t – Generate a try‑catch block.
<leader><leader>y – Copy selection to system clipboard.
<leader><leader>i – Install a new plugin.
<leader><leader>u – Update an existing plugin.
<leader><leader>c – Delete a plugin.
Typical Appearance
Startup screen example:
Directory window example:
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Liangxu Linux
Liangxu, a self‑taught IT professional now working as a Linux development engineer at a Fortune 500 multinational, shares extensive Linux knowledge—fundamentals, applications, tools, plus Git, databases, Raspberry Pi, etc. (Reply “Linux” to receive essential resources.)
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
