
我最近才發現,當你輸入不間斷空格(NBSP)在 HTML 文件中
並將其設為encoding
utf-8,您就不必nbsp;
重複輸入來設定文字格式。我一開始
想,嘿,為什麼我不把它像這樣映射到空白鍵:imap <SPACE> <C-R>=nr2char(160)<CR>
。
後來我編輯了我的文件.vimrc
,當我重新啟動 Vim 時,我收到了一些關於某些函數需要名稱的錯誤,
即使我已經給了它。我意識到,儘管它 看起來像一個空間,nbsp
但它並沒有被視為一個空間(廢話) 。
所以,我認為更好的方法是為每個文件類型映射,這樣當我編輯 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