2017-03-22 52 views
1

如何在Dyalog APL中對多行文本值進行編碼?Dyalog APL中的多行文本值APL

我想這樣對代碼的東西:

query←' 
SELECT * 
FROM SOME_TABLE 
' 

能夠將此文本複製到SQL Developer和背部。

我知道我可以這樣編寫的:

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

,但它不會讓我這個文本SQL Developer和背部容易複製。

是否可以臨時覆蓋Dyalog APL函數源代碼中的換行符?

回答

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

好戲,謝謝。它有一些問題: 1)查詢被'a←{'和'}'用一些空格包圍 2)查詢中的'}'字符(在字符串常量中)不被支持 3)Dyalog APL以自己的方式格式化查詢。 修整可以這樣完成: 查詢←(query⍳'{')↓(¯1+query⍳'}')↑查詢 – Olexa

0

恐怕多行字符串不存在(但是,我希望)。

解決這個問題的唯一辦法是做寫如下:

query←ScriptFollows 
⍝ SELECT * 
⍝ FROM Some_Table 

當從SQL開發粘貼,選擇插入的文本,然後單擊編輯器工具欄上的按鈕插入每行註釋符號。

如果使用IDE,請單擊並按住鼠標右鍵以選擇不帶註釋符號的矩形塊。

0

此功能是實際可用多年前基於APL \ 360,如夏普APL(主機)系統(1980年左右去掉?),科技小組APL * Plus和他人。除此之外,用普通的del編輯器(全屏編輯器,因爲它還不存在)不再能夠編輯這樣一個嵌入回車符的行。它被刪除了,因爲它可能會讓用戶感到困惑 - 系統預計結束報價,只是按回車並不暗示提供一個。