2015-09-23 106 views
1

所以我做了一个记事本的用户定义的语言++组织一个写作计划错位。我知道如何做代码折叠,并且在过去的几个月中它运行良好。问题在于最近,代码折叠功能与打开和关闭标记的实际位置有几行关系。例如:记事本+ +代码折叠打开和关闭由几行

01 
02 
03 { the sea of time 
04 some 
05 events 
06 that 
07 are 
08 happening 
09 } 
10 
11 

{和}用于打开和关闭折叠块。但实际的功能使记事本++ UI中的开启和关闭按钮可能出现在第01行和第10行或第01行和第11行。因此,当我去折叠该块时,它不仅折叠了我所附带的部分,甚至黯然失色下一个块的开始,并且在某些情况下阻止我再次打开块而不禁用语言文件。如果我在关闭标记之前输入一对空白行,它会重置为它应该是的,但如果我实际上折叠了任何一个块,或者如果我在Notepad ++中切换到另一个文档,则会再次中断。

我一直没能就这个错误在别的地方找到任何文件。 我正在写的文本文件是几百千字节,长度大约为2000行,关联的语言文件有超过1500个已定义的关键字。这仅仅是Notepad ++无法处理这么多格式的情况吗?

问题的另一个可能的来源是几天前我简要地检查,然后取消选中用户定义的语言对话框的文件夹页面上的“折叠紧凑(折叠空行)”复选框,看看它会做什么,因为我找不到有关它的文档。这是关于问题何时开始 - 但从那时起复选框未被选中,错误仍然存​​在。

+0

好吧,如果它之前的工作,解决你的问题,怎么样卸载的n ++并重新安装和安装语言 –

+0

...或降级N ++到旧版本的地方工作。 – miroxlav

+0

我最先做的是导出语言,从n ++中删除它,然后重新导入它,但这并没有解决问题,现在它不在用户定义的语言列表中。所以我会尝试这些选项。编辑:我没有更新n ++之间和现在,所以我不认为降级会改变任何东西。我只是将它更新到最新版本,而不是解决问题,所以我正在完全卸载的方式。 –

回答

0

如果定义任何分隔符或运营商,这可能会导致代码折叠抵消。

错误似乎只能当两个打开和关闭的分隔符的出现在同一行存在。在我的UDL中,我定义了“.sig”作为我的开放定界符,“nal”作为我的近距离以突出显示“.signal”。对于我的代码中“.signal”的每一个用法,我的代码折叠从关闭中向下移动了1行,这导致我的折叠成为障碍而不是帮助。

在略微相关的问题,如果你想突出“信号”或类似的东西,这可通过以下方法来完成“”您的运营商1和“信号”的操作员2.