Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cd命令自动补全的bug #5

Closed
Kzinux opened this issue Feb 8, 2015 · 2 comments
Closed

cd命令自动补全的bug #5

Kzinux opened this issue Feb 8, 2015 · 2 comments

Comments

@Kzinux
Copy link

Kzinux commented Feb 8, 2015

当前环境:archlinux,zsh

当前目录test文件夹下有一个‘测试.txt'文件,输入命令 cd test/ ,然后按tab补全,会将测试.txt和test/作为候选项,测试.txt作为文件不应被列到cd补全列表里,test/作为上级目录也不应列到补全候选里。

如果不是中文文件名就没这个bug,比如当前目录test文件夹下有一个test.txt文件,输入 cd test/ ,按tab补全,zsh就会提示‘-- No Matches Found --’,不会将test.txt作为补全候选,也不会列出test/。

不知道描述清楚没,有需要另外信息请指教。

另外感谢petronny,简直是中文用户的神器。我这里也没有性能问题,感觉和没启用之前一样快。

@petronny
Copy link
Owner

petronny commented Feb 8, 2015

cd 的确会把文件也列出来,因为中文补全是由user-expand补全出来的,并且不区分补全文件还是补全目录。我还没有简便的解决方法,我再调查几日。

如果仅仅是cd命令的话,我可以写一个针对cd的补全,让他只补全目录

现在pinyin-comp是补全可能的东西和原始字串,所以两个test/和/test/测试.txt都会出现。
关于为什么要添加原始字串请参见 #3

@Kzinux
Copy link
Author

Kzinux commented Feb 8, 2015

多谢解释,看了一会儿总算看明白为什么添加原始字串。

添加原始字串倒没什么,不影响操作。但是cd就挺麻烦的,文件少多按几下tab就回到目录了,文件多的时候就不方便了。

比如test目录下只有一个10个txt,没有目录,分别为测试1.txt——测试10.txt,输入命令 cd test/ ,按tab补全,命令就变成cd test/测试10.txt ,目录在最后面,只能按Backspace键删掉后面的测试10.txt。

cd

如果能修正cd就好了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants