xref: /Universal-ctags/man/ctags-lang-tcl.7.rst.in (revision ff17464b4e11a05673c12f32d58b012a5043ddf8)
1*ff17464bSMasatake YAMATO.. _ctags-lang-tcl(7):
2*ff17464bSMasatake YAMATO
3*ff17464bSMasatake YAMATO==============================================================
4*ff17464bSMasatake YAMATOctags-lang-tcl
5*ff17464bSMasatake YAMATO==============================================================
6*ff17464bSMasatake YAMATO-------------------------------------------------------------------
7*ff17464bSMasatake YAMATORandom notes about tagging tcl source code with Universal Ctags
8*ff17464bSMasatake YAMATO-------------------------------------------------------------------
9*ff17464bSMasatake YAMATO:Version: @VERSION@
10*ff17464bSMasatake YAMATO:Manual group: Universal Ctags
11*ff17464bSMasatake YAMATO:Manual section: 7
12*ff17464bSMasatake YAMATO
13*ff17464bSMasatake YAMATOSYNOPSIS
14*ff17464bSMasatake YAMATO--------
15*ff17464bSMasatake YAMATO|	**@CTAGS_NAME_EXECUTABLE@** ... --languages=+Tcl ...
16*ff17464bSMasatake YAMATO|	**@CTAGS_NAME_EXECUTABLE@** ... --language-force=Tcl ...
17*ff17464bSMasatake YAMATO|	**@CTAGS_NAME_EXECUTABLE@** ... --map-Tcl=+.tcl ...
18*ff17464bSMasatake YAMATO
19*ff17464bSMasatake YAMATODESCRIPTION
20*ff17464bSMasatake YAMATO-----------
21*ff17464bSMasatake YAMATOThis man page gathers random notes about tagging tcl source code.
22*ff17464bSMasatake YAMATO
23*ff17464bSMasatake YAMATOTAGGING language objects of OO Extensions
24*ff17464bSMasatake YAMATO-----------------------------------------
25*ff17464bSMasatake YAMATO
26*ff17464bSMasatake YAMATOTclOO parser and ITcl parser are subparsers running on the Tcl parser.
27*ff17464bSMasatake YAMATOAs the names of parsers show, they are for tagging language objects of
28*ff17464bSMasatake YAMATOobject oriented programming extensions for the Tcl language.
29*ff17464bSMasatake YAMATO
30*ff17464bSMasatake YAMATOA pattern, "namespace import oo" in an input file activates the TclOO
31*ff17464bSMasatake YAMATOparser. A pattern, "namespace import itcl" in an input file activates
32*ff17464bSMasatake YAMATOthe ITcl parser.
33*ff17464bSMasatake YAMATO
34*ff17464bSMasatake YAMATOThere are cases that one of the OO extensions is used though neither
35*ff17464bSMasatake YAMATOpattern are appeared in an input file.
36*ff17464bSMasatake YAMATO
37*ff17464bSMasatake YAMATOConsider the following input files:
38*ff17464bSMasatake YAMATO
39*ff17464bSMasatake YAMATO"main.tcl"
40*ff17464bSMasatake YAMATO
41*ff17464bSMasatake YAMATO.. code-block:: Tcl
42*ff17464bSMasatake YAMATO
43*ff17464bSMasatake YAMATO	package require Itcl
44*ff17464bSMasatake YAMATO	namespace import itcl::*
45*ff17464bSMasatake YAMATO	source input.tcl
46*ff17464bSMasatake YAMATO
47*ff17464bSMasatake YAMATO"input.tcl"
48*ff17464bSMasatake YAMATO
49*ff17464bSMasatake YAMATO.. code-block:: Tcl
50*ff17464bSMasatake YAMATO
51*ff17464bSMasatake YAMATO	class MyClass {
52*ff17464bSMasatake YAMATO		public method foo {} {
53*ff17464bSMasatake YAMATO		}
54*ff17464bSMasatake YAMATO	}
55*ff17464bSMasatake YAMATO
56*ff17464bSMasatake YAMATOThe pattern for activating the ITcl parser is not appeared
57*ff17464bSMasatake YAMATOin "input.tcl" though "class" command is used. As a result,
58*ff17464bSMasatake YAMATOctags cannot extract "MyClass".
59*ff17464bSMasatake YAMATO
60*ff17464bSMasatake YAMATOThe parameters `TclOO.forceUse=true|[false]` and
61*ff17464bSMasatake YAMATO`ITcl.forceuse=true|[false]` for handling this situation. With the
62*ff17464bSMasatake YAMATOparameter, you can force ctags to activate one of the subparsers.
63*ff17464bSMasatake YAMATO
64*ff17464bSMasatake YAMATOYou can use the parameters like ``--param-ITcl.forceuse=true``
65*ff17464bSMasatake YAMATOin a command-line.
66*ff17464bSMasatake YAMATO
67*ff17464bSMasatake YAMATONote that you can enable only one of ITcl parser or TclOO parser.
68*ff17464bSMasatake YAMATOEnabling both parsers with specifying the parameters can cause
69*ff17464bSMasatake YAMATOunexpected results.
70*ff17464bSMasatake YAMATO
71*ff17464bSMasatake YAMATOSEE ALSO
72*ff17464bSMasatake YAMATO--------
73*ff17464bSMasatake YAMATOctags(1)
74