aboutsummaryrefslogtreecommitdiff
path: root/vim/after/ftplugin/vim.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim/after/ftplugin/vim.vim')
-rw-r--r--vim/after/ftplugin/vim.vim37
1 files changed, 37 insertions, 0 deletions
diff --git a/vim/after/ftplugin/vim.vim b/vim/after/ftplugin/vim.vim
new file mode 100644
index 00000000..fa65a65a
--- /dev/null
+++ b/vim/after/ftplugin/vim.vim
@@ -0,0 +1,37 @@
+" Extra configuration for 'vim' filetypes
+if &compatible || v:version < 700 || exists('b:did_ftplugin_after')
+ finish
+endif
+if &filetype !=# 'vim'
+ finish
+endif
+let b:did_ftplugin_after = 1
+let b:undo_ftplugin = b:undo_ftplugin
+ \ . '|unlet b:did_ftplugin_after'
+
+" Stop here if the user doesn't want ftplugin mappings
+if exists('g:no_plugin_maps') || exists('g:no_vim_maps')
+ finish
+endif
+
+" Set mappings
+nnoremap <buffer> <LocalLeader>l
+ \ :<C-U>call compiler#Make('vint')<CR>
+let b:undo_ftplugin = b:undo_ftplugin
+ \ . '|nunmap <buffer> <LocalLeader>l'
+
+" Add undo commands to fix clearing buffer-local vim maps that the core
+" ftplugin leaves in place
+let b:undo_ftplugin = b:undo_ftplugin
+ \ . '|nunmap <buffer> [['
+ \ . '|vunmap <buffer> [['
+ \ . '|nunmap <buffer> ]]'
+ \ . '|vunmap <buffer> ]]'
+ \ . '|nunmap <buffer> []'
+ \ . '|vunmap <buffer> []'
+ \ . '|nunmap <buffer> ]['
+ \ . '|vunmap <buffer> ]['
+ \ . '|nunmap <buffer> ]"'
+ \ . '|vunmap <buffer> ]"'
+ \ . '|nunmap <buffer> ["'
+ \ . '|vunmap <buffer> ["'