For those days when emacs lets you down and you have to drop back to vim. This plugin attempts to bring spacemacs keybinding back into vim.
For best results, map your leader to <Space>
let mapleader=" "
You could also set ,
as your major mode leader
let maplocalleader=","
Add this line to your .vimrc
:
Plugin 'meitham/vim-spacemacs'
Then run:
:PluginInstall
git clone https://github.com/meitham/vim-spacemacs.git ~/.vim/bundle/vim-spacemacs
Key Binding | Description |
---|---|
SPC t f | display the fill column (textwidth or 80) |
SPC t h h | toggle highlight of the current line (:setlocal cursorline) |
SPC t h c | toggle highlight of the current column (:setlocal cursorcolumn) |
SPC t l | toggle truncate lines (:setlocal wrap!) |
SPC t n n | toggle line numbers (:setlocal number!) |
SPC t n r | toggle relative line numbers (:setlocal relativenumber!) |
Key Binding | Description |
---|---|
SPC TAB | switch to alternate buffer in the current window (:b #) |
SPC b b | list available buffers (:ls) |
SPC b d | kill the current buffer (:bdelete) |
SPC b e | erase the content of the buffer (normal ggdG) |
SPC b k | kill a buffer (:bdelete and write a name of number then hit enter) |
SPC b K | kill all buffers except the current one (:. ,$bdelete) |
SPC b M | swap windows (ctrl w r) rotate |
SPC b n | switch to next buffer (:bnext) |
SPC b p | switch to previous buffer (:bprev) |
SPC b R | revert the current buffer - reload from disk (:e! %) |
SPC b w | toggle read-only (:setlocal readonly!) |
SPC b Y | copy whole buffer to primary clipboard (normal gg" yG) |
Key Binding | Description |
---|---|
SPC f c | copy current file to a different location (:w enter-path) |
SPC f C d | convert file from unix to dos encoding (:setlocal ff=dos) |
SPC f C u | convert file from dos to unix encoding (:setlocal ff=unix) |
SPC f D | delete a file and the associated buffer (:bwipeout) |
SPC f f | open file in same directory as current file (:e =expand('%:p:h') . '/') |
SPC f F | open file under cursor (normal gf) |
SPC f R | rename the current file (:saveas enter-new-name) |
SPC f s | save a file (:w) |
SPC f S | save all files (:bufdo w) |
SPC f y | show current file absolute path (:echo expand('%:p')) |
SPC f e d | edit the .vimrc file (:e $MYVIMRC) |
SPC f e R | reload the .vimrc file (:so $MYVIMRC) |
Key Binding | Description |
---|---|
SPC x u | set the selected text to lower case (visual u) |
SPC x U | set the selected text to upper case (visual U) |
SPC x d w | delete trailing whitespaces (:%s/\s //g) |
SPC x l s | sort lines (:sort) |
SPC x l u | uniquify lines (:sort u) |
SPC x t c | swap (transpose) the current character with the next one (normal xp) |
SPC x t w | swap (transpose) the current word with the next one (normal dawwp) |
SPC x t l | swap (transpose) the current line with the next one (normal ddp) |
Key Binding | Description |
---|---|
SPC x a , | align region at , (:Tab /,) |
SPC x a ; | align region at ; (:Tab /;) |
SPC x a : | align region at : (:Tab /:) |
SPC x a = | align region at = (:Tab /=) |
SPC x a & | align region at & (:Tab /&) |
SPC x a ¦ | align region at ¦ (:Tab / |
This plugin can safely function on its own, but some extra features can be enabled using 3rd party plugins.
spacemacs default commenting are based on this plugin, so gc
on selections or objects.
alt ;
as in the default comment operator in emacs is also accessible through this plugin.
git blame
, git diff
and git status
are provided through fugitive
all text aligning commands are available through Tab
from this plugin.
Copyright (c) Meitham Jamaa. Distributed under the same terms as Vim itself.
See :help license
.