在gnuplot中阻止评论

Mig*_*uel 7 gnuplot

我有一个很长的gnuplot脚本.出于调试目的,我希望能够阻止此脚本的注释部分或使用"goto"语句.这可能吗?

我知道我可以用一个if声明:

if (1 == 2) {
commented-out-code
} else {
non-commented-out code
}
Run Code Online (Sandbox Code Playgroud)

这是唯一的解决方案吗?

cho*_*oba 6

gnuplot中的注释以开头#。如果要注释整个块,则文本编辑器应该能够执行此操作(例如,M-;在Emacs中选中该块的情况下)。


Wol*_*olf 6

Gnuplot不支持块注释(从版本5开始)。但是,由于Gnuplot会解释您的脚本,因此您提供的解决方案就可以了。但是,不要使用被伪造的表达式(被评估为0),而应使用最大程度的明显符号(出于安全考虑,为此添加了注释)。保留else,但要注意但要使事情复杂化。

看下面的例子,发现它并不像人们想象的那么容易。

if (0) { # commented-out block
This block is completely ignored by Gnuplot.
Well, obviously not completely...
# }{
...because Gnuplot is not just looking for the closing curly brace ;-)
}
Run Code Online (Sandbox Code Playgroud)


keb*_*ebs 5

@choroba提出的解决方案的另一种解决方案是将脚本的各个部分分成不同的文件,然后管理一个“主”文件,该文件调用您未评论的文件:

# master script
load "part1.plt"
#load "part2.plt"
load "part3.plt"
Run Code Online (Sandbox Code Playgroud)