eye.helpers.folding module

Plugin for non-lexical code folding

Default lexers provide code folding, for example functions can be folded. This plugin provides folding that isn’t based on lexer tokens but on markers. For example “{{{” for starting a fold zone and “}}}” for ending a fold zone.

Simple usage:

>>> import eye.helpers.folding
>>> eye.helpers.folding.set_marker_folder.enabled = True
class eye.helpers.folding.MarkerFolder(editor=None, **kwargs)[source]

Bases: QObject, HasWeakEditorMixin

interval = 100
marker_end = re.compile('\\}\\}\\}')
marker_start = re.compile('\\{\\{\\{')
on_modification(st)[source]

This slot has signature on_modification(object).

refold(force=False)[source]

This slot has signature refold().

refold_at(start, force=False)[source]
refold_queue(force=False)[source]

This slot has signature refold_queue().

eye.helpers.folding.disable_lexer_folding(ed, *args)[source]

Disable folding based on QsciLexer for an editor widget

This handler is disabled by default.

This handler is registered for categories ['editor'] on signal lexer_changed.

eye.helpers.folding.set_marker_folder(editor, *args)[source]

Enable folding based on markers for an editor widget

This handler is disabled by default.

This handler is registered for categories ['editor'] on signal lexer_changed.

This handler is registered as setup for categories ['editor'].