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.js
búfer?C-x C-k
no funciona enskewer-html-mode
Respuestas:
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.html
y un archivo de secuencia de comandos JS llamadoscript.js
en la/home/user/Documents/javascript
carpeta.hola.html :
script.js :
init.el (o .emacs ):
Es hora de iniciar el servidor: M-x
httpd-start
y abra elindex.html
archivo 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-root
en 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-e
son las claves reales para empujar. editará mi respuesta~/public_html
luego 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-port
variable. (M-x customize-variable<ret>httpd-port
)fuente