我具有以下配置,但是当我输入一个eruby文件然后返回到另一个文件时,F3仍然执行:Autoformat
。
noremap <F3> :Neoformat<CR>
autocmd FileType eruby bufdo map <F3> :Autoformat<CR>
我希望它仅在eruby缓冲区中应用该命令。
答案 0 :(得分:4)
首先,不要在此处使用bufdo
;它为所有缓冲区执行一条命令。其次,更喜欢<buffer>
映射。
使用自动命令:
augroup vimrc_eruby
au!
au FileType eruby noremap <buffer> <F3> :Autoformat<CR>
augroup END
但是,我强烈建议您阅读有关ftplugin
的内容并使用~/.vim/after/ftplugin/eruby.vim
。在vim的帮助中了解setlocal
,map-<buffer>
和b:undo_ftplugin
。
我已经写了几次关于在Vi&Vim StackExchange上使用这些工具的答案,以后可以链接到。