Aquest petit truc fa que pugui treballar molt ràpidament.
Cada cop que modifico un arxiu web (html/php/js/css) (cosa que faig moltes vegades durant el dia) vull que es refresqui automàticament el Google Chrome per no haver de fer-ho manualment.
Primer de tot, necessitem un script que refresqui l'explorador.
Es pot fer a Mac OS X fent servir
$ vim reload-chrome.sh
#!/bin/bash
#reload-chrome.sh per Mac OS X
osascript -e 'tell application "Google Chrome" to tell the active tab \
of its first window to reload'
#!/bin/bash
#reload-chrome.sh per Linux
echo "$(date --rfc-3339=seconds) Refresh: $FILE"
CUR_WID=$(xdotool getwindowfocus)
#gets the first $BROWSER window, if you have more than one
#$BROWSER window open, it might not refresh the right one,
#as an alternative you can search by the window/html title
WID=$(xdotool search --onlyvisible --class chromium|head -1)
#TITLE="window/html file title"
#WID=$(xdotool search --title "$TITLE"|head -1)
xdotool windowactivate $WID
xdotool key 'ctrl+r'
xdotool windowactivate $CUR_WID
Nota: si treballem en Firefox, podem fer-ho igualment canviant "Google Chrome" per "Firefox".
Ara guardem el nou arxiu a la nostra carpeta personal, així hi podrem
accedir fàcilment fent
$ chmod +x ~/reload-chrome.sh
Ara executem l'script
$ ~/reload-chrome.sh
Fantàstic! Ja tenim mig camí fet. Ara que hem comprovat que Google Chrome es
refresca quan executem
$ brew install entr # mac os x
$ sudo apt install entr # linux (debian, ubuntu...)
Ara naveguem fins la carpeta on estem treballant i executem
$ find . -name "*.php" -or -name "*.css" | entr ~/reload-chrome.sh
Fet! La comanda
Ara ja podem modificar qualsevol arxiu dins la carpeta i veurem que automàticament es refresca l'explorador.
Aquest petit truc demostra la potència de la comanda
Jo sempre executo la comanda anterior dins una sessió de
Salut!
Lluís