尝试解决 openSUSE 下 zypper [install/remove/update] 时软件包名称自动补全的问题

2014-12-15 19:35:49 +08:00
 fangpeishi
一年前从debian 换到opensese的时候,很不习惯zypper在安装软件包的时候不能自动补全,添加到todolist里面,后来停用evernote 给忘记了,前几天上去整理笔记发现了,所以尝试性得解决了下,另外顺带修了一个小bug,repo自动补全列表不全的问题。
bash自带补全功能,要达到更好的补全效果需要安装bash-completion这个软件包,然后编写对应的补全脚本。软件包名词的自动补全问题主要就是怎么快速的获取软件包的名称,然后作为列表供选。
一开始我是用zypper search 来获取,速度不堪忍受,(apt-get,aptitude 等的自动补全脚本是用apt-cache来获取,速度很快)。后来看了下libzypp,又看到 zypp-NameReqPrv 这个工具,试了下。
使用openSUSE的同学可以试一试,把下面这份脚本拷贝至 "/etc/bash_completion.d/zypper.sh" :
https://gist.github.com/fangpeishi/86e13a771ccea24a206b

速度快了一些,基本可以用了,不过感觉还不是太理想,特别是zypper install 的时候,不知还有什么改进的途径?
2478 次点击
所在节点    Linux
1 条回复
slrey
2015-05-01 00:19:07 +08:00
少年你想多了,zsh轻松解决。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/154131

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX