1ea05728cSDoug Kearns.. Universal Ctags documentation master file 220ea5985SFrank Fesevur 3eb375513SMasatake YAMATO##################################################################### 4dccba5efSHiroo HAYASHIUniversal Ctags Hacking Guide 5eb375513SMasatake YAMATO##################################################################### 620ea5985SFrank Fesevur 720ea5985SFrank Fesevur:Version: Draft 8dccba5efSHiroo HAYASHI:Authors: Universal Ctags developers 920ea5985SFrank Fesevur:Web Page: https://ctags.io/ 1020ea5985SFrank Fesevur 113246e918SHiroo HAYASHI`Universal Ctags`_ (abbreviated as u-ctags) is a *maintained* implementation of 123246e918SHiroo HAYASHI``ctags``. 133246e918SHiroo HAYASHI``ctags`` generates an index (or tag) file of language objects found in source 143246e918SHiroo HAYASHIfiles for programming languages. 153246e918SHiroo HAYASHIThis index makes it easy for text editors and other tools to locate the indexed 163246e918SHiroo HAYASHIitems. 17b8efc6b3SHiroo HAYASHI 183246e918SHiroo HAYASHI`Exuberant Ctags`_ (e-ctags) maintained by Darren Hiebert, the ancestor of 193246e918SHiroo HAYASHI`Universal Ctags`_, improved traditional ctags with multi-language support, the 203246e918SHiroo HAYASHIability for the user to define new languages searched by regular expressions 213246e918SHiroo HAYASHI(called optlib in Universal Ctags), and the ability to generate emacs-style TAGS 223246e918SHiroo HAYASHIfiles. 233246e918SHiroo HAYASHIBut the activity of the project unfortunately stalled. 2420ea5985SFrank Fesevur 253246e918SHiroo HAYASHI`Universal Ctags`_ has the objective of continuing the development of `Exuberant 263246e918SHiroo HAYASHICtags`_. 273246e918SHiroo HAYASHIReza Jelveh <reza.jelveh@gmail.com> initially created a personal fork of 283246e918SHiroo HAYASHI`Exuberant Ctags`_ on GitHub. 293246e918SHiroo HAYASHIAs interest and participation grew, it was decided to move development to a 303246e918SHiroo HAYASHIdedicated project as `Universal Ctags`_. 31b8efc6b3SHiroo HAYASHIThe goal of this project is to maintain a common/unified working space where 323246e918SHiroo HAYASHIpeople interested in making ctags better can work together. 3320ea5985SFrank Fesevur 34*2f4bb96dSHenré BothaSome of the major features of `Universal Ctags`_ are: 353246e918SHiroo HAYASHI 36*2f4bb96dSHenré Botha* greater number of supported languages 37*2f4bb96dSHenré Botha* better language support 383246e918SHiroo HAYASHI * new extended C/C++ language parser, etc. 393246e918SHiroo HAYASHI* fully extended optlib (a feature to define a new language parser from a 403246e918SHiroo HAYASHI command line) 413246e918SHiroo HAYASHI* interactive mode (experimental) 423246e918SHiroo HAYASHI 433246e918SHiroo HAYASHIThe primary documents of `Universal Ctags`_ are man pages. Users should first 443246e918SHiroo HAYASHIconsult the :ref:`ctags(1) <ctags(1)>`, and :ref:`other man pages <man-pages>` if 453246e918SHiroo HAYASHInecessary. 463246e918SHiroo HAYASHI 473246e918SHiroo HAYASHIThis guide, which also includes the man pages, is primarily for developers and 483246e918SHiroo HAYASHIprovides additional information to the man pages, including experimental 493246e918SHiroo HAYASHIfeatures. 50ea05728cSDoug Kearns 51ea05728cSDoug KearnsThis is a draft document. Proofreading and pull-requests are welcome! 5220ea5985SFrank Fesevur 5320ea5985SFrank Fesevur 54bb84f88aSHiroo HAYASHI.. _Exuberant Ctags: http://ctags.sourceforge.net/ 553246e918SHiroo HAYASHI.. _Universal Ctags: https://ctags.io/ 5620ea5985SFrank Fesevur 5720ea5985SFrank Fesevur 5820ea5985SFrank Fesevur.. toctree:: 5920ea5985SFrank Fesevur :maxdepth: 2 6020ea5985SFrank Fesevur 61bdbe550cSHiroo HAYASHI building.rst 62bdbe550cSHiroo HAYASHI man-pages.rst 63668e6d38SMasatake YAMATO parsers.rst 64d66e81edSHiroo HAYASHI option-file.rst 654afebce5SHiroo HAYASHI output-format.rst 668fc51ccaSHiroo HAYASHI running-multi-parsers.rst 674afebce5SHiroo HAYASHI interactive-mode.rst 684afebce5SHiroo HAYASHI news.rst 698fc51ccaSHiroo HAYASHI optlib.rst 706ccf9620SMasatake YAMATO optscript.rst 71bdbe550cSHiroo HAYASHI extending.rst 728c31bb07SMasatake YAMATO testing-ctags.rst 738c31bb07SMasatake YAMATO testing-parser.rst 74dbfe9819SMasatake YAMATO testing-readtags.rst 754afebce5SHiroo HAYASHI reporting.rst 764afebce5SHiroo HAYASHI contributions.rst 77cacd2675SHiroo HAYASHI other-projects.rst 7820ea5985SFrank Fesevur developers.rst 79