160 |
|
|
161 |
@example |
@example |
162 |
|
|
163 |
% cd /usr/src/usr.bin/vi |
$ cd /usr/src/usr.bin/vi |
164 |
% gtags |
$ gtags |
165 |
|
|
166 |
@end example |
@end example |
167 |
|
|
170 |
|
|
171 |
@example |
@example |
172 |
|
|
173 |
% ls G* |
$ ls G* |
174 |
GPATH GRTAGS GSYMS GTAGS |
GPATH GRTAGS GSYMS GTAGS |
175 |
|
|
176 |
@end example |
@end example |
231 |
|
|
232 |
@example |
@example |
233 |
|
|
234 |
% cd ROOT |
$ cd ROOT |
235 |
% global func1 |
$ global func1 |
236 |
DIR1/fileB.c # @r{func1() is defined in fileB.c} |
DIR1/fileB.c # @r{func1() is defined in fileB.c} |
237 |
% cd DIR1 |
$ cd DIR1 |
238 |
% global func1 |
$ global func1 |
239 |
fileB.c # @r{relative path from DIR1} |
fileB.c # @r{relative path from DIR1} |
240 |
% cd ../DIR2 |
$ cd ../DIR2 |
241 |
% global func1 |
$ global func1 |
242 |
../DIR1/fileB.c # @r{relative path from DIR2} |
../DIR1/fileB.c # @r{relative path from DIR2} |
243 |
|
|
244 |
@end example |
@end example |
248 |
|
|
249 |
@example |
@example |
250 |
|
|
251 |
% global -r func2 |
$ global -r func2 |
252 |
../DIR1/fileA.c # @r{func2() is referred from fileA.c} |
../DIR1/fileA.c # @r{func2() is referred from fileA.c} |
253 |
|
|
254 |
@end example |
@end example |
257 |
|
|
258 |
@example |
@example |
259 |
|
|
260 |
% cd ROOT |
$ cd ROOT |
261 |
% global 'func[1-3]' |
$ global 'func[1-3]' |
262 |
DIR1/fileB.c # @r{func1, func2 and func3 are matched} |
DIR1/fileB.c # @r{func1, func2 and func3 are matched} |
263 |
DIR2/fileC.c |
DIR2/fileC.c |
264 |
|
|
270 |
|
|
271 |
@example |
@example |
272 |
|
|
273 |
% global func2 |
$ global func2 |
274 |
DIR2/fileC.c |
DIR2/fileC.c |
275 |
% global -x func2 |
$ global -x func2 |
276 |
func2 2 DIR2/fileC.c func2()@{ i++; @} |
func2 2 DIR2/fileC.c func2()@{ i++; @} |
277 |
func2 4 DIR2/fileC.c func2()@{ i--; @} |
func2 4 DIR2/fileC.c func2()@{ i--; @} |
278 |
|
|
283 |
|
|
284 |
@example |
@example |
285 |
|
|
286 |
% global -a func1 |
$ global -a func1 |
287 |
/home/user/ROOT/DIR1/fileB.c |
/home/user/ROOT/DIR1/fileB.c |
288 |
|
|
289 |
@end example |
@end example |
293 |
|
|
294 |
@example |
@example |
295 |
|
|
296 |
% global -xs X |
$ global -xs X |
297 |
X 1 DIR2/fileC.c #ifdef X |
X 1 DIR2/fileC.c #ifdef X |
298 |
|
|
299 |
@end example |
@end example |
304 |
|
|
305 |
@example |
@example |
306 |
|
|
307 |
% global -xg '#ifdef' |
$ global -xg '#ifdef' |
308 |
#ifdef 1 DIR2/fileC.c #ifdef X |
#ifdef 1 DIR2/fileC.c #ifdef X |
309 |
|
|
310 |
@end example |
@end example |
315 |
|
|
316 |
@example |
@example |
317 |
|
|
318 |
% global -P fileB |
$ global -P fileB |
319 |
DIR1/fileB.c |
DIR1/fileB.c |
320 |
% global -P '1/' |
$ global -P '1/' |
321 |
DIR1/fileA.c |
DIR1/fileA.c |
322 |
DIR1/fileB.c |
DIR1/fileB.c |
323 |
% global -P '\.c$' |
$ global -P '\.c$' |
324 |
DIR1/fileA.c |
DIR1/fileA.c |
325 |
DIR1/fileB.c |
DIR1/fileB.c |
326 |
DIR2/fileC.c |
DIR2/fileC.c |
332 |
|
|
333 |
@example |
@example |
334 |
|
|
335 |
% global -f DIR2/fileC.c |
$ global -f DIR2/fileC.c |
336 |
func2 2 DIR2/fileC.c func2()@{ i++; @} |
func2 2 DIR2/fileC.c func2()@{ i++; @} |
337 |
func2 4 DIR2/fileC.c func2()@{ i--; @} |
func2 4 DIR2/fileC.c func2()@{ i--; @} |
338 |
func3 6 DIR2/fileC.c func3()@{ |
func3 6 DIR2/fileC.c func3()@{ |
374 |
|
|
375 |
@example |
@example |
376 |
|
|
377 |
% cd ROOT/version1.0 |
$ cd ROOT/version1.0 |
378 |
% global -x func1 |
$ global -x func1 |
379 |
func1 1 file.c func1()@{ i++; @} |
func1 1 file.c func1()@{ i++; @} |
380 |
|
|
381 |
@end example |
@end example |
385 |
|
|
386 |
@example |
@example |
387 |
|
|
388 |
% cd ROOT/version2.0 |
$ cd ROOT/version2.0 |
389 |
% global -x func1 |
$ global -x func1 |
390 |
func1 1 file.c func1()@{ i--; @} |
func1 1 file.c func1()@{ i--; @} |
391 |
|
|
392 |
@end example |
@end example |
396 |
|
|
397 |
@example |
@example |
398 |
|
|
399 |
% cd ROOT |
$ cd ROOT |
400 |
% global -x func1 |
$ global -x func1 |
401 |
func1 1 version1.0/file.c func1()@{ i++; @} |
func1 1 version1.0/file.c func1()@{ i++; @} |
402 |
func1 1 version2.0/file.c func1()@{ i--; @} |
func1 1 version2.0/file.c func1()@{ i--; @} |
403 |
|
|
415 |
|
|
416 |
@example |
@example |
417 |
|
|
418 |
% mkdir /var/dbpath |
$ mkdir /var/dbpath |
419 |
% cd /cdrom/src # @r{the root of source tree} |
$ cd /cdrom/src # @r{the root of source tree} |
420 |
% gtags /var/dbpath # @r{make tag file in /var/dbpath} |
$ gtags /var/dbpath # @r{make tag file in /var/dbpath} |
421 |
% setenv GTAGSROOT `pwd` |
$ export GTAGSROOT=`pwd` |
422 |
% setenv GTAGSDBPATH /var/dbpath |
$ export GTAGSDBPATH=/var/dbpath |
423 |
% global func |
$ global func |
424 |
|
|
425 |
@end example |
@end example |
426 |
|
|
434 |
|
|
435 |
@example |
@example |
436 |
|
|
437 |
% pwd |
$ pwd |
438 |
/develop/src/mh # @r{this is the source tree} |
/develop/src/mh # @r{this is the source tree} |
439 |
% gtags |
$ gtags |
440 |
% ls G*TAGS |
$ ls G*TAGS |
441 |
GRTAGS GTAGS |
GRTAGS GTAGS |
442 |
% global mhl |
$ global mhl |
443 |
uip/mhlsbr.c # @r{mhl() is found} |
uip/mhlsbr.c # @r{mhl() is found} |
444 |
% global strlen # @r{strlen() is not found} |
$ global strlen # @r{strlen() is not found} |
445 |
% (cd /usr/src/lib; gtags) # @r{library source} |
$ (cd /usr/src/lib; gtags) # @r{library source} |
446 |
% (cd /usr/src/sys; gtags) # @r{kernel source} |
$ (cd /usr/src/sys; gtags) # @r{kernel source} |
447 |
% setenv GTAGSLIBPATH /usr/src/lib:/usr/src/sys |
$ export GTAGSLIBPATH=/usr/src/lib:/usr/src/sys |
448 |
% global strlen |
$ global strlen |
449 |
../../../usr/src/lib/libc/string/strlen.c # @r{found in library} |
../../../usr/src/lib/libc/string/strlen.c # @r{found in library} |
450 |
% global access |
$ global access |
451 |
../../../usr/src/sys/kern/vfs_syscalls.c # @r{found in kernel} |
../../../usr/src/sys/kern/vfs_syscalls.c # @r{found in kernel} |
452 |
|
|
453 |
@end example |
@end example |
461 |
|
|
462 |
@example |
@example |
463 |
|
|
464 |
% global -c kmem # @r{maybe k..k.. kmem..} |
$ global -c kmem # @r{maybe k..k.. kmem..} |
465 |
kmem_alloc |
kmem_alloc |
466 |
kmem_alloc_pageable |
kmem_alloc_pageable |
467 |
kmem_alloc_wait |
kmem_alloc_wait |
470 |
kmem_init |
kmem_init |
471 |
kmem_malloc |
kmem_malloc |
472 |
kmem_suballoc # @r{This is what I need!} |
kmem_suballoc # @r{This is what I need!} |
473 |
% global kmem_suballoc |
$ global kmem_suballoc |
474 |
../vm/vm_kern.c |
../vm/vm_kern.c |
475 |
|
|
476 |
@end example |
@end example |
479 |
|
|
480 |
@example |
@example |
481 |
|
|
482 |
% set funcs=(`global -c`) |
$ set funcs=(`global -c`) |
483 |
% complete global 'n/*/$funcs/' |
$ complete global 'n/*/$funcs/' |
484 |
% global kmem_@kbd{TAB} |
$ global kmem_@kbd{TAB} |
485 |
kmem_alloc kmem_free_wakeup |
kmem_alloc kmem_free_wakeup |
486 |
kmem_alloc_pageable kmem_init |
kmem_alloc_pageable kmem_init |
487 |
kmem_alloc_wait kmem_malloc |
kmem_alloc_wait kmem_malloc |
488 |
kmem_free kmem_suballoc |
kmem_free kmem_suballoc |
489 |
% global kmem_s@kbd{TAB} |
$ global kmem_s@kbd{TAB} |
490 |
% global kmem_suballoc |
$ global kmem_suballoc |
491 |
../vm/vm_kern.c |
../vm/vm_kern.c |
492 |
|
|
493 |
@end example |
@end example |
497 |
|
|
498 |
@example |
@example |
499 |
|
|
500 |
% vi `global func1` # @r{edit fileB.c} |
$ vi `global func1` # @r{edit fileB.c} |
501 |
|
|
502 |
@end example |
@end example |
503 |
|
|
505 |
|
|
506 |
@example |
@example |
507 |
|
|
508 |
% global -xr fork | awk '@{printf "view +%s %s\n",$2,$3@}' |
$ global -xr fork | awk '@{printf "view +%s %s\n",$2,$3@}' |
509 |
view +650 ../dev/aic7xxx/aic7xxx_asm.c |
view +650 ../dev/aic7xxx/aic7xxx_asm.c |
510 |
view +250 ibcs2/ibcs2_misc.c |
view +250 ibcs2/ibcs2_misc.c |
511 |
view +401 linux/linux_misc.c |
view +401 linux/linux_misc.c |
513 |
view +318 ../kern/init_main.c |
view +318 ../kern/init_main.c |
514 |
view +336 ../kern/init_main.c |
view +336 ../kern/init_main.c |
515 |
view +351 ../kern/init_main.c |
view +351 ../kern/init_main.c |
516 |
% !! | sh # @r{from now on, go to next tag with 'ZZ'.} |
$ !! | sh # @r{from now on, go to next tag with 'ZZ'.} |
517 |
|
|
518 |
@end example |
@end example |
519 |
|
|
576 |
And you can invoke bash(1) with ---rcfile option. |
And you can invoke bash(1) with ---rcfile option. |
577 |
@example |
@example |
578 |
|
|
579 |
% bash --rcfile /usr/local/share/gtags/globash.rc |
$ bash --rcfile /usr/local/share/gtags/globash.rc |
580 |
|
|
581 |
@end example |
@end example |
582 |
|
|
773 |
|
|
774 |
@example |
@example |
775 |
|
|
776 |
% setenv LESSGLOBALTAGS global |
$ export LESSGLOBALTAGS=global |
777 |
|
|
778 |
@end example |
@end example |
779 |
|
|
785 |
@item To go to func1, you can say |
@item To go to func1, you can say |
786 |
@example |
@example |
787 |
|
|
788 |
% less -t func1 |
$ less -t func1 |
789 |
|
|
790 |
@end example |
@end example |
791 |
|
|
795 |
|
|
796 |
@example |
@example |
797 |
|
|
798 |
% less -TGTAGS -t func1 |
$ less -TGTAGS -t func1 |
799 |
|
|
800 |
@end example |
@end example |
801 |
|
|
802 |
@item To go to the referenced point of func1, please specify @file{GRTAGS}. |
@item To go to the referenced point of func1, please specify @file{GRTAGS}. |
803 |
@example |
@example |
804 |
|
|
805 |
% less -TGRTAGS -t func1 |
$ less -TGRTAGS -t func1 |
806 |
|
|
807 |
@end example |
@end example |
808 |
|
|
835 |
It is very valuable. You can connect global and less with pipe line. |
It is very valuable. You can connect global and less with pipe line. |
836 |
@example |
@example |
837 |
|
|
838 |
% global -x func | less -T- |
$ global -x func | less -T- |
839 |
|
|
840 |
@end example |
@end example |
841 |
|
|
843 |
|
|
844 |
@example |
@example |
845 |
# pattern match with grep(1). |
# pattern match with grep(1). |
846 |
% global -xg 'lseek(.*)' | less -T- |
$ global -xg 'lseek(.*)' | less -T- |
847 |
|
|
848 |
# pattern match with id-utils(1). |
# pattern match with id-utils(1). |
849 |
% global -xI func | less -T- |
$ global -xI func | less -T- |
850 |
|
|
851 |
# all objects definitions in *.c. |
# all objects definitions in *.c. |
852 |
% global -f *.c | less -T- |
$ global -f *.c | less -T- |
853 |
|
|
854 |
# all files includes 'init' in its path. |
# all files includes 'init' in its path. |
855 |
% global -Px init | less -T- |
$ global -Px init | less -T- |
856 |
@end example |
@end example |
857 |
|
|
858 |
@item If your editor doesn't support GLOBAL directly then you can use less |
@item If your editor doesn't support GLOBAL directly then you can use less |
860 |
|
|
861 |
@example |
@example |
862 |
# invoke less |
# invoke less |
863 |
% less -t main |
$ less -t main |
864 |
main(int argc, char **argv) |
main(int argc, char **argv) |
865 |
@{ |
@{ |
866 |
int i; |
int i; |
935 |
|
|
936 |
@example |
@example |
937 |
|
|
938 |
% nvi -G file.c |
$ nvi -G file.c |
939 |
|
|
940 |
@end example |
@end example |
941 |
|
|
944 |
|
|
945 |
@example |
@example |
946 |
|
|
947 |
% nvi file.c |
$ nvi file.c |
948 |
~ |
~ |
949 |
~ |
~ |
950 |
~ |
~ |
1047 |
@item In large projects that include many main() function like MH, you can start nvi like this: |
@item In large projects that include many main() function like MH, you can start nvi like this: |
1048 |
@example |
@example |
1049 |
|
|
1050 |
% nvi -G -t main |
$ nvi -G -t main |
1051 |
|
|
1052 |
@end example |
@end example |
1053 |
You can browse all commands sequentially. |
You can browse all commands sequentially. |
1055 |
@item When you want to check objects the name of which start with "set" or "get", use: |
@item When you want to check objects the name of which start with "set" or "get", use: |
1056 |
@example |
@example |
1057 |
|
|
1058 |
% nvi -G -t '^[sg]et' |
$ nvi -G -t '^[sg]et' |
1059 |
|
|
1060 |
@end example |
@end example |
1061 |
|
|
1070 |
the following: |
the following: |
1071 |
@example |
@example |
1072 |
|
|
1073 |
% mkdir /var/dbpath # @r{directory for the tag file} |
$ mkdir /var/dbpath # @r{directory for the tag file} |
1074 |
% cd /cdrom/src # @r{the root of the source tree} |
$ cd /cdrom/src # @r{the root of the source tree} |
1075 |
% gtags /var/dbpath # @r{make tag files in /var/dbpath} |
$ gtags /var/dbpath # @r{make tag files in /var/dbpath} |
1076 |
% setenv GTAGSROOT `pwd` |
$ export GTAGSROOT=`pwd` |
1077 |
% setenv GTAGSDBPATH /var/dbpath |
$ export GTAGSDBPATH=/var/dbpath |
1078 |
% nvi -G -t main |
$ nvi -G -t main |
1079 |
|
|
1080 |
@end example |
@end example |
1081 |
|
|
1084 |
do the following: |
do the following: |
1085 |
@example |
@example |
1086 |
|
|
1087 |
% cd /usr/src/lib |
$ cd /usr/src/lib |
1088 |
% gtags # @r{probably as a root} |
$ gtags # @r{probably as a root} |
1089 |
% cd /usr/src/sys |
$ cd /usr/src/sys |
1090 |
% gtags |
$ gtags |
1091 |
% setenv GTAGSLIBPATH /usr/src/lib:/usr/src/sys |
$ export GTAGSLIBPATH=/usr/src/lib:/usr/src/sys |
1092 |
|
|
1093 |
@end example |
@end example |
1094 |
@item If you examine vi's source, |
@item If you examine vi's source, |
1095 |
@example |
@example |
1096 |
|
|
1097 |
% cd /usr/src/usr.bin/vi |
$ cd /usr/src/usr.bin/vi |
1098 |
% gtags |
$ gtags |
1099 |
% nvi -G -t main |
$ nvi -G -t main |
1100 |
|
|
1101 |
@end example |
@end example |
1102 |
|
|
1280 |
|
|
1281 |
@example |
@example |
1282 |
|
|
1283 |
% elvis |
$ elvis |
1284 |
~ |
~ |
1285 |
~ |
~ |
1286 |
~ |
~ |
1473 |
|
|
1474 |
@example |
@example |
1475 |
|
|
1476 |
% cp /usr/local/share/gtags/gtags.vim ~/.vim/plugin |
$ cp /usr/local/share/gtags/gtags.vim $HOME/.vim/plugin |
1477 |
|
|
1478 |
@end example |
@end example |
1479 |
|
|
1647 |
|
|
1648 |
@example |
@example |
1649 |
|
|
1650 |
% vim '+Gtags main' |
$ vim '+Gtags main' |
1651 |
|
|
1652 |
@end example |
@end example |
1653 |
@end itemize |
@end itemize |
1704 |
|(setq load-path (cons "/home/owner/global" load-path)) |
|(setq load-path (cons "/home/owner/global" load-path)) |
1705 |
|(autoload 'gtags-mode "gtags" "" t) |
|(autoload 'gtags-mode "gtags" "" t) |
1706 |
|
|
1707 |
% emacs |
$ emacs |
1708 |
|
|
1709 |
| |
| |
1710 |
|J_:-----Mule: *scratch* (Lisp Interaction)--L16--All---- |
|J_:-----Mule: *scratch* (Lisp Interaction)--L16--All---- |
1828 |
the following: |
the following: |
1829 |
@example |
@example |
1830 |
|
|
1831 |
% mkdir /var/dbpath # @r{directory for the tag file} |
$ mkdir /var/dbpath # @r{directory for the tag file} |
1832 |
% cd /cdrom/src # @r{the root of the source tree} |
$ cd /cdrom/src # @r{the root of the source tree} |
1833 |
% gtags /var/dbpath # @r{make tag files in /var/dbpath} |
$ gtags /var/dbpath # @r{make tag files in /var/dbpath} |
1834 |
% setenv GTAGSROOT `pwd` |
$ export GTAGSROOT=`pwd` |
1835 |
% setenv GTAGSDBPATH /var/dbpath |
$ export GTAGSDBPATH=/var/dbpath |
1836 |
% emacs -f gtags-mode |
$ emacs -f gtags-mode |
1837 |
|
|
1838 |
@end example |
@end example |
1839 |
|
|
1843 |
|
|
1844 |
@example |
@example |
1845 |
|
|
1846 |
% cd /usr/src/lib |
$ cd /usr/src/lib |
1847 |
% gtags <- @r{probably as a root} |
$ gtags <- @r{probably as a root} |
1848 |
% cd /usr/src/sys |
$ cd /usr/src/sys |
1849 |
% gtags |
$ gtags |
1850 |
% setenv GTAGSLIBPATH /usr/src/lib:/usr/src/sys |
$ export GTAGSLIBPATH=/usr/src/lib:/usr/src/sys |
1851 |
% emacs -f gtags-mode |
$ emacs -f gtags-mode |
1852 |
|
|
1853 |
@end example |
@end example |
1854 |
|
|
1916 |
@example |
@example |
1917 |
|
|
1918 |
(at your source directory) |
(at your source directory) |
1919 |
% gtags # @r{make the tag database(GTAGS,GRTAGS,GSYMS)} |
$ gtags # @r{make the tag database(GTAGS,GRTAGS,GSYMS)} |
1920 |
% htags # @r{make the hypertext(HTML/)} |
$ htags # @r{make the hypertext(HTML/)} |
1921 |
|
|
1922 |
@end example |
@end example |
1923 |
|
|
1932 |
|
|
1933 |
@example |
@example |
1934 |
|
|
1935 |
% lynx HTML/index.html |
$ lynx HTML/index.html |
1936 |
|
|
1937 |
@end example |
@end example |
1938 |
|
|
1944 |
Using mozilla, you can also utilize hypertext from your command line like this: |
Using mozilla, you can also utilize hypertext from your command line like this: |
1945 |
@example |
@example |
1946 |
|
|
1947 |
% mozilla # @r{load mozilla} |
$ mozilla # @r{load mozilla} |
1948 |
% global -x main |
$ global -x main |
1949 |
main 10 main.c main(int argc, char *argv[]) @{ |
main 10 main.c main(int argc, char *argv[]) @{ |
1950 |
% gozilla +10 main.c # @r{usage is similar to vi editor.} |
$ gozilla +10 main.c # @r{usage is similar to vi editor.} |
1951 |
(show main.c at 10 on mozilla's screen.) |
(show main.c at 10 on mozilla's screen.) |
1952 |
|
|
1953 |
@end example |
@end example |
1977 |
# cp gtags.conf /etc/gtags.conf # system wide configuration file. |
# cp gtags.conf /etc/gtags.conf # system wide configuration file. |
1978 |
# vi /etc/gtags.conf |
# vi /etc/gtags.conf |
1979 |
|
|
1980 |
% cp gtags.conf $HOME/.globalrc # personal configuration file. |
$ cp gtags.conf $HOME/.globalrc # personal configuration file. |
1981 |
% vi $HOME/.globalrc |
$ vi $HOME/.globalrc |
1982 |
|
|
1983 |
@end example |
@end example |
1984 |
|
|
2001 |
|
|
2002 |
@example |
@example |
2003 |
|
|
2004 |
% cd /@var{emacs source directory}/lib-src |
$ cd /@var{emacs source directory}/lib-src |
2005 |
% make ctags |
$ make ctags |
2006 |
# cp ctags /usr/local/bin/ctags-emacs |
# cp ctags /usr/local/bin/ctags-emacs |
2007 |
% setenv GTAGSLABEL ctags-emacs # @r{see gtags.conf} |
$ export GTAGSLABEL=ctags-emacs # @r{see gtags.conf} |
2008 |
% gtags |
$ gtags |
2009 |
% ls G* |
$ ls G* |
2010 |
GPATH GTAGS |
GPATH GTAGS |
2011 |
|
|
2012 |
@end example |
@end example |
2015 |
|
|
2016 |
@example |
@example |
2017 |
|
|
2018 |
% cd /@var{vim source directory}/src/ctags |
$ cd /@var{vim source directory}/src/ctags |
2019 |
% cp Makefile.unix Makefile |
$ cp Makefile.unix Makefile |
2020 |
% make |
$ make |
2021 |
# cp ctags /usr/local/bin/ctags-exuberant |
# cp ctags /usr/local/bin/ctags-exuberant |
2022 |
% setenv GTAGSLABEL ctags-exuberant # @r{see gtags.conf} |
$ export GTAGSLABEL=ctags-exuberant # @r{see gtags.conf} |
2023 |
% gtags |
$ gtags |
2024 |
% ls G* |
$ ls G* |
2025 |
GPATH GTAGS |
GPATH GTAGS |
2026 |
|
|
2027 |
@end example |
@end example |
2061 |
@opindex -c |
@opindex -c |
2062 |
@example |
@example |
2063 |
|
|
2064 |
% gtags -c |
$ gtags -c |
2065 |
|
|
2066 |
@end example |
@end example |
2067 |
|
|
2080 |
@opindex -c |
@opindex -c |
2081 |
@example |
@example |
2082 |
|
|
2083 |
% htags -c |
$ htags -c |
2084 |
|
|
2085 |
@end example |
@end example |
2086 |
|
|
2115 |
@opindex -u |
@opindex -u |
2116 |
@example |
@example |
2117 |
|
|
2118 |
% gtags |
$ gtags |
2119 |
% cd kern |
$ cd kern |
2120 |
% vi tty.c # @r{modify tty.c} |
$ vi tty.c # @r{modify tty.c} |
2121 |
... |
... |
2122 |
:wq |
:wq |
2123 |
% global -vu # @r{-v means verbose} |
$ global -vu # @r{-v means verbose} |
2124 |
[Sun Dec 6 16:27:47 JST 1998] Gtags started |
[Sun Dec 6 16:27:47 JST 1998] Gtags started |
2125 |
Tag found in '/usr/src/sys'. |
Tag found in '/usr/src/sys'. |
2126 |
Incremental update. |
Incremental update. |
2127 |
Updating tags of 'kern/tty.c' ...GTAGS..GRTAGS..GSYMS.. Done. |
Updating tags of 'kern/tty.c' ...GTAGS..GRTAGS..GSYMS.. Done. |
2128 |
Global databases have been modified. |
Global databases have been modified. |
2129 |
[Sun Dec 6 16:28:30 JST 1998] Done. |
[Sun Dec 6 16:28:30 JST 1998] Done. |
2130 |
% global -vu # @r{try again} |
$ global -vu # @r{try again} |
2131 |
[Sun Dec 6 16:28:48 JST 1998] Gtags started |
[Sun Dec 6 16:28:48 JST 1998] Gtags started |
2132 |
Tag found in '/usr/src/sys'. |
Tag found in '/usr/src/sys'. |
2133 |
Incremental update. |
Incremental update. |