是否可以保留单行评论?(在CoffeeScript中编写greasemonkey/userscripts)

Aco*_*orn 21 javascript greasemonkey comments userscripts coffeescript

我注意到在编译CoffeeScript时,没有保留任何单行注释.

这是有问题的,因为我正在尝试在CoffeeScript中编写greasemonkey/userscript,并且它们依赖于元数据块的注释.

我尝试过使用反引号,但是注释的反引号似乎有问题:

`// ==UserScript==
// @version       1.0
// ==/UserScript==`

alert "hello world"
Run Code Online (Sandbox Code Playgroud)

// ==UserScript==
// @version       1.0
// ==/UserScript==;alert("hello world");
Run Code Online (Sandbox Code Playgroud)

如果我在结束反击之前添加额外的一行,我得到:

// ==UserScript==
// @version       1.0
// ==/UserScript==
;alert("hello world");
Run Code Online (Sandbox Code Playgroud)

拥有自动包装的便利也很好..但我想如果没有-bare元数据块也会被包装.

有没有更好的方法来解决这个问题?

Bro*_*ams 19

我不使用CoffeeScript,但从文档看起来你可以使用:

###
// ==UserScript==
// @version       1.0
// ==/UserScript==
###
alert "hello world"
Run Code Online (Sandbox Code Playgroud)


哪个会产生:

/*
// ==UserScript==
// @version       1.0
// ==/UserScript==
*/
alert("hello world");
Run Code Online (Sandbox Code Playgroud)

它可以完美地解析为GM脚本.元数据读取正确.

  • 我怀疑他们正在使用sprockets进行用户脚本开发. (3认同)