Actualmente estoy luchando por usar el modo de brocheta en Emacs.
Descargué e instalé el modo pincho a través de MELPA, por lo que todas las dependencias deberían estar en su lugar.
Para fines de prueba, incluso descargué la boidsjs demo .
Me abriré boids.js, luego escribiré M-xrun-skewer(abre el navegador con URL http://127.0.0.1:8080/skewer/demo) y finalmente ejecutaré M-xskewer-mode(-> modo de brocheta habilitado).
Pero en el navegador no pasa nada .
¿Qué estoy haciendo mal?
                    
                        package
                                skewer-mode
                                javascript
                                
                    
                    
                        JacksGT
fuente
                
                fuente

boids.jsbúfer?C-x C-kno funciona enskewer-html-modeRespuestas:
TLDR; Debe iniciar el servidor http ( simple-http ) y cargar sus archivos HTML a través de él.
Por ejemplo, supongamos que tiene un archivo HTML llamado
hello.htmly un archivo de secuencia de comandos JS llamadoscript.jsen la/home/user/Documents/javascriptcarpeta.hola.html :
script.js :
init.el (o .emacs ):
Es hora de iniciar el servidor: M-x
httpd-starty abra elindex.htmlarchivo en el navegador visitandohttp://localhost:8080/hello.html. Debería recibir la alerta en el navegador y ahora llamarskwer-repl.Puede interactuar aún más con el navegador a través de la respuesta. Por lo tanto, todo lo que evalúe en la respuesta se transmitirá al navegador. Por ejemplo, si escribe
console.log('hey!')la respuesta, recibirá este mensaje en la consola del navegador.Si desea modificar HTML de forma interactiva (por ejemplo, actualizar las etiquetas HTML de emacs), agregue a su init.el (o .emacs ):
Ahora, cuando esté en su archivo .html , puede evaluar las etiquetas con C-M-x(
skewer-html-eval-tag), y éstas se actualizarán inmediatamente en su navegador.Tenga en cuenta que, por el contrario, esto también se aplica a los archivos CSS y CSS.
fuente
httpd-rooten su configuración, puede ejecutarM-x eval-expression(setq httpd-root "/path/to/files")desde emacs en cualquier momento.<script src="http://localhost:8080/skewer"></script>\(no se puede editar - las ediciones deben ser> = 6 caracteres)En lugar de ejecutar la demostración, solo realice estos pasos mínimos para asegurarse de que todo funcione correctamente.
run-skewer(se abre un navegador, regrese a myskewer.js)alert("hello");y presiona C-xC-eal final de esa líneaDebería ver un cuadro de alerta en la página.
fuente
C-x C-eson las claves reales para empujar. editará mi respuesta~/public_htmlluego siga las instrucciones para la "Versión manual" en este enlace. Una vez hecho esto, visite localhost: 8080 en su navegador.En caso de que el puerto 8080 ya esté en uso :
puede configurar skewer / simple-httpd para usar otro puerto personalizando la
httpd-portvariable. (M-x customize-variable<ret>httpd-port)fuente