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

Merge branch 'dev' into lang/json

This commit is contained in:
Wang Shidong 2017-09-25 20:14:25 +08:00 committed by GitHub
commit 1d2cc7b867
41 changed files with 3126 additions and 435 deletions

View File

@ -152,6 +152,9 @@ let g:spacevim_enable_cursorline = 1
let g:spacevim_statusline_separator = 'arrow' let g:spacevim_statusline_separator = 'arrow'
let g:spacevim_statusline_inactive_separator = 'arrow' let g:spacevim_statusline_inactive_separator = 'arrow'
"" ""
" Enable/Disable unicode symbols in statusline
let g:spacevim_statusline_unicode_symbols = 1
""
" Enable/Disable cursorcolumn. Default is 0, cursorcolumn will be " Enable/Disable cursorcolumn. Default is 0, cursorcolumn will be
" highlighted in normal mode. To enable this feature: " highlighted in normal mode. To enable this feature:
" > " >
@ -269,6 +272,7 @@ let g:spacevim_buffer_index_type = 0
" " 0: 1 ➛ ➊ " " 0: 1 ➛ ➊
" " 1: 1 ➛ ➀ " " 1: 1 ➛ ➀
" " 2: 1 ➛ ⓵ " " 2: 1 ➛ ⓵
" " 3: 1 ➛ 1
" let g:spacevim_windows_index_type = 1 " let g:spacevim_windows_index_type = 1
" < " <
let g:spacevim_windows_index_type = 0 let g:spacevim_windows_index_type = 0

View File

@ -40,6 +40,18 @@ function! s:self.listed_buffers() abort
return filter(range(1, bufnr('$')), 'buflisted(v:val)') return filter(range(1, bufnr('$')), 'buflisted(v:val)')
endfunction endfunction
function! s:self.filter_do(expr) abort
let buffers = range(1, bufnr('$'))
for f_expr in a:expr.expr
let buffers = filter(buffers, f_expr)
endfor
for b in buffers
exe printf(a:expr.do, b)
endfor
endfunction
fu! SpaceVim#api#vim#buffer#get() abort fu! SpaceVim#api#vim#buffer#get() abort
return deepcopy(s:self) return deepcopy(s:self)
endf endf

View File

@ -3,3 +3,8 @@ function! SpaceVim#layers#chat#plugins() abort
\ ['vim-chat/vim-chat',{ 'merged' : 0, 'loadconf' : 1}], \ ['vim-chat/vim-chat',{ 'merged' : 0, 'loadconf' : 1}],
\ ] \ ]
endfunction endfunction
function! SpaceVim#layers#chat#config()
call SpaceVim#mapping#space#def('nnoremap', ['a', 'q'], 'call chat#qq#start()', 'Start QQ server', 1)
endfunction

View File

@ -7,13 +7,13 @@
" > " >
" let g:spacevim_colorscheme = 'solarized' " let g:spacevim_colorscheme = 'solarized'
" < " <
" "
" The following colorschemes are include in SpaceVim. If the colorscheme you " The following colorschemes are include in SpaceVim. If the colorscheme you
" want is not included in the list below, a PR is welcome. " 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. " 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, " NOT all of below colorschemes support spell check very well. For example,
" a colorscheme called atom doesn't support spell check very well. " 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. " 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: " You can see a list which has no support of spell check in here:
@ -177,7 +177,7 @@ function! SpaceVim#layers#colorscheme#plugins() abort
\ ] \ ]
endfunction endfunction
let s:cs = ['gruvbox', 'molokai', 'onedark', 'jellybeans', 'one'] let s:cs = ['gruvbox', 'molokai', 'onedark', 'jellybeans', 'one', 'nord']
let s:Number = SpaceVim#api#import('data#number') let s:Number = SpaceVim#api#import('data#number')
function! SpaceVim#layers#colorscheme#config() abort function! SpaceVim#layers#colorscheme#config() abort

View File

@ -34,26 +34,32 @@ let s:loaded_modes = ['syntax-checking']
let s:modes = { let s:modes = {
\ 'center-cursor': { \ 'center-cursor': {
\ 'icon' : '⊝', \ 'icon' : '⊝',
\ 'icon_asc' : '-',
\ 'desc' : 'centered-cursor mode', \ 'desc' : 'centered-cursor mode',
\ }, \ },
\ 'hi-characters-for-long-lines' :{ \ 'hi-characters-for-long-lines' :{
\ 'icon' : '⑧', \ 'icon' : '⑧',
\ 'icon_asc' : '8',
\ 'desc' : 'toggle highlight of characters for long lines', \ 'desc' : 'toggle highlight of characters for long lines',
\ }, \ },
\ 'fill-column-indicator' :{ \ 'fill-column-indicator' :{
\ 'icon' : s:MESSLETTERS.circled_letter('f'), \ 'icon' : s:MESSLETTERS.circled_letter('f'),
\ 'icon_asc' : 'f',
\ 'desc' : 'fill-column-indicator mode', \ 'desc' : 'fill-column-indicator mode',
\ }, \ },
\ 'syntax-checking' :{ \ 'syntax-checking' :{
\ 'icon' : s:MESSLETTERS.circled_letter('s'), \ 'icon' : s:MESSLETTERS.circled_letter('s'),
\ 'icon_asc' : 's',
\ 'desc' : 'syntax-checking mode', \ 'desc' : 'syntax-checking mode',
\ }, \ },
\ 'spell-checking' :{ \ 'spell-checking' :{
\ 'icon' : s:MESSLETTERS.circled_letter('S'), \ 'icon' : s:MESSLETTERS.circled_letter('S'),
\ 'icon_asc' : 'S',
\ 'desc' : 'spell-checking mode', \ 'desc' : 'spell-checking mode',
\ }, \ },
\ 'whitespace' :{ \ 'whitespace' :{
\ 'icon' : s:MESSLETTERS.circled_letter('w'), \ 'icon' : s:MESSLETTERS.circled_letter('w'),
\ 'icon_asc' : 'w',
\ 'desc' : 'whitespace mode', \ 'desc' : 'whitespace mode',
\ }, \ },
\ } \ }
@ -126,9 +132,17 @@ endif
function! s:winnr(...) abort function! s:winnr(...) abort
if a:0 > 1 if a:0 > 1
return ' ' . s:MESSLETTERS.circled_num(winnr(), g:spacevim_windows_index_type) . ' ' if g:spacevim_windows_index_type == 3
return ' ' . winnr() . ' '
else
return ' ' . s:MESSLETTERS.circled_num(winnr(), g:spacevim_windows_index_type) . ' '
endif
else else
return '%{SpaceVim#layers#core#statusline#mode(mode())} ' . s:MESSLETTERS.circled_num(winnr(), g:spacevim_windows_index_type) . ' ' if g:spacevim_windows_index_type == 3
return '%{SpaceVim#layers#core#statusline#mode(mode())} ' . winnr() . ' '
else
return '%{SpaceVim#layers#core#statusline#mode(mode())} ' . s:MESSLETTERS.circled_num(winnr(), g:spacevim_windows_index_type) . ' '
endif
endif endif
endfunction endfunction
@ -169,7 +183,11 @@ endfunction
function! s:modes() abort function! s:modes() abort
let m = ' ❖ ' let m = ' ❖ '
for mode in s:loaded_modes for mode in s:loaded_modes
let m .= s:modes[mode].icon . ' ' if g:spacevim_statusline_unicode_symbols == 1
let m .= s:modes[mode].icon . ' '
else
let m .= s:modes[mode].icon_asc . ' '
endif
endfor endfor
return m . ' ' return m . ' '
endfunction endfunction
@ -396,17 +414,17 @@ endfunction
" +- a:marked : The number of marked files, or a comma separated list of " +- a:marked : The number of marked files, or a comma separated list of
" the marked filenames. " the marked filenames.
function! SpaceVim#layers#core#statusline#ctrlp(focus, byfname, regex, prev, item, next, marked) abort function! SpaceVim#layers#core#statusline#ctrlp(focus, byfname, regex, prev, item, next, marked) abort
return s:STATUSLINE.build([' Ctrlp ', ' ' . a:prev . ' ', ' ' . a:item . ' ', ' ' . a:next . ' '], return s:STATUSLINE.build([' Ctrlp ', ' ' . a:prev . ' ', ' ' . a:item . ' ', ' ' . a:next . ' '],
\ [' ' . a:focus . ' ', ' ' . a:byfname . ' ', ' ' . getcwd() . ' '], s:lsep, s:rsep, \ [' ' . a:focus . ' ', ' ' . a:byfname . ' ', ' ' . getcwd() . ' '], s:lsep, s:rsep,
\ 'SpaceVim_statusline_a_bold', 'SpaceVim_statusline_b', 'SpaceVim_statusline_c', 'SpaceVim_statusline_z') \ 'SpaceVim_statusline_a_bold', 'SpaceVim_statusline_b', 'SpaceVim_statusline_c', 'SpaceVim_statusline_z')
endfunction endfunction
" a:str : Either the number of files scanned so far, or a string indicating " a:str : Either the number of files scanned so far, or a string indicating
" the current directory is being scanned with a user_command. " the current directory is being scanned with a user_command.
function! SpaceVim#layers#core#statusline#ctrlp_status(str) abort function! SpaceVim#layers#core#statusline#ctrlp_status(str) abort
return s:STATUSLINE.build([' Ctrlp ', ' ' . a:str . ' '], return s:STATUSLINE.build([' Ctrlp ', ' ' . a:str . ' '],
\ [' ' . getcwd() . ' '], s:lsep, s:rsep, \ [' ' . getcwd() . ' '], s:lsep, s:rsep,
\ 'SpaceVim_statusline_a', 'SpaceVim_statusline_b', 'SpaceVim_statusline_c', 'SpaceVim_statusline_z') \ 'SpaceVim_statusline_a', 'SpaceVim_statusline_b', 'SpaceVim_statusline_c', 'SpaceVim_statusline_z')
endfunction endfunction
function! SpaceVim#layers#core#statusline#jump(i) abort function! SpaceVim#layers#core#statusline#jump(i) abort

View File

@ -86,7 +86,7 @@ function! SpaceVim#layers#default#config() abort
call SpaceVim#mapping#space#def('nnoremap', ['h', 'k'], 'LeaderGuide "[KEYs]"', 'show top-level bindings with mapping guide', 1) call SpaceVim#mapping#space#def('nnoremap', ['h', 'k'], 'LeaderGuide "[KEYs]"', 'show top-level bindings with mapping guide', 1)
call SpaceVim#mapping#space#def('nnoremap', ['h', '[SPC]'], 'Unite help -input=SpaceVim', 'unite-SpaceVim-help', 1) call SpaceVim#mapping#space#def('nnoremap', ['h', '[SPC]'], 'Unite help -input=SpaceVim', 'unite-SpaceVim-help', 1)
call SpaceVim#mapping#space#def('nnoremap', ['j', '0'], 'm`^', 'push mark and goto beginning of line', 0) call SpaceVim#mapping#space#def('nnoremap', ['j', '0'], 'm`^', 'push mark and goto beginning of line', 0)
call SpaceVim#mapping#space#def('nnoremap', ['j', '$'], 'm`g_', 'push mark and goto beginning of line', 0) call SpaceVim#mapping#space#def('nnoremap', ['j', '$'], 'm`g_', 'push mark and goto end of line', 0)
call SpaceVim#mapping#space#def('nnoremap', ['j', 'b'], '<C-o>', 'jump backward', 0) call SpaceVim#mapping#space#def('nnoremap', ['j', 'b'], '<C-o>', 'jump backward', 0)
call SpaceVim#mapping#space#def('nnoremap', ['j', 'f'], '<C-i>', 'jump forward', 0) call SpaceVim#mapping#space#def('nnoremap', ['j', 'f'], '<C-i>', 'jump forward', 0)
call SpaceVim#mapping#space#def('nnoremap', ['j', 'd'], 'VimFiler -no-split', 'Explore current directory', 1) call SpaceVim#mapping#space#def('nnoremap', ['j', 'd'], 'VimFiler -no-split', 'Explore current directory', 1)
@ -124,6 +124,7 @@ function! SpaceVim#layers#default#config() abort
\ 'call SpaceVim#mapping#kill_visible_buffer_choosewin()', \ 'call SpaceVim#mapping#kill_visible_buffer_choosewin()',
\ 'kill-this-buffer', 1) \ 'kill-this-buffer', 1)
call SpaceVim#mapping#space#def('nnoremap', ['b', '<C-d>'], 'call SpaceVim#mapping#clearBuffers()', 'kill-other-buffers', 1) call SpaceVim#mapping#space#def('nnoremap', ['b', '<C-d>'], 'call SpaceVim#mapping#clearBuffers()', 'kill-other-buffers', 1)
call SpaceVim#mapping#space#def('nnoremap', ['b', 'c'], 'call SpaceVim#mapping#clear_saved_buffers()', 'clear all saved buffers', 1)
call SpaceVim#mapping#space#def('nnoremap', ['b', 'e'], 'call call(' call SpaceVim#mapping#space#def('nnoremap', ['b', 'e'], 'call call('
\ . string(s:_function('s:safe_erase_buffer')) . ', [])', \ . string(s:_function('s:safe_erase_buffer')) . ', [])',
\ 'safe-erase-buffer', 1) \ 'safe-erase-buffer', 1)

View File

@ -6,6 +6,7 @@ let s:LIST = SpaceVim#api#import('data#list')
function! SpaceVim#layers#edit#plugins() abort function! SpaceVim#layers#edit#plugins() abort
let plugins = [ let plugins = [
\ ['tpope/vim-surround'], \ ['tpope/vim-surround'],
\ ['tpope/vim-repeat'],
\ ['junegunn/vim-emoji'], \ ['junegunn/vim-emoji'],
\ ['terryma/vim-multiple-cursors'], \ ['terryma/vim-multiple-cursors'],
\ ['terryma/vim-expand-region', { 'loadconf' : 1}], \ ['terryma/vim-expand-region', { 'loadconf' : 1}],

View File

@ -38,8 +38,8 @@ function! SpaceVim#layers#incsearch#config() abort
map g/ <Plug>(incsearch-stay) map g/ <Plug>(incsearch-stay)
set hlsearch set hlsearch
let g:incsearch#auto_nohlsearch = get(g:, 'incsearch#auto_nohlsearch', 1) let g:incsearch#auto_nohlsearch = get(g:, 'incsearch#auto_nohlsearch', 1)
noremap <silent> n :call <SID>update_search_index('d')<cr> nnoremap <silent> n :call <SID>update_search_index('d')<cr>
noremap <silent> N :call <SID>update_search_index('r')<cr> nnoremap <silent> N :call <SID>update_search_index('r')<cr>
map * <Plug>(incsearch-nohl-*) map * <Plug>(incsearch-nohl-*)
map # <Plug>(incsearch-nohl-#) map # <Plug>(incsearch-nohl-#)
map g* <Plug>(incsearch-nohl-g*) map g* <Plug>(incsearch-nohl-g*)

View File

@ -8,7 +8,6 @@ function! SpaceVim#layers#lang#plugins() abort
\ ['wavded/vim-stylus', { 'on_ft' : ['stylus']}], \ ['wavded/vim-stylus', { 'on_ft' : ['stylus']}],
\ ['digitaltoad/vim-jade', { 'on_ft' : ['jade']}], \ ['digitaltoad/vim-jade', { 'on_ft' : ['jade']}],
\ ['juvenn/mustache.vim', { 'on_ft' : ['mustache']}], \ ['juvenn/mustache.vim', { 'on_ft' : ['mustache']}],
\ ['leafgarland/typescript-vim', { 'on_ft' : ['typescript']}],
\ ['kchmck/vim-coffee-script', { 'on_ft' : ['coffee']}], \ ['kchmck/vim-coffee-script', { 'on_ft' : ['coffee']}],
\ ['elixir-lang/vim-elixir', { 'on_ft' : 'elixir'}], \ ['elixir-lang/vim-elixir', { 'on_ft' : 'elixir'}],
\ ['PotatoesMaster/i3-vim-syntax', { 'on_ft' : 'i3'}], \ ['PotatoesMaster/i3-vim-syntax', { 'on_ft' : 'i3'}],

View File

@ -15,8 +15,22 @@ function! SpaceVim#layers#lang#javascript#plugins() abort
return plugins return plugins
endfunction endfunction
let s:auto_fix = 0
function! SpaceVim#layers#lang#javascript#set_variable(var) abort
let s:auto_fix = get(a:var, 'auto_fix', s:auto_fix)
endfunction
function! SpaceVim#layers#lang#javascript#config() abort function! SpaceVim#layers#lang#javascript#config() abort
call SpaceVim#mapping#gd#add('javascript', function('s:gotodef')) call SpaceVim#mapping#gd#add('javascript', function('s:gotodef'))
if s:auto_fix
" Only use eslint
let g:neomake_javascript_enabled_makers = ['eslint']
" Use the fix option of eslint
let g:neomake_javascript_eslint_args = ['-f', 'compact', '--fix']
au User NeomakeFinished checktime
au FocusGained * checktime
endif
endfunction endfunction
function! s:gotodef() abort function! s:gotodef() abort

View File

@ -0,0 +1,32 @@
"=============================================================================
" julia.vim --- Julia Language configuration for SpaceVim
" Copyright (c) 2012-2016 Shidong Wang & Contributors
" Author: Jinxuan Zhu <zhujinxuan@gmail.com>
" URL: https://spacevim.org
" License: MIT license
"=============================================================================
""
" @section lang#julia, layer-lang-julia
" @parentsection layers
" The layer provides synatax highlight and linting for julia.
" The completeion only works in nvim with deoplete.
" However, the julia-vim could not be load on-demanding
" due to its LaTeXToUnicode feature.
"
function! SpaceVim#layers#lang#julia#plugins() abort
let plugins = []
call add(plugins, ['JuliaEditorSupport/julia-vim' ])
if (has('nvim'))
call add(plugins, ['JuliaEditorSupport/deoplete-julia', {'on_ft' : 'julia'}])
endif
call add(plugins, ['zyedidia/julialint.vim', {'on_ft' : 'julia'}])
return plugins
endfunction
function! SpaceVim#layers#lang#julia#config() abort
let g:latex_to_unicode_tab = 0
au! BufNewFile,BufRead *.jl setf julia
au! BufNewFile,BufRead *.julia setf julia
endfunction

View File

@ -1,6 +1,21 @@
"=============================================================================
" markdown.vim --- lang#markdown layer for SpaceVim
" Copyright (c) 2016-2017 Shidong Wang & Contributors
" Author: Shidong Wang < wsdjeg at 163.com >
" URL: https://spacevim.org
" License: MIT license
"=============================================================================
let s:md_listItemIndent = 1
let s:md_enableWcwidth = 0
function! SpaceVim#layers#lang#markdown#set_variable(var) abort
let s:md_listItemIndent = get(a:var, 'listItemIndent', s:md_listItemIndent)
let s:md_enableWcwidth = get(a:var, 'enableWcwidth', s:md_enableWcwidth)
endfunction
function! SpaceVim#layers#lang#markdown#plugins() abort function! SpaceVim#layers#lang#markdown#plugins() abort
let plugins = [] let plugins = []
call add(plugins, ['tpope/vim-markdown',{ 'on_ft' : 'markdown'}]) call add(plugins, ['SpaceVim/vim-markdown',{ 'on_ft' : 'markdown'}])
call add(plugins, ['joker1007/vim-markdown-quote-syntax',{ 'on_ft' : 'markdown'}]) call add(plugins, ['joker1007/vim-markdown-quote-syntax',{ 'on_ft' : 'markdown'}])
call add(plugins, ['mzlogin/vim-markdown-toc',{ 'on_ft' : 'markdown'}]) call add(plugins, ['mzlogin/vim-markdown-toc',{ 'on_ft' : 'markdown'}])
call add(plugins, ['iamcco/mathjax-support-for-mkdp',{ 'on_ft' : 'markdown'}]) call add(plugins, ['iamcco/mathjax-support-for-mkdp',{ 'on_ft' : 'markdown'}])
@ -26,12 +41,13 @@ function! SpaceVim#layers#lang#markdown#config() abort
if executable('firefox') if executable('firefox')
let g:mkdp_path_to_chrome= get(g:, 'mkdp_path_to_chrome', 'firefox') let g:mkdp_path_to_chrome= get(g:, 'mkdp_path_to_chrome', 'firefox')
endif endif
let remarkrc = s:generate_remarkrc()
let g:neoformat_enabled_markdown = ['remark'] let g:neoformat_enabled_markdown = ['remark']
let g:neoformat_markdown_remark = { let g:neoformat_markdown_remark = {
\ 'exe': 'remark', \ 'exe': 'remark',
\ 'args': ['--no-color', '--silent', '--use', 'remark-frontmatter'], \ 'args': ['--no-color', '--silent'] + (empty(remarkrc) ? [] : ['-r', remarkrc]),
\ 'stdin': 1, \ 'stdin': 1,
\ } \ }
endfunction endfunction
function! s:mappings() abort function! s:mappings() abort
@ -42,3 +58,26 @@ function! s:mappings() abort
call SpaceVim#mapping#space#langSPC('nmap', ['l','ft'], "Tabularize /|", 'Format table under cursor', 1) call SpaceVim#mapping#space#langSPC('nmap', ['l','ft'], "Tabularize /|", 'Format table under cursor', 1)
call SpaceVim#mapping#space#langSPC('nmap', ['l','p'], "MarkdownPreview", 'Real-time markdown preview', 1) call SpaceVim#mapping#space#langSPC('nmap', ['l','p'], "MarkdownPreview", 'Real-time markdown preview', 1)
endfunction endfunction
function! s:generate_remarkrc() abort
let conf = [
\ 'module.exports = {',
\ ' settings: {',
\ ]
" TODO add settings
call add(conf, " listItemIndent: '" . s:md_listItemIndent . "',")
if s:md_enableWcwidth
call add(conf, " stringLength: require('wcwidth'),")
endif
call add(conf, ' },')
call add(conf, ' plugins: [')
" TODO add plugins
call add(conf, " require('remark-frontmatter'),")
call add(conf, ' ]')
call add(conf, '};')
let f = tempname() . '.js'
call writefile(conf, f)
return f
endfunction

View File

@ -0,0 +1,18 @@
"=============================================================================
" pony.vim --- pony Layer file for SpaceVim
" Copyright (c) 2012-2016 kShidong Wang & Contributors
" Author: Bambang Purnomsoidi D. P, < bambangpdp at gmail.com >
" URL: https://spacevim.org
" License: MIT license
"=============================================================================
""
" @section lang#pony, layer-lang-pony
" @parentsection layers
function! SpaceVim#layers#lang#pony#plugins() abort
let plugins = []
" .pony file type
call add(plugins, ['jakwings/vim-pony', { 'on_ft' : 'pony'}])
return plugins
endfunction

View File

@ -11,20 +11,22 @@ function! SpaceVim#layers#lang#python#plugins() abort
let plugins = [] let plugins = []
" python " python
if has('nvim') if has('nvim')
call add(plugins, ['zchee/deoplete-jedi', { 'on_ft' : 'python'}]) call add(plugins, ['zchee/deoplete-jedi', { 'on_ft' : 'python'}])
else else
call add(plugins, ['davidhalter/jedi-vim', { 'on_ft' : 'python', 'if' : has('python') || has('python3')}]) call add(plugins, ['davidhalter/jedi-vim', { 'on_ft' : 'python',
\ 'if' : has('python') || has('python3')}])
endif endif
call add(plugins, ['Vimjas/vim-python-pep8-indent', { 'on_ft' : 'python'}]) call add(plugins, ['Vimjas/vim-python-pep8-indent',
\ { 'on_ft' : 'python'}])
return plugins return plugins
endfunction endfunction
function! SpaceVim#layers#lang#python#config() function! SpaceVim#layers#lang#python#config() abort
call SpaceVim#layers#edit#add_ft_head_tamplate('python', call SpaceVim#layers#edit#add_ft_head_tamplate('python',
\ ['#!/usr/bin/env python', \ ['#!/usr/bin/env python',
\ '# -*- coding: utf-8 -*-', \ '# -*- coding: utf-8 -*-',
\ ''] \ '']
\ ) \ )
endfunction endfunction

View File

@ -0,0 +1,40 @@
"=============================================================================
" typescript.vim --- lang#typescript layer for SpaceVim
" Copyright (c) 2016-2017 Shidong Wang & Contributors
" Author: Shidong Wang < wsdjeg at 163.com >
" URL: https://spacevim.org
" License: MIT license
"=============================================================================
function! SpaceVim#layers#lang#typescript#plugins() abort
let plugins = []
call add(plugins, ['leafgarland/typescript-vim'])
if has('nvim')
call add(plugins, ['mhartington/nvim-typescript'])
else
call add(plugins, ['Quramy/tsuquyomi'])
endif
return plugins
endfunction
function! SpaceVim#layers#lang#typescript#config() abort
if !has('nvim')
autocmd FileType typescript setlocal omnifunc=tsuquyomi#complete
endif
endfunction
function! SpaceVim#layers#lang#typescript#set_variable(var) abort
if has('nvim')
let g:nvim_typescript#server_path =
\ get(a:var, 'typescript_server_path',
\ './node_modules/.bin/tsserver')
else
let tsserver_path = get(a:var, 'typescript_server_path', '')
if !empty(tsserver_path)
let g:tsuquyomi_use_dev_node_module = 2
let g:tsuquyomi_tsserver_path = tsserver_path
endif
endif
endfunction

View File

@ -17,11 +17,18 @@ function! SpaceVim#layers#shell#plugins() abort
return plugins return plugins
endfunction endfunction
let s:file = expand('<sfile>:~')
let s:lnum = expand('<slnum>') + 2
function! SpaceVim#layers#shell#config() abort function! SpaceVim#layers#shell#config() abort
call SpaceVim#mapping#space#def('nnoremap', ["'"], 'call call(' call SpaceVim#mapping#space#def('nnoremap', ["'"], 'call call('
\ . string(function('s:open_default_shell')) . ', [])', \ . string(function('s:open_default_shell')) . ', [])',
\ 'open shell', 1) \ ['open shell',
\ [
\ "[SPC '] is to open or jump to default shell window",
\ '',
\ 'Definition: ' . s:file . ':' . s:lnum,
\ ]
\ ], 1)
endfunction endfunction
@ -56,6 +63,7 @@ function! s:open_default_shell() abort
if exists(':te') if exists(':te')
exe 'te' exe 'te'
let s:shell_win_nr = winnr() let s:shell_win_nr = winnr()
let w:shell_layer_win = 1
else else
echo ':terminal is not supported in this version' echo ':terminal is not supported in this version'
endif endif

View File

@ -46,7 +46,11 @@ function! SpaceVim#layers#ui#config() abort
\ 'toggle highlight of the current line', 1) \ 'toggle highlight of the current line', 1)
call SpaceVim#mapping#space#def('nnoremap', ['t', 'h', 'i'], 'call call(' call SpaceVim#mapping#space#def('nnoremap', ['t', 'h', 'i'], 'call call('
\ . string(s:_function('s:toggle_indentline')) . ', [])', \ . string(s:_function('s:toggle_indentline')) . ', [])',
\ 'toggle highlight indentation levels', 1) \ ['toggle highlight indentation levels',
\ [
\ 'SPC t h i is to running :IndentLinesToggle which is definded in indentLine'
\ ]
\ ], 1)
call SpaceVim#mapping#space#def('nnoremap', ['t', 'h', 'c'], 'set cursorcolumn!', call SpaceVim#mapping#space#def('nnoremap', ['t', 'h', 'c'], 'set cursorcolumn!',
\ 'toggle highlight indentation current column', 1) \ 'toggle highlight indentation current column', 1)
call SpaceVim#mapping#space#def('nnoremap', ['t', 'h', 's'], 'call call(' call SpaceVim#mapping#space#def('nnoremap', ['t', 'h', 's'], 'call call('

View File

@ -1,4 +1,8 @@
scriptencoding utf-8 scriptencoding utf-8
let s:BUFFER = SpaceVim#api#import('vim#buffer')
let g:unite_source_menu_menus = let g:unite_source_menu_menus =
\ get(g:,'unite_source_menu_menus',{}) \ get(g:,'unite_source_menu_menus',{})
let g:unite_source_menu_menus.CustomKeyMaps = {'description': let g:unite_source_menu_menus.CustomKeyMaps = {'description':
@ -158,6 +162,10 @@ function! SpaceVim#mapping#close_term_buffer(...) abort
let buffers = get(g:, '_spacevim_list_buffers', []) let buffers = get(g:, '_spacevim_list_buffers', [])
let abuf = str2nr(g:_spacevim_termclose_abuf) let abuf = str2nr(g:_spacevim_termclose_abuf)
let index = index(buffers, abuf) let index = index(buffers, abuf)
if get(w:, 'shell_layer_win', 0) == 1
exe 'bd!' . abuf
return
endif
if index != -1 if index != -1
if index == 0 if index == 0
if len(buffers) > 1 if len(buffers) > 1
@ -200,4 +208,18 @@ function! SpaceVim#mapping#menu(desc, key, cmd) abort
\ a:cmd]) \ a:cmd])
endfunction endfunction
function! SpaceVim#mapping#clear_saved_buffers()
call s:BUFFER.filter_do(
\ {
\ 'expr' : [
\ 'buflisted(v:val)',
\ 'index(tabpagebuflist(), v:val) == -1',
\ 'getbufvar(v:val, "&mod") == 0',
\ ],
\ 'do' : 'bd %d'
\ }
\ )
endfunction
" vim:set et sw=2 cc=80: " vim:set et sw=2 cc=80:

View File

@ -0,0 +1,12 @@
" fg,bg, cbg,cfg
function! SpaceVim#mapping#guide#theme#nord#palette() abort
return [
\ ['#2E3440', '#A3BE8C', 0, 2],
\ ['#D8DEE9', '#3E4452', 7, 8],
\ ['#D8DEE9', '#434C5E', 7, 8],
\ ['#4C566A', 8],
\ ['#2E3440', '#8FBCBB', 0, 14],
\ ['#2E3440', '#D08770', 0, 11],
\ ['#2E3440', '#BF616A', 0, 1],
\ ]
endfunction

View File

@ -56,6 +56,8 @@ function! SpaceVim#mapping#space#init() abort
call SpaceVim#mapping#space#def('nnoremap', ['w', '/'], 'bel vs | wincmd w', 'split-window-right', 1) call SpaceVim#mapping#space#def('nnoremap', ['w', '/'], 'bel vs | wincmd w', 'split-window-right', 1)
call SpaceVim#mapping#space#def('nnoremap', ['w', 'v'], 'bel vs | wincmd w', 'split-window-right', 1) call SpaceVim#mapping#space#def('nnoremap', ['w', 'v'], 'bel vs | wincmd w', 'split-window-right', 1)
call SpaceVim#mapping#space#def('nnoremap', ['w', '-'], 'bel split | wincmd w', 'split-window-below', 1) call SpaceVim#mapping#space#def('nnoremap', ['w', '-'], 'bel split | wincmd w', 'split-window-below', 1)
call SpaceVim#mapping#space#def('nnoremap', ['w', 's'], 'bel split | wincmd w', 'split-window-below', 1)
call SpaceVim#mapping#space#def('nnoremap', ['w', 'S'], 'bel split', 'split-focus-window-below', 1)
call SpaceVim#mapping#space#def('nnoremap', ['w', '2'], 'silent only | vs | wincmd w', 'layout-double-columns', 1) call SpaceVim#mapping#space#def('nnoremap', ['w', '2'], 'silent only | vs | wincmd w', 'layout-double-columns', 1)
call SpaceVim#mapping#space#def('nnoremap', ['w', '3'], 'silent only | vs | vs | wincmd H', 'split-window-below', 1) call SpaceVim#mapping#space#def('nnoremap', ['w', '3'], 'silent only | vs | vs | wincmd H', 'split-window-below', 1)
call SpaceVim#mapping#space#def('nnoremap', ['w', 'V'], 'bel vs', 'split-window-right-focus', 1) call SpaceVim#mapping#space#def('nnoremap', ['w', 'V'], 'bel vs', 'split-window-right-focus', 1)

View File

@ -32,6 +32,9 @@ let g:deoplete#ignore_sources.go = get(g:deoplete#ignore_sources, 'go', ['omni']
call deoplete#custom#set('go', 'mark', '') call deoplete#custom#set('go', 'mark', '')
call deoplete#custom#set('go', 'rank', 9999) call deoplete#custom#set('go', 'rank', 9999)
" markdown
let g:deoplete#ignore_sources.markdown = get(g:deoplete#ignore_sources, 'markdown', ['tag'])
" perl " perl
let g:deoplete#omni#input_patterns.perl = get(g:deoplete#omni#input_patterns, 'perl', [ let g:deoplete#omni#input_patterns.perl = get(g:deoplete#omni#input_patterns, 'perl', [
\'[^. \t0-9]\.\w*', \'[^. \t0-9]\.\w*',
@ -45,6 +48,11 @@ let g:deoplete#ignore_sources.javascript = get(g:deoplete#ignore_sources, 'javas
call deoplete#custom#set('ternjs', 'mark', 'tern') call deoplete#custom#set('ternjs', 'mark', 'tern')
call deoplete#custom#set('ternjs', 'rank', 9999) call deoplete#custom#set('ternjs', 'rank', 9999)
" typescript
let g:deoplete#ignore_sources.typescript = get(g:deoplete#ignore_sources, 'typescript', ['tag','omni', 'syntax'])
call deoplete#custom#set('typescript', 'rank', 9999)
" php " php
let g:deoplete#omni#input_patterns.php = get(g:deoplete#omni#input_patterns, 'php', [ let g:deoplete#omni#input_patterns.php = get(g:deoplete#omni#input_patterns, 'php', [
\'[^. \t0-9]\.\w*', \'[^. \t0-9]\.\w*',

View File

@ -2,3 +2,4 @@ let g:tagbar_width = get(g:, 'tagbar_width', g:spacevim_sidebar_width)
let g:tagbar_left = get(g:, 'tagbar_left', 1) let g:tagbar_left = get(g:, 'tagbar_left', 1)
let g:tagbar_sort = get(g:, 'tagbar_sort', 0) let g:tagbar_sort = get(g:, 'tagbar_sort', 0)
let g:tagbar_compact = get(g:, 'tagbar_compact', 1) let g:tagbar_compact = get(g:, 'tagbar_compact', 1)
let g:tagbar_map_showproto = get(g:, 'tagbar_map_showproto', '')

View File

@ -53,7 +53,7 @@ augroup startify_map
if !exists('g:startify_custom_header') if !exists('g:startify_custom_header')
autocmd FileType startify call <SID>update_logo() autocmd FileType startify call <SID>update_logo()
endif endif
autocmd FileType startify setl scrolloff=0 nowrap autocmd FileType startify setl nowrap
augroup END augroup END
if !exists('g:startify_custom_header') if !exists('g:startify_custom_header')

View File

@ -35,18 +35,20 @@ CONTENTS *SpaceVim-contents*
12. lang#elixir.............................|SpaceVim-layer-lang-elixir| 12. lang#elixir.............................|SpaceVim-layer-lang-elixir|
13. lang#go.....................................|SpaceVim-layer-lang-go| 13. lang#go.....................................|SpaceVim-layer-lang-go|
14. lang#java.................................|SpaceVim-layer-lang-java| 14. lang#java.................................|SpaceVim-layer-lang-java|
15. lang#kotlin.............................|SpaceVim-layer-lang-kotlin| 15. lang#julia...............................|SpaceVim-layer-lang-julia|
16. lang#ocaml...............................|SpaceVim-layer-lang-ocaml| 16. lang#kotlin.............................|SpaceVim-layer-lang-kotlin|
17. lang#php...................................|SpaceVim-layer-lang-php| 17. lang#ocaml...............................|SpaceVim-layer-lang-ocaml|
18. lang#puppet.............................|SpaceVim-layer-lang-puppet| 18. lang#php...................................|SpaceVim-layer-lang-php|
19. lang#python.............................|SpaceVim-layer-lang-python| 19. lang#pony.................................|SpaceVim-layer-lang-pony|
20. lang#rust.................................|SpaceVim-layer-lang-rust| 20. lang#puppet.............................|SpaceVim-layer-lang-puppet|
21. lang#scala...............................|SpaceVim-layer-lang-scala| 21. lang#python.............................|SpaceVim-layer-lang-python|
22. lang#tmux.................................|SpaceVim-layer-lang-tmux| 22. lang#rust.................................|SpaceVim-layer-lang-rust|
23. lang#xml...................................|SpaceVim-layer-lang-xml| 23. lang#scala...............................|SpaceVim-layer-lang-scala|
24. operator...................................|SpaceVim-layer-operator| 24. lang#tmux.................................|SpaceVim-layer-lang-tmux|
25. shell.........................................|SpaceVim-layer-shell| 25. lang#xml...................................|SpaceVim-layer-lang-xml|
26. tmux...........................................|SpaceVim-layer-tmux| 26. operator...................................|SpaceVim-layer-operator|
27. shell.........................................|SpaceVim-layer-shell|
28. tmux...........................................|SpaceVim-layer-tmux|
6. API........................................................|SpaceVim-api| 6. API........................................................|SpaceVim-api|
1. cmdlinemenu................................|SpaceVim-api-cmdlinemenu| 1. cmdlinemenu................................|SpaceVim-api-cmdlinemenu|
2. data#list....................................|SpaceVim-api-data-list| 2. data#list....................................|SpaceVim-api-data-list|
@ -186,6 +188,9 @@ Set the statusline separators of statusline, default is 'arrow'
See more details in: http://spacevim.org/documentation/#statusline See more details in: http://spacevim.org/documentation/#statusline
*g:spacevim_statusline_unicode_symbols*
Enable/Disable unicode symbols in statusline
*g:spacevim_enable_cursorcolumn* *g:spacevim_enable_cursorcolumn*
Enable/Disable cursorcolumn. Default is 0, cursorcolumn will be highlighted in Enable/Disable cursorcolumn. Default is 0, cursorcolumn will be highlighted in
normal mode. To enable this feature: normal mode. To enable this feature:
@ -298,6 +303,7 @@ Set SpaceVim windows index type, default is 0.
" 0: 1 ➛ ➊ " 0: 1 ➛ ➊
" 1: 1 ➛ ➀ " 1: 1 ➛ ➀
" 2: 1 ➛ ⓵ " 2: 1 ➛ ⓵
" 3: 1 ➛ 1
let g:spacevim_windows_index_type = 1 let g:spacevim_windows_index_type = 1
< <
@ -798,6 +804,14 @@ https://github.com/google/google-java-format
and set 'g:spacevim_layer_lang_java_formatter' to the path of the jar. and set 'g:spacevim_layer_lang_java_formatter' to the path of the jar.
==============================================================================
LANG#JULIA *SpaceVim-layer-lang-julia*
The layer provides synatax highlight and linting for julia. The completeion
only works in nvim with deoplete. However, the julia-vim could not be load
on-demanding due to its LaTeXToUnicode feature.
============================================================================== ==============================================================================
LANG#KOTLIN *SpaceVim-layer-lang-kotlin* LANG#KOTLIN *SpaceVim-layer-lang-kotlin*
@ -829,6 +843,9 @@ Requirements:
Composer Project Composer Project
< <
==============================================================================
LANG#PONY *SpaceVim-layer-lang-pony*
============================================================================== ==============================================================================
LANG#PUPPET *SpaceVim-layer-lang-puppet* LANG#PUPPET *SpaceVim-layer-lang-puppet*

View File

@ -1,3 +1,4 @@
source 'https://rubygems.org' source 'https://rubygems.org'
gem 'github-pages', group: :jekyll_plugins gem 'github-pages', group: :jekyll_plugins
gem 'jekyll-redirect-from', group: :jekyll_plugins gem 'jekyll-redirect-from', group: :jekyll_plugins
gem 'jekyll-seo-tag'

File diff suppressed because it is too large Load Diff

View File

@ -1,13 +1,29 @@
theme: jekyll-theme-midnight theme: jekyll-theme-midnight
title: SpaceVim title: SpaceVim
description: A community-driven Vim distribution description: A community-driven vim distribution
show_downloads: false show_downloads: false
google_analytics: UA-89745542-1 google_analytics: UA-89745542-1
project_repo_url: https://github.com/SpaceVim/SpaceVim project_repo_url: https://github.com/SpaceVim/SpaceVim
url: https://spacevim.org url: https://spacevim.org
logo: https://spacevim.org/SpaceVim.png
permalink: /:title/ permalink: /:title/
gems: plugins:
- jekyll-redirect-from - jekyll-redirect-from
- jekyll-sitemap - jekyll-sitemap
- jekyll-seo-tag
github: [metadata]
author:
name: Shidong Wang
twitter: SpaceVim
twitter:
username: "@SpaceVim"
social:
name: SpaceVim
links:
- https://twitter.com/SpaceVim
- https://github.com/SpaceVim/SpaceVim
- https://www.reddit.com/r/SpaceVim/

View File

@ -1,127 +1,122 @@
<!doctype html> <!doctype html>
<html> <html>
<head>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <head>
<script> <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
(adsbygoogle = window.adsbygoogle || []).push({ <script>
google_ad_client: "ca-pub-5073224535135889", (adsbygoogle = window.adsbygoogle || []).push({
enable_page_level_ads: true google_ad_client: "ca-pub-5073224535135889",
enable_page_level_ads: true
});
</script>
{% seo %}
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?c6bde3c13e6fd8fde7357f71b4dd53a7";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
<script type="text/javascript" src="http://tajs.qq.com/stats?sId=60680063" charset="UTF-8"></script>
<!-- Google Tag Manager -->
<script>
(function(w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({
'gtm.start': new Date().getTime(),
event: 'gtm.js'
}); });
</script> var f = d.getElementsByTagName(s)[0],
<script type="application/ld+json"> j = d.createElement(s),
{ dl = l != 'dataLayer' ? '&l=' + l : '';
"@context": "http://schema.org", j.async = true;
"@type": "WebSite", j.src =
"url": "https://spacevim.org/", 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
"name": "{{ page.title | default: Home }} - SpaceVim", f.parentNode.insertBefore(j, f);
"author": { })(window, document, 'script', 'dataLayer', 'GTM-PCLWNCD');
"@type": "Person", </script>
"name": "Shidong Wang" <!-- End Google Tag Manager -->
}, <meta charset="utf-8">
"description": "{{ site.description }}", <meta http-equiv="X-UA-Compatible" content="chrome=1">
"publisher": "Shidong Wang", <title>{{ page.title | default: Home }} - SpaceVim</title>
"potentialAction": { <link rel="stylesheet" href="{{ '/assets/css/style.css?v=' | append: site.github.build_revision | relative_url }}">
"@type": "SearchAction", <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
"target": "https://spacevim.org/?s={search_term}", <script src="{{ '/assets/js/respond.js' | relative_url }}"></script>
"query-input": "required name=search_term" } <!--[if lt IE 9]>
}
</script>
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?c6bde3c13e6fd8fde7357f71b4dd53a7";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
<script type="text/javascript" src="http://tajs.qq.com/stats?sId=60680063" charset="UTF-8"></script>
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-PCLWNCD');
</script>
<!-- End Google Tag Manager -->
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<title>{{ page.title | default: Home }} - SpaceVim</title>
<link rel="stylesheet" href="{{ '/assets/css/style.css?v=' | append: site.github.build_revision | relative_url }}">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="{{ '/assets/js/respond.js' | relative_url }}"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]--> <![endif]-->
<!--[if lt IE 8]> <!--[if lt IE 8]>
<link rel="stylesheet" href="{{ '/assets/css/ie.css' | relative_url }}"> <link rel="stylesheet" href="{{ '/assets/css/ie.css' | relative_url }}">
<![endif]--> <![endif]-->
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<script> <script>
(function(){ (function() {
var bp = document.createElement('script'); var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0]; var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') { if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
} } else {
else { bp.src = 'http://push.zhanzhang.baidu.com/push.js';
bp.src = 'http://push.zhanzhang.baidu.com/push.js'; }
} var s = document.getElementsByTagName("script")[0];
var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s);
s.parentNode.insertBefore(bp, s); })();
})(); </script>
</script> </head>
</head>
<body> <body>
<!-- Google Tag Manager (noscript) --> <!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-PCLWNCD" <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-PCLWNCD"
height="0" width="0" style="display:none;visibility:hidden"></iframe> height="0" width="0" style="display:none;visibility:hidden"></iframe>
</noscript> </noscript>
<!-- End Google Tag Manager (noscript) --> <!-- End Google Tag Manager (noscript) -->
<a href="https://github.com/SpaceVim/SpaceVim"> <a href="https://github.com/SpaceVim/SpaceVim">
<img alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_green_007200.png" src="https://camo.githubusercontent.com/e7bbb0521b397edbd5fe43e7f760759336b5e05f/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f677265656e5f3030373230302e706e67" style="position: absolute; top: 0; right: 0; border: 0;"/> <img alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_green_007200.png" src="https://camo.githubusercontent.com/e7bbb0521b397edbd5fe43e7f760759336b5e05f/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f677265656e5f3030373230302e706e67" style="position: absolute; top: 0; right: 0; border: 0;"/>
</a> </a>
<div class="wrapper"> <div class="wrapper">
<section> <section>
<div id="title"> <div id="title">
<h1>{{ site.title | default: site.github.repository_name }}</h1> <h1>{{ site.title | default: site.github.repository_name }}</h1>
<p>{{ site.description | default: site.github.project_tagline }}</p> <p>{{ site.description | default: site.github.project_tagline }}</p>
<hr> <hr>
<p align="center"> <p align="center">
<b><a href="{{ site.url }}">Home</a></b> | <b><a href="{{ site.url }}">Home</a></b> |
<b><a href="{{ site.url }}/about">About</a></b> | <b><a href="{{ site.url }}/about">About</a></b> |
<b><a href="{{ site.url }}/documentation">Documentation</a></b> | <b><a href="{{ site.url }}/documentation">Documentation</a></b> |
<b><a href="{{ site.url }}/development">Development</a></b> | <b><a href="{{ site.url }}/development">Development</a></b> |
<b><a href="{{ site.url }}/community">Community</a></b> | <b><a href="{{ site.url }}/community">Community</a></b> |
<b><a href="{{ site.url }}/sponsors">Sponsors</a></b> <b><a href="{{ site.url }}/sponsors">Sponsors</a></b>
</p> </p>
<hr> <hr>
</div> </div>
{{ content }} {{ content }}
</section> </section>
</div> </div>
{% if site.google_analytics %}
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("{{ site.google_analytics }}");
pageTracker._trackPageview();
} catch (err) {}
</script>
{% endif %}
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-58a01d3aac22bd89"></script>
</body>
<root>
<p align="center">
<span class="credits right">Hosted on GitHub &mdash; Theme by <a href="https://twitter.com/michigangraham">mattgraham</a></span>
</p>
</root>
{% if site.google_analytics %}
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("{{ site.google_analytics }}");
pageTracker._trackPageview();
} catch(err) {}
</script>
{% endif %}
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-58a01d3aac22bd89"></script>
</body>
<root>
<p align="center">
<span class="credits right">Hosted on GitHub &mdash; Theme by <a href="https://twitter.com/michigangraham">mattgraham</a></span>
</p>
</root>
</html> </html>

View File

@ -1,5 +1,6 @@
--- ---
title: "About" title: "About"
description: "Introduction about SpaceVim organization."
--- ---
# About SpaceVim # About SpaceVim

277
docs/assets/css/style.css Normal file
View File

@ -0,0 +1,277 @@
/*! normalize.css 2012-02-07T12:37 UTC - https://github.com/necolas/normalize.css */
/* ============================================================================= HTML5 display definitions ========================================================================== */
/* Corrects block display not defined in IE6/7/8/9 & FF3 */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary { display: block; }
/* Corrects inline-block display not defined in IE6/7/8/9 & FF3 */
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
/* Prevents modern browsers from displaying 'audio' without controls */
audio:not([controls]) { display: none; }
/* Addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4 Known issue: no IE6 support */
[hidden] { display: none; }
/* ============================================================================= Base ========================================================================== */
/* 1. Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 2. Prevents iOS text size adjust after orientation change, without disabling user zoom www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */
html { font-size: 100%; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ -ms-text-size-adjust: 100%; /* 2 */ }
/* Addresses font-family inconsistency between 'textarea' and other form elements. */
html, button, input, select, textarea { font-family: sans-serif; }
/* Addresses margins handled incorrectly in IE6/7 */
body { margin: 0; }
/* ============================================================================= Links ========================================================================== */
/* Addresses outline displayed oddly in Chrome */
a:focus { outline: thin dotted; }
/* Improves readability when focused and also mouse hovered in all browsers people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active { outline: 0; }
/* ============================================================================= Typography ========================================================================== */
/* Addresses font sizes and margins set differently in IE6/7 Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5 */
h1 { font-size: 3em; margin: 0.67em 0; }
h2 { font-size: 2.75em; margin: 0.83em 0; }
h3 { font-size: 2.5em; margin: 1em 0; }
h4 { font-size: 2.25em; margin: 1.33em 0; }
h5 { font-size: 2em; margin: 1.67em 0; }
h6 { font-size: 1.75em; margin: 2.33em 0; }
/* Addresses styling not present in IE7/8/9, S5, Chrome */
abbr[title] { border-bottom: 1px dotted; }
/* Addresses style set to 'bolder' in FF3+, S4/5, Chrome
*/
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
/* Addresses styling not present in S5, Chrome */
dfn { font-style: italic; }
/* Addresses styling not present in IE6/7/8/9 */
mark { background: #ff0; color: #000; }
/* Addresses margins set differently in IE6/7 */
p, pre { margin: 1em 0; }
/* Corrects font family set oddly in IE6, S4/5, Chrome en.wikipedia.org/wiki/User:Davidgothberg/Test59 */
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
/* 1. Addresses CSS quotes not supported in IE6/7 2. Addresses quote property not supported in S4 */
/* 1 */
q { quotes: none; }
/* 2 */
q:before, q:after { content: ''; content: none; }
small { font-size: 75%; }
/* Prevents sub and sup affecting line-height in all browsers gist.github.com/413930 */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
/* ============================================================================= Lists ========================================================================== */
/* Addresses margins set differently in IE6/7 */
dl, menu, ol, ul { margin: 1em 0; }
dd { margin: 0 0 0 40px; }
/* Addresses paddings set differently in IE6/7 */
menu, ol, ul { padding: 0 0 0 20px; }
/* Corrects list images handled incorrectly in IE7 */
nav ul, nav ol { list-style: none; list-style-image: none; }
/* ============================================================================= Embedded content ========================================================================== */
/* 1. Removes border when inside 'a' element in IE6/7/8/9, FF3 2. Improves image quality when scaled in IE7 code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */
img { border: 0; /* 1 */ -ms-interpolation-mode: bicubic; /* 2 */ }
/* Corrects overflow displayed oddly in IE9 */
svg:not(:root) { overflow: hidden; }
/* ============================================================================= Figures ========================================================================== */
/* Addresses margin not present in IE6/7/8/9, S5, O11 */
figure { margin: 0; }
/* ============================================================================= Forms ========================================================================== */
/* Corrects margin displayed oddly in IE6/7 */
form { margin: 0; }
/* Define consistent border, margin, and padding */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
/* 1. Corrects color not being inherited in IE6/7/8/9 2. Corrects text not wrapping in FF3 3. Corrects alignment displayed oddly in IE6/7 */
legend { border: 0; /* 1 */ padding: 0; white-space: normal; /* 2 */ *margin-left: -7px; /* 3 */ }
/* 1. Corrects font size not being inherited in all browsers 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome 3. Improves appearance and consistency in all browsers */
button, input, select, textarea { font-size: 100%; /* 1 */ margin: 0; /* 2 */ vertical-align: baseline; /* 3 */ *vertical-align: middle; /* 3 */ }
/* Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet */
button, input { line-height: normal; /* 1 */ }
/* 1. Improves usability and consistency of cursor style between image-type 'input' and others 2. Corrects inability to style clickable 'input' types in iOS 3. Removes inner spacing in IE7 without affecting normal text inputs Known issue: inner spacing remains in IE6 */
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; /* 1 */ -webkit-appearance: button; /* 2 */ *overflow: visible; /* 3 */ }
/* Re-set default cursor for disabled elements */
button[disabled], input[disabled] { cursor: default; }
/* 1. Addresses box sizing set to content-box in IE8/9 2. Removes excess padding in IE8/9 3. Removes excess padding in IE7 Known issue: excess padding remains in IE6 */
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ *height: 13px; /* 3 */ *width: 13px; /* 3 */ }
/* 1. Addresses appearance set to searchfield in S5, Chrome 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof) */
input[type="search"] { -webkit-appearance: textfield; /* 1 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */ box-sizing: content-box; }
/* Removes inner padding and search cancel button in S5, Chrome on OS X */
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
/* Removes inner padding and border in FF3+ www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
/* 1. Removes default vertical scrollbar in IE6/7/8/9 2. Improves readability and alignment in all browsers */
textarea { overflow: auto; /* 1 */ vertical-align: top; /* 2 */ }
/* ============================================================================= Tables ========================================================================== */
/* Remove most spacing between table cells */
table { border-collapse: collapse; border-spacing: 0; }
@font-face { font-family: 'OpenSansLight'; src: url("../fonts/OpenSans-Light-webfont.eot"); src: url("../fonts/OpenSans-Light-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Light-webfont.woff") format("woff"), url("../fonts/OpenSans-Light-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Light-webfont.svg#OpenSansLight") format("svg"); font-weight: normal; font-style: normal; }
@font-face { font-family: 'OpenSansLightItalic'; src: url("../fonts/OpenSans-LightItalic-webfont.eot"); src: url("../fonts/OpenSans-LightItalic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-LightItalic-webfont.woff") format("woff"), url("../fonts/OpenSans-LightItalic-webfont.ttf") format("truetype"), url("../fonts/OpenSans-LightItalic-webfont.svg#OpenSansLightItalic") format("svg"); font-weight: normal; font-style: normal; }
@font-face { font-family: 'OpenSansRegular'; src: url("../fonts/OpenSans-Regular-webfont.eot"); src: url("../fonts/OpenSans-Regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Regular-webfont.woff") format("woff"), url("../fonts/OpenSans-Regular-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Regular-webfont.svg#OpenSansRegular") format("svg"); font-weight: normal; font-style: normal; -webkit-font-smoothing: antialiased; }
@font-face { font-family: 'OpenSansItalic'; src: url("../fonts/OpenSans-Italic-webfont.eot"); src: url("../fonts/OpenSans-Italic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Italic-webfont.woff") format("woff"), url("../fonts/OpenSans-Italic-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Italic-webfont.svg#OpenSansItalic") format("svg"); font-weight: normal; font-style: normal; -webkit-font-smoothing: antialiased; }
@font-face { font-family: 'OpenSansSemibold'; src: url("../fonts/OpenSans-Semibold-webfont.eot"); src: url("../fonts/OpenSans-Semibold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Semibold-webfont.woff") format("woff"), url("../fonts/OpenSans-Semibold-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Semibold-webfont.svg#OpenSansSemibold") format("svg"); font-weight: normal; font-style: normal; -webkit-font-smoothing: antialiased; }
@font-face { font-family: 'OpenSansSemiboldItalic'; src: url("../fonts/OpenSans-SemiboldItalic-webfont.eot"); src: url("../fonts/OpenSans-SemiboldItalic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-SemiboldItalic-webfont.woff") format("woff"), url("../fonts/OpenSans-SemiboldItalic-webfont.ttf") format("truetype"), url("../fonts/OpenSans-SemiboldItalic-webfont.svg#OpenSansSemiboldItalic") format("svg"); font-weight: normal; font-style: normal; -webkit-font-smoothing: antialiased; }
@font-face { font-family: 'OpenSansBold'; src: url("../fonts/OpenSans-Bold-webfont.eot"); src: url("../fonts/OpenSans-Bold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Bold-webfont.woff") format("woff"), url("../fonts/OpenSans-Bold-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Bold-webfont.svg#OpenSansBold") format("svg"); font-weight: normal; font-style: normal; -webkit-font-smoothing: antialiased; }
@font-face { font-family: 'OpenSansBoldItalic'; src: url("../fonts/OpenSans-BoldItalic-webfont.eot"); src: url("../fonts/OpenSans-BoldItalic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-BoldItalic-webfont.woff") format("woff"), url("../fonts/OpenSans-BoldItalic-webfont.ttf") format("truetype"), url("../fonts/OpenSans-BoldItalic-webfont.svg#OpenSansBoldItalic") format("svg"); font-weight: normal; font-style: normal; -webkit-font-smoothing: antialiased; }
/* generated by rouge http://rouge.jneen.net/ original base16 by Chris Kempson (https://github.com/chriskempson/base16)
*/
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight, .highlight .w { color: #d0d0d0; }
.highlight .err { color: #151515; background-color: #ac4142; }
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1, .highlight .cs { color: #888; }
.highlight .cp { color: #f4bf75; }
.highlight .nt { color: #f4bf75; }
.highlight .o, .highlight .ow { color: #d0d0d0; }
.highlight .p, .highlight .pi { color: #d0d0d0; }
.highlight .gi { color: #90a959; }
.highlight .gd { color: #ac4142; }
.highlight .gh { color: #6a9fb5; font-weight: bold; }
.highlight .k, .highlight .kn, .highlight .kp, .highlight .kr, .highlight .kv { color: #aa759f; }
.highlight .kc { color: #d28445; }
.highlight .kt { color: #d28445; }
.highlight .kd { color: #d28445; }
.highlight .s, .highlight .sb, .highlight .sc, .highlight .sd, .highlight .s2, .highlight .sh, .highlight .sx, .highlight .s1 { color: #90a959; }
.highlight .sr { color: #75b5aa; }
.highlight .si { color: #8f5536; }
.highlight .se { color: #8f5536; }
.highlight .nn { color: #f4bf75; }
.highlight .nc { color: #f4bf75; }
.highlight .no { color: #f4bf75; }
.highlight .na { color: #6a9fb5; }
.highlight .m, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mb, .highlight .mx { color: #90a959; }
.highlight .ss { color: #90a959; }
body { padding: 0px 0 20px 0px; margin: 0px; font: 14px/1.5 "OpenSansRegular", "Helvetica Neue", Helvetica, Arial, sans-serif; color: #f0e7d5; font-weight: normal; background: #252525; background-attachment: fixed !important; background: linear_gradient(#2a2a29, #1c1c1c); }
h1, h2, h3, h4, h5, h6 { color: #e8e8e8; margin: 0 0 10px; font-family: 'OpenSansRegular', "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: normal; }
p, ul, ol, table, pre, dl { margin: 0 0 20px; }
h1, h2, h3 { line-height: 1.1; }
h1 { font-size: 28px; }
h2 { font-size: 24px; }
h4, h5, h6 { color: #e8e8e8; }
h3 { font-size: 18px; line-height: 24px; font-family: 'OpenSansRegular', "Helvetica Neue", Helvetica, Arial, sans-serif !important; font-weight: normal; color: #b6b6b6; }
a { color: #ffcc00; font-weight: 400; text-decoration: none; }
a:hover { color: #ffeb9b; }
a small { font-size: 11px; color: #666; margin-top: -0.6em; display: block; }
ul { list-style-image: url("../images/bullet.png"); }
strong { font-family: 'OpenSansBold', "Helvetica Neue", Helvetica, Arial, sans-serif !important; font-weight: normal; }
.wrapper { max-width: 650px; margin: 0 auto; position: relative; padding: 0 20px; }
section img { max-width: 100%; }
blockquote { border-left: 3px solid #ffcc00; margin: 0; padding: 0 0 0 20px; font-style: italic; }
code { font-family: Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, monospace; color: #efefef; font-size: 13px; margin: 0 4px; padding: 4px 6px; border-radius: 2px; }
pre { padding: 8px 15px; background: #191919; border-radius: 2px; border: 1px solid #121212; box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3); overflow: auto; overflow-y: hidden; }
pre code { color: #efefef; text-shadow: 0px 1px 0px #000; margin: 0; padding: 0; }
table { width: 100%; border-collapse: collapse; }
th { text-align: left; padding: 5px 10px; border-bottom: 1px solid #434343; color: #b6b6b6; font-family: 'OpenSansSemibold', "Helvetica Neue", Helvetica, Arial, sans-serif !important; font-weight: normal; }
td { text-align: left; padding: 5px 10px; border-bottom: 1px solid #434343; }
hr { border: 0; outline: none; height: 3px; background: transparent url("../images/hr.gif") center center repeat-x; margin: 0 0 20px; }
dt { color: #F0E7D5; font-family: 'OpenSansSemibold', "Helvetica Neue", Helvetica, Arial, sans-serif !important; font-weight: normal; }
#header { z-index: 100; left: 0; top: 0px; height: 60px; width: 100%; position: fixed; background: url(../images/nav-bg.gif) #353535; border-bottom: 4px solid #434343; box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.25); }
#header nav { max-width: 650px; margin: 0 auto; padding: 0 10px; background: blue; margin: 6px auto; }
#header nav li { font-family: 'OpenSansLight', "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: normal; list-style: none; display: inline; color: white; line-height: 50px; text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.2); font-size: 14px; }
#header nav li a { color: white; border: 1px solid #5d910b; background: linear_gradient(#93bd20, #659e10); border-radius: 2px; box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.3), 0px 3px 7px rgba(0, 0, 0, 0.7); background-color: #93bd20; padding: 10px 12px; margin-top: 6px; line-height: 14px; font-size: 14px; display: inline-block; text-align: center; }
#header nav li a:hover { background: linear_gradient(#749619, #527f0e); background-color: #659e10; border: 1px solid #527f0e; box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.2), 0px 1px 0px rgba(0, 0, 0, 0); }
#header nav li.fork { float: left; margin-left: 0px; }
#header nav li.downloads { float: right; margin-left: 6px; }
#header nav li.title { float: right; margin-right: 10px; font-size: 11px; }
section { max-width: 650px; padding: 30px 0px 50px 0px; margin: 20px 0; margin-top: 70px; }
section #title { border: 0; outline: none; margin: 0 0 50px 0; padding: 0 0 5px 0; }
section #title h1 { font-family: 'OpenSansLight', "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: normal; font-size: 40px; text-align: center; line-height: 36px; }
section #title p { color: #d7cfbe; font-family: 'OpenSansLight', "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: normal; font-size: 18px; text-align: center; }
section #title .credits { font-size: 11px; font-family: 'OpenSansRegular', "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: normal; color: #696969; margin-top: -10px; }
section #title .credits.left { float: left; }
section #title .credits.right { float: right; }
@media print, screen and (max-width: 720px) { #title .credits { display: block; width: 100%; line-height: 30px; text-align: center; }
#title .credits .left { float: none; display: block; }
#title .credits .right { float: none; display: block; } }
@media print, screen and (max-width: 480px) { #header { margin-top: -20px; }
section { margin-top: 40px; }
nav { display: none; } }

View File

@ -1,7 +1,6 @@
--- ---
title: "Development" title: "Development"
permalink: "/development" description: "A guide for contributing to SpaceVim."
redirect_from: "/development/index.html"
--- ---
# Development # Development

View File

@ -1,136 +1,138 @@
--- ---
title: "Documentation" title: "Documentation"
description: "A guide for using SpaceVim."
--- ---
# SpaceVim Documentation # SpaceVim Documentation
<!-- vim-markdown-toc GFM --> <!-- vim-markdown-toc GFM -->
* [Core Pillars](#core-pillars)
* [Mnemonic](#mnemonic) - [Core Pillars](#core-pillars)
* [Discoverable](#discoverable) - [Mnemonic](#mnemonic)
* [Consistent](#consistent) - [Discoverable](#discoverable)
* [Crowd-Configured](#crowd-configured) - [Consistent](#consistent)
* [Highlighted features](#highlighted-features) - [Crowd-Configured](#crowd-configured)
* [Screenshots](#screenshots) - [Highlighted features](#highlighted-features)
* [welcome page](#welcome-page) - [Screenshots](#screenshots)
* [working flow](#working-flow) - [welcome page](#welcome-page)
* [Who can benefit from this?](#who-can-benefit-from-this) - [working flow](#working-flow)
* [Update and Rollback](#update-and-rollback) - [Who can benefit from this?](#who-can-benefit-from-this)
* [Update SpaceVim itself](#update-spacevim-itself) - [Update and Rollback](#update-and-rollback)
* [Automatic Updates](#automatic-updates) - [Update SpaceVim itself](#update-spacevim-itself)
* [Updating from the SpaceVim Buffer](#updating-from-the-spacevim-buffer) - [Automatic Updates](#automatic-updates)
* [Updating Manually with git](#updating-manually-with-git) - [Updating from the SpaceVim Buffer](#updating-from-the-spacevim-buffer)
* [Update plugins](#update-plugins) - [Updating Manually with git](#updating-manually-with-git)
* [Configuration layers](#configuration-layers) - [Update plugins](#update-plugins)
* [Custom Configuration](#custom-configuration) - [Configuration layers](#configuration-layers)
* [Automatic Generation](#automatic-generation) - [Custom Configuration](#custom-configuration)
* [Alternative directory](#alternative-directory) - [Automatic Generation](#automatic-generation)
* [Concepts](#concepts) - [Alternative directory](#alternative-directory)
* [Transient-states](#transient-states) - [Concepts](#concepts)
* [Awesome ui](#awesome-ui) - [Transient-states](#transient-states)
* [Colorschemes](#colorschemes) - [Awesome ui](#awesome-ui)
* [Font](#font) - [Colorschemes](#colorschemes)
* [UI Toggles](#ui-toggles) - [Font](#font)
* [Statusline && tabline](#statusline--tabline) - [UI Toggles](#ui-toggles)
* [statusline](#statusline) - [Statusline && tabline](#statusline--tabline)
* [tabline](#tabline) - [statusline](#statusline)
* [Manual](#manual) - [tabline](#tabline)
* [Completion](#completion) - [Manual](#manual)
* [Unite/Denite](#unitedenite) - [Completion](#completion)
* [Mappings within unite/denite buffer](#mappings-within-unitedenite-buffer) - [Unite/Denite](#unitedenite)
* [Discovering](#discovering) - [Mappings within unite/denite buffer](#mappings-within-unitedenite-buffer)
* [Mappings](#mappings) - [Discovering](#discovering)
* [Mappings guide](#mappings-guide) - [Mappings](#mappings)
* [Unide/Denite describe key bindings](#unidedenite-describe-key-bindings) - [Mappings guide](#mappings-guide)
* [Getting help](#getting-help) - [Unide/Denite describe key bindings](#unidedenite-describe-key-bindings)
* [Available layers](#available-layers) - [Getting help](#getting-help)
* [Available plugins in SpaceVim](#available-plugins-in-spacevim) - [Available layers](#available-layers)
* [New packages from ELPA repositories](#new-packages-from-elpa-repositories) - [Available plugins in SpaceVim](#available-plugins-in-spacevim)
* [Toggles](#toggles) - [New packages from ELPA repositories](#new-packages-from-elpa-repositories)
* [Navigating](#navigating) - [Toggles](#toggles)
* [Point/Cursor](#pointcursor) - [Navigating](#navigating)
* [Vim motions with vim-easymotion](#vim-motions-with-vim-easymotion) - [Point/Cursor](#pointcursor)
* [quick-jump-link mode (TODO)](#quick-jump-link-mode-todo) - [Vim motions with vim-easymotion](#vim-motions-with-vim-easymotion)
* [Unimpaired bindings](#unimpaired-bindings) - [quick-jump-link mode (TODO)](#quick-jump-link-mode-todo)
* [Jumping, Joining and Splitting](#jumping-joining-and-splitting) - [Unimpaired bindings](#unimpaired-bindings)
* [Jumping](#jumping) - [Jumping, Joining and Splitting](#jumping-joining-and-splitting)
* [Joining and splitting](#joining-and-splitting) - [Jumping](#jumping)
* [Window manipulation](#window-manipulation) - [Joining and splitting](#joining-and-splitting)
* [Window manipulation key bindings](#window-manipulation-key-bindings) - [Window manipulation](#window-manipulation)
* [Buffers and Files](#buffers-and-files) - [Window manipulation key bindings](#window-manipulation-key-bindings)
* [Buffers manipulation key bindings](#buffers-manipulation-key-bindings) - [Buffers and Files](#buffers-and-files)
* [Create a new empty buffer](#create-a-new-empty-buffer) - [Buffers manipulation key bindings](#buffers-manipulation-key-bindings)
* [Special Buffers](#special-buffers) - [Create a new empty buffer](#create-a-new-empty-buffer)
* [Files manipulations key bindings](#files-manipulations-key-bindings) - [Special Buffers](#special-buffers)
* [Vim and SpaceVim files](#vim-and-spacevim-files) - [Files manipulations key bindings](#files-manipulations-key-bindings)
* [File tree](#file-tree) - [Vim and SpaceVim files](#vim-and-spacevim-files)
* [File tree navigation](#file-tree-navigation) - [File tree](#file-tree)
* [Open file with file tree.](#open-file-with-file-tree) - [File tree navigation](#file-tree-navigation)
* [Commands starting with `g`](#commands-starting-with-g) - [Open file with file tree.](#open-file-with-file-tree)
* [Commands starting with `z`](#commands-starting-with-z) - [Commands starting with `g`](#commands-starting-with-g)
* [Auto-saving](#auto-saving) - [Commands starting with `z`](#commands-starting-with-z)
* [Searching](#searching) - [Auto-saving](#auto-saving)
* [With an external tool](#with-an-external-tool) - [Searching](#searching)
* [Useful key bindings](#useful-key-bindings) - [With an external tool](#with-an-external-tool)
* [Searching in current file](#searching-in-current-file) - [Useful key bindings](#useful-key-bindings)
* [Searching in all loaded buffers](#searching-in-all-loaded-buffers) - [Searching in current file](#searching-in-current-file)
* [Searching in an arbitrary directory](#searching-in-an-arbitrary-directory) - [Searching in all loaded buffers](#searching-in-all-loaded-buffers)
* [Searching in a project](#searching-in-a-project) - [Searching in an arbitrary directory](#searching-in-an-arbitrary-directory)
* [Background searching in a project](#background-searching-in-a-project) - [Searching in a project](#searching-in-a-project)
* [Searching the web](#searching-the-web) - [Background searching in a project](#background-searching-in-a-project)
* [Searching on the fly](#searching-on-the-fly) - [Searching the web](#searching-the-web)
* [Persistent highlighting](#persistent-highlighting) - [Searching on the fly](#searching-on-the-fly)
* [Editing](#editing) - [Persistent highlighting](#persistent-highlighting)
* [Paste text](#paste-text) - [Editing](#editing)
* [Auto-indent pasted text](#auto-indent-pasted-text) - [Paste text](#paste-text)
* [Text manipulation commands](#text-manipulation-commands) - [Auto-indent pasted text](#auto-indent-pasted-text)
* [Text insertion commands](#text-insertion-commands) - [Text manipulation commands](#text-manipulation-commands)
* [Commenting](#commenting) - [Text insertion commands](#text-insertion-commands)
* [Multi-Encodings](#multi-encodings) - [Commenting](#commenting)
* [Errors handling](#errors-handling) - [Multi-Encodings](#multi-encodings)
* [Managing projects](#managing-projects) - [Errors handling](#errors-handling)
* [Achievements](#achievements) - [Managing projects](#managing-projects)
* [issues](#issues) - [Achievements](#achievements)
* [Stars, forks and watchers](#stars-forks-and-watchers) - [issues](#issues)
* [Features](#features) - [Stars, forks and watchers](#stars-forks-and-watchers)
* [Awesome ui](#awesome-ui-1) - [Features](#features)
* [Mnemonic key bindings](#mnemonic-key-bindings) - [Awesome ui](#awesome-ui-1)
* [Language specific mode](#language-specific-mode) - [Mnemonic key bindings](#mnemonic-key-bindings)
* [Key Mapping](#key-mapping) - [Language specific mode](#language-specific-mode)
* [c/c++ support](#cc-support) - [Key Mapping](#key-mapping)
* [go support](#go-support) - [c/c++ support](#cc-support)
* [python support](#python-support) - [go support](#go-support)
* [Neovim centric - Dark powered mode of SpaceVim.](#neovim-centric---dark-powered-mode-of-spacevim) - [python support](#python-support)
* [Modular configuration](#modular-configuration) - [Neovim centric - Dark powered mode of SpaceVim.](#neovim-centric---dark-powered-mode-of-spacevim)
* [Multiple leader mode](#multiple-leader-mode) - [Modular configuration](#modular-configuration)
* [Global origin vim leader](#global-origin-vim-leader) - [Multiple leader mode](#multiple-leader-mode)
* [Local origin vim leader](#local-origin-vim-leader) - [Global origin vim leader](#global-origin-vim-leader)
* [Windows function leader](#windows-function-leader) - [Local origin vim leader](#local-origin-vim-leader)
* [Unite work flow leader](#unite-work-flow-leader) - [Windows function leader](#windows-function-leader)
* [Unite centric work-flow](#unite-centric-work-flow) - [Unite work flow leader](#unite-work-flow-leader)
* [Plugin Highlights](#plugin-highlights) - [Unite centric work-flow](#unite-centric-work-flow)
* [Non Lazy-Loaded Plugins](#non-lazy-loaded-plugins) - [Plugin Highlights](#plugin-highlights)
* [Lazy-Loaded Plugins](#lazy-loaded-plugins) - [Non Lazy-Loaded Plugins](#non-lazy-loaded-plugins)
* [Language](#language) - [Lazy-Loaded Plugins](#lazy-loaded-plugins)
* [Commands](#commands) - [Language](#language)
* [Commands](#commands-1) - [Commands](#commands)
* [Completion](#completion-1) - [Commands](#commands-1)
* [Unite](#unite) - [Completion](#completion-1)
* [Operators & Text Objects](#operators--text-objects) - [Unite](#unite)
* [Custom Key bindings](#custom-key-bindings) - [Operators & Text Objects](#operators--text-objects)
* [File Operations](#file-operations) - [Custom Key bindings](#custom-key-bindings)
* [Editor UI](#editor-ui) - [File Operations](#file-operations)
* [Window Management](#window-management) - [Editor UI](#editor-ui)
* [Native functions](#native-functions) - [Window Management](#window-management)
* [Plugin: Unite](#plugin-unite) - [Native functions](#native-functions)
* [Plugin: neocomplete](#plugin-neocomplete) - [Plugin: Unite](#plugin-unite)
* [Plugin: NERD Commenter](#plugin-nerd-commenter) - [Plugin: neocomplete](#plugin-neocomplete)
* [Plugin: Goyo and Limelight](#plugin-goyo-and-limelight) - [Plugin: NERD Commenter](#plugin-nerd-commenter)
* [Plugin: ChooseWin](#plugin-choosewin) - [Plugin: Goyo and Limelight](#plugin-goyo-and-limelight)
* [Plugin: Bookmarks](#plugin-bookmarks) - [Plugin: ChooseWin](#plugin-choosewin)
* [Plugin: Gina/Gita](#plugin-ginagita) - [Plugin: Bookmarks](#plugin-bookmarks)
* [Plugin: vim-signify](#plugin-vim-signify) - [Plugin: Gina/Gita](#plugin-ginagita)
* [Misc Plugins](#misc-plugins) - [Plugin: vim-signify](#plugin-vim-signify)
- [Misc Plugins](#misc-plugins)
<!-- vim-markdown-toc --> <!-- vim-markdown-toc -->
@ -158,19 +160,19 @@ Community-driven configuration provides curated packages tuned by power users an
## Highlighted features ## Highlighted features
- **Great documentation:** access documentation in Vim with - **Great documentation:** access documentation in Vim with
<kbd>:h SpaceVim</kbd>. <kbd>:h SpaceVim</kbd>.
- **Minimalistic and nice graphical UI:** you'll love the awesome UI and its useful features. - **Minimalistic and nice graphical UI:** you'll love the awesome UI and its useful features.
- **Keep your fingers on the home row:** for quicker editing with support for QWERTY and BEPO layouts. - **Keep your fingers on the home row:** for quicker editing with support for QWERTY and BEPO layouts.
- **Mnemonic key bindings:** commands have mnemonic prefixes like - **Mnemonic key bindings:** commands have mnemonic prefixes like
<kbd>[Window]</kbd> for all the window and buffer commands or <kbd>[Unite]</kbd> for the <kbd>[Window]</kbd> for all the window and buffer commands or <kbd>[Unite]</kbd> for the
unite work flow commands. unite work flow commands.
- **Fast boot time:** Lazy-load 90% of plugins with [dein.vim] - **Fast boot time:** Lazy-load 90% of plugins with [dein.vim]
- **Lower the risk of RSI:** by heavily using the space bar instead of modifiers. - **Lower the risk of RSI:** by heavily using the space bar instead of modifiers.
- **Batteries included:** discover hundreds of ready-to-use packages nicely - **Batteries included:** discover hundreds of ready-to-use packages nicely
organised in configuration layers following a set of organised in configuration layers following a set of
[conventions](http://spacevim.org/development/). [conventions](http://spacevim.org/development/).
- **Neovim centric:** Dark powered mode of SpaceVim - **Neovim centric:** Dark powered mode of SpaceVim
## Screenshots ## Screenshots
@ -192,11 +194,11 @@ to get more screenshots, see: [issue #415](https://github.com/SpaceVim/SpaceVim/
## Who can benefit from this? ## Who can benefit from this?
- the **elementary** vim users. - the **elementary** vim users.
- Vim users pursuing a beautiful appearance. - Vim users pursuing a beautiful appearance.
- Vim users wanting to lower the [risk of RSI](http://en.wikipedia.org/wiki/Repetitive_strain_injury). - Vim users wanting to lower the [risk of RSI](http://en.wikipedia.org/wiki/Repetitive_strain_injury).
- Vim users wanting to learn a different way to edit files. - Vim users wanting to learn a different way to edit files.
- Vim users wanting a simple but deep configuration system. - Vim users wanting a simple but deep configuration system.
## Update and Rollback ## Update and Rollback
@ -313,8 +315,8 @@ Move Text Transient State:
SpaceVim has a minimalistic and distraction free UI: SpaceVim has a minimalistic and distraction free UI:
- custom airline with color feedback according to current check status - custom airline with color feedback according to current check status
- custom icon in sign column and error feedbacks for checker. - custom icon in sign column and error feedbacks for checker.
### Colorschemes ### Colorschemes
@ -359,7 +361,7 @@ Some UI indicators can be toggled on and off (toggles start with t and T):
| SPC t 8 | highlight any character past the 80th column | | SPC t 8 | highlight any character past the 80th column |
| SPC t f | display the fill column (by default the fill column is set to 80) | | SPC t f | display the fill column (by default the fill column is set to 80) |
| SPC t h h | toggle highlight of the current line | | SPC t h h | toggle highlight of the current line |
| SPC t h i | toggle highlight indentation levels | | SPC t h i | toggle highlight indentation levels (TODO) |
| SPC t h c | toggle highlight indentation current column | | SPC t h c | toggle highlight indentation current column |
| SPC t h s | toggle syntax highlighting | | SPC t h s | toggle syntax highlighting |
| SPC t i | toggle indentation guide at point | | SPC t i | toggle indentation guide at point |
@ -376,11 +378,14 @@ Some UI indicators can be toggled on and off (toggles start with t and T):
The statusline and tabline are heavily customized with the following capabilities: The statusline and tabline are heavily customized with the following capabilities:
- tabline index of each buffer or tab. - tabline index of each buffer or tab.
- vim mode (INSERT/NORMAL etc.) - vim mode (INSERT/NORMAL etc.)
- git info : diff/branch - git info : diff/branch
- checker info: numbers of errors and warnings. - checker info: numbers of errors and warnings.
- trailing line number. - trailing line number.
- enabled feature of SpaceVim
- file information
- search index
| Key Binding | Description | | Key Binding | Description |
| ----------- | ----------------------------- | | ----------- | ----------------------------- |
@ -390,12 +395,12 @@ The statusline and tabline are heavily customized with the following capabilitie
The `core#statusline` layer provide a heavily customized powerline with the following capabilities:, It is inspired by spacemacs's mode-line. The `core#statusline` layer provide a heavily customized powerline with the following capabilities:, It is inspired by spacemacs's mode-line.
- show the window number - show the window number
- color code for current state - color code for current state
- show the number of search results - show the number of search results
- toggle syntax checking info - toggle syntax checking info
- toggle battery info - toggle battery info
- toggle minor mode lighters - toggle minor mode lighters
Reminder of the color codes for the states: Reminder of the color codes for the states:
@ -410,17 +415,17 @@ all the colors based on the current colorscheme
Some elements can be dynamically toggled: Some elements can be dynamically toggled:
| Key Binding | Description | | Key Binding | Description |
| ----------- | ------------------------------------------------------------- | | ----------- | ------------------------------------------------------------------- |
| `SPC t m b` | toggle the battery status (need to install acpi) | | `SPC t m b` | toggle the battery status (need to install acpi) |
| `SPC t m c` | toggle the org task clock (available in org layer) | | `SPC t m c` | toggle the org task clock (available in org layer)(TODO) |
| `SPC t m m` | toggle the minor mode lighters | | `SPC t m m` | toggle the minor mode lighters |
| `SPC t m M` | toggle the major mode | | `SPC t m M` | toggle the major mode |
| `SPC t m n` | toggle the cat! (if colors layer is declared in your dotfile) | | `SPC t m n` | toggle the cat! (if colors layer is declared in your dotfile)(TODO) |
| `SPC t m p` | toggle the cursor position | | `SPC t m p` | toggle the cursor position |
| `SPC t m t` | toggle the time | | `SPC t m t` | toggle the time |
| `SPC t m T` | toggle the mode line itself | | `SPC t m T` | toggle the mode line itself |
| `SPC t m v` | toggle the version control info | | `SPC t m v` | toggle the version control info |
**Powerline font installation:** **Powerline font installation:**
@ -476,7 +481,7 @@ here is an exhaustive set of screenshots for all the available separator:
The minor mode area can be toggled on and off with `SPC t m m` The minor mode area can be toggled on and off with `SPC t m m`
Unicode symbols are displayed by default. Setting the variable `g:spacevim_statusline_unicode_symbols` to nil in your custom configuration file will display ASCII characters instead (may be useful in terminal if you cannot set an appropriate font). Unicode symbols are displayed by default. Setting the variable `g:spacevim_statusline_unicode_symbols` to 0 in your custom configuration file will display ASCII characters instead (may be useful in terminal if you cannot set an appropriate font).
The letters displayed in the statusline correspond to the key bindings used to toggle them. The letters displayed in the statusline correspond to the key bindings used to toggle them.
@ -997,11 +1002,11 @@ after pressing prefix `z` in normal mode, if you do not remember the mappings, y
SpaceVim can be interfaced with different searching tools like: SpaceVim can be interfaced with different searching tools like:
- [rg - ripgrep](https://github.com/BurntSushi/ripgrep) - [rg - ripgrep](https://github.com/BurntSushi/ripgrep)
- [ag - the silver searcher](https://github.com/ggreer/the_silver_searcher) - [ag - the silver searcher](https://github.com/ggreer/the_silver_searcher)
- [pt - the platinum searcher](https://github.com/monochromegane/the_platinum_searcher) - [pt - the platinum searcher](https://github.com/monochromegane/the_platinum_searcher)
- [ack](https://beyondgrep.com/) - [ack](https://beyondgrep.com/)
- grep - grep
The search commands in SpaceVim are organized under the `SPC s` prefix with the next key is the tool to use and the last key is the scope. For instance `SPC s a b` will search in all opened buffers using `ag`. The search commands in SpaceVim are organized under the `SPC s` prefix with the next key is the tool to use and the last key is the scope. For instance `SPC s a b` will search in all opened buffers using `ag`.
@ -1031,8 +1036,8 @@ It is possible to search in the current file by double pressing the second key o
Notes: Notes:
- `rg`, `ag` and `pt` are optimized to be used in a source control repository but they can be used in an arbitrary directory as well. - `rg`, `ag` and `pt` are optimized to be used in a source control repository but they can be used in an arbitrary directory as well.
- It is also possible to search in several directories at once by marking them in the unite buffer. - It is also possible to search in several directories at once by marking them in the unite buffer.
**Beware** if you use `pt`, [TCL parser tools](https://core.tcl.tk/tcllib/doc/trunk/embedded/www/tcllib/files/apps/pt.html) also install a command line tool called `pt`. **Beware** if you use `pt`, [TCL parser tools](https://core.tcl.tk/tcllib/doc/trunk/embedded/www/tcllib/files/apps/pt.html) also install a command line tool called `pt`.
@ -1195,7 +1200,7 @@ Text related commands (start with `x`):
| `SPC x a L` | right-align with evil-lion (TODO) | | `SPC x a L` | right-align with evil-lion (TODO) |
| `SPC x a r` | align region using user-specified regexp (TODO) | | `SPC x a r` | align region using user-specified regexp (TODO) |
| `SPC x a m` | align region at arithmetic operators `(+-*/)` (TODO) | | `SPC x a m` | align region at arithmetic operators `(+-*/)` (TODO) |
| `SPC x c` | count the number of chars/words/lines in the selection region | | `SPC x c` | count the number of chars/words/lines in the selection region |
| `SPC x d w` | delete trailing whitespaces | | `SPC x d w` | delete trailing whitespaces |
| `SPC x d SPC` | Delete all spaces and tabs around point, leaving one space | | `SPC x d SPC` | Delete all spaces and tabs around point, leaving one space |
| `SPC x g l` | set lanuages used by translate commands (TODO) | | `SPC x g l` | set lanuages used by translate commands (TODO) |
@ -1268,16 +1273,14 @@ Comments are handled by [nerdcommenter](https://github.com/scrooloose/nerdcommen
**Tips:** To comment efficiently a block of line use the combo `SPC ; SPC j l` **Tips:** To comment efficiently a block of line use the combo `SPC ; SPC j l`
> > > > > > > dev
#### Multi-Encodings #### Multi-Encodings
SpaceVim use utf-8 as default encoding. there are four options for these case: SpaceVim use utf-8 as default encoding. there are four options for these case:
- fileencodings (fencs): ucs-bom,utf-8,default,latin1 - fileencodings (fencs): ucs-bom,utf-8,default,latin1
- fileencoding (fenc): utf-8 - fileencoding (fenc): utf-8
- encoding (enc): utf-8 - encoding (enc): utf-8
- termencoding (tenc): utf-8 (only supported in vim) - termencoding (tenc): utf-8 (only supported in vim)
to fix messy display: `SPC e a` is the mapping for auto detect the file encoding. after detecting file encoding, you can run the command below to fix the encoding: to fix messy display: `SPC e a` is the mapping for auto detect the file encoding. after detecting file encoding, you can run the command below to fix the encoding:
@ -1348,7 +1351,7 @@ project manager commands start with `p`:
### Awesome ui ### Awesome ui
- outline + filemanager + checker - outline + filemanager + checker
![awesome ui](https://cloud.githubusercontent.com/assets/13142418/22506638/84705532-e8bc-11e6-8b72-edbdaf08426b.png) ![awesome ui](https://cloud.githubusercontent.com/assets/13142418/22506638/84705532-e8bc-11e6-8b72-edbdaf08426b.png)
@ -1373,37 +1376,37 @@ Key bindings are organized using mnemonic prefixes like b for buffer, p for proj
### c/c++ support ### c/c++ support
1. code completion: autocompletion and fuzzy match. 1. code completion: autocompletion and fuzzy match.
![completion-fuzzy-match](https://cloud.githubusercontent.com/assets/13142418/22505960/df9068de-e8b8-11e6-943e-d79ceca095f1.png) ![completion-fuzzy-match](https://cloud.githubusercontent.com/assets/13142418/22505960/df9068de-e8b8-11e6-943e-d79ceca095f1.png)
2. syntax check: Asynchronous linting and make framework. 2. syntax check: Asynchronous linting and make framework.
![syntax-check](https://cloud.githubusercontent.com/assets/13142418/22506340/e28b4782-e8ba-11e6-974b-ca29574dcc1f.png) ![syntax-check](https://cloud.githubusercontent.com/assets/13142418/22506340/e28b4782-e8ba-11e6-974b-ca29574dcc1f.png)
### go support ### go support
1. code completion: 1. code completion:
![2017-02-01_1360x721](https://cloud.githubusercontent.com/assets/13142418/22508345/8215c5e4-e8c4-11e6-95ec-f2a6e1e2f4d2.png) ![2017-02-01_1360x721](https://cloud.githubusercontent.com/assets/13142418/22508345/8215c5e4-e8c4-11e6-95ec-f2a6e1e2f4d2.png)
2. syntax check: 2. syntax check:
![2017-02-01_1359x720](https://cloud.githubusercontent.com/assets/13142418/22509944/108b6508-e8cb-11e6-8104-6310a29ae796.png) ![2017-02-01_1359x720](https://cloud.githubusercontent.com/assets/13142418/22509944/108b6508-e8cb-11e6-8104-6310a29ae796.png)
### python support ### python support
1. code completion: 1. code completion:
![2017-02-02_1360x724](https://cloud.githubusercontent.com/assets/13142418/22537799/7d1d47fe-e948-11e6-8168-a82e3f688554.png) ![2017-02-02_1360x724](https://cloud.githubusercontent.com/assets/13142418/22537799/7d1d47fe-e948-11e6-8168-a82e3f688554.png)
2. syntax check: 2. syntax check:
![2017-02-02_1358x720](https://cloud.githubusercontent.com/assets/13142418/22537883/36de7b5e-e949-11e6-866f-73c48e8f59aa.png) ![2017-02-02_1358x720](https://cloud.githubusercontent.com/assets/13142418/22537883/36de7b5e-e949-11e6-866f-73c48e8f59aa.png)
## Neovim centric - Dark powered mode of SpaceVim. ## Neovim centric - Dark powered mode of SpaceVim.
By default, SpaceVim use these dark powered plugins: By default, SpaceVim use these dark powered plugins:
1. [deoplete.nvim](https://github.com/Shougo/deoplete.nvim) - Dark powered asynchronous completion framework for neovim 1. [deoplete.nvim](https://github.com/Shougo/deoplete.nvim) - Dark powered asynchronous completion framework for neovim
2. [dein.vim](https://github.com/Shougo/dein.vim) - Dark powered Vim/Neovim plugin manager 2. [dein.vim](https://github.com/Shougo/dein.vim) - Dark powered Vim/Neovim plugin manager
TODO: TODO:
1. [defx.nvim](https://github.com/Shougo/defx.nvim) - Dark powered file explorer 1. [defx.nvim](https://github.com/Shougo/defx.nvim) - Dark powered file explorer
2. [deoppet.nvim](https://github.com/Shougo/deoppet.nvim) - Dark powered snippet plugin 2. [deoppet.nvim](https://github.com/Shougo/deoppet.nvim) - Dark powered snippet plugin
3. [denite.nvim](https://github.com/Shougo/denite.nvim) - Dark powered asynchronous unite all interfaces for Neovim/Vim8 3. [denite.nvim](https://github.com/Shougo/denite.nvim) - Dark powered asynchronous unite all interfaces for Neovim/Vim8
## Modular configuration ## Modular configuration
@ -1430,31 +1433,31 @@ Unite work flow leader can only be used in normal mode. Unite leader need unite
![unite](https://cloud.githubusercontent.com/assets/13142418/23955542/26fd5348-09d5-11e7-8253-1f43991439b0.png) ![unite](https://cloud.githubusercontent.com/assets/13142418/23955542/26fd5348-09d5-11e7-8253-1f43991439b0.png)
- List all the plugins has been installed, fuzzy find what you want, default action is open the github website of current plugin. default key is `<leader>lp` - List all the plugins has been installed, fuzzy find what you want, default action is open the github website of current plugin. default key is `<leader>lp`
![2017-01-21_1358x725](https://cloud.githubusercontent.com/assets/13142418/22175019/ce42d902-e027-11e6-89cd-4f44f70a10cd.png) ![2017-01-21_1358x725](https://cloud.githubusercontent.com/assets/13142418/22175019/ce42d902-e027-11e6-89cd-4f44f70a10cd.png)
- List all the mappings and description: `f<space>` - List all the mappings and description: `f<space>`
![2017-02-01_1359x723](https://cloud.githubusercontent.com/assets/13142418/22507351/24af0d74-e8c0-11e6-985e-4a1404b629ed.png) ![2017-02-01_1359x723](https://cloud.githubusercontent.com/assets/13142418/22507351/24af0d74-e8c0-11e6-985e-4a1404b629ed.png)
- List all the starred repos in github.com, fuzzy find and open the website of the repo. default key is `<leader>ls` - List all the starred repos in github.com, fuzzy find and open the website of the repo. default key is `<leader>ls`
![2017-02-01_1359x722](https://cloud.githubusercontent.com/assets/13142418/22506915/deb99caa-e8bd-11e6-9b80-316281ddb48c.png) ![2017-02-01_1359x722](https://cloud.githubusercontent.com/assets/13142418/22506915/deb99caa-e8bd-11e6-9b80-316281ddb48c.png)
#### Plugin Highlights #### Plugin Highlights
- Package management with caching enabled and lazy loading - Package management with caching enabled and lazy loading
- Project-aware tabs and label - Project-aware tabs and label
- Vimfiler as file-manager + SSH connections - Vimfiler as file-manager + SSH connections
- Go completion via vim-go and gocode - Go completion via vim-go and gocode
- Javascript completion via Tern - Javascript completion via Tern
- PHP completion, indent, folds, syntax - PHP completion, indent, folds, syntax
- Python jedi completion, pep8 convention - Python jedi completion, pep8 convention
- Languages: Ansible, css3, csv, json, less, markdown, mustache - Languages: Ansible, css3, csv, json, less, markdown, mustache
- Helpers: Undo tree, bookmarks, git, tmux navigation, - Helpers: Undo tree, bookmarks, git, tmux navigation,
hex editor, sessions, and much more. hex editor, sessions, and much more.
_Note_ that 90% of the plugins are **[lazy-loaded]**. _Note_ that 90% of the plugins are **[lazy-loaded]**.
[lazy-loaded]&#x3A; ./config/plugins.vim [lazy-loaded]&#x3A; ./config/plugins.vim
#### Non Lazy-Loaded Plugins #### Non Lazy-Loaded Plugins

BIN
docs/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
docs/img/weixin.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

BIN
docs/img/zhifubao.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

View File

@ -1,5 +1,6 @@
--- ---
title: "Home" title: "Home"
description: "SpaceVim is a community-driven vim distribution that seeks to provide layer feature."
--- ---
# Introduction # Introduction
@ -28,6 +29,7 @@ If you are using linux or mac os, it is recommended to use this command to insta
```sh ```sh
curl -sLf https://spacevim.org/install.sh | bash curl -sLf https://spacevim.org/install.sh | bash
``` ```
with this command, SpaceVim will be installed. All the plugins will be installed **automatically** when vim/nvim is run for the first time. with this command, SpaceVim will be installed. All the plugins will be installed **automatically** when vim/nvim is run for the first time.
For more info about the install script, please check: For more info about the install script, please check:
@ -38,16 +40,16 @@ curl -sLf https://spacevim.org/install.sh | bash -s -- -h
### windows support ### windows support
- For vim in windows, please just clone this repo as vimfiles in you Home directory. - For vim in windows, please just clone this repo as vimfiles in you Home directory.
by default, when open a cmd, the current dir is your Home directory, run this command in cmd. by default, when open a cmd, the current dir is your Home directory, run this command in cmd.
make sure you have a backup of your own vimfiles. make sure you have a backup of your own vimfiles.
```sh ```sh
git clone https://github.com/SpaceVim/SpaceVim.git vimfiles git clone https://github.com/SpaceVim/SpaceVim.git vimfiles
``` ```
- For neovim in windows, please clone this repo as `AppData\Local\nvim` in your home directory. - For neovim in windows, please clone this repo as `AppData\Local\nvim` in your home directory.
for more info, please check out [neovim's wiki](https://github.com/neovim/neovim/wiki/Installing-Neovim). for more info, please check out [neovim's wiki](https://github.com/neovim/neovim/wiki/Installing-Neovim).
by default, when open a cmd, the current dir is your Home directory, run this command in cmd. by default, when open a cmd, the current dir is your Home directory, run this command in cmd.
```sh ```sh
git clone https://github.com/SpaceVim/SpaceVim.git AppData\Local\nvim git clone https://github.com/SpaceVim/SpaceVim.git AppData\Local\nvim
@ -57,18 +59,17 @@ git clone https://github.com/SpaceVim/SpaceVim.git AppData\Local\nvim
## News ## News
[Newsletter #1 - A New Hope]() [Newsletter #1 - A New Hope](https://spacevim.org/SpaceVim-Newsletter-A-New-Hope/)
> Published on: 2017-5-31 > Published on: 2017-5-31
More posts are in the [SpaceVim's Blog](https://spacevim.org/blog/) More posts are in the [SpaceVim's Blog](https://spacevim.org/blog/)
[Follow @SpaceVim](https://twitter.com/SpaceVim) [Follow @SpaceVim](https://twitter.com/SpaceVim)
## Impressions
## Get Involved ## Get Involved
Discuss the project at [gitter.im/SpaceVim](https://gitter.im/SpaceVim/SpaceVim), IRC (**#spacevim** on **irc.freenode.net**) or the [mailing list](https://groups.google.com/forum/#!forum/spacevim). Discuss the project at [gitter.im/SpaceVim](https://gitter.im/SpaceVim/SpaceVim) or [/r/SpaceVim](https://www.reddit.com/r/SpaceVim/)
Contribute code, report bugs and request features at [GitHub](https://github.com/SpaceVim/SpaceVim). Contribute code, report bugs and request features at [GitHub](https://github.com/SpaceVim/SpaceVim).
@ -80,7 +81,7 @@ The current stable version is 0.2.0. See the milestones page for development pro
2. Is SpaceVim trying to turn Vim/Neovim into an IDE? 2. Is SpaceVim trying to turn Vim/Neovim into an IDE?
With layers feature, this [version]() of vim distribution to tern vim/neovim into an IDE for many language. With layers feature, this [version](<>) of vim distribution to tern vim/neovim into an IDE for many language.
3. Will SpaceVim deprecate Vimscript? 3. Will SpaceVim deprecate Vimscript?

View File

@ -1,4 +1,25 @@
# SpaceVim Layers ---
title: Available layers
description: A list of available layers in SpaceVim.
keywords: layer,layers
---
## Introduction
SpaceVim is a community-driven vim distribution that seeks to provide layer feature. here is an example for loadding a layer with some specified options:
```vim
call SpaceVim#layers#load('shell',
\ {
\ 'default_position' : 'top',
\ 'default_height' : 30,
\ }
\ )
```
## Available layers
this a list of buildin layers:
| Name | Description | Documentation | | Name | Description | Documentation |
| ------------- | :-------------------------------: | ---------------------------------------------------------- | | ------------- | :-------------------------------: | ---------------------------------------------------------- |

View File

@ -0,0 +1,42 @@
---
title: "SpaceVim lang#javascript layer"
---
# [SpaceVim Layers:](https://spacevim.org/layers) lang#javascript
<!-- vim-markdown-toc GFM -->
- [Description](#description)
- [Layer Installation](#layer-installation)
- [Features](#features)
- [Layer configuration](#layer-configuration)
<!-- vim-markdown-toc -->
## Description
This layer is for JavaScript development.
## Layer Installation
To use this configuration layer, add `call SpaceVim#layers#load('lang#javascript')` to your custom configuration file.
## Features
- auto-completion
- syntax checking
- goto definition
- refernce finder
## Layer configuration
`auto_fix`: auto fix problems when save files, disabled by default. if you need this feature, you can load this layer via:
```vim
call SpaceVim#layers#load('lang#javascript',
\ {
\ 'auto_fix' : 1,
\ }
\ )
```

View File

@ -1,12 +1,56 @@
# [Layers](https://spacevim.org/layers) > lang#markdown ---
title: "SpaceVim lang#markdown layer"
---
# [SpaceVim Layers:](https://spacevim.org/layers) lang#markdown
<!-- vim-markdown-toc GFM -->
- [Description](#description)
- [Layer Installation](#layer-installation)
- [formatting](#formatting)
- [options](#options)
- [Key bindings](#key-bindings)
<!-- vim-markdown-toc -->
## Description
This layer is for editing markdown file. This layer is for editing markdown file.
Mappings ## Layer Installation
Key | mode | description To use this configuration layer, add `call SpaceVim#layers#load('lang#markdown')` to your custom configuration file.
--- | --- | ------------
SPC l ft | Normal | Format table under cursor ## formatting
SPC l p | Normal | Real-time markdown preview
SpaceVim use remark to formatting markdown file, so you need to install this program. you can install it via npm:
```sh
npm -g install remark
npm -g install remark-cli
npm -g install remark-stringify
```
### options
**listItemIndent**
How to indent the content from list items (`tab`, `mixed` or 1 , default: 1).
- `'tab'`: use tab stops (4 spaces)
- `'1'`: use one space
- `'mixed'`: use `1` for tight and `tab` for loose list items
**enableWcwidth**
Enable/Disable wcwidth for detecting the length of a table cell, default is 0.
## Key bindings
| Key | mode | description |
| ---------- | ------ | -------------------------- |
| `SPC b f` | Normal | Format current buffer |
| `SPC l ft` | Normal | Format table under cursor |
| `SPC l p` | Normal | Real-time markdown preview |

View File

@ -0,0 +1,20 @@
---
title: "SpaceVim lang#python layer"
---
# [SpaceVim Layers:](https://spacevim.org/layers) lang#python
<!-- vim-markdown-toc GFM -->
* [Description](#description)
* [Features](#features)
<!-- vim-markdown-toc -->
## Description
This layer is for Python development.
## Features
- Aoto-completion using [deoplete-jedi](https://github.com/zchee/deoplete-jedi) or [jedi-vim](https://github.com/davidhalter/jedi-vim)
- Documentation Lookup using [jedi-vim](https://github.com/davidhalter/jedi-vim)

View File

@ -0,0 +1,39 @@
---
title: "SpaceVim lang#typescript layer"
---
# [SpaceVim Layers:](https://spacevim.org/layers) lang#typescript
<!-- vim-markdown-toc GFM -->
- [Description](#description)
- [Layer Installation](#layer-installation)
- [Features](#features)
- [Layer configuration](#layer-configuration)
<!-- vim-markdown-toc -->
## Description
This layer is for TypeScript development.
## Layer Installation
To use this configuration layer, add `call SpaceVim#layers#load('lang#typescript')` to your custom configuration file. BTW, you need to install TypeScript via:
```sh
npm install -g typescript
```
## Features
- auto-completion
- syntax checking
- viewing documentation
- type-signature
- goto definition
- refernce finder
## Layer configuration
`typescript_server_path`: set the path of the tsserver.