一般如何用编程语言和标记来处理注释?我正在为某些自定义标记语言编写解析器,并希望遵循最少惊喜的原则,因此我试图确定一般约定。
例如,注释是否应嵌入令牌中,从而“干扰”令牌?通常,是这样的:
Sys/* comment */tem.out.println()
有效?
另外,如果语言对新行敏感,并且注释跨越新行,是否应考虑新行?
stuff stuff /* this is comment
this is still comment */more stuff
被视为
stuff stuff more stuff
要么
stuff stuff
more stuff
?
我知道几种特定的语言在做什么,我也没有在寻求意见,而是在寻找是否:是否普遍达成共识,标记对代币和新行的一般期望是什么?
我的特定上下文是类似Wiki的标记。