В настоящее время я изо всех сил пытаюсь использовать режим шампуров в Emacs.
Я скачал и установил режим шампура через MELPA, поэтому все зависимости должны быть на месте.
Для тестирования я даже скачал boidsjs
демо .
Я открою boids.js
, затем наберу M-xrun-skewer
(открывает браузер с URL-адресом http://127.0.0.1:8080/skewer/demo
) и, наконец, запустлю M-xskewer-mode
(-> режим шампура включен).
Но в браузере ничего не происходит.
Что я делаю неправильно?
package
skewer-mode
javascript
JacksGT
источник
источник
boids.js
буфера?C-x C-k
не работает вskewer-html-mode
Ответы:
TLDR; Вы должны запустить http-сервер ( simple-http ) и загрузить через него HTML-файлы.
Например, допустим, у вас есть файл HTML с именем
hello.html
и файл сценария JS с именемscript.js
в/home/user/Documents/javascript
папке.hello.html :
script.js :
init.el (или .emacs ):
Пришло время запустить сервер: M-x
httpd-start
и открытьindex.html
файл в браузере, посетив страницуhttp://localhost:8080/hello.html
. Вы должны получить предупреждение в браузере и теперь звонитеskwer-repl
.Вы можете в дальнейшем взаимодействовать с браузером через репл. Таким образом, все, что вы оцениваете в репле, будет передано в браузер. Например, если вы
console.log('hey!')
введете repl, вы получите это сообщение в консоли браузера.Если вы хотите интерактивно изменять HTML (например, обновлять HTML-теги из emacs в режиме реального времени ), добавьте в свой init.el (или .emacs ):
Теперь, когда вы находитесь в своем .html файле, вы можете оценивать теги с помощью C-M-x(
skewer-html-eval-tag
), и они будут немедленно обновлены в вашем браузере.Имейте в виду, что, наоборот, это также относится к файлам CSS и CSS.
источник
httpd-root
в своей конфигурации, вы можете запускатьM-x eval-expression
(setq httpd-root "/path/to/files")
из emacs в любое время.<script src="http://localhost:8080/skewer"></script>\
(не может редактироваться - изменения должны быть> = 6 символов)Вместо запуска демо, просто выполните эти минимальные шаги, чтобы убедиться, что все работает правильно.
run-skewer
(откроется браузер, вернитесь к myskewer.js)alert("hello");
и нажмите C-xC-eв конце этой строкиВы должны увидеть окно предупреждения на странице.
источник
C-x C-e
это реальные клавиши для нажатия. отредактирую мой ответ~/public_html
следуйте инструкциям для «Ручной версии» по этой ссылке. Как только это будет сделано, посетите localhost: 8080 в вашем браузере.Если порт 8080 уже используется :
Вы можете настроить skewer / simple-httpd для использования другого порта, настроив
httpd-port
переменную. (M-x customize-variable<ret>httpd-port
)источник