Ubuntu 16.04に新しいi3バージョン4.11(2015-09-30、ブランチ "4.11")をインストールしています。実際には、たとえばen
、fr
、およびru
の3つの異なるキーボードレイアウトを使用する必要があります。キーボードショートカットを使用してそれらを切り替えることもできます。
私はいくつかの方法を試しましたが、どちらも完全に満足のいくものではありませんでした。
ibus-daemon
を使用してもほとんど機能しますが、レイアウトの変更にショートカットを使用できません。実際のセットアップでは、i3
を開始するときにsetxkbmap
を構成しています。
exec --no-startup-id "setxkbmap -model pc105 -layout fr,us,ru -option grp:alt_shift_toggle"
そのため、レイアウトを切り替えることができますが、このセットアップにはトレイアイコンがないため、実際に使用しているレイアウトがわからないことがあります。
結論として、私のニーズは次のとおりです。
いくつかのホットキーを押してレイアウトを切り替えることができます。
私が実際に使用しているレイアウトの表示(できれば、トレイアイコン)。
これに関する回避策はありますか?それとも、実際に仕事をするi3プラグインがありますか?いくつかのサードソフトウェア?
xkblayout-state
と i3blocks
でできますxkblayout-state
の場合:git
を持っていると思います。
~$ git clone https://github.com/nonpop/xkblayout-state.git
~$ cd xkblayout-state
~$ make
コンパイルされたxkblayout-state
をPATH
のどこかにコピーします。次に例を示します。
~$ `cp xkblayout-state /usr/local/bin/`
i3blocks
の場合:Sudo apt-get install i3blocks
cp /etc/i3blocks.conf ~/.i3blocks.conf
i3
設定ファイル(〜/ .config/i3/config)で、i3status
をi3blocks
に置き換えます。
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
status_command i3blocks
tray_output primary
}
# in case of layout change event - send signal to i3blocks
bindsym ISO_Next_Group exec pkill -RTMIN+1 i3blocks
i3wm
(mod + shift + R)を再起動すると、i3blocks
が表示されます。
~/.i3blocks.conf
を開き、どこかに追加します(たとえば、[VOLUME]セクションのすぐ上):
#Language indicator
[language]
#label=LNG
command=xkblayout-state print %s | awk '{print toupper($0)}'
interval=once
signal=1
繰り返しますが、i3wm(mod + shift + R)を再起動すると、ステータスバーにロケールが表示されて切り替わります。
xkblayout-state --help
をチェックしてください。さまざまな出力のための多くのオプションがあります。