gpt4 book ai didi

emacs - 我怎样才能简单地通过所有可用的文档文本进行 grep 搜索?

转载 作者:行者123 更新时间:2023-12-04 18:07:52 25 4
gpt4 key购买 nike

我确信 Emacs 的自我文档很棒,而且一切都很好,但我似乎无法理解它应该如何使用,而且由于谷歌搜索我需要的东西通常只需要几秒钟,我通常会求助于- 不完全令人满意! (而且离线时根本不可能,我更喜欢在旅行时等等。)

这让我想知道:为什么我不能只是通过所有本地安装的文档“谷歌”,给我任何看起来像我正在搜索的字符串的东西?我想这甚至可以通过简单的grep从命令行 ping 通所有文件,但这不是这样做的方法。
apropos听起来它应该做这样的事情,但它没有......我从来没有发现任何我不知道的命令。

最佳答案

这是我以前写的几个答案,它们可能会让您指出正确的方向。没有一个(默认)命令可以搜索所有文档源,但大多数时候都可以。

(请注意,我从来没有调查过这方面的第三方库;很可能有一些东西可以采用更全面的方法来搜索文档。)

  • how do I get started using Emacs' documentation?
  • Emacs: Open a specific Info section
  • How to efficiently search Info documentation?
  • M-x elisp-index-searchM-x emacs-index-search是优秀的第一停靠港。
    M-x info-apropos不太知名但非常有用,因为它搜索系统上所有已知信息文件的索引。当然,它相应地比其他功能慢。

    最重要的是,确保您知道如何使用信息阅读器! (有关一些更重要的详细信息,请参阅这些链接)。

    我使用以下绑定(bind)来获取 apropos快速命令(并确保阅读 C-h v apropos-do-all ,其行为可以通过为其提到的命令提供前缀参数来触发)。

    ;; Custom 'apropos' key bindings
    (global-set-key (kbd "C-h C-a") 'my-apropos-prefix)
    (define-prefix-command 'my-apropos-prefix nil "Apropos (a,d,f,i,l,o,v,C-v)")
    (define-key my-apropos-prefix (kbd "a") 'apropos)
    (define-key my-apropos-prefix (kbd "C-a") 'apropos)
    (define-key my-apropos-prefix (kbd "d") 'apropos-documentation)
    (define-key my-apropos-prefix (kbd "c") 'apropos-command)
    (define-key my-apropos-prefix (kbd "f") 'apropos-command)
    (define-key my-apropos-prefix (kbd "i") 'info-apropos)
    (define-key my-apropos-prefix (kbd "l") 'apropos-library)
    (define-key my-apropos-prefix (kbd "o") 'apropos-user-option)
    (define-key my-apropos-prefix (kbd "v") 'apropos-variable)
    (define-key my-apropos-prefix (kbd "C-v") 'apropos-value)

    我也从这些中得到了很多用处:

    (global-set-key (kbd "C-h C-l") 'find-library)
    (global-set-key (kbd "C-h C-f") 'find-function)
    (global-set-key (kbd "C-h C-k") 'find-function-on-key)
    (global-set-key (kbd "C-h C-v") 'find-variable)

    这些函数用于查看源代码,尽管 describe-*当涉及到大多数文档时,命令更有用,对于尚未包含在 Info 手册中的库,在其源代码的开头有很好的注释也并不少见。因此,上述函数和绑定(bind)为访问源代码以检查此类文档提供了非常方便的快捷方式。

    当然, C-h 上有一堆默认绑定(bind)。帮助前缀(或 <f1>,如果您愿意),包括前面提到的 describe-* 中的一些(但不是全部!)命令。输入 C-h C-h并通读它列出的所有选项。有些你可能不关心,有些你可能突然决定对你来说比你上次看时更有趣。

    查看 M-x apropos-command RET ^describe- RET也是。

    最后,看看“帮助”菜单!特别是“搜索文档”子菜单,但如上所述,也要注意其他项目。

    最后,我确实找到了不时对 Emacs 源进行 grep 的原因。如果你把所有东西都解压了,那么 M-x rgrep像往常一样是你的 friend 。但是,如果(未编译的)elisp 全部被 gzip 压缩,那么您需要 M-x zrgrep (它的存在有时对人们来说是新闻)。

    关于emacs - 我怎样才能简单地通过所有可用的文档文本进行 grep 搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22378750/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com