Я редактирую HTML-файл в Vim, и я хочу, чтобы браузер обновлялся при каждом изменении файла под ним.
Есть ли плагин для Google Chrome, который будет отслеживать изменения в файле и автоматически обновлять страницу каждый раз, когда я сохраняю изменение в файле? Я знаю, что для Firefox есть XRefresh, но мне вообще не удалось запустить XRefresh.
Насколько сложно было бы самому написать сценарий для этого?
vim
google-chrome
automation
Кевин Берк
источник
источник
Ответы:
Я полагаю, вы не используете OSX? В противном случае вы могли бы сделать что-то вроде этого с помощью applescript:
http://brettterpstra.com/watch-for-file-changes-and-refresh-your-browser-automatically/
Существует также плагин для Chrome под названием «автоматическое обновление плюс», в котором вы можете указать перезагрузку каждые x секунд:
https://chrome.google.com/webstore/detail/auto-refresh-plus/oilipfekkmncanaajkapbpancpelijih?hl=en
источник
keyword
наwatch_keyword
в следующей строке:if (URL of atab contains "#{keyword}") then
Решение на чистом JavaScript!
Live.js
Просто добавьте в свой
<head>
:Я скопировал этот ответ почти дословно отсюда , потому что я думаю, что он проще и более общий, чем принятый в настоящее время ответ здесь.
источник
php -S localhost:8080
python3 -m http.server
и многие другие для других языков / инструментов .Обновление : Tincr мертв.
Tincr - это расширение Chrome, которое обновляет страницу всякий раз, когда файл под ней изменяется.
источник
Handy Bash однострочный для OS X, если вы установили fswatch (
brew install fswatch
). Он отслеживает произвольный путь / файл и обновляет активную вкладку Chrome при наличии изменений:Подробнее о fswatch здесь: https://stackoverflow.com/a/13807906/3510611
источник
Добавив в документ один метатег, вы можете указать браузеру автоматически перезагружаться с заданным интервалом:
Помещенный в тег заголовка вашего документа, этот метатег будет указывать браузеру на обновление каждые три секунды.
источник
http://livereload.com/ - родное приложение для OS X, альфа-версия для Windows. Открытый исходный код https://github.com/livereload/LiveReload2
источник
Используйте Gulp для просмотра файлов и Browsersync чтобы перезагрузить браузер.
Шаги следующие:
В командной строке выполните
Создайте gulpfile.js со следующим содержимым:
Бегать
Отредактируйте HTML, сохраните и увидите, как ваш браузер перезагрузится. Волшебство достигается за счет внедрения специальных тегов в ваши HTML-файлы на лету.
источник
Я знаю, что это старый вопрос, но если он кому-то поможет, есть перезагрузка пакет npm, который его решает.
Если вы не запускаете его на сервере или получили сообщение об ошибке
Live.js doesn't support the file protocol. It needs http.
Просто установите его:
а затем в каталоге index.html запустите:
Он запустит сервер, который будет обновляться каждый раз, когда вы сохраните изменения.
Есть много других вариантов, если вы запускаете его на сервере или где-то еще. Проверьте ссылку для получения более подробной информации!
источник
Для OS X и Chrome существует Java-приложение Refreschro. Он будет отслеживать данный набор файлов в локальной файловой системе и перезагружать Chrome при обнаружении изменений:
http://neromi.com/refreschro/
источник
Если вы работаете в GNU / Linux, вы можете использовать довольно крутой браузер под названием Falkon . Он основан на Qt WebEngine . Это похоже на Firefox или Chromium, за исключением того, что он автоматически обновляет страницу при обновлении файла. Автоматическое обновление не имеет большого значения, используете ли вы vim, nano или atom, vscode, скобки, geany, коврик для мыши и т. Д.
В Arch Linux вы можете довольно легко установить Falkon:
Вот пакет оснастки.
источник
Быстрое решение, которое я иногда использую, - это разделить экран на два и каждый раз, когда вносятся изменения, щелкать документ xD.
источник
В node.js вы можете подключить primus.js (веб-сокеты) с gulp.js + gulp-watch (исполнитель задач и слушатель изменений, соответственно), так что gulp позволяет окну вашего браузера знать, что он должен обновляться всякий раз, когда html, js и т. д., поменять. Это агностик ОС, и он работает в локальном проекте.
Здесь страница обслуживается вашим веб-сервером, а не загружается как файл с диска, что на самом деле больше похоже на настоящую вещь.
источник
Это работает для меня (в Ubuntu):
Возможно, вам потребуется установить пакеты inotify и xdotool (
sudo apt-get install inotify-tools xdotool
в Ubuntu) и изменить аргументы--class
на фактические имена вашего предпочтительного браузера и терминала.Запустите сценарий, как описано, и просто откройте index.html в браузере. После каждого сохранения в vim скрипт будет фокусировать окно вашего браузера, обновлять его, а затем возвращаться в терминал.
источник
xdotool search --name 127.0.0.1 windowactivate key F5
для работы на localhost (127.0.0.1). 0.1) только, конечно. Теперь мне нужно снова вставить это в сценарий.Самое гибкое решение, которое я нашел, - это расширение Chrome LiveReload в сочетании с сервером защиты .
Просматривайте все файлы в проекте или только те, которые вы указали. Вот пример конфигурации Guardfile:
Обратной стороной является то, что вы должны настраивать это для каждого проекта, и это поможет, если вы знакомы с Ruby.
Я также использовал расширение Tincr chrome, но похоже, что оно тесно связано с фреймворками и файловыми структурами. (Я попытался подключить tincr для проекта jekyll, но это позволило мне наблюдать за изменениями только в одном файле, без учета включений, частичных изменений или изменений макета). Однако Tincr отлично работает с такими проектами, как rails, которые имеют согласованные и предопределенные файловые структуры.
Tincr был бы отличным решением, если бы он допускал повторную загрузку шаблонов соответствия, но проект по-прежнему ограничен в своем наборе функций.
источник
Это можно сделать с помощью простого скрипта на Python.
Полную информацию можно найти здесь .
источник
На основе ответа attekei для OSX:
Сложите все это в
reload.scpt
:Это перезагрузит первую найденную вкладку, которая начинается
file://
и заканчивается первым аргументом командной строки. Вы можете настроить его по своему желанию.Наконец, сделайте что-нибудь подобное.
fswatch -o
выводит количество файлов, которые были изменены в каждом событии изменения, по одному в строке. Обычно это просто печать1
.xargs
считывает эти1
s и-n1
означает, что он передает каждый из них в качестве аргумента для нового выполненияosascript
(где он будет проигнорирован).источник
tab.title.includes(argv[0])
в качестве условного условия я могу сопоставить заголовок страницы, который может быть менее привередливым, чем URL, и работает при использовании локального сервера, а не file: //.Установить и настроить
chromix
Теперь добавьте это в свой
.vimrc
измените порт на тот, который вы используете
источник
Сохраните этот код в файле livereload.js и включите его внизу HTML-скрипта, например:
Это будет обновлять страницу каждые 100 миллисекунд. Любые изменения, которые вы вносите в код, мгновенно видны глазам.
источник
Хорошо, вот мое грубое решение Auto Hotkey (в Linux попробуйте Auto Key ). При нажатии сочетания клавиш сохранения активируйте браузер, нажмите кнопку перезагрузки , затем вернитесь в редактор. Я просто устал запускать другие решения. Не будет работать, если ваш редактор выполняет автосохранение.
источник
Автономное решение с использованием R
Этот код будет:
заставлять браузер обновляться каждый раз при сохранении изменений в .html-файле.
Подобные решения существуют для Python и т. Д.
источник
Добавьте это в свой HTML
Пока вы редактируете, ваша страница браузера размывается, при переключении назад, чтобы посмотреть на нее, запускается событие focus и страница перезагружается.
источник
затем просто войдите в каталог, который вы хотите отслеживать, выполните "watch_refresh_chrome"
источник