JSL Editor 中的 Reformat Script 對於取得具有格式化結構的程式碼非常有幫助。

通常,它有助於查找程式碼中的錯誤並保持概覽。
但有時,情況恰恰相反。
有沒有辦法保護特定區域的程式碼不被重新洗牌重新格式化腳本?
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Recode Column(
dt:name,
{Map Value(
_rcOrig,
{"ALFRED", "A",
"ALICE", "A",
"AMY", "A",
"BARBARA", "A",
"CAROL", "A",
"CHRIS", "A",
"CLAY", "A",
"DANNY", "A",
"DAVID", "A",
"EDWARD", "A",
"ELIZABETH", "B",
"FREDERICK", "B",
"HENRY", "B",
"JACLYN", //missing
"JAMES", "B",
"JANE", "B",
"JEFFREY","B",
"JOE","B",
"JOHN", "B",
"JUDY", "B",
"KATIE", "B"
},
Unmatched( _rcNow )
)},
Update Properties( 1 ),
Target Column( :name )
);Jarmo 的建議效果很好,但是必須重新格式化語法上有效的 JSL

結果僅重新格式化程式碼的選定部分

嗯,語法上有效的 JSL 程式碼 - 如果我刪除「保護區」中的程式碼,重新格式化就會起作用。 所以,剩下的似乎還可以。
我認為實際的問題是:
保護區上方和下方的兩段代碼必須是語法上有效的 JSL 代碼。
即保護區必須處於最高等級-例如整個功能區。
另一個例子:

你的意思是:不要選擇保護區周圍的一些代碼,以便其餘代碼保持一致,然後觸發重新格式化腳本?
不幸的是,似乎不起作用:(

接得好。
有一個解決方法。這
高級=>評論區
不會改變程式碼的結構,它只是註解掉突出顯示的程式碼部分。如果您評論區塊,則重新格式化 JSL,然後反白並
高級=?取消註解區塊
你會實現你的目標