ブラウザ(FirefoxまたはできればChrome)がコマンドラインから頻繁に/頻繁に/常に更新を強制されるカスタムツールチェーンを設定しようとしています。
(アイデアは、隣接するEmacsフレームで編集しているhtml / webappの視覚的な変化を即座に確認することです。手動で更新するために、常にブラウザーにタブで移動する必要はありません。)
これまでで最も近いのは、google-chrome FILE_PATH
を実行することです。 。ただし、これにより毎回新しいタブが開きます。
他のアプローチはありますか?
承認された回答:
遊ぶもの
xdotoolを使用します 、ウィンドウ/デスクトップアクションのスクリプトを作成できます。ブラウザの名前を引数として指定すると、現在のページが検索されて再読み込みされます。デフォルトのブラウザを設定できるため、毎回ブラウザを指定する必要はありません。また、CTRL-Rを送信してリロードするか、SHIFT-CTRL-Rを送信してキャッシュなしでリロードするかを変更できます。
すべき ブラウザに切り替え、ページをリロードしてから、これを呼び出したウィンドウに戻ります。私はこれを頻繁に使用します。ブラウザをバックグラウンドに置き、エディタウィンドウを「ON-TOP」に設定して、常に表示されるようにします。このスクリプトをホットキーで押すか、エディタから呼び出すと、完了時にフォーカスが返されます。
私はvimユーザーです。特定のファイルが書き込まれるたびにこのスクリプトを自動的にトリガーする自動コマンドを作成しているのを見ることができたので、適切なときにブラウザが更新されます。同じことができると思います。
#!/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}
#