[linux-l] Programme die man sich mal angesehen haben sollte...
Oliver Bandel
oliver at first.in-berlin.de
Mo Mär 3 18:34:48 CET 2003
Hi,
Paket: GLOBAL
Paket, das zur Suche von Funktionen, Funktionsaufrufen,
define's usw. in Programmcode genutzt werden kann.
Für C, C++, Yacc, Java, Assembler.
So eine Art Code-glimpse.
Das Paket umfasst die Programme gtags, htags, global, btreeop.
Mit gtags erzeugt man die Tag-Files, mit global kann man
sich dann (mit posix-regexp's) z.B. alle Aufrufe einer
bestimmten Funktion anzeigen lassen.
Mit htags kann man seine Sourcen in Klickerbare
HTML-Doku umwandeln.
Absolut geiles Tool. :)
Ach so, da war ja noch eins: btreeop
kann man nutzen, um sich btree-basierte Datenbanken
auf Kommandozeilen-Ebene zusammen zu bauen.
Schnukelig, das. :)
Ciao,
Oliver
P.S.: Vor vielen, vielen Monaten (ok, kann man schon in Jahren rechnen),
habe ich den Entwickler mal angeschrieben, ob der nicht mal eine
weitere Information in eines seiner Tag-Files einbaut.
In den GTAGS-Files, wo die Funktionsdefinitionen aufgeführt sind,
stehen unter anderem die Anfangszeilen der Funktionsdefinitionen.
( Anschauen mit: btreeop GTAGS | less )
Würden dort auch die Zeilen des Endes der Definition stehen,
um was ich bei dem Entwickler mal anfragte, dann hätte ich
bereits ein Tool geschrieben, das die Infos der Sourcecode-Files
in eine graphische Ausgabe umwandelt.
Wenn jemand Interesse an sowas haben sollte, also dann nervt
mal den gtags-Entwickler entsprechend, so daß er das auch
mit ein baut. Ich würde dann was zusammen schrauben, das so
eine graphische Darstellung (wo ist welche Funktion im File
zu finden und wird von welcher anderen Funktion wo aufgerufen)
in z.B. Postscript ausgibt. Oder evtl. macht sich da
was 3D-mäßiges in OpenGL auch ganz nett. :)
(Oder beides... mal schaun. :))
Aber in gtags selber rum zu fummeln, oder mir die Zeilenenden
irgendwie selber abzuschätzen oder auszuparsen, da habe ich keine
Böcke drauf.
Laut Manpage heisst der gtags-Entwickler Shigio Yamaguchi
(nicht Tamagochi ;-)). Also den könnt' ihr ja mal entsprechend
nerven, wenn ihr da auch noch ne Grafikausgabe zum Code haben
wollt. :)
Mehr Informationen über die Mailingliste linux-l