集算器代码格中超长语句的分行续行
在集算器代码格中书写 SPL 语句时,有时会在一个代码格中写出超长的语句,虽然集算器中有 "内容冲出单元格显示" 的选项设置,但超长语句始终是以整行的方式显示出来,会影响到右侧单元格,又或者是全部挤在一个格子里,对阅读造成些许不便。所以我就琢磨,在代码格中可不可以实现分行断句,把代码格纵向拉长,人为地把一条超长语句打断成两行甚至是多行,使得长语句更容易阅读,也可以使整篇代码的布局更具观感 (个人审美)。目前,集算器代码格中是不能强制分行的。同样,在 SPL 桌面版插件中,也不能进行分行断句,因为此时在关键词 spl(“”) 里是文本,要实现分行只能用 “语句 1” & “语句 2” & …进行拼接,而符号 \“,“是用于突破 Excel 公式长度不能超过 255 个字符这个限制的,不能算是分行断句符号。实际上,桌面版插件中 spl(””)里也存在代码格,格子间 (列) 用 Tab 符号隔开,行之间用强制换行符,那这个格子里是否也能实现分行续行,因为有一个对应的功能选项是 "Excel 复制",可以把集算器 IDE 中的代码复制到 Excel 的公式编辑栏里。
在 VBA 中,使用了一个专门的连续线(空格 + 下划线 "_"),把它写在一行代码的末尾,表明下一行是这行的连续。比如以下写法中的空格 + 下划线,实现了超长语句的分行断句:
Selection.PasteSpecial _
Paste:=xlValues, _
Operation:=xlMultiply, _
SkipBlanks: =False, _
Transpose:=False
当然,VBA 在使用该下划线时也设定了一些限制,比如,冒号和引号之间不能使用,引号内的文本之间不能使用……
再比如,Python 中也有类似的续行符 "\",用反斜杠把长语句拆分成多行。
当然,这个续行符是一个锦上添花的事,恳请大佬们得空时看看集算器代码格中可否实现这样的分行续行符,能不能添上这朵花?😄
谢谢🙏
Till good is better,better best!😄
SPL 网格程序支持:计算格(块)或执行格(块)以,;( 结尾时将自动拼接下一格内容,直到不是这些字段结尾或本行(代码块)结束
Gotcha,666,谢谢大佬😄 这个写法在官方哪个文档中有提及啊?
It’s an undocumental function.
一个格子里的代码也可以随便加回车符,只要别把单词拆开就行了。SPL 代码在这里是类 Java 的,不需要续行符
a + b
和
a
+
b
是没有区别的
感谢老贼指点😄 总算试出来了,代码格里需要用 Ctrl+Enter 来表示换行。屌的很👍 👍 (粗话,望海涵🙏 )
不过这样子换行不能在桌面版插件中使用,此时在 Excel 公式编辑栏里会视同强制换行,变成另外的格子了。
我再斗胆问一句:还有多少功能没公布出来😂 😂
双击格子,会有个大编辑框,可以随便输入回车了。
😄 学到了,哈哈…谢谢老贼,谢谢 leavedy🙏
Recap:
1、计算格(块)或执行格(块)以,;( 结尾时将自动拼接下一格内容,直到不是这些字段结尾或本行(代码块)结束;
2、双击格子,会弹出编辑框,在编辑框中可以随便输入回车换行。