diff options
author | Adam Stankiewicz <sheerun@sher.pl> | 2016-05-31 01:53:12 +0200 |
---|---|---|
committer | Adam Stankiewicz <sheerun@sher.pl> | 2016-05-31 01:53:12 +0200 |
commit | 44b3d860cb85ccb4edd52fb0dcf6a4102d12e82a (patch) | |
tree | 537e871f1d923c01c3d5098fd2958c198d093977 /ftplugin/crystal.vim | |
parent | 5a65ffe66d19da9989ae6b71962830ca6c80f5b5 (diff) | |
download | vim-polyglot-2.9.1.tar.gz vim-polyglot-2.9.1.zip |
Updatev2.9.1
Diffstat (limited to 'ftplugin/crystal.vim')
-rw-r--r-- | ftplugin/crystal.vim | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/ftplugin/crystal.vim b/ftplugin/crystal.vim index f990a8da..29aac72d 100644 --- a/ftplugin/crystal.vim +++ b/ftplugin/crystal.vim @@ -40,6 +40,30 @@ setlocal errorformat= \%C%p^, \%-C%.%# +let g:crystal_compiler_command = get(g:, 'crystal_compiler_command', 'crystal') +let g:crystal_auto_format = get(g:, 'crystal_auto_format', 0) + +command! -buffer -nargs=* CrystalImpl echo crystal_lang#impl(expand('%'), getpos('.'), <q-args>).output +command! -buffer -nargs=0 CrystalDef call crystal_lang#jump_to_definition(expand('%'), getpos('.')) +command! -buffer -nargs=* CrystalContext echo crystal_lang#context(expand('%'), getpos('.'), <q-args>).output +command! -buffer -nargs=* CrystalHierarchy echo crystal_lang#type_hierarchy(expand('%'), <q-args>) +command! -buffer -nargs=? CrystalSpecSwitch call crystal_lang#switch_spec_file(<f-args>) +command! -buffer -nargs=? CrystalSpecRunAll call crystal_lang#run_all_spec(<f-args>) +command! -buffer -nargs=? CrystalSpecRunCurrent call crystal_lang#run_current_spec(<f-args>) +command! -buffer -nargs=* -bar CrystalFormat call crystal_lang#format(<q-args>) + +nnoremap <Plug>(crystal-jump-to-definition) :<C-u>CrystalDef<CR> +nnoremap <Plug>(crystal-show-context) :<C-u>CrystalContext<CR> +nnoremap <Plug>(crystal-spec-switch) :<C-u>CrystalSpecSwitch<CR> +nnoremap <Plug>(crystal-spec-run-all) :<C-u>CrystalSpecRunAll<CR> +nnoremap <Plug>(crystal-spec-run-current) :<C-u>CrystalSpecRunCurrent<CR> +nnoremap <Plug>(crystal-format) :<C-u>CrystalFormat<CR> + +augroup plugin-ft-crystal + autocmd! + autocmd BufWritePre <buffer> if g:crystal_auto_format | CrystalFormat | endif +augroup END + if get(g:, 'crystal_define_mappings', 1) nmap <buffer>gd <Plug>(crystal-jump-to-definition) nmap <buffer>gc <Plug>(crystal-show-context) |