遠端
Nvim :help
頁面,由 產生,原始碼來自 來源,並使用 tree-sitter-vimdoc 解析器。
Vim 客戶端-伺服器通訊
Nvim 的
RPC 功能允許客戶端以程式化的方式控制 Nvim。Nvim 本身會接收命令列參數,使其成為另一個以伺服器形式運行的 Nvim 的客戶端。這些參數與 Vim 的 clientserver 選項提供的參數相符。
以下命令列參數可用
--remote [+{cmd}]
{file}
...
--remote在遠端 Vim 中開啟檔案清單。當沒有 Vim 伺服器時,在本機執行。Vim 允許一個初始命令:+{cmd}。這必須是一個可以接續 "|" 的 Ex 命令。Nvim 尚未支援此功能。命令列的其餘部分將被視為檔案清單。因此,任何非檔案參數都必須在此之前。你無法以這種方式編輯 stdin
--。遠端 Vim 會被喚起。如果你不想要這樣,請使用
nvim --remote-send "<C-\><C-N>:n filename<CR>"
--remote-silent [+{cmd}]
{file}
...
--remote-silent如同上述,但如果沒有伺服器,且檔案在本機編輯時,不會抱怨。
--remote-tab--remote-tab 類似 --remote,但會在新的標籤頁中開啟每個檔案。
--remote-tab-silent--remote-tab-silent 類似 --remote-silent,但會在新的標籤頁中開啟每個檔案。
--remote-send--remote-send
{keys}
將
{keys}
發送到伺服器並退出。
{keys}
不會被映射。特殊的按鍵名稱會被識別,例如 "<CR>" 會產生一個 CR 字元。
--remote-expr--remote-expr
{expr}
在伺服器中評估
{expr}
並在 stdout 上印出結果。
--remote-ui--remote-ui 在終端機中顯示伺服器的 UI。完全互動:鍵盤和滑鼠輸入會轉發到伺服器。
--server--server
{addr}
連接到給定位址的具名管道或 socket,以執行遠端命令。請參閱
--listen 以了解如何在啟動伺服器時指定位址。
啟動一個在 '~/.cache/nvim/server.pipe' 的具名管道上監聽的 Nvim 伺服器
nvim --listen ~/.cache/nvim/server.pipe
在 '~/.cache/nvim/server.pipe' 上監聽的 Nvim 伺服器中編輯 "file.txt"
nvim --server ~/.cache/nvim/server.pipe --remote file.txt
這無效,--remote 後的所有參數都會被當作檔案名稱
nvim --remote --server ~/.cache/nvim/server.pipe file.txt
告訴遠端伺服器寫入所有檔案並退出
nvim --server ~/.cache/nvim/server.pipe --remote-send '<C-\><C-N>:wqa<CR>'
遠端編輯
--remote 參數會導致從命令列的其餘部分建構一個
:drop 命令,並如上所述發送。請注意,--remote 和 --remote-wait 參數將會消耗命令列的其餘部分。也就是說,所有剩餘的參數都會被視為檔案名稱。你不能在那裡放置選項!
Vim 在 clientserver 中支援額外功能,但 Nvim 尚未實作。特別是,尚未支援任何 "wait" 變體。以下命令列參數尚不可用
--remote-wait [+{cmd}]
{file}
...
--remote-waitNvim 尚未支援。如同 --remote,但會等待遠端 Vim 中的檔案完成(卸載)。--remote-wait-silent [+{cmd}]
{file}
...
--remote-wait-silentNvim 尚未支援。如同 --remote-wait,但如果沒有伺服器,不會抱怨。
--remote-tab-wait--remote-tab-wait Nvim 尚未支援。如同 --remote-wait,但會在新的標籤頁中開啟每個檔案。
--remote-tab-wait-silent--remote-tab-wait-silent Nvim 尚未支援。如同 --remote-wait-silent,但會在新的標籤頁中開啟每個檔案。
--servername--servername
{name}
Nvim 尚未支援。成為伺服器
{name}
。當與其中一個 --remote 命令一起使用時:連接到伺服器
{name}
,而不是預設的(見下文)。使用的名稱將會是大寫。
預設情況下,Vim 會嘗試註冊它被調用的名稱(gvim、egvim ...)。可以使用 --servername 參數覆蓋此設定。Nvim 會監聽具名管道或 socket,並且尚未支援此 --servername 功能。