如何快速导航到我已安装的软件包?


15

当我进入包管理器(M-x package-list-packages)时,我想快速导航到已安装的包。

emacs软件包

从字面上看,有成千上万个标记为可用已安装内置的软件包,但是所有导航似乎都是逐行的。这是包管理器的疏忽吗?还是我忽略了一些显而易见的内容(当然,除了基本的字符串搜索之外)?


有一个Filter package list option,您可以通过按f或函数来调用它package-menu-filter
路加·希姆库斯

@KingShimkus:我正在运行emacs 24.3.1附带的标准软件包管理器,该软件包似乎没有软件包菜单过滤器,但是请多加注意!
杰夫·鲍尔2014年

2
如果发现Emacs软件包系统中的某些功能(无论便利还是重要)缺失或错误,请考虑使用进行报告以进行改进M-x report-emacs-bug。(这是针对增强请求以及错误的。)
Drew

3
Jeff Bauer:如果更新到Emacs 24.4,f则可以使用键过滤器功能。
2014年

2
f仅用于过滤关键字,不过滤状态。
dgtized

Answers:


10

我倾向于最终使用事件(或更确切地说是helm-swoop)来缩小选择范围。

但是,您也可以使用paradox,它扩展了基本软件包管理器的功能。这包括S x排序选项以及下一键和状态。它还具有自己的过滤器选项:尤其是,f u将缩小到受升级影响的所有软件包的范围。


3

如果您只是想使用completing-read(也许ido通过via ido-everywhereido-ubiquitous)在软件包列表之外快速打开已安装的软件包,这是另一个选择:

(defun open-package ()
  (interactive)
  (let* ((packages (mapcar 'symbol-name (mapcar 'car package-alist)))
         (package (completing-read "Open package: " packages nil t)))
    (find-library package)))
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.