原文地址:https://vimjc.com/vim-auto-complement.html。感謝原作者
在插入模式下,Vim可以不借助任何插件實現自動補全功能。介紹Vim自帶的單詞自動補全、行自動補全和基於用戶自定義字典的自動補全。
一、單詞補全
Ctrl + n
:當輸入完第一個字母后,再按Ctrl + n
,Vim會自動出現下拉菜單,且默認選中第一個單詞
繼續按 Ctrl + n
可以上下選擇,但如果緩衝區沒有可選單詞,那麼下拉列表不會有任何選項
Ctrl + p
:功能同上,只是默認選中的是列表最後一個單詞
二、行補全
在Vim插入模式下輸入已經存在行的第一個單詞,再按Ctrl + x
、Ctrl + l
命令,就會列出該整行出來實現Vim行自動補全
三、字典補全
假設有一個備選單詞表,文件名爲dict.txt,每行一個單詞,裏面包含以下內容:
https://vimjc.com
Hello
Vim
editor
best
tool
若要實現基於該單詞表的Vim自動補齊,需要設置以下步驟:
(1) 在~/.vimrc配置文件中加入代碼:set dictionary-=~/dict.txt dictionary+=~/dict.txt
(2) 打開Vim,在插入模式下輸入Ctrl + x
後再輸入Ctrl + k
,就能看到dict.txt文件中定義的單詞
(3) 若想直接通過Ctrl + n
命令就顯示其中的列表,再配置.vimrc文件,加入set complete-=k complete+=k
更多信息可以在Normal模式下查看幫助文檔:help dictionary
,要使用更加高價的自動補齊功能,推薦使用Vim youcomplateme插件。