1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-01-24 05:40: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_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
" highlighted in normal mode. To enable this feature:
" >
@ -269,6 +272,7 @@ let g:spacevim_buffer_index_type = 0
" " 0: 1 ➛ ➊
" " 1: 1 ➛ ➀
" " 2: 1 ➛ ⓵
" " 3: 1 ➛ 1
" let g:spacevim_windows_index_type = 1
" <
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)')
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
return deepcopy(s:self)
endf

View File

@ -3,3 +3,8 @@ function! SpaceVim#layers#chat#plugins() abort
\ ['vim-chat/vim-chat',{ 'merged' : 0, 'loadconf' : 1}],
\ ]
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'
" <
"
"
" The following colorschemes are include in SpaceVim. If the colorscheme you
" want is not included in the list below, a PR is welcome.
"
"
" Also, there's one thing which everyone should know and pay attention to.
" NOT all of below colorschemes support spell check very well. For example,
" a colorscheme called atom doesn't support spell check very well.
" 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.
" 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
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')
function! SpaceVim#layers#colorscheme#config() abort

View File

@ -34,26 +34,32 @@ let s:loaded_modes = ['syntax-checking']
let s:modes = {
\ 'center-cursor': {
\ 'icon' : '⊝',
\ 'icon_asc' : '-',
\ 'desc' : 'centered-cursor mode',
\ },
\ 'hi-characters-for-long-lines' :{
\ 'icon' : '⑧',
\ 'icon_asc' : '8',
\ 'desc' : 'toggle highlight of characters for long lines',
\ },
\ 'fill-column-indicator' :{
\ 'icon' : s:MESSLETTERS.circled_letter('f'),
\ 'icon_asc' : 'f',
\ 'desc' : 'fill-column-indicator mode',
\ },
\ 'syntax-checking' :{
\ 'icon' : s:MESSLETTERS.circled_letter('s'),
\ 'icon_asc' : 's',
\ 'desc' : 'syntax-checking mode',
\ },
\ 'spell-checking' :{
\ 'icon' : s:MESSLETTERS.circled_letter('S'),
\ 'icon_asc' : 'S',
\ 'desc' : 'spell-checking mode',
\ },
\ 'whitespace' :{
\ 'icon' : s:MESSLETTERS.circled_letter('w'),
\ 'icon_asc' : 'w',
\ 'desc' : 'whitespace mode',
\ },
\ }
@ -126,9 +132,17 @@ endif
function! s:winnr(...) abort
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
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
endfunction
@ -169,7 +183,11 @@ endfunction
function! s:modes() abort
let m = ' ❖ '
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
return m . ' '
endfunction
@ -396,17 +414,17 @@ endfunction
" +- a:marked : The number of marked files, or a comma separated list of
" the marked filenames.
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 . ' '],
\ [' ' . a:focus . ' ', ' ' . a:byfname . ' ', ' ' . getcwd() . ' '], s:lsep, s:rsep,
\ 'SpaceVim_statusline_a_bold', 'SpaceVim_statusline_b', 'SpaceVim_statusline_c', 'SpaceVim_statusline_z')
return s:STATUSLINE.build([' Ctrlp ', ' ' . a:prev . ' ', ' ' . a:item . ' ', ' ' . a:next . ' '],
\ [' ' . a:focus . ' ', ' ' . a:byfname . ' ', ' ' . getcwd() . ' '], s:lsep, s:rsep,
\ 'SpaceVim_statusline_a_bold', 'SpaceVim_statusline_b', 'SpaceVim_statusline_c', 'SpaceVim_statusline_z')
endfunction
" a:str : Either the number of files scanned so far, or a string indicating
" the current directory is being scanned with a user_command.
function! SpaceVim#layers#core#statusline#ctrlp_status(str) abort
return s:STATUSLINE.build([' Ctrlp ', ' ' . a:str . ' '],
\ [' ' . getcwd() . ' '], s:lsep, s:rsep,
\ 'SpaceVim_statusline_a', 'SpaceVim_statusline_b', 'SpaceVim_statusline_c', 'SpaceVim_statusline_z')
return s:STATUSLINE.build([' Ctrlp ', ' ' . a:str . ' '],
\ [' ' . getcwd() . ' '], s:lsep, s:rsep,
\ 'SpaceVim_statusline_a', 'SpaceVim_statusline_b', 'SpaceVim_statusline_c', 'SpaceVim_statusline_z')
endfunction
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', '[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', '$'], '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', 'f'], '<C-i>', 'jump forward', 0)
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()',
\ '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'], 'call SpaceVim#mapping#clear_saved_buffers()', 'clear all saved buffers', 1)
call SpaceVim#mapping#space#def('nnoremap', ['b', 'e'], 'call call('
\ . string(s:_function('s:safe_erase_buffer')) . ', [])',
\ 'safe-erase-buffer', 1)

View File

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

View File

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

View File

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

View File

@ -15,8 +15,22 @@ function! SpaceVim#layers#lang#javascript#plugins() abort
return plugins
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
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
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
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, ['mzlogin/vim-markdown-toc',{ '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')
let g:mkdp_path_to_chrome= get(g:, 'mkdp_path_to_chrome', 'firefox')
endif
let remarkrc = s:generate_remarkrc()
let g:neoformat_enabled_markdown = ['remark']
let g:neoformat_markdown_remark = {
\ 'exe': 'remark',
\ 'args': ['--no-color', '--silent', '--use', 'remark-frontmatter'],
\ 'stdin': 1,
\ }
\ 'exe': 'remark',
\ 'args': ['--no-color', '--silent'] + (empty(remarkrc) ? [] : ['-r', remarkrc]),
\ 'stdin': 1,
\ }
endfunction
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','p'], "MarkdownPreview", 'Real-time markdown preview', 1)
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 = []
" python
if has('nvim')
call add(plugins, ['zchee/deoplete-jedi', { 'on_ft' : 'python'}])
call add(plugins, ['zchee/deoplete-jedi', { 'on_ft' : 'python'}])
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
call add(plugins, ['Vimjas/vim-python-pep8-indent', { 'on_ft' : 'python'}])
call add(plugins, ['Vimjas/vim-python-pep8-indent',
\ { 'on_ft' : 'python'}])
return plugins
endfunction
function! SpaceVim#layers#lang#python#config()
function! SpaceVim#layers#lang#python#config() abort
call SpaceVim#layers#edit#add_ft_head_tamplate('python',
\ ['#!/usr/bin/env python',
\ '# -*- coding: utf-8 -*-',
\ '']
\ )
call SpaceVim#layers#edit#add_ft_head_tamplate('python',
\ ['#!/usr/bin/env python',
\ '# -*- coding: utf-8 -*-',
\ '']
\ )
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
endfunction
let s:file = expand('<sfile>:~')
let s:lnum = expand('<slnum>') + 2
function! SpaceVim#layers#shell#config() abort
call SpaceVim#mapping#space#def('nnoremap', ["'"], 'call call('
\ . 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
@ -56,6 +63,7 @@ function! s:open_default_shell() abort
if exists(':te')
exe 'te'
let s:shell_win_nr = winnr()
let w:shell_layer_win = 1
else
echo ':terminal is not supported in this version'
endif

View File

@ -46,7 +46,11 @@ function! SpaceVim#layers#ui#config() abort
\ 'toggle highlight of the current line', 1)
call SpaceVim#mapping#space#def('nnoremap', ['t', 'h', 'i'], 'call call('
\ . 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!',
\ 'toggle highlight indentation current column', 1)
call SpaceVim#mapping#space#def('nnoremap', ['t', 'h', 's'], 'call call('

View File

@ -1,4 +1,8 @@
scriptencoding utf-8
let s:BUFFER = SpaceVim#api#import('vim#buffer')
let g:unite_source_menu_menus =
\ get(g:,'unite_source_menu_menus',{})
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 abuf = str2nr(g:_spacevim_termclose_abuf)
let index = index(buffers, abuf)
if get(w:, 'shell_layer_win', 0) == 1
exe 'bd!' . abuf
return
endif
if index != -1
if index == 0
if len(buffers) > 1
@ -200,4 +208,18 @@ function! SpaceVim#mapping#menu(desc, key, cmd) abort
\ a:cmd])
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:

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', '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', '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', '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)

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', 'rank', 9999)
" markdown
let g:deoplete#ignore_sources.markdown = get(g:deoplete#ignore_sources, 'markdown', ['tag'])
" perl
let g:deoplete#omni#input_patterns.perl = get(g:deoplete#omni#input_patterns, 'perl', [
\'[^. \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', '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
let g:deoplete#omni#input_patterns.php = get(g:deoplete#omni#input_patterns, 'php', [
\'[^. \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_sort = get(g:, 'tagbar_sort', 0)
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')
autocmd FileType startify call <SID>update_logo()
endif
autocmd FileType startify setl scrolloff=0 nowrap
autocmd FileType startify setl nowrap
augroup END
if !exists('g:startify_custom_header')

View File

@ -35,18 +35,20 @@ CONTENTS *SpaceVim-contents*
12. lang#elixir.............................|SpaceVim-layer-lang-elixir|
13. lang#go.....................................|SpaceVim-layer-lang-go|
14. lang#java.................................|SpaceVim-layer-lang-java|
15. lang#kotlin.............................|SpaceVim-layer-lang-kotlin|
16. lang#ocaml...............................|SpaceVim-layer-lang-ocaml|
17. lang#php...................................|SpaceVim-layer-lang-php|
18. lang#puppet.............................|SpaceVim-layer-lang-puppet|
19. lang#python.............................|SpaceVim-layer-lang-python|
20. lang#rust.................................|SpaceVim-layer-lang-rust|
21. lang#scala...............................|SpaceVim-layer-lang-scala|
22. lang#tmux.................................|SpaceVim-layer-lang-tmux|
23. lang#xml...................................|SpaceVim-layer-lang-xml|
24. operator...................................|SpaceVim-layer-operator|
25. shell.........................................|SpaceVim-layer-shell|
26. tmux...........................................|SpaceVim-layer-tmux|
15. lang#julia...............................|SpaceVim-layer-lang-julia|
16. lang#kotlin.............................|SpaceVim-layer-lang-kotlin|
17. lang#ocaml...............................|SpaceVim-layer-lang-ocaml|
18. lang#php...................................|SpaceVim-layer-lang-php|
19. lang#pony.................................|SpaceVim-layer-lang-pony|
20. lang#puppet.............................|SpaceVim-layer-lang-puppet|
21. lang#python.............................|SpaceVim-layer-lang-python|
22. lang#rust.................................|SpaceVim-layer-lang-rust|
23. lang#scala...............................|SpaceVim-layer-lang-scala|
24. lang#tmux.................................|SpaceVim-layer-lang-tmux|
25. lang#xml...................................|SpaceVim-layer-lang-xml|
26. operator...................................|SpaceVim-layer-operator|
27. shell.........................................|SpaceVim-layer-shell|
28. tmux...........................................|SpaceVim-layer-tmux|
6. API........................................................|SpaceVim-api|
1. cmdlinemenu................................|SpaceVim-api-cmdlinemenu|
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
*g:spacevim_statusline_unicode_symbols*
Enable/Disable unicode symbols in statusline
*g:spacevim_enable_cursorcolumn*
Enable/Disable cursorcolumn. Default is 0, cursorcolumn will be highlighted in
normal mode. To enable this feature:
@ -298,6 +303,7 @@ Set SpaceVim windows index type, default is 0.
" 0: 1 ➛ ➊
" 1: 1 ➛ ➀
" 2: 1 ➛ ⓵
" 3: 1 ➛ 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.
==============================================================================
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*
@ -829,6 +843,9 @@ Requirements:
Composer Project
<
==============================================================================
LANG#PONY *SpaceVim-layer-lang-pony*
==============================================================================
LANG#PUPPET *SpaceVim-layer-lang-puppet*

View File

@ -1,3 +1,4 @@
source 'https://rubygems.org'
gem 'github-pages', 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
title: SpaceVim
description: A community-driven Vim distribution
description: A community-driven vim distribution
show_downloads: false
google_analytics: UA-89745542-1
project_repo_url: https://github.com/SpaceVim/SpaceVim
url: https://spacevim.org
logo: https://spacevim.org/SpaceVim.png
permalink: /:title/
gems:
plugins:
- jekyll-redirect-from
- 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>
<html>
<head>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client: "ca-pub-5073224535135889",
enable_page_level_ads: true
<head>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({
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>
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebSite",
"url": "https://spacevim.org/",
"name": "{{ page.title | default: Home }} - SpaceVim",
"author": {
"@type": "Person",
"name": "Shidong Wang"
},
"description": "{{ site.description }}",
"publisher": "Shidong Wang",
"potentialAction": {
"@type": "SearchAction",
"target": "https://spacevim.org/?s={search_term}",
"query-input": "required name=search_term" }
}
</script>
<script>
var _hmt = _hmt || [];
(function() {
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]>
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>
<![endif]-->
<!--[if lt IE 8]>
<!--[if lt IE 8]>
<link rel="stylesheet" href="{{ '/assets/css/ie.css' | relative_url }}">
<![endif]-->
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<script>
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
}
else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
</script>
</head>
<body>
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-PCLWNCD"
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<script>
(function() {
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
} else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
</script>
</head>
<body>
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-PCLWNCD"
height="0" width="0" style="display:none;visibility:hidden"></iframe>
</noscript>
<!-- End Google Tag Manager (noscript) -->
<a href="https://github.com/SpaceVim/SpaceVim">
<!-- End Google Tag Manager (noscript) -->
<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;"/>
</a>
<div class="wrapper">
<div class="wrapper">
<section>
<div id="title">
<h1>{{ site.title | default: site.github.repository_name }}</h1>
<p>{{ site.description | default: site.github.project_tagline }}</p>
<hr>
<p align="center">
<b><a href="{{ site.url }}">Home</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 }}/development">Development</a></b> |
<b><a href="{{ site.url }}/community">Community</a></b> |
<b><a href="{{ site.url }}/sponsors">Sponsors</a></b>
</p>
<hr>
</div>
<section>
<div id="title">
<h1>{{ site.title | default: site.github.repository_name }}</h1>
<p>{{ site.description | default: site.github.project_tagline }}</p>
<hr>
<p align="center">
<b><a href="{{ site.url }}">Home</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 }}/development">Development</a></b> |
<b><a href="{{ site.url }}/community">Community</a></b> |
<b><a href="{{ site.url }}/sponsors">Sponsors</a></b>
</p>
<hr>
</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>

View File

@ -1,5 +1,6 @@
---
title: "About"
description: "Introduction about SpaceVim organization."
---
# 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"
permalink: "/development"
redirect_from: "/development/index.html"
description: "A guide for contributing to SpaceVim."
---
# Development

View File

@ -1,136 +1,138 @@
---
title: "Documentation"
description: "A guide for using SpaceVim."
---
# SpaceVim Documentation
<!-- vim-markdown-toc GFM -->
* [Core Pillars](#core-pillars)
* [Mnemonic](#mnemonic)
* [Discoverable](#discoverable)
* [Consistent](#consistent)
* [Crowd-Configured](#crowd-configured)
* [Highlighted features](#highlighted-features)
* [Screenshots](#screenshots)
* [welcome page](#welcome-page)
* [working flow](#working-flow)
* [Who can benefit from this?](#who-can-benefit-from-this)
* [Update and Rollback](#update-and-rollback)
* [Update SpaceVim itself](#update-spacevim-itself)
* [Automatic Updates](#automatic-updates)
* [Updating from the SpaceVim Buffer](#updating-from-the-spacevim-buffer)
* [Updating Manually with git](#updating-manually-with-git)
* [Update plugins](#update-plugins)
* [Configuration layers](#configuration-layers)
* [Custom Configuration](#custom-configuration)
* [Automatic Generation](#automatic-generation)
* [Alternative directory](#alternative-directory)
* [Concepts](#concepts)
* [Transient-states](#transient-states)
* [Awesome ui](#awesome-ui)
* [Colorschemes](#colorschemes)
* [Font](#font)
* [UI Toggles](#ui-toggles)
* [Statusline && tabline](#statusline--tabline)
* [statusline](#statusline)
* [tabline](#tabline)
* [Manual](#manual)
* [Completion](#completion)
* [Unite/Denite](#unitedenite)
* [Mappings within unite/denite buffer](#mappings-within-unitedenite-buffer)
* [Discovering](#discovering)
* [Mappings](#mappings)
* [Mappings guide](#mappings-guide)
* [Unide/Denite describe key bindings](#unidedenite-describe-key-bindings)
* [Getting help](#getting-help)
* [Available layers](#available-layers)
* [Available plugins in SpaceVim](#available-plugins-in-spacevim)
* [New packages from ELPA repositories](#new-packages-from-elpa-repositories)
* [Toggles](#toggles)
* [Navigating](#navigating)
* [Point/Cursor](#pointcursor)
* [Vim motions with vim-easymotion](#vim-motions-with-vim-easymotion)
* [quick-jump-link mode (TODO)](#quick-jump-link-mode-todo)
* [Unimpaired bindings](#unimpaired-bindings)
* [Jumping, Joining and Splitting](#jumping-joining-and-splitting)
* [Jumping](#jumping)
* [Joining and splitting](#joining-and-splitting)
* [Window manipulation](#window-manipulation)
* [Window manipulation key bindings](#window-manipulation-key-bindings)
* [Buffers and Files](#buffers-and-files)
* [Buffers manipulation key bindings](#buffers-manipulation-key-bindings)
* [Create a new empty buffer](#create-a-new-empty-buffer)
* [Special Buffers](#special-buffers)
* [Files manipulations key bindings](#files-manipulations-key-bindings)
* [Vim and SpaceVim files](#vim-and-spacevim-files)
* [File tree](#file-tree)
* [File tree navigation](#file-tree-navigation)
* [Open file with file tree.](#open-file-with-file-tree)
* [Commands starting with `g`](#commands-starting-with-g)
* [Commands starting with `z`](#commands-starting-with-z)
* [Auto-saving](#auto-saving)
* [Searching](#searching)
* [With an external tool](#with-an-external-tool)
* [Useful key bindings](#useful-key-bindings)
* [Searching in current file](#searching-in-current-file)
* [Searching in all loaded buffers](#searching-in-all-loaded-buffers)
* [Searching in an arbitrary directory](#searching-in-an-arbitrary-directory)
* [Searching in a project](#searching-in-a-project)
* [Background searching in a project](#background-searching-in-a-project)
* [Searching the web](#searching-the-web)
* [Searching on the fly](#searching-on-the-fly)
* [Persistent highlighting](#persistent-highlighting)
* [Editing](#editing)
* [Paste text](#paste-text)
* [Auto-indent pasted text](#auto-indent-pasted-text)
* [Text manipulation commands](#text-manipulation-commands)
* [Text insertion commands](#text-insertion-commands)
* [Commenting](#commenting)
* [Multi-Encodings](#multi-encodings)
* [Errors handling](#errors-handling)
* [Managing projects](#managing-projects)
* [Achievements](#achievements)
* [issues](#issues)
* [Stars, forks and watchers](#stars-forks-and-watchers)
* [Features](#features)
* [Awesome ui](#awesome-ui-1)
* [Mnemonic key bindings](#mnemonic-key-bindings)
* [Language specific mode](#language-specific-mode)
* [Key Mapping](#key-mapping)
* [c/c++ support](#cc-support)
* [go support](#go-support)
* [python support](#python-support)
* [Neovim centric - Dark powered mode of SpaceVim.](#neovim-centric---dark-powered-mode-of-spacevim)
* [Modular configuration](#modular-configuration)
* [Multiple leader mode](#multiple-leader-mode)
* [Global origin vim leader](#global-origin-vim-leader)
* [Local origin vim leader](#local-origin-vim-leader)
* [Windows function leader](#windows-function-leader)
* [Unite work flow leader](#unite-work-flow-leader)
* [Unite centric work-flow](#unite-centric-work-flow)
* [Plugin Highlights](#plugin-highlights)
* [Non Lazy-Loaded Plugins](#non-lazy-loaded-plugins)
* [Lazy-Loaded Plugins](#lazy-loaded-plugins)
* [Language](#language)
* [Commands](#commands)
* [Commands](#commands-1)
* [Completion](#completion-1)
* [Unite](#unite)
* [Operators & Text Objects](#operators--text-objects)
* [Custom Key bindings](#custom-key-bindings)
* [File Operations](#file-operations)
* [Editor UI](#editor-ui)
* [Window Management](#window-management)
* [Native functions](#native-functions)
* [Plugin: Unite](#plugin-unite)
* [Plugin: neocomplete](#plugin-neocomplete)
* [Plugin: NERD Commenter](#plugin-nerd-commenter)
* [Plugin: Goyo and Limelight](#plugin-goyo-and-limelight)
* [Plugin: ChooseWin](#plugin-choosewin)
* [Plugin: Bookmarks](#plugin-bookmarks)
* [Plugin: Gina/Gita](#plugin-ginagita)
* [Plugin: vim-signify](#plugin-vim-signify)
* [Misc Plugins](#misc-plugins)
- [Core Pillars](#core-pillars)
- [Mnemonic](#mnemonic)
- [Discoverable](#discoverable)
- [Consistent](#consistent)
- [Crowd-Configured](#crowd-configured)
- [Highlighted features](#highlighted-features)
- [Screenshots](#screenshots)
- [welcome page](#welcome-page)
- [working flow](#working-flow)
- [Who can benefit from this?](#who-can-benefit-from-this)
- [Update and Rollback](#update-and-rollback)
- [Update SpaceVim itself](#update-spacevim-itself)
- [Automatic Updates](#automatic-updates)
- [Updating from the SpaceVim Buffer](#updating-from-the-spacevim-buffer)
- [Updating Manually with git](#updating-manually-with-git)
- [Update plugins](#update-plugins)
- [Configuration layers](#configuration-layers)
- [Custom Configuration](#custom-configuration)
- [Automatic Generation](#automatic-generation)
- [Alternative directory](#alternative-directory)
- [Concepts](#concepts)
- [Transient-states](#transient-states)
- [Awesome ui](#awesome-ui)
- [Colorschemes](#colorschemes)
- [Font](#font)
- [UI Toggles](#ui-toggles)
- [Statusline && tabline](#statusline--tabline)
- [statusline](#statusline)
- [tabline](#tabline)
- [Manual](#manual)
- [Completion](#completion)
- [Unite/Denite](#unitedenite)
- [Mappings within unite/denite buffer](#mappings-within-unitedenite-buffer)
- [Discovering](#discovering)
- [Mappings](#mappings)
- [Mappings guide](#mappings-guide)
- [Unide/Denite describe key bindings](#unidedenite-describe-key-bindings)
- [Getting help](#getting-help)
- [Available layers](#available-layers)
- [Available plugins in SpaceVim](#available-plugins-in-spacevim)
- [New packages from ELPA repositories](#new-packages-from-elpa-repositories)
- [Toggles](#toggles)
- [Navigating](#navigating)
- [Point/Cursor](#pointcursor)
- [Vim motions with vim-easymotion](#vim-motions-with-vim-easymotion)
- [quick-jump-link mode (TODO)](#quick-jump-link-mode-todo)
- [Unimpaired bindings](#unimpaired-bindings)
- [Jumping, Joining and Splitting](#jumping-joining-and-splitting)
- [Jumping](#jumping)
- [Joining and splitting](#joining-and-splitting)
- [Window manipulation](#window-manipulation)
- [Window manipulation key bindings](#window-manipulation-key-bindings)
- [Buffers and Files](#buffers-and-files)
- [Buffers manipulation key bindings](#buffers-manipulation-key-bindings)
- [Create a new empty buffer](#create-a-new-empty-buffer)
- [Special Buffers](#special-buffers)
- [Files manipulations key bindings](#files-manipulations-key-bindings)
- [Vim and SpaceVim files](#vim-and-spacevim-files)
- [File tree](#file-tree)
- [File tree navigation](#file-tree-navigation)
- [Open file with file tree.](#open-file-with-file-tree)
- [Commands starting with `g`](#commands-starting-with-g)
- [Commands starting with `z`](#commands-starting-with-z)
- [Auto-saving](#auto-saving)
- [Searching](#searching)
- [With an external tool](#with-an-external-tool)
- [Useful key bindings](#useful-key-bindings)
- [Searching in current file](#searching-in-current-file)
- [Searching in all loaded buffers](#searching-in-all-loaded-buffers)
- [Searching in an arbitrary directory](#searching-in-an-arbitrary-directory)
- [Searching in a project](#searching-in-a-project)
- [Background searching in a project](#background-searching-in-a-project)
- [Searching the web](#searching-the-web)
- [Searching on the fly](#searching-on-the-fly)
- [Persistent highlighting](#persistent-highlighting)
- [Editing](#editing)
- [Paste text](#paste-text)
- [Auto-indent pasted text](#auto-indent-pasted-text)
- [Text manipulation commands](#text-manipulation-commands)
- [Text insertion commands](#text-insertion-commands)
- [Commenting](#commenting)
- [Multi-Encodings](#multi-encodings)
- [Errors handling](#errors-handling)
- [Managing projects](#managing-projects)
- [Achievements](#achievements)
- [issues](#issues)
- [Stars, forks and watchers](#stars-forks-and-watchers)
- [Features](#features)
- [Awesome ui](#awesome-ui-1)
- [Mnemonic key bindings](#mnemonic-key-bindings)
- [Language specific mode](#language-specific-mode)
- [Key Mapping](#key-mapping)
- [c/c++ support](#cc-support)
- [go support](#go-support)
- [python support](#python-support)
- [Neovim centric - Dark powered mode of SpaceVim.](#neovim-centric---dark-powered-mode-of-spacevim)
- [Modular configuration](#modular-configuration)
- [Multiple leader mode](#multiple-leader-mode)
- [Global origin vim leader](#global-origin-vim-leader)
- [Local origin vim leader](#local-origin-vim-leader)
- [Windows function leader](#windows-function-leader)
- [Unite work flow leader](#unite-work-flow-leader)
- [Unite centric work-flow](#unite-centric-work-flow)
- [Plugin Highlights](#plugin-highlights)
- [Non Lazy-Loaded Plugins](#non-lazy-loaded-plugins)
- [Lazy-Loaded Plugins](#lazy-loaded-plugins)
- [Language](#language)
- [Commands](#commands)
- [Commands](#commands-1)
- [Completion](#completion-1)
- [Unite](#unite)
- [Operators & Text Objects](#operators--text-objects)
- [Custom Key bindings](#custom-key-bindings)
- [File Operations](#file-operations)
- [Editor UI](#editor-ui)
- [Window Management](#window-management)
- [Native functions](#native-functions)
- [Plugin: Unite](#plugin-unite)
- [Plugin: neocomplete](#plugin-neocomplete)
- [Plugin: NERD Commenter](#plugin-nerd-commenter)
- [Plugin: Goyo and Limelight](#plugin-goyo-and-limelight)
- [Plugin: ChooseWin](#plugin-choosewin)
- [Plugin: Bookmarks](#plugin-bookmarks)
- [Plugin: Gina/Gita](#plugin-ginagita)
- [Plugin: vim-signify](#plugin-vim-signify)
- [Misc Plugins](#misc-plugins)
<!-- vim-markdown-toc -->
@ -158,19 +160,19 @@ Community-driven configuration provides curated packages tuned by power users an
## Highlighted features
- **Great documentation:** access documentation in Vim with
<kbd>:h SpaceVim</kbd>.
- **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.
- **Mnemonic key bindings:** commands have mnemonic prefixes like
<kbd>[Window]</kbd> for all the window and buffer commands or <kbd>[Unite]</kbd> for the
unite work flow commands.
- **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.
- **Batteries included:** discover hundreds of ready-to-use packages nicely
organised in configuration layers following a set of
[conventions](http://spacevim.org/development/).
- **Neovim centric:** Dark powered mode of SpaceVim
- **Great documentation:** access documentation in Vim with
<kbd>:h SpaceVim</kbd>.
- **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.
- **Mnemonic key bindings:** commands have mnemonic prefixes like
<kbd>[Window]</kbd> for all the window and buffer commands or <kbd>[Unite]</kbd> for the
unite work flow commands.
- **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.
- **Batteries included:** discover hundreds of ready-to-use packages nicely
organised in configuration layers following a set of
[conventions](http://spacevim.org/development/).
- **Neovim centric:** Dark powered mode of SpaceVim
## Screenshots
@ -192,11 +194,11 @@ to get more screenshots, see: [issue #415](https://github.com/SpaceVim/SpaceVim/
## Who can benefit from this?
- the **elementary** vim users.
- 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 learn a different way to edit files.
- Vim users wanting a simple but deep configuration system.
- the **elementary** vim users.
- 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 learn a different way to edit files.
- Vim users wanting a simple but deep configuration system.
## Update and Rollback
@ -313,8 +315,8 @@ Move Text Transient State:
SpaceVim has a minimalistic and distraction free UI:
- custom airline with color feedback according to current check status
- custom icon in sign column and error feedbacks for checker.
- custom airline with color feedback according to current check status
- custom icon in sign column and error feedbacks for checker.
### 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 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 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 s | toggle syntax highlighting |
| 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:
- tabline index of each buffer or tab.
- vim mode (INSERT/NORMAL etc.)
- git info : diff/branch
- checker info: numbers of errors and warnings.
- trailing line number.
- tabline index of each buffer or tab.
- vim mode (INSERT/NORMAL etc.)
- git info : diff/branch
- checker info: numbers of errors and warnings.
- trailing line number.
- enabled feature of SpaceVim
- file information
- search index
| 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.
- show the window number
- color code for current state
- show the number of search results
- toggle syntax checking info
- toggle battery info
- toggle minor mode lighters
- show the window number
- color code for current state
- show the number of search results
- toggle syntax checking info
- toggle battery info
- toggle minor mode lighters
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:
| Key Binding | Description |
| ----------- | ------------------------------------------------------------- |
| `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 m` | toggle the minor mode lighters |
| `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 p` | toggle the cursor position |
| `SPC t m t` | toggle the time |
| `SPC t m T` | toggle the mode line itself |
| `SPC t m v` | toggle the version control info |
| Key Binding | Description |
| ----------- | ------------------------------------------------------------------- |
| `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)(TODO) |
| `SPC t m m` | toggle the minor mode lighters |
| `SPC t m M` | toggle the major mode |
| `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 t` | toggle the time |
| `SPC t m T` | toggle the mode line itself |
| `SPC t m v` | toggle the version control info |
**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`
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.
@ -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:
- [rg - ripgrep](https://github.com/BurntSushi/ripgrep)
- [ag - the silver searcher](https://github.com/ggreer/the_silver_searcher)
- [pt - the platinum searcher](https://github.com/monochromegane/the_platinum_searcher)
- [ack](https://beyondgrep.com/)
- grep
- [rg - ripgrep](https://github.com/BurntSushi/ripgrep)
- [ag - the silver searcher](https://github.com/ggreer/the_silver_searcher)
- [pt - the platinum searcher](https://github.com/monochromegane/the_platinum_searcher)
- [ack](https://beyondgrep.com/)
- 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`.
@ -1031,8 +1036,8 @@ It is possible to search in the current file by double pressing the second key o
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.
- It is also possible to search in several directories at once by marking them in the unite buffer.
- `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.
**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 r` | align region using user-specified regexp (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 SPC` | Delete all spaces and tabs around point, leaving one space |
| `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`
> > > > > > > dev
#### Multi-Encodings
SpaceVim use utf-8 as default encoding. there are four options for these case:
- fileencodings (fencs): ucs-bom,utf-8,default,latin1
- fileencoding (fenc): utf-8
- encoding (enc): utf-8
- termencoding (tenc): utf-8 (only supported in vim)
- fileencodings (fencs): ucs-bom,utf-8,default,latin1
- fileencoding (fenc): utf-8
- encoding (enc): utf-8
- 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:
@ -1348,7 +1351,7 @@ project manager commands start with `p`:
### Awesome ui
- outline + filemanager + checker
- outline + filemanager + checker
![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
1. code completion: autocompletion and fuzzy match.
![completion-fuzzy-match](https://cloud.githubusercontent.com/assets/13142418/22505960/df9068de-e8b8-11e6-943e-d79ceca095f1.png)
2. syntax check: Asynchronous linting and make framework.
![syntax-check](https://cloud.githubusercontent.com/assets/13142418/22506340/e28b4782-e8ba-11e6-974b-ca29574dcc1f.png)
1. code completion: autocompletion and fuzzy match.
![completion-fuzzy-match](https://cloud.githubusercontent.com/assets/13142418/22505960/df9068de-e8b8-11e6-943e-d79ceca095f1.png)
2. syntax check: Asynchronous linting and make framework.
![syntax-check](https://cloud.githubusercontent.com/assets/13142418/22506340/e28b4782-e8ba-11e6-974b-ca29574dcc1f.png)
### go support
1. code completion:
![2017-02-01_1360x721](https://cloud.githubusercontent.com/assets/13142418/22508345/8215c5e4-e8c4-11e6-95ec-f2a6e1e2f4d2.png)
2. syntax check:
![2017-02-01_1359x720](https://cloud.githubusercontent.com/assets/13142418/22509944/108b6508-e8cb-11e6-8104-6310a29ae796.png)
1. code completion:
![2017-02-01_1360x721](https://cloud.githubusercontent.com/assets/13142418/22508345/8215c5e4-e8c4-11e6-95ec-f2a6e1e2f4d2.png)
2. syntax check:
![2017-02-01_1359x720](https://cloud.githubusercontent.com/assets/13142418/22509944/108b6508-e8cb-11e6-8104-6310a29ae796.png)
### python support
1. code completion:
![2017-02-02_1360x724](https://cloud.githubusercontent.com/assets/13142418/22537799/7d1d47fe-e948-11e6-8168-a82e3f688554.png)
2. syntax check:
![2017-02-02_1358x720](https://cloud.githubusercontent.com/assets/13142418/22537883/36de7b5e-e949-11e6-866f-73c48e8f59aa.png)
1. code completion:
![2017-02-02_1360x724](https://cloud.githubusercontent.com/assets/13142418/22537799/7d1d47fe-e948-11e6-8168-a82e3f688554.png)
2. syntax check:
![2017-02-02_1358x720](https://cloud.githubusercontent.com/assets/13142418/22537883/36de7b5e-e949-11e6-866f-73c48e8f59aa.png)
## Neovim centric - Dark powered mode of SpaceVim.
By default, SpaceVim use these dark powered plugins:
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
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
TODO:
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
3. [denite.nvim](https://github.com/Shougo/denite.nvim) - Dark powered asynchronous unite all interfaces for Neovim/Vim8
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
3. [denite.nvim](https://github.com/Shougo/denite.nvim) - Dark powered asynchronous unite all interfaces for Neovim/Vim8
## 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
#### Plugin Highlights
- Package management with caching enabled and lazy loading
- Project-aware tabs and label
- Vimfiler as file-manager + SSH connections
- Go completion via vim-go and gocode
- Javascript completion via Tern
- PHP completion, indent, folds, syntax
- Python jedi completion, pep8 convention
- Languages: Ansible, css3, csv, json, less, markdown, mustache
- Helpers: Undo tree, bookmarks, git, tmux navigation,
hex editor, sessions, and much more.
- Package management with caching enabled and lazy loading
- Project-aware tabs and label
- Vimfiler as file-manager + SSH connections
- Go completion via vim-go and gocode
- Javascript completion via Tern
- PHP completion, indent, folds, syntax
- Python jedi completion, pep8 convention
- Languages: Ansible, css3, csv, json, less, markdown, mustache
- Helpers: Undo tree, bookmarks, git, tmux navigation,
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

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"
description: "SpaceVim is a community-driven vim distribution that seeks to provide layer feature."
---
# Introduction
@ -28,6 +29,7 @@ If you are using linux or mac os, it is recommended to use this command to insta
```sh
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.
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
- 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.
make sure you have a backup of your own vimfiles.
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.
```sh
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 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.
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.
```sh
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
[Newsletter #1 - A New Hope]()
[Newsletter #1 - A New Hope](https://spacevim.org/SpaceVim-Newsletter-A-New-Hope/)
> Published on: 2017-5-31
More posts are in the [SpaceVim's Blog](https://spacevim.org/blog/)
[Follow @SpaceVim](https://twitter.com/SpaceVim)
## Impressions
## 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).
@ -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?
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?

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 |
| ------------- | :-------------------------------: | ---------------------------------------------------------- |

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.
Mappings
## Layer Installation
Key | mode | description
--- | --- | ------------
SPC l ft | Normal | Format table under cursor
SPC l p | Normal | Real-time markdown preview
To use this configuration layer, add `call SpaceVim#layers#load('lang#markdown')` to your custom configuration file.
## formatting
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.