簡體   English   中英

在Vimrc中使用空格設置Pathvariable

[英]Set a Pathvariable in vimrc with whitespace

我嘗試將Vim設置為使用omnicppcomplete。

我按照結構c ++代碼完成的步驟逐步安裝它。 首先,我總是收到錯誤“找不到全完成(^ 0 ^ N ^ P)模式”。 很難弄清楚,但現在我知道為什么它不起作用了。 這是因為我的vimrc中的以下行

“設置標簽+ = C:\\ Program \\ Files \\(x86)\\ Vim \\ vim74 \\ tags \\ cpp”

Vim不能處理路徑中的空格,但是我不知道如何使它工作,除非將標記文件復制到另一個目錄(我嘗試並成功了)。 我嘗試了這些選項,但沒有任何效果:

  • C:\\ Program \\\\ Files \\\\(x86)\\ Vim \\ vim74 \\ tags \\ cpp
  • C:/程序\\文件\\(x86)/ Vim / vim74 /標簽/ cpp
  • C:\\ Program \\ <空間>文件<空間>(x86)\\ Vim \\ vim74 \\ tags \\ cpp
  • C:\\ Program \\ sFiles \\ s(x86)\\ Vim \\ vim74 \\ tags \\ cpp
  • C:\\ Program \\\\ sFiles \\\\ s(x86)\\ Vim \\ vim74 \\ tags \\ cpp
  • C:\\ Program / \\ sFiles / \\ s(x86)\\ Vim \\ vim74 \\ tags \\ cpp

我該如何寫路徑,以便omnicppcomplete可以使用標簽?

參見:help option-backslash 使用:set命令時,需要轉義每個反斜杠每個空格字符,因此需要三個反斜杠來設置帶空格的路徑! set tags+=C:\\\\Program\\\\\\ Files\\\\\\ (x86)\\\\Vim\\\\vim74\\\\tags\\\\cpp

有時,更好的方法是使用:let命令,以便可以使用單引號引起來的字符串,而不必進行太多轉義。 例如:let &tags.=',C:\\Program\\ Files\\ (x86)\\Vim\\vim74\\tags\\cpp'

嘗試這個:

let &tags .= ',C:\Program\ Files\ (x86)\Vim\vim74\tags\cpp'

選項opt也可以作為變量&opt進行訪問,該變量可以使用let進行操作,可以在表達式中使用,等等。 set不同, let具有幾乎合理的語法。

另外, tags路徑必須用逗號分隔。

我有同樣的問題。 嘗試僅在路徑中使用/ ,並使用“ \\”這樣的空格進行轉義。 例如,我在vimrc中添加以下行:

set rtp=C:/Program\ Files\ (x86)/Vim/vim74/vim.exe

比起執行:echo &rtp命令:echo &rtp您可以看到:

C:/Program Files (x86)/Vim/vim74/vim.exe

請注意,在空格前沒有\\

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM