Как перезагрузить/обновить веб-страницу, не выходя из среды разработки веб-разработки?
Создание веб-сайтов
Когда я создаю сайты, я использую 2 монитора. У меня есть IDE разработки на главном мониторе, и веб-страница открывается на вторичном экране.
Меня раздражает, что каждый раз, когда мне нужно обновлять веб-страницу, мне нужно перейти к моей мыши, перейдите на другой экран и нажмите "Обновить".
Я хотел бы иметь ярлык, сопоставленный для перезагрузки веб-страницы всякий раз, когда мне нужно. Аналогично тому, как Winamp сопоставляет ключи к общим функциям, таким как воспроизведение/пауза и т.д.
Мое текущее исследование:
Firefox через командную строку
Я обнаружил, что существующий процесс FireFox можно контролировать из командной строки, однако лучше всего это создать новое окно с определенным URL-адресом.
firefox -remote "openURL(www.mozilla.org, new-tab)"
Документация находится здесь: https://developer.mozilla.org/en/Command_Line_Options
Обновить каждый
Существует также расширение firefox, которое будет периодически обновлять веб-страницу. Однако это приводит к постоянному мерцанию страницы и также будет расточительным с ресурсами.
https://addons.mozilla.org/en-US/firefox/addon/115/
Однако мне действительно нужно....
- настраиваемая глобальная горячая клавиша для Firefox/Chrome для перезагрузки текущей выбранной вкладки
- Расширение браузера, которое можно запустить из глобальной горячей клавиши
- Команда для перезагрузки текущей выбранной вкладки из командной строки, которую я мог бы затем сопоставить с горячей клавишей (можно ли добавить дополнительную удаленную команду с расширением?)
Кто-нибудь знает, как я могу это сделать? Спасибо!
Ответы
Ответ 1
В Windows XP это должно работать:
-
Создайте файл VBS с именем refresh.vbs
:
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.AppActivate("Firefox")
WshShell.SendKeys "{F5}"
WshShell.AppActivate("TextPad")
-
Создайте ярлык для этого файла на рабочем столе.
-
Щелкните правой кнопкой мыши значок ярлыка и перейдите к Properties
.
-
На вкладке General
нажмите кнопку "Изменить" рядом с "Открывается с".
Перейдите к C:\WINDOWS\system32\cscript.exe
Выберите "Консоль на базе Microsoft" Script Host.
-
На вкладке Shortcut
введите клавишу быстрого доступа, например CTRL + ALT + R
. В раскрывающемся списке "Выполнить" выберите Minimised
.
Теперь, когда вы нажмете CTRL + ALT + R
, он обновит текущую вкладку в Firefox.
Ответ 2
Это мой любимый bash однострочный:
while /bin/true ; do inotifywait --recursive --event modify ./ ; echo "reload" | nc -c localhost 32000 ; done
Он использует Firefox Remote Control AddOn, который не уведомляет об изменениях в и под текущими файлами каталогов. Поэтому вам нужно сохранить любой файл в проекте и тот же момент, когда текущая вкладка Firefox будет перезагружена.
Этот unix-ish, должен работать на Linux + Mac, если у вас есть inotify, не будет работать в Windows без адаптаций.
Ответ 3
Я создал простой applescript, который я настроил как глобальную горячую клавишу, используя Alfred.
Здесь applescript
tell application "Firefox"
activate
tell application "System Events"
tell process "Firefox"
keystroke "r" using {command down, shift down}
end tell
end tell
end tell
Если вы хотите, чтобы фокус оставался в вашем редакторе, вы можете добавить эти строки. Не забудьте заменить Coda (мой редактор выбора) на то, что вы используете
tell application "Coda"
activate
end tell
Ответ 4
Существует инструмент для Windows под названием Autohotkey, который позволяет вам автоматизировать почти все, отправив коды клавиш и щелчки мышью. Вы можете написать script, который найдет ваше окно браузера и отправит код ключа для F5. Назначьте этот script глобальной горячей клавише, и все готово.
Чтобы вернуться в предыдущее окно, ваш script должен будет запомнить текущее выбранное окно, обновить браузер и установить фокус обратно в запоминающееся окно.
Ответ 5
Уверены, что доступны горячие клавиши, особенно если IDE и браузер являются единственными программами, которые вы переключаете между ними.
alt+tab f5 alt+tab
Переключает в ваш браузер, перезагружает его и переключает обратно. Гораздо быстрее, чем mousing, и вам не нужно беспокоиться о глобальных горячих клавишах или дополнительном программном обеспечении для установки.
Ответ 6
Я использую MS Ergonomic Keyboard, которая имеет функцию ключевого макроса. Я запрограммировал решение Joshs в нем, и он работает хорошо, вам просто нужно убедиться, что браузер является следующим приложением, когда происходит с Alt-Tab.
Существует классный инструмент с именем XRefresh, который почти каждый разработчик мечтает - не работает с firefox 4, хотя.
Изменить: но есть аддон "Авто перезагрузка" , который делает именно то, что нам нужно: вы указываете одну или несколько папок (или файлов) и firefox обновляется, когда один из файлов внутри изменяется.
Изменить (2013): у PHPStorm есть функция автоматического обновления для Google-Chrome. Это потрясающе: вы видите веб-страницу chnge при вводе (!) В среде IDE. У них есть бесплатная версия сообщества для разработчиков программного обеспечения OpenSource.
Ответ 7
Там гораздо лучшее решение для этого, но с учетом значительно большей сложности.
Selenium (seleniumhq.org) может делать то, что вы запрашиваете. Это платформа проверки браузера с открытым исходным кодом, которая, среди многих вещей, позволяет удаленно управлять окном браузера.
Если Selenium будет звучать как-то, что вы хотели бы войти в ваш мозг, вы могли бы также изучить его; если нет, я бы придерживался сценариев WSH и Autohotkey.
Ответ 8
Это на самом деле не отвечает на ваш вопрос, но, возможно, делает вашу жизнь немного легче;)
Я только что нашел Stylebot. Хотя у него нет автоматического завершения и прочее, это может помочь вам с CSS.
Вот скриншот. Боковая панель - Stylebot. У вас есть базовый режим редактирования, в котором вы можете быстро отредактировать некоторые простые свойства, расширенный режим, в котором вы можете редактировать простой CSS для выбранного элемента и с помощью "Редактировать CSS" вы можете редактировать весь CSS для страницы.
![enter image description here]()
Ответ 9
Спасибо собаке и всем за долю.
Работа с Windows 7 позволяет обновить браузер.
Создайте файл .bat и выполните
% windir%\SysWOW64\wscript.exe refresh.vbs
и выполнить .bat с помощью "Запуск от имени администратора"
Нельзя использовать CreateObject из сценариев VB в Windows 7 x64
:)
Ответ 10
Решение VBScript не работает с браузером Google Chrome в Windows 7. Ниже приведено решение, которое прекрасно работает с любым браузером (просто отрегулируйте строку ititle
) и Eclipse IDE с помощью небольшой утилиты от NirSoft (http://www.nirsoft.net/).
Ответ 11
В Windows: просто нажмите Alt + F5 и сделайте это. Это решение работает с несколькими браузерами одновременно и, возможно, с любым редактором /IDE. Он был протестирован с помощью (jEdit, Eclipse, Notepad ++)
Для этого установите AutoHotKey и запустите script ниже (скопируйте в текстовый файл и измените расширение на .ahk), Здесь есть переносимая версия здесь. Он был протестирован с версией AutoHotKey 1.0.48.05
Это решение довольно гибкое, так как вы можете изменять Keys, Editors, Browsers и все остальное. Он поставляется предварительно настроенным для браузеров Firefox и IE и редакторами jEdit, Eclipse, но вы можете легко настроить этот список.
varTextEditor и varBrowsers, где обнаружена утилита "WindowSpy", которая поставляется в комплекте с AutoHotKey.
;###############################################################################
; Save all unsaved documents, refresh all opened browsers and return to text editor
;###############################################################################
!F5::
;Configuration vars. Edit here the settings of this script
; jEdit Eclipse
varTextEditor = SunAwtFrame,SWT_Window0
;varBrowsers = MozillaUIWindowClass,MozillaWindowClass,Chrome_WidgetWin_0,IEFrame,OpWindow,{1C03B488-D53B-4a81-97F8-754559640193}
; Firefox3 Firefox4 Chrome IEca Opera Safari
varBrowsers = MozillaWindowClass,IEFrame
;End of configuration vars.
WinGetClass, thisWindowClass, A ;Get the active window class
if (InStr(varTextEditor, thisWindowClass, true, 1) > 0) { ;true = case sensitive
varTextEditorClass = ahk_class %thisWindowClass%
if (thisWindowClass = "SunAwtFrame") {
OutputDebug, ...Saving everything
; SetKeyDelay, 100, 100, Play
Send ^+s ;Ctrl + Shift + S = Save all
} else if (thisWindowClass = "SWT_Window0") {
SendPlay ^s ;Ctrl + S = Save
}
Sleep, 500 ;Give some time to the data be recorded on hard disk
} else {
MsgBox, 0, Ops!, You must be in on these text editors: (%varTextEditor%) to get this script running, 5
return
}
;Refresh all opened (and maximized) browsers
Loop, parse, varBrowsers, `,
{
varClasseBrowser = ahk_class %A_LoopField%
if WinExist(varClasseBrowser) {
WinGet, winState, MinMax, %varClasseBrowser% ;get window state. -1 = minimized
if (winState != -1) {
WinActivate, %varClasseBrowser%
OutputDebug, ...Refresh browser %A_LoopField%
Send, {F5}
}
}
}
;Return to text editor
WinActivate, %varTextEditorClass%
return
Ответ 12
http://www.livereload.com/
LiveReload отслеживает изменения в файловой системе. Как только вы сохраните файл, он будет предварительно обработан по мере необходимости, и браузер обновится.
Даже когда вы изменяете файл CSS или изображение, браузер становится обновленным без перезагрузки страницы.
Ответ 13
Там есть другое решение.
Установите плагин FF-Remote-Control в FireFox, который позволит вам отправлять команды плагину с другого компьютера через сеть. Инструкции по интеграции с VIM приведены в документации, которая может использоваться как шаблон для интеграции с другими редакторами. Работает только с FF, хотя.