簡體   English   中英

是否可以為:啟用bash_completion:或者:r!在VIM?

[英]Is it possible to enable bash_completion for :! or :r ! in VIM?

我可以使用:shell輸入當前目錄並運行命令。 bash_completion工作正常。

但是如何讓bash_completion工作 命令:r! 命令案例?

注意 我是Emacs用戶和Emacs M-! 命令不允許這樣的事情(也是Mx shell ,你需要Mx術語來獲得bash_completion)。

這不可能。 @Prince Goulash所指的是由vim本身完成的簡單文件名完成。 如果您知道如何在某處強制執行bash到管道完成變體,則可以為自定義命令創建一個完成函數,該函數可以依次調用內置函數:! ,但無法重新定義內置命令的完成。

我個人不知道如何用bash做到這一點,並且知道在zsh中嘗試這樣做會導致重新定義zsh內置命令(如compadd )的臟兮兮,使用pexpect(python),Expect(perl),expect(tcl) ),zsh / zpty或類似的東西在交互模式下運行shell並發明zsh-> vim IPC機制(相反方向它更簡單)(我曾經開始為zsh開發類似的模塊,但因為太多而停止了這方面的問題)。

你有嗎?

set nocompatible

在你的.vimrc中? 這將自動啟用ex模式完成:! 要查看可能的完成列表,您也可以使用

set wildmenu

並調查wildmode選項。

暫無
暫無

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

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