Ben Chuanlong Du's Blog

It is never too late to learn.

SpaceVim - A Modern Vim/NeoVim Configuration

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Installation

curl -sLf https://spacevim.org/install.sh | bash
# enable Python3 support
wajig install python3 python3-pip
pip3 install -U pynvim

Uninstallation

curl -sLf https://spacevim.org/install.sh | bash -s -- --uninstall

https://github.com/SpaceVim/SpaceVim/issues/84

https://github.com/SpaceVim/SpaceVim/issues/78

Tricks & Traps

  1. SpaceVim might be too slow when editing a large (>50M) text file. One trick helps is to disable plugins when editing large files. For example, if you are using NeoVim, you can use the following command to edit a large file without loading plugins.

    nvim --noplugin /path/to/large/text/file
    
  2. By default SpaceVim enables GUI colors. This makes SpaceVim extremely slow in terminals that does not support 24 bits true colors. To resolve the performance issue, simplify disable GUI colors by setting enable_guicolors = false under [options] in your SpaceVim configure file $HOME/.SpaceVim.d/init.toml.

  3. SpaceVim has mapped q as smart buffer close. The normal functionality (recording macros) of q can be get by <leader>qr. By default, <leader> is \ so you can use \qr to record macros in SpaceVim.

  4. Custom configuration files are in the directory $HOME/.SpaceVim.d.

Some Useful Key Bindings

Key Binding Description
SPC b f format the buffer
SPC t 8 highlight characters that execeeds 80th column
SPC t f highlight characters that execeeds the fill column
SPC [1-9] jump to the windows with the specific number

Window

Key Binding Description
SPC 1 got to window number 1
SPC 2 go to window number 2

Comment

Key Binding Description
SPC c h hide/show comments
SPC c l toggle comment line

Buffers and Files

Key Binding Description
:bn go to the next buffer
SPC b n go to the next buffer
:bp go to the previous buffer
:e # go to the previous buffer
SPC b p go to the previous buffer
SPC t f highlight characters that execeeds the fill column
SPC [1-9] jump to the windows with the specific number

Lanugage Server Protocol

https://spacevim.org/layers/language-server-protocol/

Language Layers

Available Layers >> lang#python

I'm not sure whether this layer is really helpful given that you always uses the LSP layer.

Additional Useful Plugins

[[custom_plugins]]
name = "vim-scripts/dbext.vim"
merged = false

[[custom_plugins]]
repo = "machakann/vim-swap"
merged = false

References

Comments