Dyalog APL中的多行文本值

时间:2017-03-22 15:12:47

标签: apl dyalog

如何在Dyalog APL中编写多行文本值?

我想编写类似的代码:

query←'
SELECT *
FROM SOME_TABLE
'

能够将此文本复制到SQL Developer并返回。

我知道我可以这样编码:

query←''
query,←'SELECT * '
query,←'FROM SOME_TABLE '

但它不允许我将此文本复制到SQL Developer并轻松返回。

是否可以临时覆盖Dyalog APL函数源代码中的换行符?

3 个答案:

答案 0 :(得分:2)

S←{a←⍺⍺⋄,⎕cr'a'}
query←{
 SELECT *
 FROM Some_Table
}S⍬

答案 1 :(得分:0)

我害怕Multiline-Strings不在那里(但我希望如此)。

解决这个问题的唯一方法就是按如下方式编写:

query←ScriptFollows
⍝ SELECT *
⍝ FROM Some_Table

从SQL Dev粘贴时,选择插入的文本,然后单击编辑器工具栏上的 按钮,在每一行上插入注释符号。

如果使用IDE,请单击并按住鼠标右键选择不带注释符号的矩形块。

答案 2 :(得分:0)

这个功能实际上是多年前在基于APL \ 360的(大型机)系统上可用的,例如Sharp APL(1980年左右被移除?),STSC APL * Plus等。除此之外,再也没有可能使用普通的del编辑器返回编辑带有嵌入式回车的这样一行(全屏编辑器,因此尚不存在)。它被删除了,因为它可能让用户感到困惑 - 系统期望收到报价并且只是按回车并没有隐含地提供一个。