2011-06-28 14 views
20

Me he dado cuenta de que al compilar CoffeeScript, ninguno de los comentarios de una sola línea se conserva.¿Es posible mantener comentarios de una sola línea? (Escribir greasemonkey/userscripts en CoffeeScript)

Esto es problemático ya que estoy tratando de escribir un greasemonkey/userscript en CoffeeScript, y se basan en los comentarios para el bloque de metadatos.

He intentado usar acentos abiertos, pero parece que hay un problema con acentos abiertos en torno a los comentarios:

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

alert "hello world" 

Se convierte en

// ==UserScript== 
// @version  1.0 
// ==/UserScript==;alert("hello world"); 

Y si añado una línea adicional antes del cierre de comillas invertidas I obtener:

// ==UserScript== 
// @version  1.0 
// ==/UserScript== 
;alert("hello world"); 

También sería bueno tener la conveniencia de envoltura automática .. pero supongo que sin -bare el bloque de metadatos también estaría envuelto.

¿Hay una mejor manera de que yo pueda estar haciendo esto?

Respuesta

18

No consumo CoffeeScript, pero a partir de los documentos parece que podría utilizar:

### 
// ==UserScript== 
// @version  1.0 
// ==/UserScript== 
### 
alert "hello world" 


lo cual produciría:

/* 
// ==UserScript== 
// @version  1.0 
// ==/UserScript== 
*/ 
alert("hello world"); 

que analiza perfectamente bien como un script de GM . Los metadatos se leen correctamente.

+1

Esto * casi * funciona ... Sin embargo, si está tratando de utilizar Piñones, se encontrará con errores con este enfoque (ya que '// = ' se reemplazó con el código de '', para que pueda obtener /* // = requieren */ -.> /* (código de algo) */ – AlexeyMK

+3

Dudo que están utilizando piñones para el desarrollo userscript –

+1

para emitir 'requieren 'consumible por Sprockets (canalización de activos de Rails), puede usar' * = ', de esta manera: https://gist.github.com/joliss/9480786 (en caso de que alguien más sea wo ndering) –

Cuestiones relacionadas