File: ctags-lang-iPythonCell.7.rst

package info (click to toggle)
universal-ctags 6.2.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 37,612 kB
  • sloc: ansic: 158,498; sh: 8,621; lisp: 7,742; vhdl: 6,518; cpp: 2,583; perl: 2,578; python: 2,324; javascript: 2,054; cs: 1,193; lex: 1,015; sql: 897; makefile: 787; ruby: 764; php: 755; cobol: 741; f90: 566; ada: 559; asm: 509; yacc: 465; fortran: 412; xml: 405; objc: 289; tcl: 280; java: 173; erlang: 65; pascal: 58; ml: 49; awk: 44; haskell: 42
file content (75 lines) | stat: -rw-r--r-- 2,141 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
.. _ctags-lang-iPythonCell(7):

==============================================================
ctags-lang-iPythonCell
==============================================================

The man page of the iPythonCell parser for Universal Ctags

:Version: 6.2.1
:Manual group: Universal Ctags
:Manual section: 7

SYNOPSIS
--------
|	**ctags** ... --extras=+{subparser} --languages=+iPythonCell,Python \\
|                     [--extras-IPythonCell=+{doubleSharps}] \\
|                     [--regex-IPythonCell=/<PATTERN>/\\n/c/] ...

DESCRIPTION
-----------
iPythonCell parser is a subparser stacked on top of the Python parser.
It works when:

* the Python parser is enabled,
* the ``subparser`` extra is enabled, and
* the iPythonCell parser itself is enabled.

The iPythonCell parser extracts cells explained as in vim-ipython-cell
(https://github.com/hanschen/vim-ipython-cell/blob/master/README.md).

KIND(S)
-------
The iPythonCell parser defines only a ``cell`` kind.

EXTRA(S)
--------

Tagging cells staring with ``##...`` is disabled by default because
the pattern is too generic; with that pattern unwanted tags can be extracted.

Enable ``doubleSharps`` language specific extra for tagging cells
staring with ``##...``.

CUSTOMIZING
-----------
If your favorite cell pattern is not supported in the parser, you can
define the pattern in your ``.ctagd.d/your.ctags`` or command lines.
Here is an example how to support "``# CTAGS: ...``":

"input.py"

.. code-block:: Python

	x=1
	# CTAGS: DEFINE F
	def F():
		# CTAGS: DO NOTING
		pass

"output.tags"
with "--options=NONE --sort=no --extras=+{subparser} --regex-IPythonCell=/[ \t]*# CTAGS:[ ]?(.*)$/\1/c/ -o - input.py"

.. code-block:: tags

   x	input.py	/^x=1$/;"	v
   DEFINE F	input.py	/^# CTAGS: DEFINE F$/;"	c
   F	input.py	/^def F():$/;"	f
   DO NOTING	input.py	/^	# CTAGS: DO NOTING$/;"	c

You can put "``--regex-IPythonCell=/[ \t]*# CTAGS:[ ]?(.*)$/\1/c/``" in ``your.ctags``
to avoid specifying the pattern repeatedly.

SEE ALSO
--------
:ref:`ctags(1) <ctags(1)>`, :ref:`ctags-client-tools(7) <ctags-client-tools(7)>`, :ref:`ctags-lang-python(7) <ctags-lang-python(7)>`