ctags-universal-lang-iPythonCell(7)

The man page of the iPythonCell parser for Universal Ctags

Section 7 universal-ctags bookworm source

Description

CTAGS-LANG-IPYTHONCELL

NAME

ctags-lang-iPythonCell - The man page of the iPythonCell parser for Universal Ctags

SYNOPSIS

ctags ... --extras={subparser} --languages=+iPythonCell,Python \

[--extras-IPythonCell=+{doubleSharps}] \
[--regex-IPythonCell=/<PATTERN>/\n/c/] ...

DESCRIPTION

iPythonCell 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.

iPythonCell 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"

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"

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

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

See Also

  • ctags(1)
  • tools(7)
  • python(7)