デスクトップ環境構築 - IceWM - FreeBSD 12.0 - 基本操作 - メニュー作成

 
1. 概要
2. デフォルトのメニュー
3. メニュー自動作成
4. 自動作成したものをカスタマイズ

1. 概要

 デフォルトのメニューは、こんななってまして。
IceWM - FreeBSD 12.0 - デフォルトのメニュー

 「プログラム」のカテゴリはあるものの中身はすっからかん。

2. デフォルトのメニュー

 これは実際何に基づいているかというと。

/usr/local/share/icewm/menu
 でありまして、その中身は

# This is an example for IceWM's menu definition file.
#
# Place your variants in /usr/local/share/icewm or in $HOME/.icewm
# since modifications to this file will be discarded when you
# (re)install icewm.
#
prog xterm xterm xterm
prog rxvt xterm rxvt -bg black -cr green -fg white -C -fn 9x15 -sl 500
prog fte fte fte
prog NEdit nedit nedit
prog Mozilla mozilla mozilla
prog XChat xchat xchat
prog Gimp gimp gimp
separator
menuprog Gnome folder icewm-menu-gnome2 --list
menuprog KDE folder icewm-menu-gnome --list
menufile Programs folder programs
menufile Tool_bar folder toolbar
 てなっておりまして、まぁこの中身にも書いていますが、これを

$HOME/.icewm
 にコピーして、編集しろとのことです。  これは、いささかつらたん。

3. メニュー自動作成

 「IceWM - ArchWiki」に、おあつらえ向きの記事がありました。  「menumaker」なるものがあるんですな。  インストールします。

pkg install menumaker
 インストール後、ログインユーザに戻って

> mmaker -f icewm
  no terminal emulator specified; will use the default
 するとインストール済のアプリケーションを集めてきてメニューを作ってくれます。  ログインし直さなくても変わりました。
IceWM - FreeBSD 12.0 - 更新直後のメニュー


 初回起動時に中身が(あえて全部、記述しちゃいます)こうなってました。


menu "Development" folder {
    prog "Python (v2.7)" - xterm -e python2.7
    prog "Qt4 Assistant" - assistant
    prog "Qt4 Designer" - designer
    prog "Qt4 Linguist" - linguist
}
menu "Editors" folder {
    prog "Easy Editor" - xterm -e ee
    prog "GVim" - gvim
    prog "Pathetic Writer" - pw
    prog "Vi" - xterm -e vi
    prog "Vim" - xterm -e vim
}
menu "Games" folder {
    menu "Amusement" folder {
        prog "Xclock (analog)" - xclock -analog
        prog "Xclock (digital)" - xclock -digital -update 1
        prog "Xgc" - xgc
    }
}
menu "Graphics" folder {
    prog "Bitmap" - bitmap
}
menu "Network" folder {
    prog "FTP" - xterm -e ftp
    prog "Mail" - xterm -e mail
    prog "Talk" - xterm -e talk
    prog "Telnet" - xterm -e telnet
    prog "TkVNC" - xterm -e tkvnc
    prog "Zwrite" - xterm -e read -p 'Zwrite to users: ' u ; zwrite $u
}
menu "Shells" folder {
    prog "Xterm" - xterm
    prog "XTerm (Unicode)" - uxterm
}
menu "System" folder {
    menu "Settings" folder {
        prog "Fcitx Configuration" - fcitx-configtool
    }
    prog "Fcitx" - fcitx
    prog "guname" - guname
    prog "QtConfig" - qtconfig
    prog "Top" - xterm -e top
    prog "Xconsole" - xconsole
    prog "Xkill" - xkill
    prog "Xrefresh" - xrefresh
}
menu "Utilities" folder {
    prog "Bc" - xterm -e bc
    prog "Dc" - xterm -e dc
    prog "Info" - xterm -e info
    prog "Units" - xterm -e units
    prog "Xcalc" - xcalc
    prog "Xclock (digital)" - xclock -digital
    prog "Xev" - xterm -e xev
    prog "Xsetroot" - xsetroot
}
 なるほどなぁと思うような中身もありますね。

    prog "FTP" - xterm -e ftp
 あたりは、よくできているなぁと思います。  いらないものをコメントアウトすればいいわけで、ないものにいっぱい追加するよりも、あるものから削る方が楽です。

4. 自動作成したものをカスタマイズ

 さらに自動作成したものをカスタマイズします(後々、また変えるかもしれません)。  とりあえず、メニューのカテゴリ名を日本語にね。

menu "開発" folder {
    prog "Python (v2.7)" - xterm -e python2.7
    prog "Qt4 Assistant" - assistant
    prog "Qt4 Designer" - designer
    prog "Qt4 Linguist" - linguist
}
menu "エディタ" folder {
    prog "Easy Editor" - xterm -e ee
    prog "GVim" - gvim
    prog "Pathetic Writer" - pw
    prog "Vi" - xterm -e vi
    prog "Vim" - xterm -e vim
}
menu "ゲーム" folder {
    menu "Amusement" folder {
        prog "Xclock (analog)" - xclock -analog
        prog "Xclock (digital)" - xclock -digital -update 1
        prog "Xgc" - xgc
    }
}
menu "グラフィックス" folder {
    prog "Bitmap" - bitmap
}
menu "ネットワーク" folder {
    prog "FTP" - xterm -e ftp
    prog "Mail" - xterm -e mail
    prog "Talk" - xterm -e talk
    prog "Telnet" - xterm -e telnet
    prog "TkVNC" - xterm -e tkvnc
    prog "Zwrite" - xterm -e read -p 'Zwrite to users: ' u ; zwrite $u
}
menu "シェル" folder {
    prog "Xterm" - xterm
    prog "XTerm (Unicode)" - uxterm
}
menu "システム" folder {
    menu "設定" folder {
        prog "Fcitx Configuration" - fcitx-configtool
    }
    prog "Fcitx" - fcitx
    prog "guname" - guname
    prog "QtConfig" - qtconfig
    prog "Top" - xterm -e top
    prog "Xconsole" - xconsole
    prog "Xkill" - xkill
    prog "Xrefresh" - xrefresh
}
menu "ユーティリティ" folder {
    prog "Bc" - xterm -e bc
    prog "Dc" - xterm -e dc
    prog "Info" - xterm -e info
    prog "Units" - xterm -e units
    prog "Xcalc" - xcalc
    prog "Xclock (digital)" - xclock -digital
    prog "Xev" - xterm -e xev
    prog "Xsetroot" - xsetroot
}
 これで、メニューの表示は、こうなりました。
IceWM - FreeBSD 12.0 - メニュー - カテゴリ名日本語化