Sto cercando di impostare una toolchain personalizzata in cui il browser (Firefox o, preferibilmente, Chrome) è spesso/frequentemente/costantemente costretto ad aggiornarsi dalla riga di comando.
(L'idea è di vedere istantaneamente le modifiche visive nell'html/webapp che sto modificando in un frame Emacs adiacente, senza dover continuamente scorrere le schede sul browser per eseguire un aggiornamento manuale.)
Il più vicino che sono arrivato finora è eseguire google-chrome FILE_PATH
. Tuttavia questo apre una nuova scheda ogni volta.
Ci sono altri approcci?
Risposta accettata:
Qualcosa con cui giocare
Utilizza xdotool , che ti consente di eseguire lo script di azioni Windows/desktop. Se fornisci il nome del browser come argomento, troverà e ricaricherà la pagina corrente. Puoi impostare un browser predefinito, quindi non è necessario fornirne uno ogni volta, e puoi cambiare se inviare un CTRL-R per ricaricare o MAIUSC-CTRL-R per ricaricare senza cache.
dovrebbe passa al browser, ricarica la pagina, quindi torna alla finestra da cui l'hai chiamata. Lo uso spesso mettendo il browser in background, con la finestra dell'editor impostata su 'ON-TOP' in modo che sia sempre visibile, premi questo script o chiamalo dal tuo editor e tornerà a concentrarti una volta terminato.
Sono un utente vim e ho potuto vedere creare un autocommand per attivare automaticamente questo script ogni volta che un determinato file è stato scritto, quindi il browser si aggiornerebbe quando appropriato, so che puoi fare lo stesso.
#!/bin/bash
#
# L Nix <[email protected]>
# reload browser window
#
# whether to use SHIFT+CTRL+R to force reload without cache
RELOAD_KEYS="CTRL+R"
#RELOAD_KEYS="SHIFT+CTRL+R"
#
# set to whatever's given as argument
BROWSER=$1
#
# if was empty, default set to name of browser, firefox/chrome/opera/etc..
if [ -z "${BROWSER}" ]; then
BROWSER=firefox
fi
#
# get which window is active right now
MYWINDOW=$(xdotool getactivewindow)
#
# bring up the browser
xdotool search --name ${BROWSER} windowactivate --sync
# send the page-reload keys (C-R) or (S-C-R)
xdotool search --name ${BROWSER} key --clearmodifiers ${RELOAD_KEYS}
#
# sometimes the focus doesn't work, so follow up with activate
xdotool windowfocus --sync ${MYWINDOW}
xdotool windowactivate --sync ${MYWINDOW}
#