1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-02-03 05:30:05 +08:00

Fixed conflict

This commit is contained in:
Camden Cheek 2017-02-18 20:40:13 -05:00
commit a6f31290a0
29 changed files with 672 additions and 515 deletions

View File

@ -19,10 +19,10 @@
- [c/c++ support](#cc-support)
- [python support](#python-support)
- [go support](#go-support)
- rust support
- php support
- perl support
- lua support
- perl support
- php support
- rust support
- [Unite centric work-flow](#unite-centric-work-flow)
- [Neovim centric - Dark powered mode](#neovim-centric---dark-powered-mode-of-spacevim)
- [multiple leader mode](#multiple-leader-mode)

View File

@ -3,17 +3,17 @@
" @stylized spacevim
" @library
" @order intro version dicts functions exceptions layers faq
" SpaceVim is a Modular configuration, a bundle of custom settings
" and plugins, for Vim. It got inspired by spacemacs.
" SpaceVim is a bundle of custom settings and plugins with a modular
" configuration for Vim. It was inspired by Spacemacs.
"
""
" @section CONFIGURATION, config
" SpaceVim use `~/.SpaceVim.d/init.vim` as it's 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 script in it.
" SpaceVim also support local config of each project. It should be
" `.SpaceVim.d/init.vim` in the root directory of your project. and
" SpaceVim uses `~/.SpaceVim/init.vim` as its default global config file.
" You can set all the SpaceVim options and layers in it. `~/.SpaceVim/` 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.vim` in the root directory of your project.
" `.SpaceVim.d/` will also be added to runtimepath.
""
@ -22,54 +22,51 @@ scriptencoding utf-8
let g:spacevim_version = '0.2.0-dev'
lockvar g:spacevim_version
""
" Change the default indent of SpaceVim. default is 2.
" Change the default indentation of SpaceVim. Default is 2.
" >
" let g:spacevim_default_indent = 2
" <
let g:spacevim_default_indent = 2
""
" Change the max column of SpaceVim, default is 120.
" Change the max number of columns for SpaceVim. Default is 120.
" >
" let g:spacevim_max_column = 120
" <
let g:spacevim_max_column = 120
""
" Enable true color support in terminal.
" Enable true color support in terminal. Default is 1.
" >
" let g:spacevim_enable_guicolors = 1
" <
let g:spacevim_enable_guicolors = 1
""
" Enable/Disable google suggestion for neocomplete. by default it is Disabled.
" you can enable it by:
" Enable/Disable Google suggestions for neocomplete. Default is 0.
" >
" let g:spacevim_enable_googlesuggest = 1
" <
let g:spacevim_enable_googlesuggest = 0
""
" Windows function leader of SpaceVim, default is `s`, set to empty to disable
" this feature, or you can set to other char.
" 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 = ''
" <
let g:spacevim_windows_leader = 's'
""
" Unite work flow leader of SpaceVim, default is `f`, set to empty to disable
" this feature, or you can set to other char.
" Unite work flow leader of SpaceVim. Default is `f`.
" Set to empty to disable this feature, or you can set to another char.
let g:spacevim_unite_leader = 'f'
let g:spacevim_neobundle_installed = 0
let g:spacevim_dein_installed = 0
let g:spacevim_vim_plug_installed = 0
""
" Set the cache dir of plugins, by default, it is `~/.cache/vimfiles`.
" you can set it by:
" Set the cache directory of plugins. Default is `~/.cache/vimfiles`.
" >
" let g:spacevim_plugin_bundle_dir = '~/.cache/vimplugs'
" <
let g:spacevim_plugin_bundle_dir = $HOME. join(['', '.cache', 'vimfiles', ''], SpaceVim#api#import('file').separator)
""
" Disable/Enable realtime leader guide, by default it is 0.
" to enable this feature:
" Enable/Disable realtime leader guide. Default is 0.
" >
" let g:spacevim_realtime_leader_guide = 1
" <
@ -77,123 +74,118 @@ let g:spacevim_realtime_leader_guide = 0
let g:spacevim_autocomplete_method = ''
let g:spacevim_enable_cursorcolumn = 0
""
" SpaceVim default checker is neomake, if you want to use syntastic, use:
" SpaceVim default checker is neomake. If you want to use syntastic, use:
" >
" let g:spacevim_enable_neomake = 0
" <
let g:spacevim_enable_neomake = 1
""
" set the guifont of Spacevim, default is empty.
" Set the guifont of SpaceVim. Default is empty.
" >
" let g:spacevim_guifont = 'DejaVu\ Sans\ Mono\ for\ Powerline\ 11'
" <
let g:spacevim_guifont = ''
""
" Disable/Enable YouCompleteMe, by default it is disabled. To enable it:
" Enable/Disable YouCompleteMe. Default is 0.
" >
" let g:spacevim_enable_ycm = 1
" <
let g:spacevim_enable_ycm = 0
""
" Set the width of value of spacevim sidebar width, and this value will be
" used by tagbar, vimfiler. default it is 30.
" Set the width of the SpaceVim sidebar. Default is 30.
" This value will be used by tagbar and vimfiler.
let g:spacevim_sidebar_width = 30
let g:spacevim_enable_neocomplcache = 0
""
" Enable cursorline
" Enable/Disable cursorline. Default is 0.
" >
" let g:spacevim_enable_cursorline = 1
" <
let g:spacevim_enable_cursorline = 0
""
" Set the error symbol of SpaceVim's syntax maker.
" example: >
" Set the error symbol for SpaceVim's syntax maker. Default is '✖'.
" >
" let g:spacevim_error_symbol = '+'
" <
let g:spacevim_error_symbol = '✖'
""
" Set the warning symbol of SpaceVim's syntax maker.
" example: >
" Set the warning symbol for SpaceVim's syntax maker. Default is '⚠'.
" >
" let g:spacevim_warning_symbol = '!'
" <
let g:spacevim_warning_symbol = '⚠'
let g:spacevim_use_colorscheme = 1
""
" Set the help language of vim. By default it is `en`, you can change it to
" chinese.
" Set the help language of vim. Default is 'en'.
" You can change it to Chinese.
" >
" let g:spacevim_vim_help_language = 'chinese'
" <
let g:spacevim_vim_help_language = 'en'
""
" Set the message language of vim. By default it is empty, and the language is
" en_US.UTF-8. example:
" Set the message language of vim. Default is 'en_US.UTF-8'.
" >
" let g:spacevim_language = 'en_CA.utf8'
" <
let g:spacevim_language = ''
""
" The colorscheme of SpaceVim, if colorscheme groups are installed.
" The colorscheme of SpaceVim. Default is 'gruvbox'.
let g:spacevim_colorscheme = 'gruvbox'
""
" The default colorscheme of SpaceVim. By default SpaceVim use desert, if
" colorscheme which name is the value of g:spacevim_colorscheme has not been
" installed.you can change it in custom config file.
" 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'
" <
let g:spacevim_colorscheme_default = 'desert'
""
" Disable/Enable simple mode of SpaceVim, in this mode, only few plugins will be
" installed.
" Enable/disable simple mode of SpaceVim. Default is 0.
" In this mode, only few plugins will be installed.
" >
" let g:spacevim_simple_mode = 1
" <
let g:spacevim_simple_mode = 0
""
" The default file manager of SpaceVim.
" The default file manager of SpaceVim. Default is 'vimfiler'.
let g:spacevim_filemanager = 'vimfiler'
""
" The default plugin manager of SpaceVim, dein, neobundle or vim-plug. by
" default it is dein.
" The default plugin manager of SpaceVim. Default is 'dein'.
" Options are dein, neobundle, or vim-plug.
let g:spacevim_plugin_manager = 'dein' " neobundle or dein or vim-plug
""
" Enable/Disable checkinstall on SpaceVim startup. by default is 1.
"
" To disable it: >
" Enable/Disable checkinstall on SpaceVim startup. Default is 1.
" >
" let g:spacevim_checkinstall = 0
" <
let g:spacevim_checkinstall = 1
""
" Enable/Disable debug mode for SpaceVim, by default it is disabled.
"
" to enable it: >
" Enable/Disable debug mode for SpaceVim. Default is 0.
" >
" let g:spacevim_enable_debug = 1
" <
let g:spacevim_enable_debug = 0
""
" Set the debug level of SpaceVim, by default it is 1.
" Set the debug level of SpaceVim. Default is 1.
let g:spacevim_debug_level = 1
let g:spacevim_hiddenfileinfo = 1
let g:spacevim_plugin_groups_exclude = []
""
" groups of plugins should be loaded.
"
" example: >
" Plugin groups to be loaded.
" >
" let g:spacevim_plugin_groups = ['core', 'lang']
" <
" now Space Vim support these groups:
let g:spacevim_plugin_groups = []
""
" Disable plugins by names.
" example: >
" Disable plugins by name.
" >
" let g:spacevim_disabled_plugins = ['vim-foo', 'vim-bar']
" <
let g:spacevim_disabled_plugins = []
""
" Add custom plugins
" Add custom plugins.
" >
" let g:spacevim_custom_plugins = [
" \ ['plasticboy/vim-markdown', 'on_ft' : 'markdown'],
@ -202,26 +194,25 @@ let g:spacevim_disabled_plugins = []
" <
let g:spacevim_custom_plugins = []
""
" SpaceVim will load global config after local config if set to 1. by default
" it is 0, if you has local config, the global config will not be loaded.
" 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
" <
let g:spacevim_force_global_config = 0
""
" enable/disable SpaceVim with powerline symbols.
" Enable/Disable powerline symbols. Default is 1.
let g:spacevim_enable_powerline_fonts = 1
""
" Enable/Disable lint on save feature of SpaceVim's maker.
"
" To disable lint on save:
" Enable/Disable lint on save feature of SpaceVim's maker. Default is 1.
" >
" let g:spacevim_lint_on_save = 0
" <
let g:spacevim_lint_on_save = 1
""
" Enable/Disable Vimfiler in the welcome windows, this will cause vim slow on startup if
" there are too many files in current directory. you can disable it by:
" 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
" <
@ -232,8 +223,8 @@ let g:spacevim_altmoveignoreft = ['Tagbar' , 'vimfiler']
let g:spacevim_enable_javacomplete2_py = 0
let g:spacevim_src_root = 'E:\sources\'
""
" The host file url. this option is for chinese users who can not use
" google and twitter.
" The host file url. This option is for Chinese users who can not use
" Google and Twitter.
let g:spacevim_hosts_url = 'https://raw.githubusercontent.com/racaljk/hosts/master/hosts'
let g:spacevim_wildignore = '*/tmp/*,*.so,*.swp,*.zip,*.class,tags,*.jpg,
\*.ttf,*.TTF,*.png,*/target/*,
@ -347,39 +338,43 @@ endfunction
""
" @section FAQ, faq
" 1. How to enable YouCompleteMe? (I do not recommend to use YouCompleteMe, it
" is too big as a vim plugin, BTW I do not like using submodule in vim plugin,
" it is hard to manager by vim plugin manager.)
"
"1. How do I enable YouCompleteMe?
" >
" step 1: add `let g:spacevim_enable_ycm = 1` to custom_config, by default it
" should be `~/.SpaceVim.d/init.vim`.
" I do not recommend using YouCompleteMe.
" It is too big as a vim plugin. Also, I do not like using submodules in a vim
" plugin. It is hard to manage with a plugin manager.
"
" 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, just get into it, otherwise clone
" Step 1: Add `let g:spacevim_enable_ycm = 1` to custom_config. By default
" it should be `~/.SpaceVim/init.vim`.
"
" 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, run `git submodule update --init --recursive`.
" `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 feature you want. if you just want
" support c family, you need run `./install.py --clang-completer`.
" 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 snippt?
"
" SpaceVim use neosnippet as default snippet engine. If you want to add
" snippet for vim filetype, open a vim file, run `:NeoSnippetEdit` command, a
" buffer will be opened, you can add your custom snippet, by default this
" buffer will be save in `~/.SpaceVim.d/snippets`, if you want to use other
" directory:
" 2. How to add custom snippet?
" >
" SpaceVim uses neosnippet as the default snippet engine. If you want to add
" a snippet for a vim filetype, open a vim file and run `:NeoSnippetEdit`
" command. A buffer will be opened and you can add your custom snippet.
" By default this buffer will be save in `~/.SpaceVim/snippets`.
" If you want to use another directory:
"
" let g:neosnippet#snippets_directory = '~/path/to/snip_dir'
"
" For more info about how to write snippet, please
" read |neosnippet-snippet-syntax|.
" <
" 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 same
" as `<Right>`, so maybe you can change the `ceite` option, or use
" `<leader>+<c-f>`.
" >
" `<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>`.
" <

View File

@ -3,8 +3,10 @@ let s:system = SpaceVim#api#import('system')
if s:system.isWindows
let s:file['separator'] = '\'
let s:file['pathSeparator'] = ';'
else
let s:file['separator'] = '/'
let s:file['pathSeparator'] = ':'
endif
function! SpaceVim#api#file#get() abort

View File

@ -4,7 +4,7 @@
""
" Load the {layer} you want, for all the layers SpaceVim supported, see @section(layers).
" Load the {layer} you want. For all the layers SpaceVim supports, see @section(layers).
function! SpaceVim#layers#load(layer) abort
if index(g:spacevim_plugin_groups, a:layer) == -1
call add(g:spacevim_plugin_groups, a:layer)

View File

@ -2,21 +2,21 @@
" @section autocomplete, autocomplete
" @parentsection layers
" @subsection code completion
" SpaceVim use neocomplete as default completion engine for vim with lua
" support, if has no lua support neocomplcache will be the completion engine.
" SpaceVim use deoplete as default completion engine for nevoim. to make
" neovim support python, please read neovim's |provider-python|.
" 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 include YouCompleteMe, but it is disabled by default, to enable
" SpaceVim includes YouCompleteMe, but it is disabled by default. To enable
" ycm, see |g:spacevim_enable_ycm|.
"
" @subsection snippet
" SpaceVim use neosnippet as default snippet engine, and the default snippets
" is `Shougo/neosnippet-snippets`. for more information, please read
" |neosnippet|. neosnippet support custtom snippets, and the default snippets
" directory is `~/.SpaceVim.d/snippets/` and if
" g:spacevim_force_global_config = 1, SpaceVim will not append
" `./.SpaceVim.d/snippets` as default snippets directory.
" 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.

View File

@ -1,7 +1,7 @@
""
" @section checkers, layer-checkers
" @parentsection layers
" SpaceVim use neomake as default syntax checker.
" SpaceVim uses neomake as default syntax checker.
function! SpaceVim#layers#checkers#plugins() abort
let plugins = []

View File

@ -1,132 +1,141 @@
""
" @section colorscheme, colorscheme
" @parentsection layers
" SpaceVim default colorscheme is gruvbox, you can change it by set spacevim
" option. add this to your `~/.SpaceVim.d/init.vim`
" 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'
" <
"
" colorschemes: if the colorscheme you want do not list below, PR welcome.
" 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 atom very well.
"
" SpaceVim is not gonna fix them since these should be in charge of each author.
" You can see a list which has no support of spell check in here:
" https://github.com/SpaceVim/SpaceVim/issues/209#issuecomment-280545818
"
" >
" gruvbox
" hybrid-material
" solarized
" zellner
" yowish
" wombat256mod
" twilight256
" torte
" solarized
" slate
" shine
" seoul256-light
" seoul256
" scheakur
" ron
" rdark-terminal2
" pyte
" peachpuff
" parsec
" pablo
" onedark
" murphy
" morning
" molokayo
" molokai
" lucius
" lightning
" koehler
" jellybeans
" janah
" industry
" hybrid_reverse
" hybrid_material
" hybrid
" gruvbox
" focuspoint
" flattened_light
" flattened_dark
" flatcolor
" evening
" elflord
" desert
" delek
" default
" darkblue
" blue
" base16-woodland
" base16-unikitty-light
" base16-unikitty-dark
" base16-twilight
" base16-tomorrow-night
" base16-tomorrow
" base16-summerfruit-light
" base16-summerfruit-dark
" base16-spacemacs
" base16-solarized-light
" base16-solarized-dark
" base16-solar-flare
" base16-shapeshifter
" base16-seti-ui
" base16-railscasts
" base16-pop
" base16-pico
" base16-phd
" base16-paraiso
" base16-onedark
" base16-oceanicnext
" base16-ocean
" base16-monokai
" base16-mocha
" base16-mexico-light
" base16-materia
" base16-marrakesh
" base16-macintosh
" base16-london-tube
" base16-isotope
" base16-ir-black
" base16-hopscotch
" base16-harmonic16-light
" base16-harmonic16-dark
" base16-green-screen
" base16-grayscale-light
" base16-grayscale-dark
" base16-google-light
" base16-google-dark
" base16-github
" base16-flat
" base16-embers
" base16-eighties
" base16-dracula
" base16-default-light
" base16-default-dark
" base16-darktooth
" base16-cupcake
" base16-codeschool
" base16-chalk
" base16-bright
" base16-brewer
" base16-bespin
" base16-atelier-sulphurpool
" base16-atelier-seaside
" base16-atelier-savanna
" base16-atelier-plateau
" base16-atelier-lakeside
" base16-atelier-heath
" base16-atelier-forest
" base16-atelier-estuary
" base16-atelier-dune
" base16-atelier-cave
" base16-ashes
" base16-apathy
" base16-3024
" atom
" apprentice
" anderson
" PaperColor
" OceanicNextLight
" apprentice
" atom
" base16-3024
" base16-apathy
" base16-ashes
" base16-atelier-cave
" base16-atelier-dune
" base16-atelier-estuary
" base16-atelier-forest
" base16-atelier-heath
" base16-atelier-lakeside
" base16-atelier-plateau
" base16-atelier-savanna
" base16-atelier-seaside
" base16-atelier-sulphurpool
" base16-bespin
" base16-brewer
" base16-bright
" base16-chalk
" base16-codeschool
" base16-cupcake
" base16-darktooth
" base16-default-dark
" base16-default-light
" base16-dracula
" base16-eighties
" base16-embers
" base16-flat
" base16-github
" base16-google-dark
" base16-google-light
" base16-grayscale-dark
" base16-grayscale-light
" base16-green-screen
" base16-harmonic16-dark
" base16-harmonic16-light
" base16-hopscotch
" base16-ir-black
" base16-isotope
" base16-london-tube
" base16-macintosh
" base16-marrakesh
" base16-materia
" base16-mexico-light
" base16-mocha
" base16-monokai
" base16-ocean
" base16-oceanicnext
" base16-onedark
" base16-paraiso
" base16-phd
" base16-pico
" base16-pop
" base16-railscasts
" base16-seti-ui
" base16-shapeshifter
" base16-solar-flare
" base16-solarized-dark
" base16-solarized-light
" base16-spacemacs
" base16-summerfruit-dark
" base16-summerfruit-light
" base16-tomorrow
" base16-tomorrow-night
" base16-twilight
" base16-unikitty-dark
" base16-unikitty-light
" base16-woodland
" blue
" darkblue
" default
" delek
" desert
" elflord
" evening
" flatcolor
" flattened_dark
" flattened_light
" focuspoint
" gruvbox
" hybrid
" hybrid-material
" hybrid_material
" hybrid_reverse
" industry
" janah
" jellybeans
" koehler
" lightning
" lucius
" molokai
" molokayo
" morning
" murphy
" OceanicNext
" OceanicNextLight
" onedark
" pablo
" PaperColor
" parsec
" peachpuff
" pyte
" rdark-terminal2
" ron
" scheakur
" seoul256
" seoul256-light
" shine
" slate
" solarized
" torte
" twilight256
" wombat256mod
" yowish
" zellner
" <
@ -138,7 +147,7 @@ function! SpaceVim#layers#colorscheme#plugins() abort
\ ['nanotech/jellybeans.vim'],
\ ['mhartington/oceanic-next'],
\ ['mhinz/vim-janah'],
\ ['tomasr/molokai'],
\ ['Gabirel/molokai'],
\ ['kabbamine/yowish.vim'],
\ ['vim-scripts/wombat256.vim'],
\ ['vim-scripts/twilight256.vim'],

View File

@ -0,0 +1,9 @@
function! SpaceVim#layers#debug#plugins() abort
let plugins = []
call add(plugins,['idanarye/vim-vebugger', {'merged' : 0}])
return plugins
endfunction
function! SpaceVim#layers#debug#config() abort
endfunction

View File

@ -1,14 +1,15 @@
""
" @section exprfold, layer-exprfold
" @parentsection layers
" fold code quickly accorrding to expr
" Fold code quickly according to expr.
"
" mappings:
" Mappings:
" >
" Key mode function
" ZB Normal Open fold block template
" ZF Normal fold block
" ZC Normal fold block comment
" Key Mode Function
" ----------------------------------------------------
" ZB normal Open fold block template
" ZF normal Fold block
" ZC normal Fold block comment
" <

View File

@ -1,20 +1,21 @@
""
" @section indentmove, layer-indentmove
" @parentsection layers
" move cursor quickly accorrding to indent
" Move cursor quickly according to indent.
"
" mappings:
" @subsection Mappings
" >
" Key mode function
" EH Normal/vasual move up to nearest line with smaller
" -----------------------------------------------------------------
" EH normal/visual move up to nearest line with smaller
" indent level
" EL Normal/vasual move down to nearest line with larger
" EL normal/visual move down to nearest line with larger
" indent level
" EJ Normal/vasual move down to nearest line with smaller
" EJ normal/visual move down to nearest line with smaller
" or same indent level
" EK Normal/vasual move down to nearest line with larger
" EK normal/visual move down to nearest line with larger
" or same indent level
" EI Normal/vasual move down to nearest child indent
" EI normal/visual move down to nearest child indent
" <
"
"

View File

@ -1,38 +1,41 @@
""
" @section lang#c, layer-lang-c
" @parentsection layers
" this layer provide c family language code completion and syntax chaeck.you
" need install clang.
" This layer provides C family language code completion and syntax checking.
" Requires clang.
"
" configuration:
" Configuration for `tweekmonster/deoplete-clang2`:
"
" 1.setting compile flag:
" 1. Set the compile flags:
"
" `let g:deoplete#sources#clang#flags = ['-Iwhatever', ...]`
"
" 2. Set the path to the clang executable:
"
" `let g:deoplete#sources#clang#executable = '/usr/bin/clang'
"
" 3. `g:deoplete#sources#clang#autofill_neomake` is a boolean that tells this
" plugin to fill in the `g:neomake_<filetype>_clang_maker` variable with the
" clang executable path and flags. You will still need to enable it with
" `g:neomake_<filetype>_enabled_make=['clang']`.
"
" 4. Set the standards for each language:
" `g:deoplete#sources#clang#std` is a dict containing the standards you want
" to use. It's not used if you already have `-std=whatever` in your flags. The
" defaults are:
" >
" let g:deoplete#sources#clang#flags = ['-Iwhatever', ...]
" {
" 'c': 'c11',
" 'cpp': 'c++1z',
" 'objc': 'c11',
" 'objcpp': 'c++1z',
" }
" <
" 2.`g:deoplete#sources#clang#executable` sets the path to the clang
" executable.
"
" 3.`g:deoplete#sources#clang#autofill_neomake` is a boolean that tells this
" plugin to fill in the `g:neomake_<filetype>_clang_maker` variable with the
" clang executable path and flags. You will still need to enable it with
" `g:neomake_<filetype>_enabled_make=['clang']`.
"
" 4.`g:deoplete#sources#clang#std` is a dict containing the standards you want
" to use. It's not used if you already have `-std=whatever` in your flags. The
" defaults are:
" >
" {
" 'c': 'c11',
" 'cpp': 'c++1z',
" 'objc': 'c11',
" 'objcpp': 'c++1z',
" }
" <
" 5.`g:deoplete#sources#clang#preproc_max_lines` sets the
" maximum number of lines to search for a #ifdef or #endif
" line. #ifdef lines are discarded to get completions within
" conditional preprocessor blocks. The default is 50, setting it to 0 disables this feature.
" 5. `g:deoplete#sources#clang#preproc_max_lines` sets the
" maximum number of lines to search for an #ifdef or #endif
" line. #ifdef lines are discarded to get completions within
" conditional preprocessor blocks. The default is 50,
" setting it to 0 disables this feature.
"

View File

@ -2,9 +2,9 @@
" @section lang#elixir, layer-lang-elixir
" @parentsection layers
" @subsection Intro
" lang#elixir layer provide code completion,documentation lookup, jump to
" definition, mix integration and iex integration for elixir project. SpaceVim
" use neomake as default syntax checker which is loaded in
" The lang#elixir layer provides code completion, documentation lookup, jump to
" definition, mix integration, and iex integration for Elixir. SpaceVim
" uses neomake as default syntax checker which is loaded in
" @section(layer-checkers)
function! SpaceVim#layers#lang#elixir#plugins() abort

View File

@ -1,10 +1,12 @@
""
" @section lang#go, layer-lang-go
" @parentsection layers
" This layer support go development, include code completion and syntax check.
" @subsection mappings
" This layer includes code completion and syntax checking for Go development.
"
" @subsection Mappings
" >
" mode key function
" Mode Key Function
" ---------------------------------------------
" normal <leader>gi go implements
" normal <leader>gf go info
" normal <leader>ge go rename

View File

@ -1,37 +1,43 @@
""
" @section lang#java, layer-lang-java
" @parentsection layers
" This layer is for java development.
" >
" import-mappings:
" mode key function
" normal <F4> import class under corsor.
" insert <F4> import class under corsor.
" normal <leader>jI import missing classes.
" normal <leader>jR remove unused imports.
" normal <leader>ji smart import class under corsor.
" normal <leader>jii same as <F4>
" insert <c-j>I import missing imports.
" insert <c-j>R remove unused imports.
" insert <c-j>i smart import class under corsor.
" insert <c-j>ii add import for class under corsor.
" This layer is for Java development.
"
" generate-mappings:
" mode key function
" normal <leader>jA generate accessors.
" normal <leader>js generate setter accessor.
" normal <leader>jg generate getter accessor.
" normal <leader>ja generate setter and getter accessor.
" normal <leader>jts generate toString function.
" normal <leader>jeq generate equals and hashcode function.
" normal <leader>jc generate constructor.
" normal <leader>jcc 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 <leader>js generate setter accessor.
" visual <leader>jg generate getter accessor.
" visual <leader>ja generate setter and getter acctssor.
" @subsection Mappings
" >
" Import mappings:
"
" Mode Key Function
" -------------------------------------------------------------
" normal <F4> import class under cursor
" insert <F4> import class under cursor
" normal <leader>jI import missing classes
" normal <leader>jR remove unused imports
" normal <leader>ji smart import class under cursor
" normal <leader>jii same as <F4>
" insert <c-j>I import missing imports
" insert <c-j>R remove unused imports
" insert <c-j>i smart import class under cursor
" insert <c-j>ii add import for class under cursor
"
" Generate mappings:
"
" Mode Key Function
" -------------------------------------------------------------
" normal <leader>jA generate accessors
" normal <leader>js generate setter accessor
" normal <leader>jg generate getter accessor
" normal <leader>ja generate setter and getter accessor
" normal <leader>jts generate toString function
" normal <leader>jeq generate equals and hashcode function
" normal <leader>jc generate constructor
" normal <leader>jcc 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 <leader>js generate setter accessor
" visual <leader>jg generate getter accessor
" visual <leader>ja generate setter and getter accessor
" <
"

View File

@ -1,10 +1,9 @@
""
" @section lang#ocaml, layer-lang-ocaml
" @parentsection layers
" OCaml autocompletion provided by merlin
" OCaml autocompletion provided by merlin.
"
" Make sure `opam` and `merlin` are installed on your system.
" requirement:
" Requirements:
" >
" opam
" merlin

View File

@ -1,10 +1,10 @@
""
" @section lang#php, layer-lang-php
" @parentsection layers
" this layer is for php development, and it provide auto codo completion,
" and syntax check, and jump to the definition location.
" This layer is for PHP development. It proides code completion, syntax
" checking, and jump to definition.
"
" requirement:
" Requirements:
" >
" PHP 5.3+
" PCNTL Extension

View File

@ -1,10 +1,10 @@
""
" @section lang#puppet, layer-lang-puppet
" @parentsection layers
" this layer is for Puppet development, and it provides syntax highlighting,
" and syntax check.
" This layer is for Puppet development. It provides syntax highlighting and
" syntax checking.
"
" requirement:
" Requirements:
" >
" Puppet
" Puppet Lint

View File

@ -1,7 +1,7 @@
""
" @section lang#python, layer-lang-python
" @parentsection layers
" To make this layer works well, you should install jedi.
" To make this layer work well, you should install jedi.
" @subsection mappings
" >
" mode key function

View File

@ -1,24 +1,35 @@
""
" @section lang#rust, layer-lang-rust
" @parentsection layers
" SpaceVim do not load this layer by default, if you are a rust developer, you
" should add `call SpaceVim#layers#load('lang#rust')` to your @section(config)
" SpaceVim does not load this layer by default. If you are a rust developer,
" you should add `call SpaceVim#layers#load('lang#rust')` to your
" @section(config)
"
" requirement:
" 1. racer : cargo install racer
" 2. export RUST_SRC_PATH :
" you can download src by : rustup component add rust-src, and add below
" into your bashrc.
"
" export RUST_SRC_PATH=~/.multirust/toolchains/[your-toolchain]/lib/rustlib/src/rust/src
"
" configuration:
" 1. add `let g:racer_cmd = "/path/to/racer/bin"` in to custom config, if
" you has racer executable in you PATH. g:racer_cmd should be auto detect.
"
" mappings:
" 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:
" >
" mode key function
" rustup component add rust-src
" <
" 2. Install racer:
" >
" cargo install racer
" <
" 3. Set the RUST_SRC_PATH variable in your .bashrc:
" >
" RUST_SRC_PATH=~/.multirust/toolchains/<change>/lib/rustlib/src/rust/src
" export RUST_SRC_PATH
" <
" 4. Add racer to your path, or set the path with:
" >
" let g:racer_cmd = "/path/to/racer/bin"
" <
"
" @subsection Mappings
" >
" Mode Key Function
" -----------------------------------------------
" normal gd rust-definition
" normal gs rust-definition-split
" normal gx rust-definition-vertical

View File

@ -1,6 +1,6 @@
function! SpaceVim#layers#lang#swig#plugins() abort
let plugins = []
call add(plugins, 'SpaceVim/vim-swig')
call add(plugins, ['SpaceVim/vim-swig'])
return plugins
endfunction

View File

@ -1,8 +1,8 @@
""
" @section lang#xml, layer-lang-xml
" @parentsection layers
" when edite an xml file, the omni func is `xmlcomplete#CompleteTags`, you can
" read the document in `autoload/xmlcomplete.vim` in vim or neovim
" 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.

View File

@ -1,8 +1,8 @@
""
" @section shell, layer-shell
" @parentsection layers
" SpaceVim use deol.nvim for shell support in neovim, and use vimshell for
" vim. for info, read |deol| and |vimshell|.
" SpaceVim uses deol.nvim for shell support in neovim and uses vimshell for
" vim. For more info, read |deol| and |vimshell|.
function! SpaceVim#layers#shell#plugins() abort
let plugins = []

View File

@ -0,0 +1,31 @@
""
" @section tmux, layer-tmux
" @parentsection layers
" Adds integration between tmux and vim panes. Switch between panes
" seamlessly.
" This layer is not added by default. To include it, add
" `SpaceVim#layers#load('tmux')` to your `~/.SpaceVim.d/init.vim`
"
" @subsection mappings
" >
" Key Mode Function
" ------------------------------
" <C-h> normal Switch to pane in left direction
" <C-j> normal Switch to pane in down direction
" <C-k> normal Switch to pane in up direction
" <C-l> normal Switch to pane in right direction
" <
function! SpaceVim#layers#tmux#plugins() abort
let plugins = []
call add(plugins,['christoomey/vim-tmux-navigator'])
return plugins
endfunction
function! SpaceVim#layers#tmux#config() abort
let g:tmux_navigator_no_mappings = 1
nnoremap <silent> <C-h> :TmuxNavigateLeft<cr>
nnoremap <silent> <C-j> :TmuxNavigateDown<cr>
nnoremap <silent> <C-k> :TmuxNavigateUp<cr>
nnoremap <silent> <C-l> :TmuxNavigateRight<cr>
endfunction

View File

@ -5,13 +5,13 @@ let s:log_temp = []
""
" @public
" Set debug level of SpaceVim, by default it is 1. all message will be logged.
" Set debug level of SpaceVim. Default is 1.
"
" 1 : log all the message.
" 1 : log all messages
"
" 2 : log warning and error message
" 2 : log warning and error messages
"
" 3 : log error message only
" 3 : log error messages only
function! SpaceVim#logger#setLevel(level) abort
let s:logger_level = a:level
endfunction
@ -74,8 +74,7 @@ endfunction
""
" @public
" Set log output file of SpaceVim. by default it is
" `~/.SpaceVim/.SpaceVim.log`
" Set the log output file of SpaceVim. Default is `~/.SpaceVim/.SpaceVim.log`.
function! SpaceVim#logger#setOutput(file) abort
let s:logger_file = a:file
endfunction

View File

@ -37,70 +37,69 @@ CONTENTS *SpaceVim-contents*
15. lang#rust.................................|SpaceVim-layer-lang-rust|
16. lang#xml...................................|SpaceVim-layer-lang-xml|
17. shell.........................................|SpaceVim-layer-shell|
18. tmux...........................................|SpaceVim-layer-tmux|
5. FAQ........................................................|SpaceVim-faq|
==============================================================================
INTRODUCTION *SpaceVim-intro*
SpaceVim is a bundle of custom settings and plugins with a modular
SpaceVim is a bundle of custom settings and plugins with a modular
configuration for Vim. It was inspired by Spacemacs.
==============================================================================
CONFIGURATION *SpaceVim-config*
SpaceVim uses `~/.SpaceVim.d/init.vim` 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.vim` in the root directory of your project. `.SpaceVim.d/`
SpaceVim uses `~/.SpaceVim/init.vim` as its default global config file. You
can set all the SpaceVim options and layers in it. `~/.SpaceVim/` 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.vim` in the root directory of your project. `.SpaceVim.d/`
will also be added to runtimepath.
*g:spacevim_default_indent*
Change the default indent of SpaceVim. Default is 2.
Change the default indentation of SpaceVim. Default is 2.
>
let g:spacevim_default_indent = 2
<
*g:spacevim_max_column*
Change the max column of SpaceVim. Default is 120.
Change the max number of columns for SpaceVim. Default is 120.
>
let g:spacevim_max_column = 120
<
*g:spacevim_enable_guicolors*
Enable/Disable true color support in terminal.
Enable true color support in terminal. Default is 1.
>
let g:spacevim_enable_guicolors = 1
<
*g:spacevim_enable_googlesuggest*
Enable/Disable Google suggestion for neocomplete. Disabled by default.
Enable/Disable Google suggestions for neocomplete. Default is 0.
>
let g:spacevim_enable_googlesuggest = 1
<
*g:spacevim_windows_leader*
Windows function leader of SpaceVim. Default is `s`.
Set to empty to disable this feature, or you can set to another char.
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_unite_leader*
Unite work flow leader of SpaceVim. Default is `f`.
Set to empty to disable this feature, or you can set to another char.
`let g:spacevim_unite_leader = ''`
Unite work flow leader of SpaceVim. Default is `f`. Set to empty to disable
this feature, or you can set to another char.
*g:spacevim_plugin_bundle_dir*
Set the cache dir for plugins. Default is `~/.cache/vimfiles`.
Set the cache directory of plugins. Default is `~/.cache/vimfiles`.
>
let g:spacevim_plugin_bundle_dir = '~/.cache/vimplugs'
<
*g:spacevim_realtime_leader_guide*
Enable/Disable realtime leader guide. Disabled by default.
Enable/Disable realtime leader guide. Default is 0.
>
let g:spacevim_realtime_leader_guide = 1
<
@ -118,100 +117,97 @@ Set the guifont of SpaceVim. Default is empty.
<
*g:spacevim_enable_ycm*
Enable/Disable YouCompleteMe. Disabled by default.
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 vimfiler.
`let g:spacevim_sidebar_width = 50`
Set the width of the SpaceVim sidebar. Default is 30. This value will be used
by tagbar and vimfiler.
*g:spacevim_enable_cursorline*
Enable/Disable cursorline. Disabled by default.
Enable/Disable cursorline. Default is 0.
>
let g:spacevim_enable_cursorline = 1
<
*g:spacevim_error_symbol*
Set the error symbol for SpaceVim's syntax maker.
Set the error symbol for SpaceVim's syntax maker. Default is '✖'.
>
let g:spacevim_error_symbol = '+'
<
*g:spacevim_warning_symbol*
Set the warning symbol of SpaceVim's syntax maker.
Set the warning symbol for SpaceVim's syntax maker. Default is '⚠'.
>
let g:spacevim_warning_symbol = '!'
<
*g:spacevim_vim_help_language*
Set the help language of vim. Default is `en`.
You can change it to Chinese.
Set the help language of vim. Default is 'en'. You can change it to Chinese.
>
let g:spacevim_vim_help_language = 'chinese'
<
*g:spacevim_language*
Set the message language of vim. Defaults to `en_US.UTF-8`.
Set the message language of vim. Default is 'en_US.UTF-8'.
>
let g:spacevim_language = 'en_CA.utf8'
<
*g:spacevim_colorscheme*
The colorscheme of SpaceVim if colorscheme groups are installed.
The colorscheme of SpaceVim. Default is 'gruvbox'.
*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 has not
been installed.
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_simple_mode*
Enable/Disable simple mode of SpaceVim. Disabled by default.
In this mode, only a few plugins will be installed.
Enable/disable simple mode of SpaceVim. Default is 0. In this mode, only few
plugins will be installed.
>
let g:spacevim_simple_mode = 1
<
*g:spacevim_filemanager*
The default file manager of SpaceVim.
The default file manager of SpaceVim. Default is 'vimfiler'.
*g:spacevim_plugin_manager*
The default plugin manager of SpaceVim, dein, neobundle or vim-plug. by
default it is dein.
`let g:spacevim_plugin_manager = 'vim-plug'`
The default plugin manager of SpaceVim. Default is 'dein'. Options are dein,
neobundle, or vim-plug.
*g:spacevim_checkinstall*
Enable/Disable checkinstall on SpaceVim startup. Enabled by default.
`let g:spacevim_checkinstall = 0`
Enable/Disable checkinstall on SpaceVim startup. Default is 1.
>
let g:spacevim_checkinstall = 0
<
*g:spacevim_enable_debug*
Enable/Disable debug mode for SpaceVim. Disabled by default.
Enable/Disable debug mode for SpaceVim. Default is 0.
>
let g:spacevim_enable_debug = 1
<
*g:spacevim_debug_level*
Set the debug level of SpaceVim. Default is 1.
*g:spacevim_plugin_groups*
Plugin groups to be loaded.
`let g:spacevim_plugin_groups = ['core', 'lang']`
SpaceVim supports the following groups:
>
let g:spacevim_plugin_groups = ['core', 'lang']
<
*g:spacevim_disabled_plugins*
Disable plugins by names.
Disable plugins by name.
>
let g:spacevim_disabled_plugins = ['vim-foo', 'vim-bar']
<
*g:spacevim_custom_plugins*
Add custom plugins.
>
@ -220,31 +216,33 @@ Add custom plugins.
\ ['wsdjeg/GitHub.vim'],
\ ]
<
*g:spacevim_force_global_config*
SpaceVim will load global config after local config if set to 1. Disabled
by default. If you have a local config, the global config will not be loaded.
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.
Enable/Disable powerline symbols. Default is 1.
*g:spacevim_lint_on_save*
Enable/Disable lint on save feature of SpaceVim's maker. Enabled by default.
Enable/Disable lint on save feature of SpaceVim's maker. Default is 1.
>
let g:spacevim_lint_on_save = 0
<
*g:spacevim_enable_vimfiler_welcome*
Enable/Disable Vimfiler in the welcome windows. Disabled by default.
This will cause vim to start up slowly if there are too many files in
current directory.
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_hosts_url*
The host file url. This option is for Chinese users who can not use Google
and Twitter.
The host file url. This option is for Chinese users who can not use Google and
Twitter.
==============================================================================
FUNCTIONS *SpaceVim-functions*
@ -254,21 +252,21 @@ SpaceVim#layers#load({layer}) *SpaceVim#layers#load()*
|SpaceVim-layers|.
SpaceVim#logger#setLevel({level}) *SpaceVim#logger#setLevel()*
Set the debug level of SpaceVim. Default is 1.
Set debug level of SpaceVim. Default is 1.
1 : log all the message.
1 : log all messages
2 : log warning and error message
2 : log warning and error messages
3 : log error message only
3 : log error messages only
SpaceVim#logger#setOutput({file}) *SpaceVim#logger#setOutput()*
Set log output file of SpaceVim. Default is `~/.SpaceVim/.SpaceVim.log`
Set the log output file of SpaceVim. Default is `~/.SpaceVim/.SpaceVim.log`.
==============================================================================
LAYERS *SpaceVim-layers*
SpaceVim supports the following layers:
SpaceVim support such layers:
==============================================================================
DEFAULT *SpaceVim-default*
@ -278,39 +276,49 @@ AUTOCOMPLETE *SpaceVim-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 use deoplete as 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|.
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 include YouCompleteMe, but it is disabled by default. To enable ycm,
SpaceVim includes YouCompleteMe, but it is disabled by default. To enable ycm,
see |g:spacevim_enable_ycm|.
SNIPPET
SpaceVim uses neosnippet as the default snippet engine. The default snippets
are provided by `Shougo/neosnippet-snippets`. For more information, please
read |neosnippet|.
Neosnippet supports custom snippets, and the default snippets directory is
`~/.SpaceVim.d/snippets/`. If `g:spacevim_force_global_config = 1`, SpaceVim
will not append `./.SpaceVim.d/snippets` as the default snippets directory.
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-layer-checkers*
SpaceVim use neomake as default syntax checker.
SpaceVim uses neomake as default syntax checker.
==============================================================================
COLORSCHEME *SpaceVim-colorscheme*
The SpaceVim default colorscheme is `gruvbox`. The colorscheme can be changed
with the `g:spacevim_colorscheme` option by adding the following line
to your `~/.SpaceVim.d/init.vim`.
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 included in SpaceVim. If the colorscheme
you want is not included in the list below, a PR is welcome.
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 atom very well.
SpaceVim is not gonna fix them since these should be in charge of each author.
You can see a list which has no support of spell check in here:
https://github.com/SpaceVim/SpaceVim/issues/209#issuecomment-280545818
>
anderson
apprentice
@ -438,7 +446,7 @@ 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
@ -449,19 +457,21 @@ INDENTMOVE *SpaceVim-layer-indentmove*
Move cursor quickly according to indent.
Mappings:
MAPPINGS
>
Key Mode Function
------------------------------------
EH normal/visual Move up to nearest line with smaller
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
EL normal/visual move down to nearest line with larger
indent level
EJ normal/visual Move down to nearest line with smaller
EJ normal/visual move down to nearest line with smaller
or same indent level
EK normal/visual Move down to nearest line with larger
EK normal/visual move down to nearest line with larger
or same indent level
EI normal/visual Move down to nearest child indent
EI normal/visual move down to nearest child indent
<
@ -471,26 +481,25 @@ LANG#C *SpaceVim-layer-lang-c*
This layer provides C family language code completion and syntax checking.
Requires clang.
Optional configuration for `tweekmonster/deoplete-clang2`:
Configuration for `tweekmonster/deoplete-clang2`:
1. Set the compile flags:
>
let g:deoplete#sources#clang#flags = ['-Iwhatever', ...]
<
`let g:deoplete#sources#clang#flags = ['-Iwhatever', ...]`
2. Set the path to the clang executable:
`let g:deoplete#sources#clang#executable = '/usr/bin/clang'`
`let g:deoplete#sources#clang#executable = '/usr/bin/clang'
3. `g:deoplete#sources#clang#autofill_neomake` is a boolean that tells this
plugin to fill in the `g:neomake_<filetype>_clang_maker` variable with the
clang executable path and flags. You will still need to enable it with
`g:neomake_<filetype>_enabled_make=['clang']`.
plugin to fill in the `g:neomake_<filetype>_clang_maker` variable with the
clang executable path and flags. You will still need to enable it with
`g:neomake_<filetype>_enabled_make=['clang']`.
4. Set the standards for each language: `g:deoplete#sources#clang#std` is a
dict containing the standards you want to use. It's not used if you
already have `-std=whatever` in your flags. The defaults are:
4. Set the standards for each language:
`g:deoplete#sources#clang#std` is a dict containing the standards you
want to use. It's not used if you already have `-std=whatever` in your
flags. The defaults are:
>
{
'c': 'c11',
@ -500,29 +509,29 @@ Optional configuration for `tweekmonster/deoplete-clang2`:
}
<
5. `g:deoplete#sources#clang#preproc_max_lines` sets the maximum number of
lines to search for a #ifdef or #endif line. #ifdef lines are discarded to
get completions within conditional preprocessor blocks. The default is 50,
setting it to 0 disables this feature.
lines to search for an #ifdef or #endif line. #ifdef lines are discarded
to get completions within conditional preprocessor blocks. The default is
50, setting it to 0 disables this feature.
==============================================================================
LANG#ELIXIR *SpaceVim-layer-lang-elixir*
The lang#elixir layer provides code completion, documentation lookup, jump
to definition, mix integration, and iex integration for Elixir. SpaceVim
uses neomake as the default syntax checker which is loaded in
|SpaceVim-layer-checkers|
INTRO
The lang#elixir layer provides code completion, documentation lookup, jump to
definition, mix integration, and iex integration for Elixir. SpaceVim uses
neomake as default syntax checker which is loaded in |SpaceVim-layer-checkers|
==============================================================================
LANG#GO *SpaceVim-layer-lang-go*
This layer includes include code completion and syntax check for Go
development.
This layer includes code completion and syntax checking for Go development.
MAPPINGS
Mappings:
>
Mode Key Function
----------------------------------------
---------------------------------------------
normal <leader>gi go implements
normal <leader>gf go info
normal <leader>ge go rename
@ -538,11 +547,14 @@ Mappings:
LANG#JAVA *SpaceVim-layer-lang-java*
This layer is for Java development.
MAPPINGS
>
Import Mappings:
>
Import mappings:
Mode Key Function
--------------------------------
-------------------------------------------------------------
normal <F4> import class under cursor
insert <F4> import class under cursor
normal <leader>jI import missing classes
@ -554,9 +566,10 @@ Import Mappings:
insert <c-j>i smart import class under cursor
insert <c-j>ii add import for class under cursor
Generate Mappings:
>
mode key function
Generate mappings:
Mode Key Function
-------------------------------------------------------------
normal <leader>jA generate accessors
normal <leader>js generate setter accessor
normal <leader>jg generate getter accessor
@ -577,7 +590,7 @@ Generate Mappings:
==============================================================================
LANG#OCAML *SpaceVim-layer-lang-ocaml*
OCaml autocompletion provided by Merlin
OCaml autocompletion provided by merlin.
Requirements:
>
@ -588,8 +601,8 @@ Requirements:
==============================================================================
LANG#PHP *SpaceVim-layer-lang-php*
This layer is for PHP development. It provides code completion,
syntax checking, and jump to definition.
This layer is for PHP development. It proides code completion, syntax
checking, and jump to definition.
Requirements:
>
@ -616,39 +629,48 @@ Requirements:
LANG#PYTHON *SpaceVim-layer-lang-python*
To make this layer work well, you should install jedi.
MAPPINGS
Mappings:
>
Mode Key Function
----------------------------------------
mode key function
<
==============================================================================
LANG#RUST *SpaceVim-layer-lang-rust*
SpaceVim does not load this layer by default. If you are a rust developer,
you should add `call SpaceVim#layers#load('lang#rust')` to your |SpaceVim-config|.
SpaceVim does not load this layer by default. If you are a rust developer, you
should add `call SpaceVim#layers#load('lang#rust')` to your |SpaceVim-config|
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:
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 racer:
`cargo install racer`
>
rustup component add rust-src
<
2. Install racer:
>
cargo install racer
<
3. Set the RUST_SRC_PATH variable in your .bashrc:
`export RUST_SRC_PATH=~/.multirust/toolchains/[your-toolchain]/lib/rustlib/src/ rust/src`
>
RUST_SRC_PATH=~/.multirust/toolchains/<change>/lib/rustlib/src/rust/src
export RUST_SRC_PATH
<
4. Add racer to your path, or set the path with:
`let g:racer_cmd = "/path/to/racer/bin"`
Mappings:
>
let g:racer_cmd = "/path/to/racer/bin"
<
MAPPINGS
>
Mode Key Function
--------------------------------
-----------------------------------------------
normal gd rust-definition
normal gs rust-definition-split
normal gx rust-definition-vertical
@ -658,52 +680,80 @@ Mappings:
==============================================================================
LANG#XML *SpaceVim-layer-lang-xml*
When editing an xml file, the omni func is `xmlcomplete#CompleteTags`. You can
read the documentation in `autoload/xmlcomplete.vim` in vim or neovim runtime
directory.
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.
==============================================================================
SHELL *SpaceVim-layer-shell*
SpaceVim uses deol.nvim for shell support in neovim, and uses vimshell for vim.
SpaceVim uses deol.nvim for shell support in neovim and uses vimshell for vim.
For more info, read |deol| and |vimshell|.
==============================================================================
TMUX *SpaceVim-layer-tmux*
Adds integration between tmux and vim panes. Switch between panes seamlessly.
This layer is not added by default. To include it, add
`SpaceVim#layers#load('tmux')` to your `~/.SpaceVim.d/init.vim`
MAPPINGS
>
Key Mode Function
------------------------------
<C-h> normal Switch to pane in left direction
<C-j> normal Switch to pane in down direction
<C-k> normal Switch to pane in up direction
<C-l> normal Switch to pane in right direction
<
==============================================================================
FAQ *SpaceVim-faq*
1. How to enable YouCompleteMe? (I do not recommend using YouCompleteMe. It
is too big as a vim plugin. Also, I do not like using submodules in a vim plugin.
It is hard to manage with a plugin manager.)
1. How do I enable YouCompleteMe?
Step 1: Add `let g:spacevim_enable_ycm = 1` to custom_config. By default it
should be `~/.SpaceVim.d/init.vim`.
>
I do not recommend using YouCompleteMe.
It is too big as a vim plugin. Also, I do not like using submodules in a vim
plugin. It is hard to manage with a plugin manager.
Step 2: Get into the directory of YouCompleteMe's author, by default it
Step 1: Add `let g:spacevim_enable_ycm = 1` to custom_config. By default
it should be `~/.SpaceVim/init.vim`.
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, just get 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`
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 a custom snippet?
SpaceVim uses neosnippet as the default snippet engine. If you want to add
a snippet for a vim filetype, open a vim file and run `:NeoSnippetEdit`
command. A buffer will be opened and you can add your custom snippet. By
default this buffer will be saved in `~/.SpaceVim.d/snippets`.
If you want to use a different directory:
>
let g:neosnippet#snippets_directory = '~/path/to/snip_dir'
C family support, run `./install.py --clang-completer`.
<
For more info about how to write snippet, please read ||neosnippet-snippet-syntax|.
3. Where is `<c-f>` in cmdline-mode?
2. How to add custom snippet?
`<c-f>` is the default value of |cedit| option, but in SpaceVim we use same as
`<Right>`, so maybe you can change the `cedit` option, or use `<leader>+<c-f>`.
>
SpaceVim uses neosnippet as the default snippet engine. If you want to add
a snippet for a vim filetype, open a vim file and run `:NeoSnippetEdit`
command. A buffer will be opened and you can add your custom snippet.
By default this buffer will be save in `~/.SpaceVim/snippets`.
If you want to use another directory:
let g:neosnippet#snippets_directory = '~/path/to/snip_dir'
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>`.
<
vim:tw=78:ts=8:ft=help:norl:

View File

@ -1,6 +1,24 @@
<!doctype html>
<html>
<head>
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebSite",
"url": "https://spacevim.org/",
"name": "{{ page.title | default: Home }} - SpaceVim",
"author": {
"@type": "Person",
"name": "Shidong Wang"
},
"description": "{{ site.description }}",
"publisher": "Shidong Wang",
"potentialAction": {
"@type": "SearchAction",
"target": "https://spacevim.org/?s={search_term}",
"query-input": "required name=search_term" }
}
</script>
<script>
var _hmt = _hmt || [];
(function() {

View File

@ -2,10 +2,13 @@
title: "file api"
---
# [APIs](https://spacevim.org/apis) : file
## values
name | values | description
----- |:----:| ------------------
separator | `/` or `\\` | the separator based on the os
separator | `/` or `\` | The system-dependent name-separator character.
pathSeparator | `:` or `;` | The system-dependent path-separator character.
## functions

View File

@ -2,6 +2,8 @@
title: "system api"
---
# [APIs](https://spacevim.org/apis) : system
## values
name | values | description

View File

@ -4,9 +4,25 @@ title: "APIs"
# SpaceVim public APIs:
SpaceVim provide many public apis, you can use this apis in your plugins. here is the list of all the apis:
SpaceVim provide many public apis, you can use this apis in your plugins.
nanme | description
----- | ------------------
file |
system |
## Usage
```viml
let s:file = SpaceVim#api#import('file')
let s:system = SpaceVim#api#import('system')
if s:system.isWindows
echom "Os is Windows"
endif
echom s:file.separator
echom s:file.pathSeparator
```
here is the list of all the apis, and welcome to contribute to SpaceVim.
name | description | documentation
----- |:----:| -------
file | basic api about file and directory | [readme](https://spacevim.org/api/file)
system | basic api about system | [readme](https://spacevim.org/api/system)