Coding GTK+-2.0 in C
ctags -R --c-kinds=+pxf -f ~/code/.tags `pkg-config gtk+-2.0 --cflags | sed \
's/^-pthread //' | sed 's/-I//g'` ~/codeExplanation:
-R - recurses
--c-kinds=+pxf - includes function prototypes, external declarations, function definitions
-f ~/code/.tags - output tags file
`pkg-config gtk+-2.0 --cflags | sed 's/^-pthread //' | sed 's/-I//g'` - list all gtk+-2.0 include paths
~/code - working directory
or if you wanna be hardcore, git clone everything (~769MB):
(304MB)git://git.gnome.org/gtk+--branch 2.24.20,(12MB)git://git.gnome.org/pango--branch 1.34.1,(5.1MB)git://git.gnome.org/atk--branch ATK_2_8_0,(5.8MB)git://anongit.freedesktop.org/pixman--branch pixman-0.30.0,(16MB)git://git.freedesktop.org/git/mesa/drm--branch 2.4.46,(148MB)git://git.gnome.org/gdk-pixbuf--branch 2.28.2,(22MB)git://git.code.sf.net/p/libpng/code--branch libpng-1.6.3-signed,(165MB)git://anongit.freedesktop.org/git/cairo--branch 1.12.14,(8.4MB)git://anongit.freedesktop.org/harfbuzz--branch 0.9.19, and(87MB)git://git.gnome.org/glib--branch 2.36.3
and index them instead of just the header files (the branches listed here are the current versions in Arch Linux Official packages as of July 26, 2013.