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


 クラウディア


1. 概要
2. インストール
3. 起動
4. jgmenu 設定

1. 概要

 「FreeBSD 13.1 RELEASE dwm 6.3」で、「jgmenu」を使用してみます。

2. インストール

 「root」ユーザ権限で。

pkg install -y jgmenu papirus-icon-theme

3. 起動

 「dwm」で、バーにアイコンを表示させたり、クリックアクションを定義する方法がわからないので、デスクトップ上クリックで起動するようにします。  ログインユーザで「config.h」を編集します。

vi ~/config.h
 コマンド定義。

static const char *termcmd[]  = { "st", NULL };
 の後ろあたりに、1行追加します。

static const char *jgmenu[]  = { "jgmenu_run", NULL };
 ボタン定義。

/* button definitions */
/* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
static Button buttons[] = {
        /* click                event mask      button          function        argument */
        { ClkLtSymbol,          0,              Button1,        setlayout,      {0} },
        { ClkLtSymbol,          0,              Button3,        setlayout,      {.v = &layouts[2]} },
        { ClkWinTitle,          0,              Button2,        zoom,           {0} },
        { ClkStatusText,        0,              Button2,        spawn,          {.v = termcmd } },
        { ClkClientWin,         MODKEY,         Button1,        movemouse,      {0} },
        { ClkClientWin,         MODKEY,         Button2,        togglefloating, {0} },
        { ClkClientWin,         MODKEY,         Button3,        resizemouse,    {0} },
        { ClkTagBar,            0,              Button1,        view,           {0} },
        { ClkTagBar,            0,              Button3,        toggleview,     {0} },
        { ClkTagBar,            MODKEY,         Button1,        tag,            {0} },
        { ClkTagBar,            MODKEY,         Button3,        toggletag,      {0} },
};
 113 と 114行の間に、下記の行を追加します。

        { ClkRootWin,           0,              Button1,        spawn,          {.v = jgmenu } },
 これで、コンパイル・リンクして、「dwm」を置き換えれば、デスクトップ上左クリックで、「jgmenu」が起動します。

4. jgmenu 設定

 「jgmenu」をカスタマイズします。  ログインユーザで。

mkdir -pv ~/.config/jgmenu

cat << 'EOF' >> ~/.config/jgmenu/jgmenurc
 menu_margin_y = 20
 menu_valign = top
 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 dwm`, system-log-out
再起動,sudo /sbin/reboot,system-reboot
シャットダウン,sudo /sbin/poweroff,system-shutdown
EOF
 上記は、下記の設定を行っています。 ・表示位置をずらす ・表示位置を下から上へ ・項目の幅を狭く ・フォント設定 ・アイコンテーマ設定 ・選択行の背景にメリハリをつける ・項目名が冗長なので、説明を省略 ・終了メニューを追加  「再起動」「シャットダウン」は、「sodu」のインストールと、「visudo」で下記の1行を追加することが必要です。

ユーザ名 ALL=(ALL) NOPASSWD: /sbin/reboot, /sbin/poweroff

audiobook.jp
U-NEXT
葬送のフリーレン Prime Video
Amazonギフトカード
ネットオークションの相場、統計、価格比較といえばオークファン
それがだいじWi-Fi
ハイスピードプラン
TikTok Shop 【リピート用プログラム】
5G CONNECT
損保との違い
ベルリッツ
サウンドハウス
健康サポート特集
JETBOY
薬屋の独り言
アフィリエイトのアクセストレード
EaseUS
【usus ウズウズ】
earthcar(アースカー)