2 Stimmen

Wie kann man mit Etags zur Deklaration einer C++-Funktion springen?

Ich habe eine TAGS-Datei mit Etags erstellt, die mehrere Verzeichnisse im Verzeichnis einer Bibliothek enthält, die ich verwende. Der Befehl lautete etwa so:

etags *.h *.cpp /path/to/library/include/* /path/to/library/libsrc/*.cpp

Wenn ich die Funktion find-tag von emacs aufrufe M-. erhalte ich nie Übereinstimmungen mit Tags aus dem .h Dateien.

Wie kann ich zu den Erklärung einer Funktion aus ihrer Verwendung in einem Code?

4voto

Ties Stuij Punkte 56

Dies ist zwar etwas spät, aber Funktionsdeklarationen werden bei der Erstellung von Etags standardmäßig nicht berücksichtigt. hinzufügen --c++kinds=+p um sie einzubeziehen:

etags --c++kinds=+p *.h *.cpp /path/to/library/include/* /path/to/library/libsrc/*.cpp

2voto

Nathan Paul Simons Punkte 1526

Standardmäßig, M-. springt zur Definition. Ich habe festgestellt, dass das Hinzufügen eines Präfixes ( C-u M-. ) nach dem Sprung zur Definition in der Regel zur Deklaration.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X