我想让bash中的标签完成更加智能化.
假设我有一个带有src文件的文件夹.lisp,以及该文件.fasl的编译版本.我想键入vi filename [tab tab],并且.lisp autocompletes作为唯一选项.也就是说,我不太可能希望vim打开已编译的二进制文件,因此不要在自动完成选项列表中进行循环.
是否有一种方法可以保留自动完成忽略的扩展列表,或以某种方式为vim自定义,以便自动完成在bash命令以vi开头时仅忽略特定的文件扩展名...
任何想法都表示赞赏.
谢谢!
Pau*_*ce. 11
来自man bash
:
FIGNORE
执行文件名完成时要忽略的以冒号分隔的后缀列表.后缀与其中一个条目
FIGNORE
匹配的文件名将从匹配的文件名列表中排除.样本值为".o:~"
(在为此变量赋值时需要引用,其中包含波浪号).
因此,对于您的示例,可以在您的.bashrc
文件中
设置
FIGNORE=".o:~:.fasl"
Run Code Online (Sandbox Code Playgroud)
或者,如果您想保留任何其他网站范围的设置:
FIGNORE=".o:~:.fasl:$FIGNORE"
Run Code Online (Sandbox Code Playgroud)
bashcomplete
命令似乎就是你想要的。
这是Linux Journal上“完整”命令视频的链接。这是后续页面有关使用 Bash Complete 命令的更多信息
这些链接很好地解释了它,这是一个相关的问题/答案:Bash autocompletion across a symbolic link