|
*SpaceVim.txt* |
|
|
|
|
|
/###### /## /##/## |
|
/##__ ## | ## | #|__/ |
|
| ## \__/ /###### /###### /####### /######| ## | ##/##/######/#### |
|
| ###### /##__ ##|____ ##/##_____//##__ #| ## / ##| #| ##_ ##_ ## |
|
\____ #| ## \ ## /######| ## | ########\ ## ##/| #| ## \ ## \ ## |
|
/## \ #| ## | ##/##__ #| ## | ##_____/ \ ###/ | #| ## | ## | ## |
|
| ######| #######| ######| ######| ####### \ #/ | #| ## | ## | ## |
|
\______/| ##____/ \_______/\_______/\_______/ \_/ |__|__/ |__/ |__/ |
|
| ## |
|
| ## |
|
|__/ |
|
wsdjeg *spacevim* *SpaceVim* |
|
|
|
============================================================================== |
|
CONTENTS *SpaceVim-contents* |
|
1. Introduction.............................................|SpaceVim-intro| |
|
2. Options................................................|SpaceVim-options| |
|
1. autocomplete_method............|SpaceVim-options-autocomplete_method| |
|
2. autocomplete_parens............|SpaceVim-options-autocomplete_parens| |
|
3. buffer_index_type................|SpaceVim-options-buffer_index_type| |
|
4. checkinstall..........................|SpaceVim-options-checkinstall| |
|
5. colorscheme............................|SpaceVim-options-colorscheme| |
|
6. colorscheme_bg......................|SpaceVim-options-colorscheme_bg| |
|
7. data_dir..................................|SpaceVim-options-data_dir| |
|
8. default_custom_leader........|SpaceVim-options-default_custom_leader| |
|
9. default_indent......................|SpaceVim-options-default_indent| |
|
10. enable_bepo_layout.............|SpaceVim-options-enable_bepo_layout| |
|
11. enable_cursorcolumn...........|SpaceVim-options-enable_cursorcolumn| |
|
12. enable_cursorline...............|SpaceVim-options-enable_cursorline| |
|
13. enable_debug.........................|SpaceVim-options-enable_debug| |
|
14. enable_googlesuggest.........|SpaceVim-options-enable_googlesuggest| |
|
15. enable_guicolors.................|SpaceVim-options-enable_guicolors| |
|
16. enable_key_frequency.........|SpaceVim-options-enable_key_frequency| |
|
17. enable_projects_cache.......|SpaceVim-options-enable_projects_cache| |
|
18. enable_statusline_bfpath.|SpaceVim-options-enable_statusline_bfpath| |
|
19. enable_statusline_mode.....|SpaceVim-options-enable_statusline_mode| |
|
20. enable_statusline_tag.......|SpaceVim-options-enable_statusline_tag| |
|
21. enable_tabline_ft_icon.....|SpaceVim-options-enable_tabline_ft_icon| |
|
22. enable_vimfiler_welcome...|SpaceVim-options-enable_vimfiler_welcome| |
|
23. enable_ycm.............................|SpaceVim-options-enable_ycm| |
|
24. error_symbol.........................|SpaceVim-options-error_symbol| |
|
25. escape_key_binding.............|SpaceVim-options-escape_key_binding| |
|
26. file_searching_tools.........|SpaceVim-options-file_searching_tools| |
|
27. filemanager...........................|SpaceVim-options-filemanager| |
|
28. filetree_direction.............|SpaceVim-options-filetree_direction| |
|
29. guifont...................................|SpaceVim-options-guifont| |
|
30. home_files_number...............|SpaceVim-options-home_files_number| |
|
31. info_symbol...........................|SpaceVim-options-info_symbol| |
|
32. keep_server_alive...............|SpaceVim-options-keep_server_alive| |
|
33. language.................................|SpaceVim-options-language| |
|
34. lint_engine...........................|SpaceVim-options-lint_engine| |
|
35. lint_on_the_fly...................|SpaceVim-options-lint_on_the_fly| |
|
36. max_column.............................|SpaceVim-options-max_column| |
|
37. plugin_bundle_dir...............|SpaceVim-options-plugin_bundle_dir| |
|
38. plugin_manager_processes.|SpaceVim-options-plugin_manager_processes| |
|
39. project_rooter_automatically |
|
...............................|SpaceVim-options-project_rooter_automatically| |
|
40. project_rooter_outermost.|SpaceVim-options-project_rooter_outermost| |
|
41. project_rooter_patterns...|SpaceVim-options-project_rooter_patterns| |
|
42. projects_cache_num.............|SpaceVim-options-projects_cache_num| |
|
43. realtime_leader_guide.......|SpaceVim-options-realtime_leader_guide| |
|
44. relativenumber.....................|SpaceVim-options-relativenumber| |
|
45. retry_cnt...............................|SpaceVim-options-retry_cnt| |
|
46. search_tools.........................|SpaceVim-options-search_tools| |
|
47. sidebar_width.......................|SpaceVim-options-sidebar_width| |
|
48. snippet_engine.....................|SpaceVim-options-snippet_engine| |
|
49. statusline_iseparator.......|SpaceVim-options-statusline_iseparator| |
|
50. statusline_left_sections.|SpaceVim-options-statusline_left_sections| |
|
51. statusline_separator.........|SpaceVim-options-statusline_separator| |
|
52. statusline_unicode_symbols |
|
.................................|SpaceVim-options-statusline_unicode_symbols| |
|
53. terminal_cursor_shape.......|SpaceVim-options-terminal_cursor_shape| |
|
54. vim_help_language...............|SpaceVim-options-vim_help_language| |
|
55. vimcompatible.......................|SpaceVim-options-vimcompatible| |
|
56. warning_symbol.....................|SpaceVim-options-warning_symbol| |
|
57. windows_index_type.............|SpaceVim-options-windows_index_type| |
|
58. windows_leader.....................|SpaceVim-options-windows_leader| |
|
59. windows_smartclose.............|SpaceVim-options-windows_smartclose| |
|
3. Configuration...........................................|SpaceVim-config| |
|
4. Commands..............................................|SpaceVim-commands| |
|
5. Functions............................................|SpaceVim-functions| |
|
6. Layers..................................................|SpaceVim-layers| |
|
1. autocomplete...........................|SpaceVim-layers-autocomplete| |
|
2. checkers...................................|SpaceVim-layers-checkers| |
|
3. colorscheme.............................|SpaceVim-layers-colorscheme| |
|
4. core...........................................|SpaceVim-layers-core| |
|
5. core#statusline.....................|SpaceVim-layers-core-statusline| |
|
6. core#tabline...........................|SpaceVim-layers-core-tabline| |
|
7. cscope.......................................|SpaceVim-layers-cscope| |
|
8. exprfold...................................|SpaceVim-layers-exprfold| |
|
9. format.......................................|SpaceVim-layers-format| |
|
10. git............................................|SpaceVim-layers-git| |
|
11. github......................................|SpaceVim-layers-github| |
|
12. gtags........................................|SpaceVim-layers-gtags| |
|
13. incsearch................................|SpaceVim-layers-incsearch| |
|
14. indentmove..............................|SpaceVim-layers-indentmove| |
|
15. lang#actionscript................|SpaceVim-layers-lang-actionscript| |
|
16. lang#agda................................|SpaceVim-layers-lang-agda| |
|
17. lang#asciidoc........................|SpaceVim-layers-lang-asciidoc| |
|
18. lang#asepctj..........................|SpaceVim-layers-lang-asepctj| |
|
19. lang#assembly........................|SpaceVim-layers-lang-assembly| |
|
20. lang#autohotkey....................|SpaceVim-layers-lang-autohotkey| |
|
21. lang#batch..............................|SpaceVim-layers-lang-batch| |
|
22. lang#c......................................|SpaceVim-layers-lang-c| |
|
23. lang#chapel............................|SpaceVim-layers-lang-chapel| |
|
24. lang#clojure..........................|SpaceVim-layers-lang-clojure| |
|
25. lang#coffeescript................|SpaceVim-layers-lang-coffeescript| |
|
26. lang#crystal..........................|SpaceVim-layers-lang-crystal| |
|
27. lang#csharp............................|SpaceVim-layers-lang-csharp| |
|
28. lang#d......................................|SpaceVim-layers-lang-d| |
|
29. lang#dart................................|SpaceVim-layers-lang-dart| |
|
30. lang#dockerfile....................|SpaceVim-layers-lang-dockerfile| |
|
31. lang#e......................................|SpaceVim-layers-lang-e| |
|
32. lang#eiffel............................|SpaceVim-layers-lang-eiffel| |
|
33. lang#elixir............................|SpaceVim-layers-lang-elixir| |
|
34. lang#elm..................................|SpaceVim-layers-lang-elm| |
|
35. lang#erlang............................|SpaceVim-layers-lang-erlang| |
|
36. lang#extra..............................|SpaceVim-layers-lang-extra| |
|
37. lang#forth..............................|SpaceVim-layers-lang-forth| |
|
38. lang#fortran..........................|SpaceVim-layers-lang-fortran| |
|
39. lang#foxpro............................|SpaceVim-layers-lang-foxpro| |
|
40. lang#fsharp............................|SpaceVim-layers-lang-fsharp| |
|
41. lang#go....................................|SpaceVim-layers-lang-go| |
|
42. lang#goby................................|SpaceVim-layers-lang-goby| |
|
43. lang#gosu................................|SpaceVim-layers-lang-gosu| |
|
44. lang#graphql..........................|SpaceVim-layers-lang-graphql| |
|
45. lang#groovy............................|SpaceVim-layers-lang-groovy| |
|
46. lang#hack................................|SpaceVim-layers-lang-hack| |
|
47. lang#haskell..........................|SpaceVim-layers-lang-haskell| |
|
48. lang#html................................|SpaceVim-layers-lang-html| |
|
49. lang#hy....................................|SpaceVim-layers-lang-hy| |
|
50. lang#idris..............................|SpaceVim-layers-lang-idris| |
|
51. lang#io....................................|SpaceVim-layers-lang-io| |
|
52. lang#j......................................|SpaceVim-layers-lang-j| |
|
53. lang#janet..............................|SpaceVim-layers-lang-janet| |
|
54. lang#java................................|SpaceVim-layers-lang-java| |
|
55. lang#javascript....................|SpaceVim-layers-lang-javascript| |
|
56. lang#json................................|SpaceVim-layers-lang-json| |
|
57. lang#julia..............................|SpaceVim-layers-lang-julia| |
|
58. lang#kotlin............................|SpaceVim-layers-lang-kotlin| |
|
59. lang#latex..............................|SpaceVim-layers-lang-latex| |
|
60. lang#lisp................................|SpaceVim-layers-lang-lisp| |
|
61. lang#livescript....................|SpaceVim-layers-lang-livescript| |
|
62. lang#lua..................................|SpaceVim-layers-lang-lua| |
|
63. lang#markdown........................|SpaceVim-layers-lang-markdown| |
|
64. lang#moonscript....................|SpaceVim-layers-lang-moonscript| |
|
65. lang#nim..................................|SpaceVim-layers-lang-nim| |
|
66. lang#nix..................................|SpaceVim-layers-lang-nix| |
|
67. lang#ocaml..............................|SpaceVim-layers-lang-ocaml| |
|
68. lang#pact................................|SpaceVim-layers-lang-pact| |
|
69. lang#pascal............................|SpaceVim-layers-lang-pascal| |
|
70. lang#perl................................|SpaceVim-layers-lang-perl| |
|
71. lang#php..................................|SpaceVim-layers-lang-php| |
|
72. lang#pony................................|SpaceVim-layers-lang-pony| |
|
73. lang#processing....................|SpaceVim-layers-lang-processing| |
|
74. lang#prolog............................|SpaceVim-layers-lang-prolog| |
|
75. lang#puppet............................|SpaceVim-layers-lang-puppet| |
|
76. lang#purescript....................|SpaceVim-layers-lang-purescript| |
|
77. lang#python............................|SpaceVim-layers-lang-python| |
|
78. lang#racket............................|SpaceVim-layers-lang-racket| |
|
79. lang#racket...............................|SpaceVim-layers-lang-red| |
|
80. lang#reason............................|SpaceVim-layers-lang-reason| |
|
81. lang#ring...................................|SpaceVim-layers-lang-r| |
|
82. lang#ring................................|SpaceVim-layers-lang-ring| |
|
83. lang#ruby................................|SpaceVim-layers-lang-ruby| |
|
84. lang#rust................................|SpaceVim-layers-lang-rust| |
|
85. lang#scala..............................|SpaceVim-layers-lang-scala| |
|
86. lang#scheme............................|SpaceVim-layers-lang-scheme| |
|
87. lang#sh....................................|SpaceVim-layers-lang-sh| |
|
88. lang#sml..................................|SpaceVim-layers-lang-sml| |
|
89. lang#swig...............................|SpaceVim-layers-lang-swift| |
|
90. lang#swig................................|SpaceVim-layers-lang-swig| |
|
91. lang#tcl..................................|SpaceVim-layers-lang-tcl| |
|
92. lang#toml................................|SpaceVim-layers-lang-toml| |
|
93. lang#typescript....................|SpaceVim-layers-lang-typescript| |
|
94. lang#v......................................|SpaceVim-layers-lang-v| |
|
95. lang#vbnet..............................|SpaceVim-layers-lang-vbnet| |
|
96. lang#wolfram..........................|SpaceVim-layers-lang-wolfram| |
|
97. lang#xml..................................|SpaceVim-layers-lang-xml| |
|
98. lang#xquery............................|SpaceVim-layers-lang-xquery| |
|
99. language server protocol.......................|SpaceVim-layers-lsp| |
|
100. leaderf...................................|SpaceVim-layers-leaderf| |
|
101. operator.................................|SpaceVim-layers-operator| |
|
102. shell.......................................|SpaceVim-layers-shell| |
|
103. test.........................................|SpaceVim-layers-test| |
|
104. tmux.........................................|SpaceVim-layers-tmux| |
|
105. tools#dash.............................|SpaceVim-layers-tools-dash| |
|
106. tools#zeal.............................|SpaceVim-layers-tools-zeal| |
|
107. ui.............................................|SpaceVim-layers-ui| |
|
108. unite.......................................|SpaceVim-layers-unite| |
|
7. Usage....................................................|SpaceVim-usage| |
|
1. buffers-and-files..................|SpaceVim-usage-buffers-and-files| |
|
2. custom_plugins........................|SpaceVim-usage-custom_plugins| |
|
3. repl............................................|SpaceVim-usage-repl| |
|
4. tasks..........................................|SpaceVim-usage-tasks| |
|
8. API........................................................|SpaceVim-api| |
|
1. cmdlinemenu................................|SpaceVim-api-cmdlinemenu| |
|
2. data#dict....................................|SpaceVim-api-data-dict| |
|
3. data#list....................................|SpaceVim-api-data-list| |
|
4. data#number................................|SpaceVim-api-data-number| |
|
5. data#string................................|SpaceVim-api-data-string| |
|
6. job................................................|SpaceVim-api-job| |
|
7. logger..........................................|SpaceVim-api-logger| |
|
8. password......................................|SpaceVim-api-password| |
|
9. prompt..........................................|SpaceVim-api-prompt| |
|
10. sid...........................................|SpaceVim-api-vim-sid| |
|
11. system.........................................|SpaceVim-api-system| |
|
12. unicode#box...............................|SpaceVim-api-unicode-box| |
|
13. vim#buffer.................................|SpaceVim-api-vim-buffer| |
|
14. vim#buffer.................................|SpaceVim-api-vim-window| |
|
15. vim#command...............................|SpaceVim-api-vim-command| |
|
16. vim#compatible.........................|SpaceVim-api-vim-compatible| |
|
17. vim#message...............................|SpaceVim-api-vim-message| |
|
9. FAQ........................................................|SpaceVim-faq| |
|
10. Changelog...........................................|SpaceVim-changelog| |
|
|
|
============================================================================== |
|
INTRODUCTION *SpaceVim-intro* |
|
|
|
SpaceVim is a bundle of custom settings and plugins with a modular |
|
configuration for Vim. It was inspired by Spacemacs. |
|
|
|
|
|
============================================================================== |
|
OPTIONS *SpaceVim-options* |
|
|
|
SpaceVim uses `~/.SpaceVim.d/init.toml` as its default global config file. You |
|
can set all the SpaceVim options and layers in it. `~/.SpaceVim.d/` will also |
|
be added to runtimepath, so you can write your own scripts in it. SpaceVim |
|
also supports local config for each project. Place local config settings in |
|
`.SpaceVim.d/init.toml` in the root directory of your project. `.SpaceVim.d/` |
|
will also be added to runtimepath. |
|
|
|
here is an example setting SpaceVim options: |
|
> |
|
[options] |
|
enable-guicolors = true |
|
max-column = 120 |
|
< |
|
|
|
============================================================================== |
|
AUTOCOMPLETE_METHOD *SpaceVim-options-autocomplete_method* |
|
|
|
Set the autocomplete engine of spacevim, the default logic is: |
|
> |
|
if has('python3') |
|
let g:spacevim_autocomplete_method = 'deoplete' |
|
elseif has('lua') |
|
let g:spacevim_autocomplete_method = 'neocomplete' |
|
elseif has('python') |
|
let g:spacevim_autocomplete_method = 'completor' |
|
elseif has('timers') |
|
let g:spacevim_autocomplete_method = 'asyncomplete' |
|
else |
|
let g:spacevim_autocomplete_method = 'neocomplcache' |
|
endif |
|
< |
|
|
|
and you can alse set this option to coc, then coc.nvim will be used. |
|
|
|
============================================================================== |
|
AUTOCOMPLETE_PARENS *SpaceVim-options-autocomplete_parens* |
|
|
|
Enable/Disable autocompletion of parentheses, default is true (enabled). |
|
> |
|
autocomplete_parens = false |
|
< |
|
|
|
============================================================================== |
|
BUFFER_INDEX_TYPE *SpaceVim-options-buffer_index_type* |
|
|
|
Set SpaceVim buffer index type, default is 4. |
|
> |
|
# types: |
|
# 0: 1 ➛ ➊ |
|
# 1: 1 ➛ ➀ |
|
# 2: 1 ➛ ⓵ |
|
# 3: 1 ➛ ¹ |
|
# 4: 1 ➛ 1 |
|
buffer_index_type = 1 |
|
< |
|
|
|
============================================================================== |
|
CHECKINSTALL *SpaceVim-options-checkinstall* |
|
|
|
Enable/Disable checkinstall on SpaceVim startup. Default is true. |
|
> |
|
checkinstall = true |
|
< |
|
|
|
============================================================================== |
|
COLORSCHEME *SpaceVim-options-colorscheme* |
|
|
|
The colorscheme of SpaceVim. Default is 'gruvbox'. |
|
|
|
============================================================================== |
|
COLORSCHEME_BG *SpaceVim-options-colorscheme_bg* |
|
|
|
The background of colorscheme. Default is 'dark'. |
|
|
|
============================================================================== |
|
DATA_DIR *SpaceVim-options-data_dir* |
|
|
|
Set the cache directory of SpaceVim. Default is `$XDG_CACHE_HOME` or if not |
|
set `~/.cache¸. |
|
> |
|
data_dir = "~/.cache" |
|
< |
|
|
|
============================================================================== |
|
DEFAULT_CUSTOM_LEADER *SpaceVim-options-default_custom_leader* |
|
|
|
Change the default custom leader of SpaceVim. Default is <Space>. |
|
> |
|
default_custom_leader = "<Space>" |
|
< |
|
|
|
============================================================================== |
|
DEFAULT_INDENT *SpaceVim-options-default_indent* |
|
|
|
Change the default indentation of SpaceVim. Default is 2. |
|
> |
|
default_indent = 2 |
|
< |
|
|
|
============================================================================== |
|
ENABLE_BEPO_LAYOUT *SpaceVim-options-enable_bepo_layout* |
|
|
|
Enable/Disable bepo layout, by default it is disabled. |
|
> |
|
enable_bepo_layout = true |
|
< |
|
|
|
============================================================================== |
|
ENABLE_CURSORCOLUMN *SpaceVim-options-enable_cursorcolumn* |
|
|
|
Enable/Disable cursorcolumn. Default is 0, cursorcolumn will be highlighted in |
|
normal mode. To enable this feature: |
|
> |
|
enable_cursorcolumn = true |
|
< |
|
|
|
============================================================================== |
|
ENABLE_CURSORLINE *SpaceVim-options-enable_cursorline* |
|
|
|
Enable/Disable cursorline. Default is true, cursorline will be highlighted in |
|
normal mode.To disable this feature: |
|
> |
|
enable_cursorline = false |
|
< |
|
|
|
============================================================================== |
|
ENABLE_DEBUG *SpaceVim-options-enable_debug* |
|
|
|
Enable/Disable debug mode for SpaceVim. Default is false. |
|
> |
|
enable_debug = true |
|
< |
|
|
|
============================================================================== |
|
ENABLE_GOOGLESUGGEST *SpaceVim-options-enable_googlesuggest* |
|
|
|
Enable/Disable Google suggestions for neocomplete. Default is false. |
|
> |
|
enable_googlesuggest = false |
|
< |
|
|
|
============================================================================== |
|
ENABLE_GUICOLORS *SpaceVim-options-enable_guicolors* |
|
|
|
Enable true color support in terminal. Default is false. |
|
> |
|
enable_guicolors = true |
|
< |
|
|
|
============================================================================== |
|
ENABLE_KEY_FREQUENCY *SpaceVim-options-enable_key_frequency* |
|
|
|
Enable/Disable key frequency catching of SpaceVim. default value is 0. to |
|
enable it: |
|
> |
|
enable_key_frequency = true |
|
< |
|
|
|
============================================================================== |
|
ENABLE_PROJECTS_CACHE *SpaceVim-options-enable_projects_cache* |
|
|
|
Enable/Disable cross session projects cache. Enabled by default. |
|
|
|
============================================================================== |
|
ENABLE_STATUSLINE_BFPATH *SpaceVim-options-enable_statusline_bfpath* |
|
|
|
Enable/Disable showing full path of current buffer on statusline, disabled by |
|
default, to enable this feature: |
|
> |
|
enable_statusline_bfpath = true |
|
< |
|
|
|
============================================================================== |
|
ENABLE_STATUSLINE_MODE *SpaceVim-options-enable_statusline_mode* |
|
|
|
Enable/Disable display mode. Default is 0, mode will be displayed in |
|
statusline. To enable this feature: |
|
> |
|
enable_statusline_mode = true |
|
< |
|
|
|
============================================================================== |
|
ENABLE_STATUSLINE_TAG *SpaceVim-options-enable_statusline_tag* |
|
|
|
Enable/Disable showing current tag on statusline |
|
> |
|
enable_statusline_tag = false |
|
< |
|
|
|
============================================================================== |
|
ENABLE_TABLINE_FT_ICON *SpaceVim-options-enable_tabline_ft_icon* |
|
|
|
Enable/Disable tabline filetype icon. default is false. To enable this |
|
feature: |
|
> |
|
enable_tabline_ft_icon = true |
|
< |
|
|
|
============================================================================== |
|
ENABLE_VIMFILER_WELCOME *SpaceVim-options-enable_vimfiler_welcome* |
|
|
|
Enable/Disable vimfiler in the welcome windows. Default is true. This will |
|
cause vim to start up slowly if there are too many files in the current |
|
directory. |
|
> |
|
enable_vimfiler_welcome = false |
|
< |
|
|
|
============================================================================== |
|
ENABLE_YCM *SpaceVim-options-enable_ycm* |
|
|
|
Enable/Disable YouCompleteMe. Default is false. |
|
> |
|
enable_ycm = true |
|
< |
|
|
|
============================================================================== |
|
ERROR_SYMBOL *SpaceVim-options-error_symbol* |
|
|
|
Set the error symbol for SpaceVim's syntax maker. Default is '✖'. |
|
> |
|
error_symbol = "+" |
|
< |
|
|
|
============================================================================== |
|
ESCAPE_KEY_BINDING *SpaceVim-options-escape_key_binding* |
|
|
|
Set the key binding for switch to normal mode in insert mode. Default is `jk`, |
|
to disable this key binding, set this option to empty string. |
|
> |
|
escape_key_binding = 'jk' |
|
< |
|
|
|
============================================================================== |
|
FILE_SEARCHING_TOOLS *SpaceVim-options-file_searching_tools* |
|
|
|
Set the default file searching tool used by `SPC f /`, by default it is `[]`. |
|
The first item in this list is the name of the tool, the second one is the |
|
default command. for example: |
|
> |
|
file_searching_tools = ['find', 'find -not -iwholename "*.git*" '] |
|
< |
|
|
|
============================================================================== |
|
FILEMANAGER *SpaceVim-options-filemanager* |
|
|
|
The default file manager of SpaceVim. Default is 'nerdtree'. you can also use |
|
defx or vimfiler |
|
|
|
============================================================================== |
|
FILETREE_DIRECTION *SpaceVim-options-filetree_direction* |
|
|
|
Config the direction of file tree. Default is 'right'. you can also set to |
|
'left'. |
|
|
|
NOTE: if it is 'left', the tagbar will be move to right. |
|
|
|
============================================================================== |
|
GUIFONT *SpaceVim-options-guifont* |
|
|
|
Set the guifont of SpaceVim. Default is empty. |
|
> |
|
guifont = "SauceCodePro Nerd Font Mono:h11" |
|
< |
|
|
|
============================================================================== |
|
HOME_FILES_NUMBER *SpaceVim-options-home_files_number* |
|
|
|
Change the list number of files for SpaceVim home. Default is 6. |
|
> |
|
home_files_number = 6 |
|
< |
|
|
|
============================================================================== |
|
INFO_SYMBOL *SpaceVim-options-info_symbol* |
|
|
|
Set the information symbol for SpaceVim's syntax maker. Default is '🛈'. |
|
> |
|
info_symbol = 'i' |
|
< |
|
|
|
============================================================================== |
|
KEEP_SERVER_ALIVE *SpaceVim-options-keep_server_alive* |
|
|
|
Option for keep the spacevim server ailive |
|
|
|
============================================================================== |
|
LANGUAGE *SpaceVim-options-language* |
|
|
|
Set the message language of vim. Default is 'en_US.UTF-8'. |
|
> |
|
language = 'en_CA.utf8' |
|
< |
|
|
|
============================================================================== |
|
LINT_ENGINE *SpaceVim-options-lint_engine* |
|
|
|
Set the lint engine used in checkers layer, the default engine is neomake, if |
|
you want to use ale, use: |
|
> |
|
lint_engine = 'ale' |
|
< |
|
NOTE: the `enable_neomake` and `enable_ale` option has been deprecated. |
|
*spacevim-options-enable_naomake* *spacevim-options-enable_ale* |
|
|
|
============================================================================== |
|
LINT_ON_THE_FLY *SpaceVim-options-lint_on_the_fly* |
|
|
|
Enable/Disable lint on the fly feature of SpaceVim's maker. Default is true. |
|
> |
|
lint_on_the_fly = false |
|
< |
|
|
|
============================================================================== |
|
MAX_COLUMN *SpaceVim-options-max_column* |
|
|
|
Change the max number of columns for SpaceVim. Default is 120. |
|
> |
|
max_column = 120 |
|
< |
|
|
|
============================================================================== |
|
PLUGIN_BUNDLE_DIR *SpaceVim-options-plugin_bundle_dir* |
|
|
|
Set the cache directory of plugins. Default is `$data_dir/vimfiles`. |
|
> |
|
plugin_bundle_dir = "~/.cache/vimplugs" |
|
< |
|
|
|
============================================================================== |
|
PLUGIN_MANAGER_PROCESSES *SpaceVim-options-plugin_manager_processes* |
|
|
|
Set the max process of SpaceVim plugin manager |
|
|
|
============================================================================== |
|
PROJECT_ROOTER_AUTOMATICALLY *SpaceVim-options-project_rooter_automatically* |
|
|
|
Enable/Disable project root detection. By default, SpaceVim will change the |
|
directory to the project root directory based on `project_rooter_patterns` |
|
option. To disable this feature: |
|
> |
|
[options] |
|
project_rooter_automatically = false |
|
< |
|
|
|
============================================================================== |
|
PROJECT_ROOTER_OUTERMOST *SpaceVim-options-project_rooter_outermost* |
|
|
|
Enable/Disable finding outermost directory for project root detection. By |
|
default SpaceVim will find the outermost directory based on |
|
`project_rooter_patterns`. To find nearest directory, you need to disable this |
|
option: |
|
> |
|
[options] |
|
project_rooter_outermost = false |
|
< |
|
|
|
============================================================================== |
|
PROJECT_ROOTER_PATTERNS *SpaceVim-options-project_rooter_patterns* |
|
|
|
Set the project root patterns, SpaceVim determines the root directory of the |
|
project based on this option. By default it is: |
|
> |
|
['.git/', '_darcs/', '.hg/', '.bzr/', '.svn/'] |
|
< |
|
|
|
============================================================================== |
|
PROJECTS_CACHE_NUM *SpaceVim-options-projects_cache_num* |
|
|
|
Setting the numbers of cached projects, by default it is 20. |
|
|
|
============================================================================== |
|
REALTIME_LEADER_GUIDE *SpaceVim-options-realtime_leader_guide* |
|
|
|
Enable/Disable realtime leader guide. Default is true. to disable it: |
|
> |
|
realtime_leader_guide = false |
|
< |
|
|
|
============================================================================== |
|
RELATIVENUMBER *SpaceVim-options-relativenumber* |
|
|
|
Enable/Disable relativenumber, by default it is enabled. |
|
> |
|
relativenumber = true |
|
< |
|
|
|
============================================================================== |
|
RETRY_CNT *SpaceVim-options-retry_cnt* |
|
|
|
Set the number of retries for SpaceVim Update when failed. Default is 3. Set |
|
to 0 to disable this feature, or you can set to another number. |
|
> |
|
update_retry_cnt = 3 |
|
< |
|
|
|
============================================================================== |
|
SEARCH_TOOLS *SpaceVim-options-search_tools* |
|
|
|
Default search tools supported by flygrep. The default order is ['rg', 'ag', |
|
'pt', 'ack', 'grep', 'findstr', 'git'] The `git` command means using |
|
`git-grep`. If you prefer to use `git-grep` by default. You can change this |
|
option to: |
|
> |
|
[options] |
|
search_tools = ['git', 'rg', 'ag'] |
|
< |
|
|
|
============================================================================== |
|
SIDEBAR_WIDTH *SpaceVim-options-sidebar_width* |
|
|
|
Set the width of the SpaceVim sidebar. Default is 30. This value will be used |
|
by tagbar and filetree. |
|
|
|
============================================================================== |
|
SNIPPET_ENGINE *SpaceVim-options-snippet_engine* |
|
|
|
Set the snippet engine of SpaceVim, default is neosnippet. to enable |
|
ultisnips: |
|
> |
|
snippet_engine = "ultisnips" |
|
< |
|
|
|
============================================================================== |
|
STATUSLINE_ISEPARATOR *SpaceVim-options-statusline_iseparator* |
|
|
|
Set the statusline separators of statusline in inactive windows, default is |
|
'nil' |
|
> |
|
Separators options: |
|
1. arrow |
|
2. curve |
|
3. slant |
|
4. nil |
|
5. fire |
|
< |
|
|
|
See more details in: http://spacevim.org/documentation/#statusline |
|
|
|
|
|
============================================================================== |
|
STATUSLINE_LEFT_SECTIONS *SpaceVim-options-statusline_left_sections* |
|
|
|
Define the left section of statusline in active windows. By default: |
|
> |
|
statusline_left_sections = [ |
|
'winnr', |
|
'filename', |
|
'major mode', |
|
'minor mode lighters', |
|
'version control info' |
|
] |
|
< |
|
|
|
============================================================================== |
|
STATUSLINE_SEPARATOR *SpaceVim-options-statusline_separator* |
|
|
|
Set the statusline separators of statusline, default is 'nil' |
|
> |
|
Separators options: |
|
1. arrow |
|
2. curve |
|
3. slant |
|
4. nil |
|
5. fire |
|
< |
|
|
|
See more details in: http://spacevim.org/documentation/#statusline |
|
|
|
|
|
============================================================================== |
|
STATUSLINE_UNICODE_SYMBOLS *SpaceVim-options-statusline_unicode_symbols* |
|
|
|
Enable/Disable unicode symbols in statusline, includes the mode icons and |
|
fileformat icons. This option is enabled by default, to disable it: |
|
> |
|
statusline_unicode_symbols = false |
|
< |
|
|
|
============================================================================== |
|
TERMINAL_CURSOR_SHAPE *SpaceVim-options-terminal_cursor_shape* |
|
|
|
Set the SpaceVim cursor shape in the terminal. |
|
> |
|
0 : to prevent Nvim from changing the cursor shape. |
|
1 : to enable non-blinking mode-sensitive cursor. |
|
2 : to enable blinking mode-sensitive cursor (default). |
|
< |
|
|
|
> |
|
< |
|
Host terminal must support the DECSCUSR CSI escape sequence. Depending on the |
|
terminal emulator, using this option with nvim under tmux might require adding |
|
the following to ~/.tmux.conf: |
|
> |
|
set -ga terminal-overrides ',*:Ss=\E[%p1%d q:Se=\E[2 q' |
|
< |
|
|
|
============================================================================== |
|
VIM_HELP_LANGUAGE *SpaceVim-options-vim_help_language* |
|
|
|
Set the help language of vim. Default is 'en'. You can change it to Chinese. |
|
> |
|
vim_help_language = "cn" |
|
< |
|
|
|
============================================================================== |
|
VIMCOMPATIBLE *SpaceVim-options-vimcompatible* |
|
|
|
Enable/Disable vimcompatible mode, by default it is false. to enable |
|
vimcompatible mode, just add: |
|
> |
|
vimcompatible = true |
|
< |
|
In vimcompatible mode all vim origin key bindings will not be changed. |
|
|
|
Includes: |
|
> |
|
q smart quit windows |
|
s windows key bindings leader |
|
, language specific leader |
|
<C-a> move cursor to beginning in command line mode |
|
<C-b> move cursor to left in command line mode |
|
<C-f> move cursor to right in command line mode |
|
<C-x> switch buffer |
|
< |
|
|
|
============================================================================== |
|
WARNING_SYMBOL *SpaceVim-options-warning_symbol* |
|
|
|
Set the warning symbol for SpaceVim's syntax maker. Default is '⚠'. |
|
> |
|
warning_symbol = '!' |
|
< |
|
|
|
============================================================================== |
|
WINDOWS_INDEX_TYPE *SpaceVim-options-windows_index_type* |
|
|
|
Set SpaceVim windows index type, default is 3. |
|
> |
|
# types: |
|
# 0: 1 ➛ ➊ |
|
# 1: 1 ➛ ➀ |
|
# 2: 1 ➛ ⓵ |
|
# 3: 1 ➛ 1 |
|
windows_index_type = 1 |
|
< |
|
|
|
============================================================================== |
|
WINDOWS_LEADER *SpaceVim-options-windows_leader* |
|
|
|
Window functions leader for SpaceVim. Default is `s`. Set to empty to disable |
|
this feature, or you can set to another char. |
|
> |
|
windows_leader = "" |
|
< |
|
|
|
============================================================================== |
|
WINDOWS_SMARTCLOSE *SpaceVim-options-windows_smartclose* |
|
|
|
Set the default key for smart close windows, default is `q`. to disable this |
|
feature, just set it to empty string: |
|
> |
|
windows_smartclose = "" |
|
< |
|
|
|
============================================================================== |
|
CONFIGURATION *SpaceVim-config* |
|
|
|
If you still want to use `~/.SpaceVim.d/init.vim` as configuration file, |
|
please take a look at the following options. |
|
|
|
|
|
*g:spacevim_version* |
|
Version of SpaceVim , this value can not be changed. |
|
|
|
*g:spacevim_default_indent* |
|
Change the default indentation of SpaceVim. Default is 2. |
|
> |
|
let g:spacevim_default_indent = 2 |
|
< |
|
|
|
*g:spacevim_expand_tab* |
|
In Insert mode: Use the appropriate number of spaces to insert a <Tab> |
|
|
|
*g:spacevim_relativenumber* |
|
Enable/Disable relativenumber in current windows, by default it is enabled. |
|
|
|
*g:spacevim_wrap_line* |
|
Enable/Disable line wrap of vim |
|
|
|
*g:spacevim_enable_bepo_layout* |
|
Enable/Disable bepo layout, by default it is disabled. |
|
|
|
*g:spacevim_max_column* |
|
Change the max number of columns for SpaceVim. Default is 120. |
|
> |
|
let g:spacevim_max_column = 120 |
|
< |
|
|
|
*g:spacevim_default_custom_leader* |
|
Change the default custom leader of SpaceVim. Default is <Space>. |
|
> |
|
let g:spacevim_default_custom_leader = '<Space>' |
|
< |
|
|
|
*g:spacevim_home_files_number* |
|
Change the list number of files for SpaceVim home. Default is 6. |
|
> |
|
let g:spacevim_home_files_number = 6 |
|
< |
|
|
|
*g:spacevim_enable_guicolors* |
|
Enable true color support in terminal. Default is 0. |
|
> |
|
let g:spacevim_enable_guicolors = 1 |
|
< |
|
|
|
*g:spacevim_escape_key_binding* |
|
Set the key binding for switch to normal mode in insert mode. Default is `jk`, |
|
to disable this key binding, set this option to empty string. |
|
> |
|
let g:spacevim_escape_key_binding = 'jk' |
|
< |
|
|
|
*g:spacevim_enable_googlesuggest* |
|
Enable/Disable Google suggestions for neocomplete. Default is 0. |
|
> |
|
let g:spacevim_enable_googlesuggest = 1 |
|
< |
|
|
|
*g:spacevim_windows_leader* |
|
Window functions leader for SpaceVim. Default is `s`. Set to empty to disable |
|
this feature, or you can set to another char. |
|
> |
|
let g:spacevim_windows_leader = '' |
|
< |
|
|
|
*g:spacevim_data_dir* |
|
Set the cache directory of SpaceVim. Default is `$XDG_CACHE_HOME` or if not |
|
set `~/.cache¸. |
|
> |
|
let g:spacevim_data_dir = '~/.cache' |
|
< |
|
|
|
*g:spacevim_plugin_bundle_dir* |
|
Set the cache directory of plugins. Default is `$data_dir/vimfiles`. |
|
> |
|
let g:spacevim_plugin_bundle_dir = g:spacevim_data_dir.'vimplugs' |
|
< |
|
|
|
*g:spacevim_realtime_leader_guide* |
|
Enable/Disable realtime leader guide. Default is 1. to disable it: |
|
> |
|
let g:spacevim_realtime_leader_guide = 0 |
|
< |
|
|
|
*g:spacevim_enable_key_frequency* |
|
Enable/Disable key frequency catching of SpaceVim. default value is 0. to |
|
enable it: |
|
> |
|
let g:spacevim_enable_key_frequency = 1 |
|
< |
|
|
|
*g:spacevim_autocomplete_method* |
|
Set the autocomplete engine of spacevim, the default logic is: |
|
> |
|
if has('python3') |
|
let g:spacevim_autocomplete_method = 'deoplete' |
|
elseif has('lua') |
|
let g:spacevim_autocomplete_method = 'neocomplete' |
|
elseif has('python') |
|
let g:spacevim_autocomplete_method = 'completor' |
|
elseif has('timers') |
|
let g:spacevim_autocomplete_method = 'asyncomplete' |
|
else |
|
let g:spacevim_autocomplete_method = 'neocomplcache' |
|
endif |
|
< |
|
|
|
and you can alse set this option to coc, then coc.nvim will be used. |
|
|
|
*g:spacevim_lint_engine* |
|
Set the lint engine used in checkers layer, the default engine is neomake, if |
|
you want to use ale, use: |
|
> |
|
let g:spacevim_lint_engine = 'ale' |
|
< |
|
|
|
*g:spacevim_guifont* |
|
Set the guifont of SpaceVim. Default is empty. |
|
> |
|
let g:spacevim_guifont = "SauceCodePro Nerd Font Mono:h11" |
|
< |
|
|
|
*g:spacevim_enable_ycm* |
|
Enable/Disable YouCompleteMe. Default is 0. |
|
> |
|
let g:spacevim_enable_ycm = 1 |
|
< |
|
|
|
*g:spacevim_sidebar_width* |
|
Set the width of the SpaceVim sidebar. Default is 30. This value will be used |
|
by tagbar and filetree. |
|
|
|
*g:spacevim_snippet_engine* |
|
Set the snippet engine of SpaceVim, default is neosnippet. to enable |
|
ultisnips: |
|
> |
|
let g:spacevim_snippet_engine = "ultisnips" |
|
< |
|
|
|
*g:spacevim_enable_cursorline* |
|
Enable/Disable cursorline. Default is 1, cursorline will be highlighted in |
|
normal mode.To disable this feature: |
|
> |
|
let g:spacevim_enable_cursorline = 0 |
|
< |
|
|
|
*g:spacevim_statusline_separator* |
|
Set the statusline separators of statusline, default is 'nil' |
|
> |
|
Separators options: |
|
1. arrow |
|
2. curve |
|
3. slant |
|
4. nil |
|
5. fire |
|
< |
|
|
|
See more details in: http://spacevim.org/documentation/#statusline |
|
|
|
|
|
*g:spacevim_statusline_iseparator* |
|
Set the statusline separators of statusline in inactive windows, default is |
|
'nil' |
|
> |
|
Separators options: |
|
1. arrow |
|
2. curve |
|
3. slant |
|
4. nil |
|
5. fire |
|
< |
|
|
|
See more details in: http://spacevim.org/documentation/#statusline |
|
|
|
|
|
*g:spacevim_enable_statusline_bfpath* |
|
Enable/Disable showing full path of current buffer on statusline, disabled by |
|
default, to enable this feature: |
|
> |
|
enable_statusline_bfpath = true |
|
< |
|
|
|
*g:spacevim_enable_statusline_tag* |
|
Enable/Disable showing current tag on statusline |
|
|
|
*g:spacevim_statusline_left_sections* |
|
Define the left section of statusline in active windows. By default: |
|
> |
|
let g:spacevim_statusline_left_sections = |
|
\ [ |
|
\ 'winnr', |
|
\ 'filename', |
|
\ 'major mode', |
|
\ 'minor mode lighters', |
|
\ 'version control info' |
|
\ ] |
|
< |
|
|
|
*g:spacevim_statusline_right_sections* |
|
Define the right section of statusline in active windows. By default: |
|
> |
|
g:spacevim_statusline_right_sections = |
|
\ [ |
|
\ 'fileformat', |
|
\ 'cursorpos', |
|
\ 'percentage' |
|
\ ] |
|
< |
|
|
|
*g:spacevim_statusline_unicode_symbols* |
|
Enable/Disable unicode symbols in statusline, includes the mode icons and |
|
fileformat icons. This option is enabled by default, to disable it: |
|
> |
|
let g:spacevim_statusline_unicode_symbols = 0 |
|
< |
|
|
|
*g:spacevim_enable_language_specific_leader* |
|
Enable/Disable language specific leader, by default you can use `,` ket |
|
instead of `SPC` `l`. |
|
|
|
*g:spacevim_enable_statusline_mode* |
|
Enable/Disable display mode. Default is 0, mode will be displayed in |
|
statusline. To enable this feature: |
|
> |
|
let g:spacevim_enable_statusline_mode = 1 |
|
< |
|
|
|
*g:spacevim_custom_color_palette* |
|
Set the statusline/tabline palette of color, default values depends on the |
|
theme |
|
> |
|
let g:spacevim_custom_color_palette = [ |
|
\ ['#282828', '#b8bb26', 246, 235], |
|
\ ['#a89984', '#504945', 239, 246], |
|
\ ['#a89984', '#3c3836', 237, 246], |
|
\ ['#665c54', 241], |
|
\ ['#282828', '#83a598', 235, 109], |
|
\ ['#282828', '#fe8019', 235, 208], |
|
\ ['#282828', '#8ec07c', 235, 108], |
|
\ ['#282828', '#689d6a', 235, 72], |
|
\ ['#282828', '#8f3f71', 235, 132], |
|
\ ] |
|
< |
|
|
|
|
|
*g:spacevim_enable_cursorcolumn* |
|
Enable/Disable cursorcolumn. Default is 0, cursorcolumn will be highlighted in |
|
normal mode. To enable this feature: |
|
> |
|
let g:spacevim_enable_cursorcolumn = 1 |
|
< |
|
|
|
*g:spacevim_error_symbol* |
|
Set the error symbol for SpaceVim's syntax maker. Default is '✖'. |
|
> |
|
let g:spacevim_error_symbol = '+' |
|
< |
|
|
|
*g:spacevim_warning_symbol* |
|
Set the warning symbol for SpaceVim's syntax maker. Default is '⚠'. |
|
> |
|
let g:spacevim_warning_symbol = '!' |
|
< |
|
|
|
*g:spacevim_info_symbol* |
|
Set the information symbol for SpaceVim's syntax maker. Default is '🛈'. |
|
> |
|
let g:spacevim_info_symbol = 'i' |
|
< |
|
|
|
*g:spacevim_terminal_cursor_shape* |
|
Set the SpaceVim cursor shape in the terminal. |
|
> |
|
0 : to prevent Nvim from changing the cursor shape. |
|
1 : to enable non-blinking mode-sensitive cursor. |
|
2 : to enable blinking mode-sensitive cursor (default). |
|
< |
|
|
|
> |
|
< |
|
Host terminal must support the DECSCUSR CSI escape sequence. Depending on the |
|
terminal emulator, using this option with nvim under tmux might require adding |
|
the following to ~/.tmux.conf: |
|
> |
|
set -ga terminal-overrides ',*:Ss=\E[%p1%d q:Se=\E[2 q' |
|
< |
|
|
|
*g:spacevim_vim_help_language* |
|
Set the help language of vim. Default is 'en'. You can change it to Chinese. |
|
> |
|
let g:spacevim_vim_help_language = 'cn' |
|
< |
|
|
|
*g:spacevim_language* |
|
Set the message language of vim. Default is 'en_US.UTF-8'. |
|
> |
|
let g:spacevim_language = 'en_CA.utf8' |
|
< |
|
|
|
*g:spacevim_keep_server_alive* |
|
Option for keep the spacevim server ailive |
|
|
|
*g:spacevim_colorscheme* |
|
The colorscheme of SpaceVim. Default is 'gruvbox'. |
|
|
|
*g:spacevim_colorscheme_bg* |
|
The background of colorscheme. Default is 'dark'. |
|
|
|
*g:spacevim_colorscheme_default* |
|
The default colorscheme of SpaceVim. Default is 'desert'. This colorscheme |
|
will be used if the colorscheme set by `g:spacevim_colorscheme` is not |
|
installed. |
|
> |
|
let g:spacevim_colorscheme_default = 'other_color' |
|
< |
|
|
|
*g:spacevim_filemanager* |
|
The default file manager of SpaceVim. Default is 'nerdtree'. you can also use |
|
defx or vimfiler |
|
|
|
*g:spacevim_filetree_direction* |
|
Config the direction of file tree. Default is 'right'. you can also set to |
|
'left'. |
|
|
|
NOTE: if it is 'left', the tagbar will be move to right. |
|
|
|
*g:spacevim_plugin_manager_processes* |
|
Set the max process of SpaceVim plugin manager |
|
|
|
*g:spacevim_checkinstall* |
|
Enable/Disable checkinstall on SpaceVim startup. Default is 1. |
|
> |
|
let g:spacevim_checkinstall = 1 |
|
< |
|
|
|
*g:spacevim_vimcompatible* |
|
Enable/Disable vimcompatible mode, by default it is false. to enable |
|
vimcompatible mode, just add: |
|
> |
|
let g:spacevim_vimcompatible = 1 |
|
< |
|
In vimcompatible mode all vim origin key bindings will not be changed. |
|
|
|
Includes: |
|
> |
|
q smart quit windows |
|
s windows key bindings leader |
|
, language specific leader |
|
<C-a> move cursor to beginning in command line mode |
|
<C-b> move cursor to left in command line mode |
|
<C-f> move cursor to right in command line mode |
|
<C-x> switch buffer |
|
< |
|
|
|
*g:spacevim_enable_debug* |
|
Enable/Disable debug mode for SpaceVim. Default is 0. |
|
> |
|
let g:spacevim_enable_debug = 1 |
|
< |
|
|
|
*g:spacevim_auto_disable_touchpad* |
|
Auto disable touchpad when switch to insert mode or focuslost in neovim. |
|
|
|
*g:spacevim_debug_level* |
|
Set the debug level of SpaceVim. Default is 1. see |
|
|SpaceVim#logger#setLevel()| |
|
|
|
*g:spacevim_buffer_index_type* |
|
Set SpaceVim buffer index type, default is 4. |
|
> |
|
" types: |
|
" 0: 1 ➛ ➊ |
|
" 1: 1 ➛ ➀ |
|
" 2: 1 ➛ ⓵ |
|
" 3: 1 ➛ ¹ |
|
" 4: 1 ➛ 1 |
|
let g:spacevim_buffer_index_type = 1 |
|
< |
|
|
|
*g:spacevim_windows_index_type* |
|
Set SpaceVim windows index type, default is 3. |
|
> |
|
" types: |
|
" 0: 1 ➛ ➊ |
|
" 1: 1 ➛ ➀ |
|
" 2: 1 ➛ ⓵ |
|
" 3: 1 ➛ 1 |
|
let g:spacevim_windows_index_type = 1 |
|
< |
|
|
|
*g:spacevim_enable_tabline_ft_icon* |
|
Enable/Disable tabline filetype icon. default is 0. |
|
|
|
*g:spacevim_enable_os_fileformat_icon* |
|
Enable/Disable os fileformat icon. default is 0. |
|
|
|
*g:spacevim_github_username* |
|
Set the github username, It will be used for getting your starred repos, and |
|
fuzzy find the repo you want. |
|
|
|
*g:spacevim_windows_smartclose* |
|
Set the default key for smart close windows, default is `q`. |
|
|
|
*g:spacevim_disabled_plugins* |
|
Disable plugins by name. |
|
> |
|
let g:spacevim_disabled_plugins = ['vim-foo', 'vim-bar'] |
|
< |
|
|
|
*g:spacevim_custom_plugins* |
|
Add custom plugins. |
|
> |
|
let g:spacevim_custom_plugins = [ |
|
\ ['plasticboy/vim-markdown', 'on_ft' : 'markdown'], |
|
\ ['wsdjeg/GitHub.vim'], |
|
\ ] |
|
< |
|
|
|
*g:spacevim_filetype_icons* |
|
change the default filetype icon for a specific filtype. |
|
> |
|
let g:spacevim_filetype_icons['md'] = '' |
|
< |
|
|
|
*g:spacevim_force_global_config* |
|
SpaceVim will load the global config after local config if set to 1. Default |
|
is 0. If you have a local config, the global config will not be loaded. |
|
> |
|
let g:spacevim_force_global_config = 1 |
|
< |
|
|
|
*g:spacevim_enable_powerline_fonts* |
|
Enable/Disable powerline symbols. Default is 1. |
|
|
|
*g:spacevim_lint_on_save* |
|
Enable/Disable lint on save feature of SpaceVim's maker. Default is 1. |
|
> |
|
let g:spacevim_lint_on_save = 0 |
|
< |
|
|
|
*g:spacevim_search_tools* |
|
Default search tools supported by flygrep. The default order is ['rg', 'ag', |
|
'pt', 'ack', 'grep', 'findstr', 'git'] |
|
|
|
*g:spacevim_project_rooter_patterns* |
|
Set the project root patterns, SpaceVim determines the root directory of the |
|
project based on this option. By default it is: |
|
> |
|
['.git/', '_darcs/', '.hg/', '.bzr/', '.svn/'] |
|
< |
|
|
|
*g:spacevim_enable_projects_cache* |
|
Enable/Disable cross session projects cache. Enabled by default. |
|
|
|
*g:spacevim_projects_cache_num* |
|
Setting the numbers of cached projects, by default it is 20. |
|
|
|
*g:spacevim_project_rooter_automatically* |
|
Enable/Disable changing directory automatically. Enabled by default. |
|
|
|
*g:spacevim_project_rooter_outermost* |
|
Enable/Disable finding outermost directory for project root detection. By |
|
default SpaceVim will find the outermost directory based on |
|
`project_rooter_patterns`. To find nearest directory, you need to disable this |
|
option: |
|
> |
|
let g:spacevim_project_rooter_outermost = 0 |
|
< |
|
|
|
*g:spacevim_commandline_prompt* |
|
Config the command line prompt for flygrep and denite etc. |
|
|
|
*g:spacevim_todo_labels* |
|
Option for setting todo labels in current project. |
|
|
|
*g:spacevim_lint_on_the_fly* |
|
Enable/Disable lint on the fly feature of SpaceVim's maker. Default is 0. |
|
> |
|
let g:spacevim_lint_on_the_fly = 0 |
|
< |
|
|
|
*g:spacevim_update_retry_cnt* |
|
Set the number of retries for SpaceVim Update when failed. Default is 3. Set |
|
to 0 to disable this feature, or you can set to another number. |
|
> |
|
let g:spacevim_update_retry_cnt = 3 |
|
< |
|
|
|
*g:spacevim_enable_vimfiler_welcome* |
|
Enable/Disable vimfiler in the welcome windows. Default is 1. This will cause |
|
vim to start up slowly if there are too many files in the current directory. |
|
> |
|
let g:spacevim_enable_vimfiler_welcome = 0 |
|
< |
|
|
|
*g:spacevim_autocomplete_parens* |
|
Enable/Disable autocompletion of parentheses, default is 1 (enabled). |
|
|
|
*g:spacevim_hosts_url* |
|
The host file url. This option is for Chinese users who can not use Google and |
|
Twitter. |
|
|
|
*g:github_issues_no_omni* |
|
jaxbot/github-issues.vim {{{ Disable completion by github-issues.vim. Because |
|
github-complete.vim provides more powerful completion. |
|
|
|
*g:github_dashboard* |
|
junegunn/vim-github-dashboard {{{ |
|
|
|
*g:dash_map* |
|
rizzatti/dash.vim {{{ Allows configuration of mappings between Vim filetypes |
|
and Dash's docsets. |
|
|
|
============================================================================== |
|
COMMANDS *SpaceVim-commands* |
|
|
|
:SPLayer {layers} *:SPLayer* |
|
Load exist layer, {layers} can be a string of a layer name, or a list of |
|
layer names. |
|
|
|
:SPVersion *:SPVersion* |
|
Print the version of SpaceVim. The following lines contain information |
|
about which features were enabled. When there is a preceding '+', the |
|
feature is included, when there is a '-' it is excluded. |
|
|
|
:SPSet {opt} [value] *:SPSet* |
|
Set or check SpaceVim option. {opt} should be the option name of spacevim, |
|
This command will use [value] as the value of option name. |
|
|
|
:SPDebugInfo[!] *:SPDebugInfo* |
|
print the debug information of spacevim, [!] forces the output into a new |
|
buffer. |
|
|
|
:SPRuntimeLog *:SPRuntimeLog* |
|
view runtime log |
|
|
|
:SPConfig *:SPConfig* |
|
edit custom config file of SpaceVim, by default this command will open |
|
global custom configuration file, '-l' option will load local custom |
|
configuration file. |
|
> |
|
:SPConfig -g |
|
< |
|
|
|
:SPUpdate *:SPUpdate* |
|
Command for update plugin, support completion of plugin name. If run without |
|
argv, All the plugin will be updated. |
|
> |
|
:SPUpdate vim-airline |
|
< |
|
|
|
:SPReinstall *:SPReinstall* |
|
Command for reinstall plugin, support completion of plugin name. |
|
|
|
:SPInstall *:SPInstall* |
|
Command for install plugins. |
|
|
|
:A[!] {type} *:A* |
|
Switch to alternate file based on {type}. |
|
|
|
============================================================================== |
|
FUNCTIONS *SpaceVim-functions* |
|
|
|
SpaceVim#api#import({name}) *SpaceVim#api#import()* |
|
Import API base the given {name}, and return the API object. for all |
|
available APIs please check |spacevim-api| |
|
|
|
SpaceVim#custom#SPC({m}, {keys}, {cmd}, {desc}, {is_cmd}) |
|
*SpaceVim#custom#SPC()* |
|
The first parameter sets the type of shortcut key, which can be `nnoremap` |
|
or `nmap`, the second parameter is a list of keys, and the third parameter |
|
is an ex command or key binding, depending on whether the last parameter is |
|
true. The fourth parameter is a short description of this custom key |
|
binding. |
|
|
|
SpaceVim#layers#load({layer}) *SpaceVim#layers#load()* |
|
Load the {layer} you want. For all the layers SpaceVim supports, see |
|
|SpaceVim-layers|. the second argv is the layer variable. |
|
|
|
SpaceVim#logger#setLevel({level}) *SpaceVim#logger#setLevel()* |
|
Set debug level of SpaceVim. Default is 1. |
|
|
|
1 : log all messages |
|
|
|
2 : log warning and error messages |
|
|
|
3 : log error messages only |
|
|
|
SpaceVim#logger#setOutput({file}) *SpaceVim#logger#setOutput()* |
|
Set the log output file of SpaceVim. Default is empty. |
|
|
|
SpaceVim#plugins#iedit#start() *SpaceVim#plugins#iedit#start()* |
|
public API for iedit mode |
|
> |
|
KEY: |
|
expr match expression |
|
word match word |
|
stack cursor pos stack |
|
< |
|
if only argv 1 is given, use selected word as pattern |
|
|
|
============================================================================== |
|
LAYERS *SpaceVim-layers* |
|
|
|
SpaceVim support such layers: |
|
|
|
languages: |
|
|
|
https://www.scriptol.com/programming/list-programming-languages.php#query-lang |
|
uage |
|
|
|
============================================================================== |
|
AUTOCOMPLETE *SpaceVim-layers-autocomplete* |
|
|
|
CODE COMPLETION |
|
SpaceVim uses neocomplete as the default completion engine if vim has lua |
|
support. If there is no lua support, neocomplcache will be used for the |
|
completion engine. SpaceVim uses deoplete as the default completion engine for |
|
neovim. Deoplete requires neovim to be compiled with python support. For more |
|
information on python support, please read neovim's |provider-python|. |
|
|
|
SpaceVim includes YouCompleteMe, but it is disabled by default. To enable ycm, |
|
see |g:spacevim_enable_ycm|. |
|
|
|
SNIPPET |
|
SpaceVim use neosnippet as the default snippet engine. The default snippets |
|
are provided by `Shougo/neosnippet-snippets`. For more information, please |
|
read |neosnippet|. Neosnippet support custom snippets, and the default |
|
snippets directory is `~/.SpaceVim/snippets/`. If |
|
`g:spacevim_force_global_config = 1`, SpaceVim will not append |
|
`./.SpaceVim/snippets` as default snippets directory. |
|
|
|
============================================================================== |
|
CHECKERS *SpaceVim-layers-checkers* |
|
|
|
The `checkers` layer provides syntax lint feature. The default lint engine is |
|
|neomake|, this can be changed by `lint_engine` option: |
|
> |
|
[options] |
|
lint_engine = 'ale' |
|
< |
|
|
|
OPTIONS |
|
|
|
`lint_on_the_fly`: Syntax checking on the fly feature, disabled by default. |
|
`lint_on_save`: Run syntax checking when saving a file. |
|
`show_cursor_error`: Enable/Disable displaying error below current line. |
|
|
|
============================================================================== |
|
COLORSCHEME *SpaceVim-layers-colorscheme* |
|
|
|
The ldefault colorscheme for SpaceVim is gruvbox. The colorscheme can be |
|
changed with the `g:spacevim_colorscheme` option by adding the following line |
|
to your `~/.SpaceVim/init.vim`. |
|
> |
|
let g:spacevim_colorscheme = 'solarized' |
|
< |
|
|
|
The following colorschemes are include in SpaceVim. If the colorscheme you |
|
want is not included in the list below, a PR is welcome. |
|
|
|
Also, there's one thing which everyone should know and pay attention to. NOT |
|
all of below colorschemes support spell check very well. For example, a |
|
colorscheme called atom doesn't support spell check very well. |
|
|
|
SpaceVim is not gonna fix them since these should be in charge of each author. |
|
|
|
============================================================================== |
|
CORE *SpaceVim-layers-core* |
|
|
|
The `core` layer of SpaceVim. This layer is enabled by default, and it |
|
provides filetree, comment key bindings etc. |
|
|
|
OPTIONS |
|
`filetree_show_hidden`: option for showing hidden file in filetree, disabled |
|
by default. |
|
`enable_smooth_scrolling`: enable/disabled smooth scrolling key bindings, |
|
enabled by default. |
|
`enable_filetree_gitstatus`: enable/disable git status column in filetree. |
|
`enable_filetree_filetypeicon`: enable/disable filetype icons in filetree. |
|
|
|
NOTE: the `enable_vimfiler_gitstatus` and `enable_filetree_gitstatus` option |
|
has been deprecated. Use layer option instead. |
|
*spacevim-options-enable_vimfiler_gitstatus* |
|
*spacevim-options-enable_filetree_gitstatus* |
|
*g:spacevim_enable_vimfiler_gitstatus* *g:spacevim_enable_filetree_gitstatus* |
|
*g:spacevim_enable_vimfiler_filetypeicon* |
|
|
|
============================================================================== |
|
CORE#STATUSLINE *SpaceVim-layers-core-statusline* |
|
|
|
This layer provides default statusline for SpaceVim If you want to use |
|
airline's statusline, just disable this layer |
|
> |
|
[[layers]] |
|
name = 'core#statusline' |
|
enable = false |
|
< |
|
|
|
============================================================================== |
|
CORE#TABLINE *SpaceVim-layers-core-tabline* |
|
|
|
This layer provides default tabline for SpaceVim If you want to use airline's |
|
tabline, just disable this layer |
|
> |
|
[[layers]] |
|
name = "core#tabline" |
|
enable = false |
|
< |
|
|
|
============================================================================== |
|
CSCOPE *SpaceVim-layers-cscope* |
|
|
|
`cscope` layer provides |cscope| integration for SpaceVim. To load this layer: |
|
> |
|
[[layers]] |
|
name = 'cscope' |
|
< |
|
LAYER OPTIONS |
|
|
|
The layer option can be used when loading the `cscope` layer, for example: |
|
> |
|
[[layers]] |
|
name = 'cscope' |
|
auto_update = true |
|
open_quickfix = 0 |
|
< |
|
1. `auto_update`: Enable or disable automatic updating of the cscope |
|
database. |
|
2. `cscope_command`: set the command or path of `cscope` executable. |
|
3. `open_location`: enable/disable open location list after searching. |
|
4. `preload_path`: set the proload paths. |
|
|
|
============================================================================== |
|
EXPRFOLD *SpaceVim-layers-exprfold* |
|
|
|
Fold code quickly according to expr. |
|
|
|
Mappings: |
|
> |
|
Key Mode Function |
|
---------------------------------------------------- |
|
ZB normal Open fold block template |
|
ZF normal Fold block |
|
ZC normal Fold block comment |
|
< |
|
|
|
============================================================================== |
|
FORMAT *SpaceVim-layers-format* |
|
|
|
format layer provides code formation for SpaceVim, the default formatting |
|
plugin is |neoformat|. |
|
OPTIONS |
|
|
|
`format_on_save`: disabled by default. |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Key binding Description |
|
SPC b f format current buffer or selection lines |
|
< |
|
|
|
|
|
============================================================================== |
|
GIT *SpaceVim-layers-git* |
|
|
|
`git` layer provides git integration for SpaceVim. |
|
|
|
LAYER OPTIONS |
|
|
|
`git_plugin`: Set the background plugin used in `git` layer. The default value |
|
is `git`, the following plugins are supported: `gina`, `fugitive` and `gita`. |
|
> |
|
[[layers]] |
|
name = 'git' |
|
git_plugin = 'git' |
|
< |
|
|
|
|
|
============================================================================== |
|
GITHUB *SpaceVim-layers-github* |
|
|
|
This layer provides GitHub integration for SpaceVim |
|
|
|
MAPPINGS |
|
|
|
> |
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC g h i show issues |
|
normal SPC g h a show activities |
|
normal SPC g h d show dashboard |
|
normal SPC g h f show current file in browser |
|
normal SPC g h I show issues in browser |
|
normal SPC g h p show PRs in browser |
|
< |
|
|
|
============================================================================== |
|
GTAGS *SpaceVim-layers-gtags* |
|
|
|
`gtags` layer provides |gtags| integration for SpaceVim. To load this layer: |
|
> |
|
[[layers]] |
|
name = 'gtags' |
|
< |
|
LAYER OPTIONS |
|
|
|
The layer option can be used when loading the `gtags` layer, for example: |
|
> |
|
[[layers]] |
|
name = 'gtags' |
|
auto_update = true |
|
open_quickfix = 0 |
|
< |
|
1. `auto_update`: enable/disable database update automatically. |
|
2. `open_quickfix`: This setting will open the |quickfix| list when |
|
adding entries. same as |g:gtags_open_list| |
|
3. `gtagslabel`: the backend of gtags command, you can use `ctags` or |
|
`pygments`. It is empty string by default. |
|
|
|
============================================================================== |
|
INCSEARCH *SpaceVim-layers-incsearch* |
|
|
|
This layer improved incremental searching for neovim/vim |
|
|
|
mappings |
|
> |
|
key mode description |
|
/ n/v incsearch forward |
|
? n/v incsearch backward |
|
g/ n/v incsearch stay |
|
n n nohlsearch n |
|
N n nohlsearch N |
|
* n nohlsearch * |
|
g* n nohlsearch g* |
|
# n nohlsearch # |
|
g# n nohlsearch g# |
|
z/ n incsearch fuzzy / |
|
z? n incsearch fuzzy ? |
|
zg? n incsearch fuzzy g? |
|
<Space>/ n incsearch easymotion |
|
< |
|
|
|
============================================================================== |
|
INDENTMOVE *SpaceVim-layers-indentmove* |
|
|
|
Move cursor quickly according to indent. |
|
|
|
MAPPINGS |
|
|
|
> |
|
Key mode function |
|
----------------------------------------------------------------- |
|
EH normal/visual move up to nearest line with smaller |
|
indent level |
|
EL normal/visual move down to nearest line with larger |
|
indent level |
|
EJ normal/visual move down to nearest line with smaller |
|
or same indent level |
|
EK normal/visual move down to nearest line with larger |
|
or same indent level |
|
EI normal/visual move down to nearest child indent |
|
< |
|
|
|
|
|
|
|
============================================================================== |
|
LANG#ACTIONSCRIPT *SpaceVim-layers-lang-actionscript* |
|
|
|
This layer provides syntax highlighting for actionscript. To enable this |
|
layer: |
|
> |
|
[[layers]] |
|
name = "lang#actionscript" |
|
< |
|
|
|
============================================================================== |
|
LANG#AGDA *SpaceVim-layers-lang-agda* |
|
|
|
This layer provides syntax highlighting for agda. To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#agda" |
|
< |
|
|
|
============================================================================== |
|
LANG#ASCIIDOC *SpaceVim-layers-lang-asciidoc* |
|
|
|
This layer provides syntax highlighting for asciidoc. To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#asciidoc" |
|
< |
|
|
|
============================================================================== |
|
LANG#ASEPCTJ *SpaceVim-layers-lang-asepctj* |
|
|
|
This layer provides syntax highlighting for asepctj. To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#asepctj" |
|
< |
|
|
|
============================================================================== |
|
LANG#ASSEMBLY *SpaceVim-layers-lang-assembly* |
|
|
|
This layer provides syntax highlighting for assembly. To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#assembly" |
|
< |
|
|
|
============================================================================== |
|
LANG#AUTOHOTKEY *SpaceVim-layers-lang-autohotkey* |
|
|
|
This layer provides syntax highlighting for autohotkey. To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#autohotkey" |
|
< |
|
|
|
============================================================================== |
|
LANG#BATCH *SpaceVim-layers-lang-batch* |
|
|
|
This layer is for batch development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#batch' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for batch, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#C *SpaceVim-layers-lang-c* |
|
|
|
This layer is for c/cpp development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#c' |
|
< |
|
|
|
LAYER OPTIONS |
|
|
|
`clang_executable`: Set the path to the clang executable, by default, it is |
|
`clang`. |
|
|
|
`enable_clang_syntax_highlight`: Enable/Disable clang based syntax |
|
highlighting. By default it is disabled. |
|
|
|
`libclang_path`: The libclang shared object (dynamic library) file path. By |
|
default it is empty |
|
|
|
`clang_std`: This is a dictionary for setting std for c/cpp. The default |
|
valuable is : |
|
> |
|
'c' : 'c11', |
|
'cpp' : 'c++1z', |
|
'objc' : 'c11', |
|
'objcpp': 'c++1z', |
|
< |
|
|
|
`clang_flag`: You should be able to just paste most of your compile flags in |
|
there. |
|
|
|
Here is an example how to use above options: |
|
> |
|
[[layers]] |
|
name = "lang#c" |
|
clang_executable = "/usr/bin/clang" |
|
clang_flag = ['-I/user/include'] |
|
[layers.clang_std] |
|
c = "c11" |
|
cpp = "c++1z" |
|
objc = "c11" |
|
objcpp = "c++1z" |
|
< |
|
|
|
Instead of using `clang_flag` options, You can also create a `.clang` file in |
|
the root directory of your project. SpaceVim will load the options defined in |
|
`.clang` file. For example: |
|
> |
|
-std=c11 |
|
-I/home/test |
|
< |
|
Note: If `.clang` file contains std configuration, it will override |
|
`clang_std` layer option. |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for c, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
}}} |
|
|
|
============================================================================== |
|
LANG#CHAPEL *SpaceVim-layers-lang-chapel* |
|
|
|
This layer is for chapel development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#chapel' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r compile and run current file |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#CLOJURE *SpaceVim-layers-lang-clojure* |
|
|
|
This layer provides clojure language support in SpaceVim. Including syntax |
|
highlighting, code indent, code runner and REPL. This layer is not enabled by |
|
default, To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#clojure" |
|
< |
|
|
|
LAYER OPTIONS |
|
|
|
1. `clojure_interpreter`: Set the clojure interpreter, by default, it is |
|
`clojure` |
|
> |
|
[[layers]] |
|
name = 'lang#clojure' |
|
clojure_interpreter = 'path/to/clojure' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for clojure, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#COFFEESCRIPT *SpaceVim-layers-lang-coffeescript* |
|
|
|
This layer is for coffeescript development, disabled by default, to enable |
|
this layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#coffeescript' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for coffeescript, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
============================================================================== |
|
LANG#CRYSTAL *SpaceVim-layers-lang-crystal* |
|
|
|
INTRO |
|
|
|
The lang#crystal layer provides crystal filetype detection and syntax |
|
highlight, crystal tool and crystal spec integration. To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#crystal" |
|
< |
|
|
|
MAPPING |
|
|
|
> |
|
Key binding description |
|
SPC l r run current code |
|
|
|
< |
|
This layer also provides REPL support for crystal, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#CSHARP *SpaceVim-layers-lang-csharp* |
|
|
|
INTRO |
|
|
|
This layer includes utilities and language-specific mappings for csharp |
|
development. By default it is disabled, to enable this layer: |
|
> |
|
[layers] |
|
name = "lang#csharp" |
|
< |
|
|
|
KEY MAPPINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l b compile the project |
|
normal SPC l f format current file |
|
normal SPC l d show doc |
|
normal SPC l e rename symbol under cursor |
|
normal SPC l g g go to definition |
|
normal SPC l g i find implementations |
|
normal SPC l g t find type |
|
normal SPC l g s find symbols |
|
normal SPC l g u find usages of symbol under cursor |
|
normal SPC l g m find members in the current buffer |
|
normal SPC l s r reload the solution |
|
normal SPC l s s start the OmniSharp server |
|
normal SPC l s S stop the OmniSharp server |
|
< |
|
|
|
============================================================================== |
|
LANG#D *SpaceVim-layers-lang-d* |
|
|
|
This layer is for d development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#d' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for d, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#DART *SpaceVim-layers-lang-dart* |
|
|
|
INTRO |
|
|
|
The lang#dart layer provides code completion, documentation lookup, jump to |
|
definition, dart_repl integration for dart. It uses neomake as default syntax |
|
checker which is loaded in |SpaceVim-layer-checkers|. To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#dart" |
|
< |
|
|
|
LAYER OPTIONS |
|
|
|
1. `dart_sdk_path`: Set the path of dart sdk, by default, it is ''. |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for hack, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
This layer use deoplete-dart as default completion plugin for dart. If the |
|
|SpaceVim-layer-lsp| is enabled for dart, This plugin will not be loaded. |
|
|
|
|
|
|
|
============================================================================== |
|
LANG#DOCKERFILE *SpaceVim-layers-lang-dockerfile* |
|
|
|
INTRO |
|
|
|
The lang#dockerfile layer provides syntax highlighting for dockerfile. |
|
|
|
============================================================================== |
|
LANG#E *SpaceVim-layers-lang-e* |
|
|
|
INTRO |
|
|
|
This layer includes utilities and language-specific mappings for e |
|
development. By default it is disabled, to enable this layer: |
|
> |
|
[layers] |
|
name = "lang#e" |
|
< |
|
|
|
============================================================================== |
|
LANG#EIFFEL *SpaceVim-layers-lang-eiffel* |
|
|
|
This layer is for lang#eiffel development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#eiffel' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Key Function |
|
----------------------------- |
|
SPC l c run eclean |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#ELIXIR *SpaceVim-layers-lang-elixir* |
|
|
|
This layer is for elixir development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#elixir' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
normal g d jump to definition |
|
< |
|
|
|
This layer also provides REPL support for d, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#ELM *SpaceVim-layers-lang-elm* |
|
|
|
This layer is for elm development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#elm' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for elm, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#ERLANG *SpaceVim-layers-lang-erlang* |
|
|
|
This layer is for erlang development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#erlang' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for erlang, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#EXTRA *SpaceVim-layers-lang-extra* |
|
|
|
INTRO |
|
|
|
The lang#extra layer provides syntax highlighting, indent for extra |
|
programming language. includes: |
|
|
|
1. pug |
|
|
|
digitaltoad/vim-pug syntax highlighting and indent |
|
|
|
2. i3config |
|
|
|
PotatoesMaster/i3-vim-syntax syntax highlighting for i3 config |
|
|
|
3. irssi config |
|
|
|
isundil/vim-irssi-syntax syntax highlighting for irssi config |
|
|
|
============================================================================== |
|
LANG#FORTH *SpaceVim-layers-lang-forth* |
|
|
|
This layer is for forth development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#forth' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#FORTRAN *SpaceVim-layers-lang-fortran* |
|
|
|
This layer is for fortran development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#fortran' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for fortran, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#FOXPRO *SpaceVim-layers-lang-foxpro* |
|
|
|
INTRO |
|
|
|
The lang#foxpro layer provides syntax highlighting for foxpro. |
|
|
|
============================================================================== |
|
LANG#FSHARP *SpaceVim-layers-lang-fsharp* |
|
|
|
This layer is for fsharp development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#fsharp' |
|
< |
|
|
|
This layer also provides REPL support for goby, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#GO *SpaceVim-layers-lang-go* |
|
|
|
This layer includes code completion and syntax checking for Go development. |
|
|
|
MAPPINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l a go alternate |
|
normal SPC l b go build |
|
normal SPC l c go coverage |
|
normal SPC l d go doc |
|
normal SPC l D go doc vertical |
|
normal SPC l e go rename |
|
normal SPC l g go definition |
|
normal SPC l G go generate |
|
normal SPC l h go info |
|
normal SPC l i go implements |
|
normal SPC l I implement stubs |
|
normal SPC l k add tags |
|
normal SPC l K remove tags |
|
normal SPC l l list declarations in file |
|
normal SPC l L list declarations in dir |
|
normal SPC l m format improts |
|
normal SPC l M add import |
|
normal SPC l x go referrers |
|
normal SPC l s fill struct |
|
normal SPC l t go test |
|
normal SPC l v freevars |
|
normal SPC l r go run |
|
< |
|
|
|
============================================================================== |
|
LANG#GOBY *SpaceVim-layers-lang-goby* |
|
|
|
This layer is for goby development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#goby' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for goby, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#GOSU *SpaceVim-layers-lang-gosu* |
|
|
|
This layer is for gosu development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#gosu' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
============================================================================== |
|
LANG#GRAPHQL *SpaceVim-layers-lang-graphql* |
|
|
|
INTRO |
|
|
|
The lang#graphql layer provides syntax highlighting indent for graphql. To |
|
enable this layer: |
|
> |
|
[layers] |
|
name = "lang#graphql" |
|
< |
|
|
|
This filetype is automatically selected for filenames ending in .graphql, |
|
.graphqls, and .gql. If you would like to enable automatic syntax support for |
|
more file extensions (e.g., *.prisma), add following into bootstrap function. |
|
> |
|
augroup mybootstrap |
|
au! |
|
au BufNewFile,BufRead *.prisma setfiletype graphql |
|
augroup END |
|
< |
|
|
|
============================================================================== |
|
LANG#GROOVY *SpaceVim-layers-lang-groovy* |
|
|
|
This layer is for groovy development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#groovy' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for groovy, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#HACK *SpaceVim-layers-lang-hack* |
|
|
|
INTRO |
|
|
|
This layer is for hack development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#hack' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for hack, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#HASKELL *SpaceVim-layers-lang-haskell* |
|
|
|
This layer is for haskell development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#haskell' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for haskell, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#HTML *SpaceVim-layers-lang-html* |
|
|
|
This layer is for html development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[layers] |
|
name = "lang#html" |
|
< |
|
|
|
OPTIONS |
|
|
|
`emmet_leader_key`: change the default leader key for emmet |
|
`emmet_filetyps`: Set the filetypes for enabling emmet |
|
|
|
> |
|
[layers] |
|
name = "lang#html" |
|
emmet_leader_key = "<C-e>" |
|
emmet_filetyps = ['html'] |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
|
|
> |
|
Key Binding description |
|
<C-e> emmet leader key |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#HY *SpaceVim-layers-lang-hy* |
|
|
|
This layer is for hy development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#hy' |
|
< |
|
|
|
LAYER OPTIONS |
|
|
|
1. `hy_interpreter`: Set the hy interpreter, by default, it is `hy` |
|
|
|
> |
|
[[layers]] |
|
name = 'lang#hy' |
|
hy_interpreter = 'path/to/hy' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for hy, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#IDRIS *SpaceVim-layers-lang-idris* |
|
|
|
This layer is for idris development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#idris' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for idris, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#IO *SpaceVim-layers-lang-io* |
|
|
|
This layer is for io development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#io' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for io, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#J *SpaceVim-layers-lang-j* |
|
|
|
This layer is for j development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#j' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for j, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#JANET *SpaceVim-layers-lang-janet* |
|
|
|
This layer is for janet development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#janet' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for janet, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#JAVA *SpaceVim-layers-lang-java* |
|
|
|
This layer is for java development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#java' |
|
< |
|
LAYER OPTIONS |
|
|
|
1. `format_on_save`: Enable/disabled code formatting when saving current |
|
file. Disabled by default. |
|
2. `java_formatter_jar`: Set the full path of google's java formatter jar. |
|
3. `java_file_head`: The default file header for new java file. by default |
|
it is: |
|
|
|
> |
|
[[layers]] |
|
name = 'lang#java' |
|
java_file_head = [ |
|
'/**', |
|
' * @author : `fnamemodify(expand("~"), ":t")`', |
|
' * @created : `strftime("%Y-%m-%d")`', |
|
'**/', |
|
'' |
|
] |
|
< |
|
MAPPINGS |
|
|
|
> |
|
Import key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l I import missing classes |
|
normal SPC l R remove unused imports |
|
normal SPC l i smart import class under cursor |
|
insert <c-j>I import missing imports |
|
insert <c-j>R remove unused imports |
|
insert <c-j>i smart import class under cursor |
|
|
|
Generate key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l g A generate accessors |
|
normal SPC l g s generate setter accessor |
|
normal SPC l g g generate getter accessor |
|
normal SPC l g a generate setter and getter accessor |
|
normal SPC l g t generate toString function |
|
normal SPC l g e generate equals and hashcode function |
|
normal SPC l g c generate constructor |
|
normal SPC l g C generate default constructor |
|
insert <c-j>s generate setter accessor |
|
insert <c-j>g generate getter accessor |
|
insert <c-j>a generate getter and setter accessor |
|
visual SPC l g s generate setter accessor |
|
visual SPC l g g generate getter accessor |
|
visual SPC l g a generate setter and getter accessor |
|
|
|
Maven key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l m i run maven clean install |
|
normal SPC l m I run maven install |
|
normal SPC l m p run one already goal from list |
|
normal SPC l m r run maven goals |
|
normal SPC l m R run one maven goal |
|
normal SPC l m t run maven test |
|
|
|
Gradle key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l g r run gradle run |
|
normal SPC l g b run gradle build |
|
normal SPC l g B run gradle clean build |
|
normal SPC l g t run gradle test |
|
|
|
Jump key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l j a jump to alternate file |
|
|
|
REPL key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l s i start a jshell inferior REPL process |
|
normal SPC l s b send buffer and keep code buffer focused |
|
normal SPC l s l send line and keep code buffer focused |
|
normal SPC l s s send selection text and keep code buffer focused |
|
< |
|
CODE FORMATTING |
|
To make neoformat support java file, you should install uncrustify. or |
|
download google's formater jar from: |
|
https://github.com/google/google-java-format |
|
|
|
and set 'g:spacevim_layer_lang_java_formatter' to the path of the jar. |
|
|
|
============================================================================== |
|
LANG#JAVASCRIPT *SpaceVim-layers-lang-javascript* |
|
|
|
This layer is for JavaScript development, includes syntax lint, code |
|
completion etc. To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#javascript" |
|
< |
|
The code linter is eslint, install eslint via: |
|
> |
|
npm install -g eslint-cli |
|
< |
|
LAYER OPTION |
|
|
|
1. auto_fix: If this option is true, --fix will be added to neomake eslint |
|
maker. |
|
> |
|
[layers] |
|
name = "lang#javascript" |
|
auto_fix = true |
|
< |
|
KEY BINDINGS |
|
|
|
> |
|
Key Function |
|
----------------------------- |
|
SPC l r run current file |
|
SPC b f format current buffer |
|
< |
|
|
|
This layer also provides REPL support for javascript, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#JSON *SpaceVim-layers-lang-json* |
|
|
|
This layer provides syntax highlighting for json file. To enable this layer: |
|
> |
|
[layers] |
|
name = "lang#json" |
|
< |
|
|
|
OPTIONS |
|
|
|
1. conceal: Set the valuable for |g:vim_json_syntax_conceal| |
|
|
|
2. concealcursor: Set the valuable for |g:vim_json_syntax_concealcursor| |
|
|
|
|
|
> |
|
[layers] |
|
name = 'lang#json' |
|
conceal = false |
|
concealcursor = '' |
|
< |
|
|
|
============================================================================== |
|
LANG#JULIA *SpaceVim-layers-lang-julia* |
|
|
|
This layer is for julia development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#julia' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for julia, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#KOTLIN *SpaceVim-layers-lang-kotlin* |
|
|
|
This layer is for kotlin development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#kotlin' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for kotlin, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#LATEX *SpaceVim-layers-lang-latex* |
|
|
|
This layer is for latex development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#latex' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l i vimtex-info |
|
normal SPC l I vimtex-info-full |
|
normal SPC l t vimtex-toc-open |
|
normal SPC l T vimtex-toc-toggle |
|
normal SPC l y vimtex-labels-open |
|
normal SPC l Y vimtex-labels-toggle |
|
normal SPC l v vimtex-view |
|
normal SPC l r vimtex-reverse-search |
|
normal SPC l l vimtex-compile |
|
normal SPC l L vimtex-compile-selected |
|
normal SPC l k vimtex-stop |
|
normal SPC l K vimtex-stop-all |
|
normal SPC l e vimtex-errors |
|
normal SPC l o vimtex-compile-output |
|
normal SPC l g vimtex-status |
|
normal SPC l G vimtex-status-all |
|
normal SPC l c vimtex-clean |
|
normal SPC l C vimtex-clean-full |
|
normal SPC l m vimtex-imaps-list |
|
normal SPC l x vimtex-reload |
|
normal SPC l X vimtex-reload-state |
|
normal SPC l s vimtex-toggle-main |
|
< |
|
|
|
============================================================================== |
|
LANG#LISP *SpaceVim-layers-lang-lisp* |
|
|
|
This layer is for Common Lisp development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#lisp' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for lisp, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#LIVESCRIPT *SpaceVim-layers-lang-livescript* |
|
|
|
This layer is for livescript development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#livescript' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for livescript, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#LUA *SpaceVim-layers-lang-lua* |
|
|
|
This layer includes utilities and language-specific mappings for lua |
|
development. |
|
> |
|
[[layers]] |
|
name = 'lang#lua' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current script |
|
normal SPC l b compile current file |
|
< |
|
|
|
This layer also provides REPL support for lua, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#MARKDOWN *SpaceVim-layers-lang-markdown* |
|
|
|
This layer is for markdown language, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#markdown' |
|
< |
|
LAYER OPTIONS |
|
|
|
1. `enabled_formater`: Set the enabled formater, by default it is |
|
`['remark']`. |
|
2. `enableWcwidth`: Enable/disabled wcwidth option, it is disabled by |
|
default. |
|
3. `listItemChar`: Set the default list item char, it is `-` by default. |
|
4. `listItemIndent`: Set the default indent of list item. It is `1` by |
|
default. |
|
|
|
============================================================================== |
|
LANG#MOONSCRIPT *SpaceVim-layers-lang-moonscript* |
|
|
|
This layer is for moonscript development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#moonscript' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Key Function |
|
----------------------------- |
|
SPC l r Run current moonscript |
|
< |
|
|
|
This layer also provides REPL support for moonscript, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#NIM *SpaceVim-layers-lang-nim* |
|
|
|
This layer is for nim development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#nim' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l r run current file |
|
normal SPC l d show symbol info |
|
normal SPC l e rename symbol in file |
|
normal SPC l E rename symbol in project |
|
normal g d go to definition |
|
< |
|
|
|
This layer also provides REPL support for nim, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#NIX *SpaceVim-layers-lang-nix* |
|
|
|
INTRO |
|
The lang#nix layer provides syntax highlighting for the Nix expression |
|
language. |
|
|
|
============================================================================== |
|
LANG#OCAML *SpaceVim-layers-lang-ocaml* |
|
|
|
OCaml autocompletion provided by merlin. |
|
|
|
Requirements: |
|
> |
|
opam |
|
merlin |
|
< |
|
|
|
============================================================================== |
|
LANG#PACT *SpaceVim-layers-lang-pact* |
|
|
|
This layer is for pact development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#pact' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for pact, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#PASCAL *SpaceVim-layers-lang-pascal* |
|
|
|
This layer is for pascal development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#pascal' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
============================================================================== |
|
LANG#PERL *SpaceVim-layers-lang-perl* |
|
|
|
This layer is for perl development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#perl' |
|
< |
|
|
|
LAYER OPTIONS |
|
|
|
1. `perl_interpreter`: Set the perl interpreter, by default, it is `perl` |
|
|
|
> |
|
[[layers]] |
|
name = 'lang#perl' |
|
perl_interpreter = 'path/to/perl' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for perl, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#PHP *SpaceVim-layers-lang-php* |
|
|
|
This layer is for php development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#php' |
|
< |
|
|
|
LAYER OPTIONS |
|
|
|
1. `php_interpreter`: Set the PHP interpreter, by default, it is `php` |
|
|
|
> |
|
[[layers]] |
|
name = 'lang#php' |
|
php_interpreter = 'path/to/php' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for php, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#PONY *SpaceVim-layers-lang-pony* |
|
|
|
This layer is for pony development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#pony' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
============================================================================== |
|
LANG#PROCESSING *SpaceVim-layers-lang-processing* |
|
|
|
This layer is for Processing development: https://processing.org |
|
|
|
This is based on the work from https://github.com/sophacles/vim-processing |
|
|
|
Requirements: |
|
|
|
1. You will need a copy of processing-java. The best way to do this is to |
|
get a copy of the Processing IDE from https://processing.org/download/ |
|
|
|
Once you have it, run it, and then select Tools -> install |
|
"processing-java" |
|
|
|
MAPPINGS |
|
|
|
> |
|
Mode Key Function |
|
----------------------------------------------- |
|
normal SPC l r execute current sketch |
|
< |
|
|
|
============================================================================== |
|
LANG#PROLOG *SpaceVim-layers-lang-prolog* |
|
|
|
This layer is for prolog development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#prolog' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
|
|
> |
|
Key Function |
|
-------------------------------- |
|
SPC l r run current file |
|
< |
|
|
|
The default code runner command is `swipl -q -f %s -t main`, `%s` will be |
|
replaced to the path of current file. |
|
|
|
This layer also provides REPL support for prolog, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#PUPPET *SpaceVim-layers-lang-puppet* |
|
|
|
This layer is for Puppet development. It provides syntax highlighting and |
|
syntax checking. |
|
|
|
Requirements: |
|
> |
|
Puppet |
|
Puppet Lint |
|
< |
|
|
|
============================================================================== |
|
LANG#PURESCRIPT *SpaceVim-layers-lang-purescript* |
|
|
|
This layer provides purescript language support for SpaceVim. Includding |
|
syntax highlighting, code formatting and code completion. This layer is not |
|
enabled by default, to enable this layer, add following snippet into SpaceVim |
|
configuration file: |
|
> |
|
[[layers]] |
|
name = 'lang#purescript' |
|
< |
|
KEY BINDINGS |
|
|
|
|
|
> |
|
Key Function |
|
-------------------------------- |
|
SPC l L list loaded modules |
|
SPC l l reset loaded modules and load externs |
|
SPC l R rebuild current buffer |
|
SPC l f generate function template |
|
SPC l t add type annotation |
|
SPC l a apply current line suggestion |
|
SPC l A apply all suggestions |
|
SPC l C add case expression |
|
SPC l i import module |
|
SPC l p search pursuit for cursor ident |
|
SPC l T find type of cursor ident |
|
< |
|
|
|
This layer also provides REPL support for purescript, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#PYTHON *SpaceVim-layers-lang-python* |
|
|
|
This layer provides python language support for SpaceVim. Includding syntax |
|
highlighting, code formatting and code completion. This layer is not enabled |
|
by default, to enable this layer, add following snippet into SpaceVim |
|
configuration file: |
|
> |
|
[[layers]] |
|
name = 'lang#python' |
|
< |
|
|
|
OPTIONS |
|
|
|
1. python_file_head: the default file head for python source code. |
|
|
|
> |
|
[layers] |
|
name = "lang#python" |
|
python_file_head = [ |
|
'#!/usr/bin/python3', |
|
'# -*- coding : utf-8 -*-' |
|
'' |
|
] |
|
< |
|
2. `python_interpreter`: Set the interpreter of python. |
|
|
|
> |
|
[[layers]] |
|
name = 'lang#python' |
|
python_interpreter = '~/download/bin/python3' |
|
< |
|
3. format_on_save: enable/disable code formation when save python file. This |
|
options is disabled by default, to enable it: |
|
> |
|
[[layers]] |
|
name = 'lang#python' |
|
format_on_save = true |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
|
|
> |
|
Key Function |
|
-------------------------------- |
|
SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for python, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#RACKET *SpaceVim-layers-lang-racket* |
|
|
|
This layer is for racket development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#racket' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for racket, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#RACKET *SpaceVim-layers-lang-red* |
|
|
|
This layer is for red development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#red' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for red, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#REASON *SpaceVim-layers-lang-reason* |
|
|
|
This layer is for reason development, disabled by default, to enable this |
|
layer, add following snippet to your |SpaceVim-options| file. |
|
> |
|
[[layers]] |
|
name = 'lang#reason' |
|
< |
|
|
|
============================================================================== |
|
LANG#RING *SpaceVim-layers-lang-r* |
|
|
|
This layer is for r development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#r' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
The command of code runner for R is `"R <%s"` `%s` will be replaced to the |
|
path of current R file. |
|
> |
|
Key Function |
|
-------------------------------- |
|
SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for r, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#RING *SpaceVim-layers-lang-ring* |
|
|
|
This layer is for ring development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#ring' |
|
< |
|
|
|
OPTIONS |
|
|
|
1. ring_repl: Set the path of ring repl. |
|
|
|
> |
|
[layers] |
|
name = "lang#ring" |
|
ring_repl = "/path/to/repl.ring" |
|
< |
|
KEY BINDINGS |
|
|
|
The code runner for ring is "ring %" % will be replaced to the path of current |
|
ring file. |
|
> |
|
Key Function |
|
-------------------------------- |
|
SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for ring, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#RUBY *SpaceVim-layers-lang-ruby* |
|
|
|
This layer is for ruby development, disabled by default, to enable this layer, |
|
add following snippet to your |SpaceVim-options| file. |
|
> |
|
[[layers]] |
|
name = 'lang#ruby' |
|
< |
|
|
|
OPTIONS |
|
|
|
1. ruby_file_head: the default file head for ruby source code. |
|
|
|
> |
|
[layers] |
|
name = "lang#ruby" |
|
ruby_file_head = [ |
|
'#!/usr/bin/ruby -w', |
|
'# -*- coding : utf-8 -*-' |
|
'' |
|
] |
|
< |
|
2. repl_command: the REPL command for ruby |
|
|
|
> |
|
[[layers]] |
|
name = 'lang#ruby' |
|
repl_command = '~/download/bin/ruby_repl' |
|
< |
|
3. format_on_save: enable/disable code formation when save ruby file. This |
|
options is disabled by default, to enable it: |
|
> |
|
[[layers]] |
|
name = 'lang#ruby' |
|
repl_command = '~/download/bin/ruby_repl' |
|
format_on_save = true |
|
< |
|
KEY BINDINGS |
|
|
|
|
|
> |
|
Key Function |
|
-------------------------------- |
|
SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for ruby, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#RUST *SpaceVim-layers-lang-rust* |
|
|
|
This layer is for Rust development. |
|
|
|
Requirements: |
|
|
|
1. Racer needs a copy of the rust source. The easiest way to do this is with |
|
rustup. Once rustup is installed, download the source with: |
|
|
|
> |
|
rustup component add rust-src |
|
< |
|
2. Install Rust nightly build |
|
|
|
> |
|
rustup install nightly |
|
< |
|
3. Install racer: |
|
|
|
> |
|
cargo +nightly install racer |
|
< |
|
4. Set the RUST_SRC_PATH variable in your .bashrc: |
|
|
|
> |
|
RUST_SRC_PATH=~/.multirust/toolchains/<change>/lib/rustlib/src/rust/src |
|
export RUST_SRC_PATH |
|
< |
|
5. Add racer to your path, or set the path with: |
|
|
|
> |
|
[[layers]] |
|
name = 'lang#rust' |
|
racer_cmd = "/path/to/racer/bin" |
|
< |
|
|
|
MAPPINGS |
|
|
|
> |
|
Key Function |
|
----------------------------------------------- |
|
g d rust-definition |
|
SPC l d rust-doc |
|
SPC l r run current file |
|
SPC l e rls-rename-symbol |
|
SPC l u rls-show-references |
|
SPC l c b cargo-build |
|
SPC l c c cargo-clean |
|
SPC l c f cargo-fmt |
|
SPC l c t cargo-test |
|
SPC l c u cargo-update |
|
SPC l c B cargo-bench |
|
SPC l c D cargo-docs |
|
SPC l c r cargo-run |
|
< |
|
|
|
This layer also provides REPL support for rust, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#SCALA *SpaceVim-layers-lang-scala* |
|
|
|
This layer is for Scala development. |
|
|
|
MAPPINGS |
|
|
|
> |
|
Import key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal <F4> show candidates for importing of cursor symbol |
|
insert <F4> show candidates for importing of cursor symbol |
|
normal SPC l i c show candidates for importing of cursor symbol |
|
normal SPC l i q prompt for a qualified import |
|
normal SPC l i o organize imports of current file |
|
normal SPC l i s sort imports of current file |
|
insert <c-;>i prompt for a qualified import |
|
insert <c-;>o organize imports of current file |
|
insert <c-;>s sort imports of current file |
|
|
|
Debug key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l d t show debug stack trace of current frame |
|
normal SPC l d c continue the execution |
|
normal SPC l d b set a breakpoint for the current line |
|
normal SPC l d B clear all breakpoints |
|
normal SPC l d l launching debugger |
|
normal SPC l d i step into next statement |
|
normal SPC l d o step over next statement |
|
normal SPC l d O step out of current function |
|
|
|
Sbt key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l b c sbt clean compile |
|
normal SPC l b r sbt run |
|
normal SPC l b t sbt test |
|
normal SPC l b p sbt package |
|
normal SPC l b d sbt show project dependencies tree |
|
normal SPC l b l sbt reload project build definition |
|
normal SPC l b u sbt update external dependencies |
|
normal SPC l b e run sbt to generate .ensime config file |
|
|
|
Execute key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l r run main class |
|
|
|
REPL key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l s i start a scala inferior REPL process |
|
normal SPC l s b send buffer and keep code buffer focused |
|
normal SPC l s l send line and keep code buffer focused |
|
normal SPC l s s send selection text and keep code buffer focused |
|
|
|
Other key bindings: |
|
|
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC l Q bootstrap server when first-time-use |
|
normal SPC l h show Documentation of cursor symbol |
|
normal SPC l n inline local refactoring of cursor symbol |
|
normal SPC l e rename cursor symbol |
|
normal SPC l g find Definition of cursor symbol |
|
normal SPC l t show Type of expression of cursor symbol |
|
normal SPC l p show Hierarchical view of a package |
|
normal SPC l u find Usages of cursor symbol |
|
|
|
< |
|
SpaceVim uses [`ensime-vim`](https://ensime.github.io/editors/vim/install/) to |
|
provide code completion, format, sort imports etc, if has python support. Also |
|
you can enable lsp layer to has a better experience. |
|
|
|
|
|
LANGUAGE SERVER `METALS-VIM` |
|
|
|
Right now `metals-vim` works with `coc.nvim` to offer a richer user experience |
|
than other servers(LanguageClient-neovim or vim-lsp). Please make sure that |
|
`metals-vim` executable is in your `system $PATH`. Installation guide is here: |
|
[`metals-vim`](https://scalameta.org/metals/docs/editors/vim.html) |
|
|
|
|
|
ENSIME-VIM SETUP STEPS |
|
|
|
The following is quick install steps, if you want to see complete details, |
|
please see: [`ensime-vim`](https://ensime.github.io/editors/vim/install/) |
|
|
|
1. Install vim`s plugin and its dependencies as following. |
|
|
|
`pip install websocket-client sexpdata`, |
|
|
|
`pip install pynvim` (neovim only). |
|
|
|
2. Integration ENSIME with your build tools, here we use sbt. add |
|
(sbt-ensime) as global plugin for sbt: Put code `addSbtPlugin("org.ensime" |
|
% "sbt-ensime" % "2.6.1")` in file '~/.sbt/plugins/plugins.sbt' (create |
|
if not exists). Armed with your build tool plugin, generate the `.ensime` |
|
config file from your project directory in command line, e.g. for sbt use |
|
`sbt ensimeConfig`, or `./gradlew ensime` for Gradle. the first time will |
|
take several minutes. |
|
|
|
3. The first time you use ensime-vim (per Scala version), it will |
|
`bootstrap` the ENSIME server installation when opening a Scala file you |
|
will be prompted to run |:EnInstall|. Do that and give it a minute or two |
|
to run. After this, you should see reports in Vim's message area that |
|
ENSIME is coming up, and the indexer and analyzer are ready. Going |
|
forward, ensime-vim will automatically start the ENSIME server when you |
|
edit Scala files in a project with an `.ensime` config present. |
|
|
|
|
|
CODE FORMATTING |
|
|
|
1. To make neoformat support scala file, you should install scalariform. |
|
[`scalariform`](https://github.com/scala-ide/scalariform) and set |
|
'g:spacevim_layer_lang_scala_formatter' to the path of the jar. |
|
|
|
2. If lsp |
|
[`metals-vim`](https://scalameta.org/metals/docs/editors/overview.html) is |
|
enabled, it will automatically use |
|
[`scalafmt`](https://scalameta.org/scalafmt/docs/configuration.html) to |
|
format code. |
|
|
|
============================================================================== |
|
LANG#SCHEME *SpaceVim-layers-lang-scheme* |
|
|
|
This layer is for scheme development, disabled by default, to enable this |
|
layer, add following snippet to your |SpaceVim-options| file. |
|
> |
|
[[layers]] |
|
name = 'lang#scheme' |
|
< |
|
|
|
OPTIONS |
|
|
|
1. scheme_dialect: Set the dialect of scheme. |
|
|
|
2. scheme_interpreter: Set the path or interpreter of scheme. |
|
|
|
MAPPINGS |
|
|
|
> |
|
Key Function |
|
----------------------------------------------- |
|
SPC l r Run current file |
|
< |
|
This layer also provides REPL support for scheme, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#SH *SpaceVim-layers-lang-sh* |
|
|
|
This layer is for shell script development, including bash, zsh and fish. This |
|
layer provides basic syntax highlighting and code completion , and it is |
|
disabled by default, to enable this layer, add following snippet to your |
|
|SpaceVim-options| file. |
|
> |
|
[[layers]] |
|
name = 'lang#sh' |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#SML *SpaceVim-layers-lang-sml* |
|
|
|
This layer is for Standard ML development. This layer provides basic syntax |
|
highlighting and code completion , and it is disabled by default, to enable |
|
this layer, add following snippet to your |SpaceVim-options| file. |
|
> |
|
[[layers]] |
|
name = 'lang#sml' |
|
< |
|
|
|
You can run `:SMLCheckHealth` to check whether the environment if OK. |
|
|
|
LAYER OPTIONS |
|
|
|
`smlnj_path`: Set the path to the smlnj executable, by default, it is `sml`. |
|
|
|
`mlton_path`: Set the path to the mlton executable, by default, it is `mlton`. |
|
|
|
`repl_options`: Options used for REPL, by default, it is ''. |
|
|
|
`auto_create_def_use`: Whether to build def-use files on save automatically. |
|
By default, it is `mlb`. Valid values is: |
|
> |
|
'mlb': Auto build def-use if there's a *.mlb file |
|
'always': Always build def-use file |
|
'never': Never build def-use file |
|
< |
|
|
|
`enable_conceal`: `0`/`1`. Whether to enable concealing for SML files. `0` by |
|
defaults. `'a` becomes `α` (or `'α`). `fn` becomes `λ.` |
|
|
|
`enable_conceal_show_tick`: `0`/`1`. When conceal is enabled, show `'α` for |
|
`'a` instead of `α`. Helps for alignment. `0` by default. |
|
|
|
`sml_file_head`: Template for new sml file. |
|
|
|
Here is an example how to use above options: |
|
> |
|
[[layers]] |
|
name = "lang#sml" |
|
smlnj_path = "/usr/local/smlnj/bin/sml" |
|
mlton_path = "/usr/local/bin/mlton" |
|
repl_options = '' |
|
enable_conceal = 1 |
|
enable_conceal_show_tick = 1 |
|
auto_create_def_use = 'always' |
|
< |
|
|
|
============================================================================== |
|
LANG#SWIG *SpaceVim-layers-lang-swift* |
|
|
|
This layer is for swift development, including syntax highlighting and indent. |
|
To enable it: |
|
> |
|
[layers] |
|
name = "lang#swift" |
|
< |
|
MAPPINGS |
|
|
|
> |
|
Key Function |
|
----------------------------------------------- |
|
SPC l k jumping to placeholders |
|
SPC l r Run current file |
|
< |
|
This layer also provides REPL support for swift, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#SWIG *SpaceVim-layers-lang-swig* |
|
|
|
This layer is for swig development, including syntax highlighting and indent. |
|
To enable it: |
|
> |
|
[layers] |
|
name = "lang#swig" |
|
< |
|
|
|
============================================================================== |
|
LANG#TCL *SpaceVim-layers-lang-tcl* |
|
|
|
This layer is for tcl development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#tcl' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for tcl, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#TOML *SpaceVim-layers-lang-toml* |
|
|
|
This layer provides basic syntax highlighting for toml. To enable it: |
|
> |
|
[layers] |
|
name = "lang#toml" |
|
< |
|
|
|
============================================================================== |
|
LANG#TYPESCRIPT *SpaceVim-layers-lang-typescript* |
|
|
|
This layer provides typescript development support for SpaceVim. To enable |
|
this layer, add following sinippet into SpaceVim configuration file. |
|
> |
|
[layers] |
|
name = "lang#typescript" |
|
< |
|
MAPPINGS |
|
|
|
> |
|
Ket binding Description |
|
---------------------------------------- |
|
g d defintion preview |
|
< |
|
|
|
============================================================================== |
|
LANG#V *SpaceVim-layers-lang-v* |
|
|
|
This layer is for v development, disabled by default, to enable this layer, |
|
add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#v' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for v, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#VBNET *SpaceVim-layers-lang-vbnet* |
|
|
|
This layer is for vbnet development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#vbnet' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#WOLFRAM *SpaceVim-layers-lang-wolfram* |
|
|
|
This layer is for wolfram development, disabled by default, to enable this |
|
layer, add following snippet to your SpaceVim configuration file. |
|
> |
|
[[layers]] |
|
name = 'lang#wolfram' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Mode Key Function |
|
--------------------------------------------- |
|
normal SPC l r run current file |
|
< |
|
|
|
This layer also provides REPL support for wolfram, the key bindings are: |
|
> |
|
Key Function |
|
--------------------------------------------- |
|
SPC l s i Start a inferior REPL process |
|
SPC l s b send whole buffer |
|
SPC l s l send current line |
|
SPC l s s send selection text |
|
< |
|
|
|
|
|
============================================================================== |
|
LANG#XML *SpaceVim-layers-lang-xml* |
|
|
|
When editing an xml file, the omni func is xmlcomplete#CompleteTags. You can |
|
read the documentation in autoload/xmlcomplete.vim in the vim or neovim |
|
runtime directory. |
|
|
|
============================================================================== |
|
LANG#XQUERY *SpaceVim-layers-lang-xquery* |
|
|
|
This layer provides basic syntax highlighting and indent file for xquery, |
|
disabled by default, to enable this layer, add following snippet to your |
|
|SpaceVim-options| file. |
|
> |
|
[[layers]] |
|
name = 'lang#xquery' |
|
< |
|
|
|
============================================================================== |
|
LANGUAGE SERVER PROTOCOL *SpaceVim-layers-lsp* |
|
|
|
This layer provides language client support for SpaceVim. |
|
|
|
============================================================================== |
|
LEADERF *SpaceVim-layers-leaderf* |
|
|
|
This layer provides fuzzy finder feature which is based on leaderf, and this |
|
layer requires vim compiled with `+python` or `+python3`. |
|
|
|
============================================================================== |
|
OPERATOR *SpaceVim-layers-operator* |
|
|
|
With this layer, you can confirm that text is yanked correctly and see yanked |
|
text by highlighting. |
|
|
|
============================================================================== |
|
SHELL *SpaceVim-layers-shell* |
|
|
|
SpaceVim uses deol.nvim for shell support in neovim and uses vimshell for vim. |
|
For more info, read |deol| and |vimshell|. |
|
|
|
VARIABLE |
|
|
|
default_shell: config the default shell to be used by shell layer. |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
SPC ' Open or switch to terminal windows |
|
q Hide terminal windows in normal mode |
|
< |
|
|
|
============================================================================== |
|
TEST *SpaceVim-layers-test* |
|
|
|
This layer allows to run tests on SpaceVim |
|
|
|
MAPPINGS |
|
|
|
> |
|
Mode Key Function |
|
------------------------------------------------------------- |
|
normal SPC k n run nearest test |
|
normal SPC k f run test file |
|
normal SPC k s run test suite |
|
normal SPC k l run the latest test |
|
normal SPC k v visits the last run test file |
|
< |
|
|
|
============================================================================== |
|
TMUX *SpaceVim-layers-tmux* |
|
|
|
Adds integration between tmux and vim panes. Switch between panes |
|
seamlessly.syntax highlighting, commenting, man page navigation and ability to |
|
execute lines as tmux commands. This layer is not added by default. To include |
|
it, add `SpaceVim#layers#load('tmux')` to your `~/.SpaceVim.d/init.vim`. If |
|
you are having issues with <C-h> in a neovim buffer, see |
|
`https://github.com/neovim/neovim/issues/2048#issuecomment-78045837` |
|
|
|
MAPPINGS |
|
|
|
> |
|
Key Mode Function |
|
------------------------------ |
|
<C-h> normal Switch to vim/tmux pane in left direction |
|
<C-j> normal Switch to vim/tmux pane in down direction |
|
<C-k> normal Switch to vim/tmux pane in up direction |
|
<C-l> normal Switch to vim/tmux pane in right direction |
|
< |
|
|
|
============================================================================== |
|
TOOLS#DASH *SpaceVim-layers-tools-dash* |
|
|
|
This layer provides Dash integration for SpaceVim |
|
|
|
============================================================================== |
|
TOOLS#ZEAL *SpaceVim-layers-tools-zeal* |
|
|
|
This layer provides Zeal integration for SpaceVim |
|
|
|
============================================================================== |
|
UI *SpaceVim-layers-ui* |
|
|
|
The `ui` layer defines the default interface for SpaceVim, and it is loaded by |
|
default. This layer includes scrollbar, indentline, and cursorword |
|
highlighting. |
|
> |
|
[[layers]] |
|
name = 'ui' |
|
enable_sidebar = false |
|
enable_scrollbar = false |
|
enable_indentline = true |
|
enable_cursorword = false |
|
indentline_char = '|' |
|
conceallevel = 0 |
|
concealcursor = '' |
|
cursorword_delay = 50 |
|
cursorword_exclude_filetype = [] |
|
indentline_exclude_filetyps = [] |
|
< |
|
|
|
if you want to disable `ui` layer, you can use: |
|
> |
|
[[layers]] |
|
name = 'ui' |
|
enabled = fasle |
|
< |
|
OPTIONS |
|
|
|
1. `enable_sidebar`: Enable/disable sidebar. |
|
2. `enable_scrollbar`: Enable/disable floating scrollbar of current buffer. |
|
Disabled by default. This feature requires neovim's floating window. |
|
3. `enable_indentline`: Enable/disable indentline of current buffer. |
|
Enabled by default. |
|
4. `enable_cursorword`: Enable/disable cursorword highlighting. |
|
Disabled by default. |
|
5. `indentline_char`: Set the character of indentline. |
|
6. `conceallevel`: set the conceallevel option. |
|
7. `concealcursor`: set the concealcursor option. |
|
8. `cursorword_delay`: The delay duration in milliseconds for setting the |
|
word highlight after cursor motions, the default is 50. |
|
9. `cursorword_exclude_filetypes`: Ignore filetypes when enable cursorword |
|
highlighting. |
|
10. `indentline_exclude_filetyps`: Ignore filetypes when enable indentline. |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
Key binding Description |
|
SPC t h ui current buffer or selection lines |
|
< |
|
|
|
|
|
============================================================================== |
|
UNITE *SpaceVim-layers-unite* |
|
|
|
This layer provides fuzzy finder feature which is based on |unite|. This layer |
|
is not loaded by default, to use this layer, you need to load `unite` layer in |
|
your configuration file. |
|
> |
|
[[layers]] |
|
name = 'unite' |
|
< |
|
|
|
KEY BINDINGS |
|
|
|
> |
|
| Key bindings | Discription | |
|
| -------------------- | ----------------------------- | |
|
| `<Leader> f <Space>` | Fuzzy find menu:CustomKeyMaps | |
|
| `<Leader> f e` | Fuzzy find register | |
|
| `<Leader> f h` | Fuzzy find history/yank | |
|
| `<Leader> f j` | Fuzzy find jump, change | |
|
| `<Leader> f l` | Fuzzy find location list | |
|
| `<Leader> f m` | Fuzzy find output messages | |
|
| `<Leader> f o` | Fuzzy find outline | |
|
| `<Leader> f q` | Fuzzy find quick fix | |
|
| `<Leader> f r` | Resumes Unite window | |
|
< |
|
|
|
|
|
============================================================================== |
|
USAGE *SpaceVim-usage* |
|
|
|
General guide for using SpaceVim. Including layer configuration, bootstrap |
|
function. |
|
|
|
============================================================================== |
|
BUFFERS-AND-FILES *SpaceVim-usage-buffers-and-files* |
|
|
|
BUFFERS MANIPULATION KEY BINDINGS |
|
All buffers key bindings are start with `b` prefix: |
|
> |
|
Key Bindings Descriptions |
|
SPC <Tab> switch to alternate buffer in the current window (switch |
|
back and forth) |
|
SPC b . buffer transient state |
|
SPC b b switch to a buffer (via denite/unite) |
|
SPC b d kill the current buffer (does not delete the visited |
|
file) |
|
SPC u SPC b d kill the current buffer and window (does not delete the |
|
visited file) (TODO) |
|
SPC b D kill a visible buffer using vim-choosewin |
|
< |
|
|
|
============================================================================== |
|
CUSTOM_PLUGINS *SpaceVim-usage-custom_plugins* |
|
|
|
Add custom plugins. |
|
> |
|
[[custom_plugins]] |
|
repo = 'vimwiki/vimwiki' |
|
merged = false |
|
< |
|
|
|
============================================================================== |
|
REPL *SpaceVim-usage-repl* |
|
|
|
In language layer, REPL key bindings has been added. To start a REPL process, |
|
the default key binding is `SPC l s i` . Key bindings for sending code to REPL |
|
process only support following types: `line`, `selection` and `buffer` . All |
|
of the key binding is mapped to function `SpaceVim#plugins#repl#send`. The |
|
first argument is {type}. To send raw string, use `raw` as type, for example: |
|
> |
|
call SpaceVim#plugins#repl#send('raw', 'print("hello world!")') |
|
< |
|
|
|
> |
|
< |
|
|
|
============================================================================== |
|
TASKS *SpaceVim-usage-tasks* |
|
|
|
general guide for tasks manager in SpaceVim. |
|
|
|
============================================================================== |
|
API *SpaceVim-api* |
|
|
|
SpaceVim contains a variety of public apis. To using the api, you need to make |
|
sure SpaceVim has been added to your &rtp. after that, you can use |
|
|SpaceVim#api#import| to import the API you need. |
|
|
|
USAGE |
|
|
|
This is just an example, and it works well in old version vim. |
|
> |
|
let s:json = SpaceVim#api#import('data#json') |
|
let rst = s:json.json_encode(onject) |
|
let rst = s:json.json_decode(string) |
|
< |
|
|
|
here is list of resources where SpaceVim comes from: |
|
|
|
vital: https://github.com/vim-jp/vital.vim |
|
|
|
============================================================================== |
|
CMDLINEMENU *SpaceVim-api-cmdlinemenu* |
|
|
|
menu({items}) |
|
|
|
Create a cmdline selection menu from a list of {items}, each item should be a |
|
list of two value in it, first one is the description, and the next one should |
|
be a funcrc. |
|
|
|
============================================================================== |
|
DATA#DICT *SpaceVim-api-data-dict* |
|
|
|
provides some functions to manipulate a dict. |
|
|
|
make({keys}, {values}[, {fill}]) |
|
|
|
make a dictionary from two list, the {keys} and {values}. |
|
|
|
swap({dict}) |
|
|
|
swap the keys and values in a dictionary. |
|
|
|
make_index |
|
|
|
make a dictionary from a list, use |
|
|
|
============================================================================== |
|
DATA#LIST *SpaceVim-api-data-list* |
|
|
|
provides some functions to manipulate a list. |
|
|
|
pop({list}) |
|
|
|
Removes the last element from {list} and returns the element, as if the |
|
{list} is a stack. |
|
|
|
push({list}) |
|
|
|
Appends {val} to the end of {list} and returns the list itself, as if the |
|
{list} is a stack. |
|
|
|
listpart({list}, {start}[, {len}]) |
|
|
|
The result is a List, which is part of {list}, starting from index {start}, |
|
with the length {len} |
|
|
|
replace(list, begin, end, re_list) |
|
|
|
replace {list} from {begin} to {end} with {re_list} |
|
|
|
shift({list}) |
|
|
|
remove first item in a {list}, and return the item |
|
|
|
unshift({list}) |
|
|
|
insert an item to the begin of the {list} |
|
|
|
clear({list}) |
|
|
|
clear items in the {list} |
|
|
|
char_range({from}, {to}) |
|
|
|
return a characters list based on the ascii number range. |
|
|
|
============================================================================== |
|
DATA#NUMBER *SpaceVim-api-data-number* |
|
|
|
data#number API provides some basic functions to generate number. |
|
|
|
random([{a}[, {b}]]) |
|
> |
|
random() : an unbounded random integer number. |
|
random(a) : an unbounded random number larger than a. |
|
random(a, b) : a random number from [a, a + b - 1]. |
|
< |
|
|
|
============================================================================== |
|
DATA#STRING *SpaceVim-api-data-string* |
|
|
|
|
|
FUNCTIONS |
|
|
|
split(str [, sep [, keepempty[, max]]]) |
|
|
|
run vim command, and return the output of such command. |
|
|
|
trim(str) |
|
|
|
remove space at the begin and end of a string, same as |trim()| |
|
|
|
fill(str, length[, char]) |
|
|
|
fill string to length with {char}, if {char} is omnit, a space is used. |
|
|
|
============================================================================== |
|
JOB *SpaceVim-api-job* |
|
|
|
provides some functions to manager job |
|
|
|
start({cmd}[, {opt}]) |
|
|
|
spawns {cmd} as a job. {opts} is a dictionary with these keys: |
|
|
|
on_stdout: stdout event handler (function name or Funcref) |
|
|
|
on_stderr: stderr event handler (function name or Funcref) |
|
|
|
on_exit: exit event handler (function name or Funcref) |
|
|
|
cwd: working directory of the job; defaults to current directory |
|
|
|
============================================================================== |
|
LOGGER *SpaceVim-api-logger* |
|
|
|
provides some functions to manager logger |
|
|
|
set_silent({silent}) |
|
|
|
{silent} is a Boolean. by default it is false, and log will be print to |
|
screen. |
|
|
|
============================================================================== |
|
PASSWORD *SpaceVim-api-password* |
|
|
|
provides some functions to generate password |
|
|
|
generate_simple({len}) |
|
|
|
generate simple password |
|
|
|
generate_strong({len}) |
|
|
|
generate strong password |
|
|
|
generate_paranoid({len}) |
|
|
|
generate paranoid password |
|
|
|
generate_numeric({len}) |
|
|
|
generate numeric password |
|
|
|
generate_phonetic({len}) |
|
|
|
generate phonetic password |
|
|
|
============================================================================== |
|
PROMPT *SpaceVim-api-prompt* |
|
|
|
open() |
|
|
|
Create a cmdline prompt, use while loop to get the input from user. The |
|
default mapping for prompt is: |
|
> |
|
<Bs> remove last character |
|
<C-w> remove the Word before the cursor |
|
<C-u> remove the Line before the cursor |
|
<C-k> remove the Line after the cursor |
|
<C-a> / <Home> Go to the beginning of the line |
|
<C-e> / <End> Go to the end of the line |
|
< |
|
|
|
============================================================================== |
|
SID *SpaceVim-api-vim-sid* |
|
|
|
" Capture command |
|
|
|
============================================================================== |
|
SYSTEM *SpaceVim-api-system* |
|
|
|
name() |
|
|
|
Return the name of current os, availibel value is: linux, cygwin, windows and |
|
mac. |
|
|
|
============================================================================== |
|
UNICODE#BOX *SpaceVim-api-unicode-box* |
|
|
|
provides some functions to draw box and table. |
|
|
|
drawing_table({json}[, {keys}]) |
|
|
|
drawing table with json data. |
|
|
|
|
|
============================================================================== |
|
VIM#BUFFER *SpaceVim-api-vim-buffer* |
|
|
|
INTRO |
|
|
|
vim#buffer API provides some basic functions for setting and getting config of |
|
vim buffer. |
|
|
|
FUNCTIONS |
|
|
|
is_cmdwin() |
|
|
|
Check if current windows is command line windows. |
|
|
|
open(opt) |
|
|
|
Open a new buffer with specifice options, return the buffer number, the {opt} |
|
is a dict with following keys: |
|
|
|
bufname : the buffer name of the new buffer |
|
|
|
mode: how to open the new buffer, default is vertical topleft split |
|
|
|
initfunc: the function which will be call after creating buffer |
|
|
|
cmd: the ex command which will be run after the new buffer is created |
|
|
|
============================================================================== |
|
VIM#BUFFER *SpaceVim-api-vim-window* |
|
|
|
INTRO |
|
|
|
`vim#window` API provides some basic functions for setting and getting config |
|
of vim window. |
|
|
|
FUNCTIONS |
|
|
|
get_cursor({winid}) |
|
|
|
Gets the cursor position in the window {winid}, to get the ID of a window, |
|
checkout |window-ID|. |
|
|
|
set_cursor({winid}, {pos}) |
|
|
|
Sets the cursor position to {pos} in the window {winid}. |
|
|
|
is_float({winnr}) |
|
|
|
Check if the window is a floating windows, return `v:true` if the window |
|
is a floating window. |
|
|
|
winexists({winid}) |
|
|
|
Check if the window with {winid} exists in current tabpage. |
|
|
|
============================================================================== |
|
VIM#COMMAND *SpaceVim-api-vim-command* |
|
|
|
This api is for creating complete function for custom vim command. This is |
|
example for create complete function for command TEST |
|
> |
|
let s:CMD = SpaceVim#api#import('vim#command') |
|
let s:CMD.options = { |
|
\ '-f' : { |
|
\ 'description' : '', |
|
\ 'complete' : ['text'], |
|
\ }, |
|
\ '-d' : { |
|
\ 'description' : 'Root directory for sources', |
|
\ 'complete' : 'file', |
|
\ }, |
|
\ } |
|
function! CompleteTest(a, b, c) |
|
return s:CMD.complete(a:a, a:b, a:c) |
|
endfunction |
|
function! Test(...) |
|
endfunction |
|
command! -nargs=* -complete=custom,CompleteTest TEST :call Test(<f-args>) |
|
< |
|
|
|
============================================================================== |
|
VIM#COMPATIBLE *SpaceVim-api-vim-compatible* |
|
|
|
|
|
FUNCTIONS |
|
|
|
execute(cmd) |
|
|
|
run vim command, and return the output of such command. |
|
|
|
system(cmd) |
|
|
|
like |system()| but can accept list as argv. |
|
|
|
systemlist(cmd) |
|
|
|
like |systemlist()| but can accept list as argv. |
|
|
|
has(feature) |
|
|
|
check if {feature} is supported in current version. |
|
|
|
getjumplist() |
|
|
|
return a list of jump position, like result of |:jump| |
|
|
|
============================================================================== |
|
VIM#MESSAGE *SpaceVim-api-vim-message* |
|
|
|
`vim#message` API provide functions for generating colored message in vim's |
|
command line. |
|
|
|
echo({hi}, {msg}) |
|
|
|
print message with {hi} highlight group. |
|
|
|
============================================================================== |
|
FAQ *SpaceVim-faq* |
|
|
|
This is a list of the frequently asked questions about SpaceVim. |
|
|
|
1. How do I enable YouCompleteMe? |
|
|
|
Step 1: Add `enable_ycm = true` to custom_config. By default it should be |
|
`~/.SpaceVim.d/init.toml`. |
|
|
|
Step 2: Get into the directory of YouCompleteMe's author. By default it |
|
should be `~/.cache/vimfiles/repos/github.com/Valloric/`. If you find the |
|
directory `YouCompleteMe` in it, go into it. Otherwise clone YouCompleteMe |
|
repo by `git clone https://github.com/Valloric/YouCompleteMe.git`. After |
|
cloning, get into it and run `git submodule update --init --recursive`. |
|
|
|
Step 3: Compile YouCompleteMe with the features you want. If you just want |
|
C family support, run `./install.py --clang-completer`. |
|
|
|
|
|
2. How to add custom snippet? |
|
|
|
SpaceVim uses neosnippet as the default snippet engine. This can be changed |
|
by |SpaceVim-options-snippet_engine| option. |
|
|
|
If you want to add a snippet for a current filetype, run |:NeoSnippetEdit| |
|
command. A buffer will be opened and you can add your custom snippet. By |
|
default this buffer will be save in `~/.SpaceVim.d/snippets`. |
|
|
|
For more info about how to write snippet, please read |
|
|neosnippet-snippet-syntax|. |
|
|
|
|
|
3. Where is `<c-f>` in cmdline-mode? |
|
|
|
`<c-f>` is the default value of |cedit| option, but in SpaceVim we use that |
|
binding as `<Right>`, so maybe you can change the `cedit` option or use |
|
`<leader>+<c-f>`. |
|
|
|
4. How to use `<Space>` as `<Leader>`? |
|
|
|
Add `let g:mapleader = "\<Space>"` to bootstrap function. |
|
|
|
5. Why does Vim freeze after pressing Ctrl-s? |
|
|
|
This is a feature of terminal emulators. You can use `Ctrl-q` to unfreeze |
|
Vim. To disable this feature you need the following in either |
|
`~/.bash_profile` or `~/.bashrc`: |
|
> |
|
stty -ixon |
|
< |
|
|
|
6. How to enable `+py` and `+py3` in Neovim? |
|
|
|
In Neovim we can use `g:python_host_prog` and `g:python3_host_prog` to |
|
config python prog. But in SpaceVim the custom configuration file is loaded |
|
after SpaceVim core code. So in SpaceVim itself, if we using `:py` command, |
|
it may cause errors. |
|
|
|
So we introduce two new environment variables: `PYTHON_HOST_PROG` and |
|
`PYTHON3_HOST_PROG`. |
|
|
|
For example: |
|
> |
|
export PYTHON_HOST_PROG='/home/q/envs/neovim2/bin/python' |
|
export PYTHON3_HOST_PROG='/home/q/envs/neovim3/bin/python' |
|
< |
|
|
|
============================================================================== |
|
CHANGELOG *SpaceVim-changelog* |
|
|
|
Following HEAD: changes in master branch since last release v1.7.0 |
|
|
|
https://github.com/SpaceVim/SpaceVim/wiki/Following-HEAD |
|
|
|
2021-06-16: v1.4.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v1.7.0/ |
|
|
|
2020-12-31: v1.6.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v1.6.0/ |
|
|
|
2020-08-01: v1.5.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v1.5.0/ |
|
|
|
2020-04-05: v1.4.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v1.4.0/ |
|
|
|
2019-11-04: v1.3.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v1.3.0/ |
|
|
|
2019-07-17: v1.2.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v1.2.0/ |
|
|
|
2019-04-08: v1.1.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v1.1.0/ |
|
|
|
2018-12-25: v1.0.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v1.0.0/ |
|
|
|
2018-09-26: v0.9.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.9.0/ |
|
|
|
2018-06-18: v0.8.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.8.0/ |
|
|
|
2018-03-18: v0.7.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.7.0/ |
|
|
|
2017-12-30: v0.6.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.6.0/ |
|
|
|
2017-11-06: v0.5.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.5.0/ |
|
|
|
2017-08-05: v0.4.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.4.0/ |
|
|
|
2017-06-27: v0.3.1 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.3.1/ |
|
|
|
2017-05-31: v0.3.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.3.0/ |
|
|
|
2017-03-30: v0.2.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.2.0/ |
|
|
|
2017-01-26: v0.1.0 |
|
|
|
https://spacevim.org/SpaceVim-release-v0.1.0/ |
|
|
|
|
|
|
|
vim:tw=78:ts=8:ft=help:norl: |