One way to look into the source code of any function in Emacs is to use the M-.
(find tag). When I do this in Windows platform Emacs 24 I get Find tag:
in the minibuffer asking to enter the name of a function like for example, forward-paragraph
function I don't get any. It seems there is no TAGS file there. When I wanted to create one, using M-x compile RET etags *.el RET
, of no avail. Can you pls help me figure out what is the right way to get TAGS file in Windows?
Update
I managed to make TAGS file in c:\GNU Emacs 24.3\
from Windows Terminal: etags -o c:\GNU Emacs 24.3\TAGS c:/GNU Emacs 24.3/lisp/*.el
. After some googling, and the -o
option is to tell where to write the generated TAGS file (destination). But, first as nanny pointed out, this should be run where etags.exe
file resides. So I ran this from the c:\GNU Emacs 24.3\bin\
. My questions:
Where to put the TAGS file, what is the best practice?
Why pressing
M-.
: find tag, then asks about table tags and I should point out to same dir where TAGS is, that is too much, how to make emacs automatically recognize TAGS?Even after finding TAGS by emacs, the function
forward-paragraph
was not among the completion items? How to cover all.el
files given a default dir structure of Emacs in Windows platform?I found beside
etags
there isexuberant ctags
, which one is better in Windows?
find-tag
? Does running the command do nothing? Is it giving you an error? Is it telling you to select a tags table? Or what?-e
argument to get Emacs-compatible output) which (a) tends to be better than the GNU etags binary, and (b) can do recursive processing on its own (with the-R
argument), without you needing to usefind
(which is another pitfall on Windows) to walk the directory tree.