spectrwm - 共通事項 - メニュー - jgmenu FreeBSD

クラウディア 
1. 概要
2. インストール
3. tint2 設定
4. jgmenu 設定
5. 一気に設定
6. 問題点

1. 概要

 「tint2」と「jgmenu」を使用します。  以下、「FreeBSD 13.0 RELEASE」「spectrwm 3.4.1」での設定です。

2. インストール

 あわせて、アイコンテーマをインストールしておきます。  「root」ユーザ権限で。

pkg install -y jgmenu papirus-icon-theme tint2
 「jgmenu」のコンフィグレーションファイルを作成しておきます。  「jgmenu」の設定を一気に行う場合は、この手順はスキップします。  ログインユーザで。

jgmenu_run init

3. tint2 設定

 「tint2」を上へ表示したいので、デフォルトのバーを下へもっていきます。  ログインユーザで。

vi ~/.spectrwm.conf
 下記の行の先頭の「#」を削除して、有効化します。

bar_at_bottom           = 1
 末尾へ下記の行を追加して、「tint2」の表示設定を行い、ログイン時に、「tint2」を起動します。

quirk[Tint2:tint2]    = FLOAT + ANYWHERE + NOFOCUSCYCLE + NOFOCUSONMAP + OBEYAPPFOCUSREQ
autorun               = ws[1]:tint2
 「tint2」のコンフィグレーションファイルを システムデフォルトからコピーして、編集します。

mkdir -pv ~/.config/tint2
cp /usr/local/etc/xdg/tint2/tint2rc ~/.config/tint2/tint2rc
vi ~/.config/tint2/tint2rc

panel_position = bottom center horizontal
panel_layer = top
 パネルを上部へ表示します。  アプリケーションウィンドウが、パネルの下へ隠れることがあるので、パネルのレイヤを下へ移動します。

panel_position = top center horizontal
panel_layer = bottom

taskbar_name_active_background_id = 0
taskbar_name_font_color = #e3e3e3 100
 間に下記の行を追加して、フォントを設定します。

taskbar_name_font = MigMix 1M 10

launcher_item_app = tint2conf.desktop
launcher_item_app = firefox.desktop
launcher_item_app = iceweasel.desktop
launcher_item_app = chromium-browser.desktop
launcher_item_app = google-chrome.desktop
 151~155行をコメントアウトして、下記の行を加えます。

launcher_item_app = jgmenu.desktop
 ログインしなおして、反映させます。

4. jgmenu 設定

 ログインユーザで。

vi ~/.config/jgmenu/jgmenurc
 「jgmenu」のコンフィグレーションファイルは、デフォルトでは、すべてコメントアウトされていますので、変更後の状態のみ記述します。  表示位置をずらします。

 menu_margin_x =  5
 menu_margin_y = 31
 表示位置を下から上へ。

 menu_valign = top
 項目の幅を狭くします。

 item_height = 22
 フォントを設定します。

 font = MigMix 1M bold 9
 アイコンテーマを設定。

 icon_theme = Papirus
 選択行の背景にメリハリをつけます。

 color_sel_bg = #ffffff 40
 項目名が冗長なので、説明は省略。

 csv_name_format = %n
 終了メニューの追加。

sh
cat << 'EOF' >>  ~/.config/jgmenu/append.csv
^sep()
ログアウト,kill `pgrep -a spectrwm`,system-log-out
再起動,sudo /sbin/reboot,system-reboot
シャットダウン,sudo /sbin/poweroff,system-shutdown
EOF
exit
 再起動とシャットダウンを有効化するには、「root」ユーザ権限で

visudo
 して、下記の行を加えます。

ログインユーザ名  ALL=(ALL) NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff

5. 一気に設定

 前項を一気に設定するには、ログインユーザで。

mkdir -pv ~/.config/jgmenu

sh
cat << EOF >> ~/.config/jgmenu/jgmenurc
 menu_margin_x =  5
 menu_margin_y = 31
 menu_valign = top
 item_height = 22
 font = MigMix 1M bold 9
 icon_theme = Papirus
 color_sel_bg = #ffffff 40
 csv_name_format = %n
EOF

cat << 'EOF' >>  ~/.config/jgmenu/append.csv
^sep()
ログアウト,kill `pgrep -a spectrwm`,system-log-out
再起動,sudo /sbin/reboot,system-reboot
シャットダウン,sudo /sbin/poweroff,system-shutdown
EOF
exit

6. 問題点

 「spectrwm」には、困った問題がありまして、何もウィンドウを表示していない状態で、誤って、ウィンドウを閉じるキーを押すと、「tint2」が消えてしまうのです。  これは、まだ(2022年1月7日)解決できていません。  わたしは、これを結構、よくやっちまうので、消えてもすぐ mod+t で起動できるようにしています。  すなわち、ログインユーザで。

sh
cat << 'EOF' >> ~/.spectrwm.conf
program[tint2]                  = tint2
bind[tint2]                     = MOD+t
EOF
exit
ハイスピードプランネットオークションの相場、統計、価格比較といえばオークファン世界最大級のオンライン英会話EF English Live