aboutsummaryrefslogtreecommitdiff
path: root/vim/plugin/alternate_filetypes.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim/plugin/alternate_filetypes.vim')
-rw-r--r--vim/plugin/alternate_filetypes.vim13
1 files changed, 13 insertions, 0 deletions
diff --git a/vim/plugin/alternate_filetypes.vim b/vim/plugin/alternate_filetypes.vim
new file mode 100644
index 00000000..6e765feb
--- /dev/null
+++ b/vim/plugin/alternate_filetypes.vim
@@ -0,0 +1,13 @@
+function! s:AlternateFileType() abort
+ let filetypes = get(b:, 'alternate_filetypes', [&filetype])
+ if &filetype !=# filetypes[0]
+ let &filetype = filetypes[0]
+ endif
+ set filetype?
+endfunction
+command -bar AlternateFileType
+ \ call s:AlternateFileType()
+nnoremap <Plug>(AlternateFileType)
+ \ :<C-U>AlternateFileType<CR>
+nmap <Leader># <Plug>(AlternateFileType)
+nmap <Leader>3 <Leader>#