如何使用 etags 浏览源代码

首先用下面的命令生成 TAGS 文件

find . | grep '\.h$\|\.cc\$' | etags -include -
如果你记不住上面的命令,那么可以写一个 elisp 代码帮你。
(defun wcy-create-c-tags( dir)
  (interactive "DProject Root Directory:")
  (let ((default-directory dir))
    (shell-command "find . | grep -e '\\.cpp$\\|\\.h$\\|\\.c$' | etags -")))
`M-. TAG <RET>'
跳到第一个 TAG 的定义处。
`C-u M-.'
如果刚刚用过 M-. , 那么查找下一个定义处。
`C-u - M-.'
回到上一个定义处。
`C-M-. PATTERN <RET>'
按正则表达式搜索 TAG 的定义。
`C-u C-M-.'
如果刚刚用过了 C-M-. , 那么查找下一个。
`C-x 4 . TAG <RET>'
和 M-. 类似, 不过在另一个窗格显示。(`find-tag-other-window').
`C-x 5 . TAG <RET>'
和 M-. 类似, 不过在另一个窗框显示。(`find-tag-other-frame').
`M-*'
回到开始查找 TAG 的地方。
M-x visit-tags-table
用来选择 TAGS 文件,就是 etags 程序生成的文件。