创建 Emacs 标签文件

创建 Emacs 标签文件

我正在 Debian Wheezy (CrunchBang Waldorf) 上的 Emacs 23.4.1 中阅读“Emacs Lisp Intro”一书。

4.1 节讨论find-tags命令和TAGS文件。TAGS如有必要,其中包含构建/安装文件的说明。

我该如何在 Debian 中执行此操作?我的系统上不存在提到的文件夹,并且我无法找到TAGS文件。

我不确定我是否安装了 Emacs 源?我使用安装它apt-get。我的sources.list文件不包含任何deb-src相关行。

答案1

daniel@protein:~$ apt-file search {ctags,etags} | grep ctags | grep /usr/bin
emacs23-bin-common: /usr/bin/ctags.emacs23
exuberant-ctags: /usr/bin/ctags-exuberant

我在 ubuntu 上,但我相当确定它们在同一个包中。

要创建该TAGS文件,您需要这样的内容:

$ find . -type f -iname "*.php" | xargs ctags --declarations
$ find . -type f -iname "*.ctp" | xargs ctags --lang="php" --declarations --append

这两个命令都有非常相似的参数,但请检查手册页以确保。

答案2

这需要安装emacs23-elEmacs 源代码的包,然后使用以下命令构建TAGS文件/usr/share/emacs/23.4/lisp

$ etags *.el.gz

因为这些文件是.gz格式化的。但是,find-tags无法读取这些并尝试读取.el文件。这个问题可以解决,解释一下这里,将以下内容添加到~/.emacs

(require 'jka-compr)

之后,可以输入find-tags然后mark-whole-buffer,如问题中提到的“Emacs Lisp Intro”中的示例中所述。

答案3

我在 Fedora 22 上使用 Emacs 24.5.1(通过dnf[以前的yum{很像apt-get}]),对我有用的是导航到/usr/share/emacs/24.5/lisp并运行:

etags *.el.gz

我不需要做任何进一步的事情来跟随教程。

相关内容