.\" Man page generated from reStructuredText. . .TH CTAGS-LANG-IPYTHONCELL 7 "" "5.9.0" "Universal Ctags" .SH NAME ctags-lang-iPythonCell \- The man page of the iPythonCell parser for Universal Ctags . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .SH SYNOPSIS .nf \fBctags\fP ... \-\-extras={subparser} \-\-languages=+iPythonCell,Python \e .in +2 [\-\-extras\-IPythonCell=+{doubleSharps}] \e [\-\-regex\-IPythonCell=//\en/c/] ... .in -2 .fi .sp .SH DESCRIPTION .sp iPythonCell is a subparser stacked on top of the Python parser. It works when: .INDENT 0.0 .IP \(bu 2 The Python parser is enabled, .IP \(bu 2 the \fBsubparser\fP extra is enabled, and .IP \(bu 2 the iPythonCell parser itself is enabled. .UNINDENT .sp iPythonCell extracts cells explained as in vim\-ipython\-cell (\fI\%https://github.com/hanschen/vim\-ipython\-cell/blob/master/README.md\fP). .SH KIND(S) .sp The iPythonCell parser defines only a \fBcell\fP kind. .SH EXTRA(S) .sp Tagging cells staring with \fB##...\fP is disabled by default because the pattern is too generic; with that pattern unwanted tags can be extracted. .sp Enable \fBdoubleSharps\fP language specific extra for tagging cells staring with \fB##...\fP\&. .SH CUSTOMIZING .sp If your favorite cell pattern is not supported in the parser, you can define the pattern in your \fB\&.ctagd.d/your.ctags\fP or command lines. Here is an example how to support "\fB# CTAGS: ...\fP": .sp "input.py" .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C x=1 # CTAGS: DEFINE F def F(): # CTAGS: DO NOTING pass .ft P .fi .UNINDENT .UNINDENT .sp "output.tags" with "\-\-options=NONE \-\-sort=no \-\-extras=+{subparser} \-\-regex\-IPythonCell=/[ t]*# CTAGS:[ ]?(.*)$/1/c/ \-o \- input.py" .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C 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 .ft P .fi .UNINDENT .UNINDENT .sp You can put "\fB\-\-regex\-IPythonCell=/[ \et]*# CTAGS:[ ]?(.*)$/\e1/c/\fP" in \fByour.ctags\fP to avoid specifying the pattern repeatedly. .SH SEE ALSO .sp ctags(1), ctags\-client\-tools(7), ctags\-lang\-python(7) .\" Generated by docutils manpage writer. .