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,然后突出显示并
高级=?取消注释块
你会实现你的目标