mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-02-03 07:30:05 +08:00
108 lines
2.9 KiB
VimL
Vendored
108 lines
2.9 KiB
VimL
Vendored
" Based on https://github.com/tweekmonster/braceless.vim/blob/master/test/vim/vimrc
|
|
" TODO: provide this by default in the Docker image already?! e.g. /vimrc?!
|
|
|
|
set noloadplugins
|
|
|
|
" Indicator for tests being run.
|
|
let g:neomake_test_messages = []
|
|
|
|
" Shorter timeouts during tests.
|
|
let g:neomake_action_queue_timeouts = {1: 10, 2: 20, 3: 30}
|
|
|
|
" Remove some overhead by default, tested explicitly.
|
|
let g:neomake_echo_current_error = 0
|
|
|
|
let s:slash = has('win32') ? '\' : '/'
|
|
|
|
if exists('$NEOMAKE_TESTS_DEP_PLUGINS_DIR')
|
|
let s:dep_plugins_base = $NEOMAKE_TESTS_DEP_PLUGINS_DIR
|
|
else
|
|
let s:dep_plugins_base = join(
|
|
\ [expand('<sfile>:p:h'), '..', '..', 'build', 'vim', 'plugins'],
|
|
\ s:slash)
|
|
endif
|
|
|
|
if exists('$TESTS_VADER_DIR')
|
|
let s:vader_dir = expand($TESTS_VADER_DIR)
|
|
else
|
|
let s:vader_dir = s:dep_plugins_base . s:slash . 'vader'
|
|
endif
|
|
|
|
let &runtimepath .= ','.s:vader_dir
|
|
exe 'source' join([s:vader_dir, 'plugin', 'vader.vim'], s:slash)
|
|
|
|
function! s:load_plugin_on_demand(name) abort
|
|
Save &runtimepath
|
|
|
|
" Restore/unset "loaded" var, to not skip loading on second invocation.
|
|
let var_name = substitute(a:name, '^vim-', '', '')
|
|
exe printf('Save g:loaded_%s', var_name)
|
|
|
|
let dir = s:dep_plugins_base.'/'.a:name
|
|
let &runtimepath .= ','.dir
|
|
|
|
let funcs_before = map(split(neomake#utils#redir('function /\C^[A-Z]'), '\n'),
|
|
\ "substitute(v:val, '\\v^function (.*)\\(.*$', '\\1', '')")
|
|
|
|
exe 'source '.join([dir, 'plugin', '*.vim'], s:slash)
|
|
|
|
let funcs_after = map(split(neomake#utils#redir('function /\C^[A-Z]'), '\n'),
|
|
\ "substitute(v:val, '\\v^function (.*)\\(.*$', '\\1', '')")
|
|
|
|
" Add new functions defined in the plugin to g:neomake_test_funcs_before,
|
|
" e.g. FugitiveDetect.
|
|
for f in funcs_after
|
|
if index(funcs_before, f) == -1
|
|
call add(g:neomake_test_funcs_before, f)
|
|
endif
|
|
endfor
|
|
endfunction
|
|
command! -nargs=1 NeomakeTestsLoadPlugin call s:load_plugin_on_demand(<args>)
|
|
|
|
let s:plugin_dir = expand('<sfile>:p:h:h:h')
|
|
let &runtimepath .= ','.s:plugin_dir
|
|
|
|
exe 'source' join([s:plugin_dir, 'plugin', 'neomake.vim'], s:slash)
|
|
|
|
filetype plugin indent on
|
|
|
|
augroup ssshhhhhh
|
|
autocmd VimEnter * set visualbell t_vb=
|
|
autocmd GUIEnter * set visualbell t_vb=
|
|
augroup END
|
|
|
|
set noswapfile
|
|
syntax on
|
|
set number
|
|
set background=dark
|
|
set colorcolumn=80
|
|
set showcmd
|
|
set lazyredraw
|
|
set tabstop=4
|
|
set softtabstop=4
|
|
set shiftwidth=4
|
|
set expandtab
|
|
set backspace=2
|
|
set nofoldenable
|
|
set foldmethod=syntax
|
|
set foldlevelstart=10
|
|
set foldnestmax=10
|
|
set ttimeoutlen=0
|
|
set cmdheight=5
|
|
set textwidth=79
|
|
set hidden
|
|
set splitbelow " Easier for window numbers (incrementing).
|
|
set complete=. " Just simple completion from the current buffer.
|
|
|
|
let mapleader=','
|
|
|
|
" No '-- More --' prompt, which would hang Travis.
|
|
set nomore
|
|
|
|
if expand('$NEOMAKE_TEST_NO_COLORSCHEME') !=# '1'
|
|
colorscheme default
|
|
endif
|
|
|
|
" Avoid system call and warning.
|
|
let g:neomake_clippy_rustup_has_nightly = 0
|