Linux の壁紙として JavaScript を含む HTML ファイルを設定したいと考えています。Openbox を実行していますが、これをデスクトップの背景に設定するにはどうすればよいですか?
答え1
前述のように、軽量ブラウザをバックグラウンドで実行することをお勧めします。
このブラウザ背景として 1 ページを設定するためだけに使用したいので、これは最適です。WebKit を使用しているため、すべてが正常に表示され、起動が瞬時になるほど軽量です。
gtk、webkit-gtk、python、webkit-gtk の python バインディング (多くのディストリビューションにデフォルトでインストールされており、ほとんどのパッケージ マネージャーから入手可能) があれば、たとえば次のようにホーム ディレクトリに保存し、browser.py
次のような内容を追加できます。
python ~/browser.py YOUR_WEBSITE & #browser.py requires http:// before remote urls
openbox と一緒に起動するように ~/.config/openbox/autostart に追加します。
次に、~/.config/openbox/rc.xml を編集して、<applications>
セクションの下に次のような内容を含めます。
<application class="Browser.py">
<decor>no</decor>
<maximized>yes</maximized>
<layer>below</layer>
<desktop>all</desktop>
</application>
「Wd」などのキーバインドを機能させるには、wmctrl (ほとんどのパッケージ マネージャーでも利用可能) をインストールすることをお勧めします。
このスクリプトは、起動しているかどうかに関係なく、「デスクトップ」に移動します(ここ元のスクリプトの場合、また、スクリプトがブラウザにフォーカスする前に実際のデスクトップが表示されるまでに若干の遅延が生じる可能性がありますが、煩わしいほどではありません。):
#!/bin/sh
terminal_wm_class="Browser.py"
terminal_exec="python ~/browser.py YOUR_WEBSITE"
# no terminal started, so start one
if [ -z "`wmctrl -lx | grep Browser.py`" ]; then
$terminal_exec &
else
wmctrl -x -a $terminal_wm_class
fi;
これをshowdesktop.shのような名前でホームディレクトリに保存し、~/.config/openbox/rc.xmlのデフォルトのWdキーバインディングを置き換えます。
<keybind key="W-d">
<action name="ToggleShowDesktop"/>
</keybind>
と
<keybind key="W-d">
<action name="ToggleShowDesktop"/>
<action name="Execute">
<command>~/showdesktop.sh</command>
</action>
</keybind>
完了したら、A キーを押しながら Tab キーを押して前のウィンドウに戻ることができます。
(ウィンドウのレイアウトを維持したい場合は、キーバインドと現在のデスクトップに応じて、CA-Left または W-F4 などで空のデスクトップに切り替えてから (デフォルトの rc.xml を参照)、CA-Right または W-F1 などで戻すのが最も簡単です。)
何らかの理由でスタートページから移動した場合は、ウィンドウを閉じて(A-F4 デフォルト)、Wd を押して showdesktop.sh を実行し、ホームページに戻ることができます。
これらはいずれも変更したり、他のものなしで使用したりすることができるので、自分に最適なものを自由に使用してください。
答え2
HTMLファイルを壁紙として使うことはできないかもしれませんが、xsetroot -bitmap filename
cronジョブを設定して1分ごとにHTMLをビットマップとしてレンダリングし、xsetrootを実行して背景画像にすることで、かなり近いものになると思います。Googleは私にこれHTML からビットマップへのレンダラーとして。試したことがないので、ダウンロードには注意してください。
答え3
HTML ファイルを壁紙として設定することはできません。次のいずれかを実行できます。
- ブラウザのスクリーンショットを撮り、それを壁紙として設定します。
- ブラウザをバックグラウンドで実行し、他のすべてのアプリケーションよりも低いレベルに移動します。