J'ai actuellement du mal à utiliser le mode brochette dans Emacs.
J'ai téléchargé et installé le mode brochette via MELPA, donc toutes les dépendances doivent être en place.
À des fins de test, j'ai même téléchargé la boidsjs
démo .
Je vais ouvrir boids.js
, puis taper M-xrun-skewer
(ouvre le navigateur avec l'URL http://127.0.0.1:8080/skewer/demo
) et enfin exécuter M-xskewer-mode
(-> mode brochette activé).
Mais dans le navigateur, rien ne se passe.
Qu'est-ce que je fais mal?
package
skewer-mode
javascript
JacksGT
la source
la source
boids.js
tampon?C-x C-k
ne fonctionne passkewer-html-mode
Réponses:
TLDR; Vous devez démarrer le serveur http ( simple-http ) et charger vos fichiers HTML à travers lui.
Par exemple, supposons que vous ayez un fichier HTML nommé
hello.html
et un fichier de script JS nomméscript.js
dans le/home/user/Documents/javascript
dossier.bonjour.html :
script.js :
init.el (ou .emacs ):
Il est temps de démarrer le serveur:, M-x
httpd-start
et d'ouvrir leindex.html
fichier dans le navigateur, en visitanthttp://localhost:8080/hello.html
. Vous devriez recevoir l'alerte dans le navigateur et appeler maintenantskwer-repl
.Vous pouvez en outre interagir avec le navigateur via le repl. Ainsi, tout ce que vous évaluez dans la réponse sera transmis au navigateur. Par exemple, si vous tapez
console.log('hey!')
la réponse, vous obtiendrez ce message dans la console du navigateur.Si vous souhaitez modifier le HTML de manière interactive (par exemple, les balises HTML de mise à jour en direct d'emacs), ajoutez à votre init.el (ou .emacs ):
Maintenant, lorsque vous êtes dans votre fichier .html , vous pouvez évaluer les balises avec C-M-x(
skewer-html-eval-tag
), et celles-ci seront immédiatement mises à jour dans votre navigateur.Gardez à l'esprit que, inversement, cela s'applique également aux fichiers CSS et CSS.
la source
httpd-root
dans votre configuration, vous pouvez exécuter àM-x eval-expression
(setq httpd-root "/path/to/files")
partir d'emacs à tout moment.<script src="http://localhost:8080/skewer"></script>\
(impossible de modifier - les modifications doivent être> = 6 caractères)Au lieu d'exécuter la démo, effectuez simplement ces étapes minimales pour vous assurer que tout fonctionne correctement.
run-skewer
(un navigateur s'ouvre, retournez sur myskewer.js)alert("hello");
et appuyez C-xC-eà la fin de cette ligneVous devriez voir une boîte d'alerte sur la page.
la source
C-x C-e
est les touches réelles à pousser. modifiera ma réponse~/public_html
puis suivez les instructions pour "Version manuelle" sur ce lien. Une fois cela fait, visitez localhost: 8080 dans votre navigateur.Dans le cas où le port 8080 est déjà utilisé :
vous pouvez configurer skewer / simple-httpd pour utiliser un autre port en personnalisant la
httpd-port
variable. (M-x customize-variable<ret>httpd-port
)la source