我正在使用zsh
(5.0.2)。的自动完成功能evince
仅显示一些预定义扩展名的文件,其中包括pdf
和,ps
但没有djvu
。
如何使命令中的文件zsh
也自动完成?djvu
evince
或者等效地,与定义相关的扩展在哪里evince
?
两点评论:
在 中
/usr/share/zsh/functions/Completion
,rgrep evince
显示:Unix/_pspdf:#compdef evince gsbj gsdj gsdj500 gslj gslp gsnd ps2ascii ghostview mgv pstoedit pstotgif zathura Unix/_pdf:#compdef pdf2dsc pdf2ps pdfimages pdfinfo pdftopbm pdftops pdftotext pdfopt pdffonts kpdf apvlv evince epdfview
请注意,没有
Unix/_djvu
文件。在同一目录中,
rgrep djvu
显示:X/_okular:extns="{pdf,ps,eps,dvi}(.gz|.bz2)(#c,1)|djvu|tiff|chm|cbr|cbz"
再次注意,没有
X/_evince
文件。
我猜想可能的解决方案是使用X/_evince
正确的命令添加文件,或者Unix/_djvu
使用正确的命令添加文件,但这会产生一些问题:
- 向这些文件添加哪些正确的命令?我应该创建上面提到的两个文件吗?这些文件会被自动识别吗?
- 有没有清洁工解决问题的方法,是通过修改我的
.zshrc
,安装新的包,还是调用一个相关命令?