[Geany-Users] Code folding in geany 1.26
Matthew Brush
mbrush at xxxxx
Wed Dec 7 04:36:09 UTC 2016
On 2016-12-06 06:41 PM, Lex Trotman wrote:
> On 7 December 2016 at 11:17, Matthew Brush <mbrush at codebrainz.ca> wrote:
>> On 2016-12-06 05:08 PM, Lex Trotman wrote:
>>> On 7 December 2016 at 11:01, Matthew Brush <mbrush at codebrainz.ca> wrote:
>>>> On 2016-11-26 07:20 AM, H wrote:
>>>>> [...]
>>>>> Ideally I would also like to be able to fold markdown text, not only
>>>>> programming code. Has anyone had success with that?
>>>>> [...]
>> A plugin could look at the code and notifications and decide what and when
>> to fold. If the lexer does folding already (unlike Markdown), the plugin
>> would be fighting the lexer's setting of fold levels, and would probably
>> require disabling code folding in Geany and doing everything in the plugin.
>
> Yes, setting the lexer to SCLEX_CONTAINER is how you turn off the
> scintilla lexer and get the SCN_STYLENEEDED notification to do it in
> the plugin. But ATM Geany doesn't support it.
>
For the Markdown lexer, which doesn't appear to support folding, you
could just write simple plugin which scans the text and set the
appropriate fold level on the desired lines.
For example this naive pseudo-code to fold on #-style headers:
onTextChanged() {
foreach line in allLines
if line.text.startsWith("###")
line.foldLevel = 3
}
It's not as nice as doing it inside the lexer proper but it's probably
only a few pages of code to implement.
Regards,
Matthew Brush
More information about the Users
mailing list