我最近发现,当你输入不间断空格(nbsp)在 HTML 文档中
,将 设置encoding
为 utf-8,则无需nbsp;
反复输入来格式化文本。我一开始
想,嘿,为什么我不像这样将其映射到空格键:imap <SPACE> <C-R>=nr2char(160)<CR>
。
后来我编辑了我的.vimrc
,当我重新启动 Vim 时,我收到了十几个错误,说某个函数需要名称,
尽管我已经给出了名称。我意识到nbsp
不被视为空格(duh),即使它
看起来像一个空格。所以,我认为更好的方法是进行每个文件类型的映射,这样当我编辑 html 文档时,空格会插入一个,而在编辑任何其他文件时会插入nbsp
一个正常空格。chr(32)
我该怎么做呢?
答案1
该au[tocommand]
命令采用已设置FileType
时运行的事件(例如,在使用文件名启动时)。例如:filetype
~/.vimrc
au Filetype python source ~/.vim/scripts/python.vim
答案2
您可以使用文件类型插件,只有当文件属于特定文件类型时才会获取资源。要进行此设置,请创建文件~/.vim/ftplugin/html.vim
并将命令放入此文件中。如果已有文件,您可以创建一个名为 html 的目录,然后目录中的每个文件都将被获取。请查看:h ftplugin-name
用于其他命名选项。(如果目录不存在,请创建它们)
您需要在 vimrc 中拥有的只是filetype plugin indent on
(缩进实际上不是必需的,但通常很有用)。
通过使用
map <buffer>
看看:h ftplugin
并:h filetype