我工作的公司开发了一种新的编程语言,可以简化工程师的工作。我的工作是为这个语言提供一个很好的编辑器,它也涉及代码折叠。我需要自定义代码折叠,不包括" {"和"}"。我正在使用Geany文件类型。我添加了新的文件类型。我想折叠一些像下面这样的结构。
if %condition% then for each %element% in %range% do
%statement% %statement%
else if %condition% then end for
%statement%
else
end if
我知道我的语言远非c类型,但是在我的代码中添加了这样的行以启用语法着色。
[settings]
lexer_filetype=C
任何形式的帮助都将受到赞赏。
答案 0 :(得分:0)
我不知道确切的答案,但我知道如何挖掘它。到目前为止还没有答案,我将写下如何才能出现答案。使用scintilla及其词法分析器可以带我们解决这个问题。 Geany和Scintilla文档都提到了该功能的支持。
答案 1 :(得分:-1)
在Debian下:
cp /usr/share/geany/filetypes.c ~/.config/geany/filedefs/
chown myUser:myGroup ~/.config/geany/filedefs/filetypes.c
编辑文件。在[lexer_properties]
部分下添加以下行:
fold.cpp.comment.explicit = 1
保存文件。
打开geany。您现在可以使用c和cpp中的默认//{
和//}
分隔符来放置用户折叠。这些不会影响您的代码,因为c和cpp是注释。