From f5c4671bfbad96bf346bd7e9a21fc4317b4959df Mon Sep 17 00:00:00 2001 From: Indrajith K L Date: Sat, 3 Dec 2022 17:00:20 +0530 Subject: Adds most of the tools --- ctags/man/ctags-lang-julia.7.html | 600 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 600 insertions(+) create mode 100644 ctags/man/ctags-lang-julia.7.html (limited to 'ctags/man/ctags-lang-julia.7.html') diff --git a/ctags/man/ctags-lang-julia.7.html b/ctags/man/ctags-lang-julia.7.html new file mode 100644 index 0000000..8787eb4 --- /dev/null +++ b/ctags/man/ctags-lang-julia.7.html @@ -0,0 +1,600 @@ + + + + + + +ctags-lang-julia + + + +
+ +

ctags-lang-julia

+

Random notes about tagging Julia source code with Universal-ctags

+ +++ + + + + + + + +
Version:5.9.0
Manual group:Universal-ctags
Manual section:7
+
+

SYNOPSIS

+
+
ctags ... --languages=+Julia ...
+
ctags ... --language-force=Julia ...
+
ctags ... --map-Julia=+.jl ...
+
+
+
+

DESCRIPTION

+

This man page gathers random notes about tagging Julia source code.

+
+
+

TAGGING import AND using EXPRESSIONS

+
+

Summary

+

using X

+
+ ++++++ + + + + + + + + + + + + + + +
namekindroleother noticeable fields
XmoduleusedN/A
+
+

using X: a, b

+
+ ++++++ + + + + + + + + + + + + + + + + + + + +
namekindroleother noticeable fields
XmodulenamespaceN/A
a, bunknownusedscope:module:X
+
+

import X

+
+ ++++++ + + + + + + + + + + + + + + +
namekindroleother noticeable fields
XmoduleimportedN/A
+
+

import X.a, Y.b

+
+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
namekindroleother noticeable fields
X, YmodulenamespaceN/A
aunknownimportedscope:module:X
bunknownimportedscope:module:Y
+
+

import X: a, b

+
+ ++++++ + + + + + + + + + + + + + + + + + + + +
namekindroleother noticeable fields
XmodulenamespaceN/A
a,bunknownimportedscope:module:X
+
+
+
+

Examples

+

"input.jl"

+
+using X0
+
+

"output.tags" +with "--options=NONE -o - --extras=+r --fields=+rzK input.jl"

+
+

System Message: WARNING/2 (ctags-lang-julia.7.rst, line 84)

+

Cannot analyze code. No Pygments lexer found for "tags".

+
+.. code-block:: tags
+
+        X0      input.jl        /^using X0$/;"  kind:module     roles:used
+
+
+
+

--extras=+r (or --extras=+{reference}) option is needed for this tag, +since it's a reference tag. This is because module X is not defined here. +It is defined in another file. Enable roles: field with --fields=+r is +for recording that the module is "used", i.e., loaded by using.

+

"input.jl"

+
+import X1.a, X2.b, X3
+
+

"output.tags" +with "--options=NONE -o - --extras=+r --fields=+rzKZ input.jl"

+
+

System Message: WARNING/2 (ctags-lang-julia.7.rst, line 102)

+

Cannot analyze code. No Pygments lexer found for "tags".

+
+.. code-block:: tags
+
+        X1      input.jl        /^import X1.a, X2.b, X3$/;"     kind:module     roles:namespace
+        X2      input.jl        /^import X1.a, X2.b, X3$/;"     kind:module     roles:namespace
+        X3      input.jl        /^import X1.a, X2.b, X3$/;"     kind:module     roles:imported
+        a       input.jl        /^import X1.a, X2.b, X3$/;"     kind:unknown    scope:module:X1 roles:imported
+        b       input.jl        /^import X1.a, X2.b, X3$/;"     kind:unknown    scope:module:X2 roles:imported
+
+
+
+

Why X1 and X2 have role "namespace", while X3 have role "imported"? +It's because the symbol a in module X1, and b in module X2 are +brought to the current scope, but X1 and X2 themselves are not. We use +"namespace" role for such modules.

+

X3 is different. The symbol X3, together with all exported symbols in +X3, is brought to current scope. For such modules, we use "imported" or +"used" role depending whether they are loaded by import or using.

+

Also, notice that a and b have the "unknown" kind. This is because we +cannot know whether it's a function, constant, or macro, etc.

+
+
+
+

SEE ALSO

+

ctags(1), ctags-client-tools(7)

+
+
+ + -- cgit v1.2.3