spaceline.vim

April 14, 2021 ยท View on GitHub

The best vim statusline plugin.

new

Features

  • Fast load speed
  • More separator support
  • Highly customizable
  • More beautiful than other statusline plugins
  • Special color scheme
  • File icon syntax highlight
  • Scroll bar

Install

  • Easy installed with a plugin manager like vim-plug
Plug 'glepnir/spaceline.vim'
" Use the icon plugin for better behavior
Plug 'ryanoasis/vim-devicons' or 'kyazdani42/nvim-web-devicons' --neovim only

Options

  • spaceline provide some separator groups, the default group is arrow
let g:spaceline_seperate_style = 'arrow'
groupScreen shot
nonenone
arrowarrow
arrow-fadearrow-fade
curvecurve
slantslant
slant-fadeslant-fade
slant-consslant-cons
  • Use this setting to change the spaceline colorscheme, now builtin colorscheme space,one, nord, dracula
let g:spaceline_colorscheme = 'space'
  • g:spaceline_custom_vim_status custom vim status display. Default is
 {"n": "๐Ÿ… ","V":"๐Ÿ…ฅ ","v":"๐Ÿ…ฅ ","\<C-v>": "๐Ÿ…ฅ ","i":"๐Ÿ…˜ ","R":"๐Ÿ…ก ","s":"๐Ÿ…ข ","t":"๐Ÿ…ฃ ","c":"๐Ÿ…’ ","!":"SE"}
  • g:spaceline_custom_buffer_number custom buffer number display value is list

  • g:spaceline_diagnostic_tool set your diagnostic plugin. Default is coc, other values are: nvim_lsp, ale

  • g:spaceline_diagnostic_errorsign set the error sign. Default is โ—

  • g:spaceline_diagnostic_warnsign set the warn sign. Default is โ—

  • g:spaceline_diagnostic_oksign set the ok sign. Default is ๏’ก

  • g:spaceline_git_branch_icon set the git branch icon default is empty

  • g:spaceline_custom_diff_icon custom diff icon. Default is

 ['๏‘—','๏‘™','๏‘˜']
  • g:spaceline_diff_tool set the git diff tool default is coc. Other values are: git-gutter, which requires the vim-gitgutter plugin; vim-signify, which requires the vim-signify plugin.

  • g:spaceline_function_icon set the function icon

  • g:spaceline_scroll_bar_chars set the scroll bar chars. Some alternatives:

" one char wide solid vertical bar This is default
let g:spaceline_scroll_chars = [
  \  ' ', 'โ–', 'โ–‚', 'โ–ƒ', 'โ–„', 'โ–…', 'โ–†', 'โ–‡', 'โ–ˆ'
  \  ]

" two char wide fade-in blocks
let g:spaceline_scroll_chars = [
  \ '  ', 'โ–‘ ', 'โ–’ ', 'โ–“ ', 'โ–ˆ ', 'โ–ˆโ–‘', 'โ–ˆโ–’', 'โ–ˆโ–“', 'โ–ˆโ–ˆ'
  \ ]

" three char wide solid horizontal bar
let g:spaceline_scroll_chars = [
  \ '   ', 'โ–  ', 'โ–Ž  ', 'โ–  ', 'โ–Œ  ',
  \ 'โ–‹  ', 'โ–Š  ', 'โ–‰  ', 'โ–ˆ  ', 'โ–ˆโ– ',
  \ 'โ–ˆโ–Ž ', 'โ–ˆโ– ', 'โ–ˆโ–Œ ', 'โ–ˆโ–‹ ', 'โ–ˆโ–Š ',
  \ 'โ–ˆโ–‰ ', 'โ–ˆโ–ˆ ', 'โ–ˆโ–ˆโ–', 'โ–ˆโ–ˆโ–Ž', 'โ–ˆโ–ˆโ–',
  \ 'โ–ˆโ–ˆโ–Œ', 'โ–ˆโ–ˆโ–‹', 'โ–ˆโ–ˆโ–Š', 'โ–ˆโ–ˆโ–‰', 'โ–ˆโ–ˆโ–ˆ'
  \ ]

let g:spaceline_scroll_chars = ['โŽบ', 'โŽป', 'โ”€', 'โŽผ', 'โŽฝ'] " on macOS

let g:spaceline_scroll_chars = ['โŽบ', 'โŽป', 'โŽผ', 'โŽฝ', 'โŽฏ'] " on Linux

Goyo Support

  • check out thinkvim usage

FAQ

  • Why do the symbols look weird in my vim?

Make sure you have installed nerdfont font from https://www.nerdfonts.com/, different fonts may be inconsistent in the performance of symbols. If you are using iTerm2 on macOS, you can set a different font for symbols.

Another solution is to use kitty terminal. Kitty has built-in symbol font support and supports both Mac and Linux.

License

MIT