Buttonbar_DockApp

ボタンバーに DockApp を表示させる

ここんとこ DockApp をいろいろ仕入れてましたが、FVWM2で使用するにはボタンバーへ追加して表示させよう。


ボタンバー設定

############# FvwmButtons button-bar #################
##
*FvwmButtonsBack gray40
*FvwmButtonsFore white
*FvwmButtonsFont -adobe-helvetica-medium-r-*--12-*-*-*-*-*-iso8859-1
*FvwmButtonsGeometry -1-1
#*FvwmButtonsColumns 1
*FvwmButtonsRows 1
#*FvwmButtonsPixmap none

## カレンダー ↓最初に Size 65 65 で1マスを指定
*FvwmButtons(Size 65 65, Frame -1, Swallow wmCalClockKbd \
'Exec exec wmCalClockKbd -tc white -24 -S -b 100 &')
## 天気温度
*FvwmButtons(Frame -1, Swallow wmWeather \
'Exec exec wmWeather -s RJCO -m -hPa -mps -delay 120 &')
## CPU
*FvwmButtons(Frame -1, Swallow bubblemon \
'Exec exec bubblemon &')
## Mem
*FvwmButtons(Frame -1, Swallow wmmemfree \
'Exec exec wmmemfree &')

#*FvwmButtons(Frame -1, Swallow "FvwmPager" "FvwmPager 0 0")
*FvwmButtons(2x1, Frame -1, Swallow "FvwmPager" "FvwmPager 0 0")

現在こんな感じです。
初期設定のボタンなどは全てとっぱらい。(行頭に"#"でコメントアウト)
はじめの1マス目に Size 65 65 で大きさを指定してます。
FvwmPager は、横に2xです。(DeskTopSize 3x2)

Swallow には option がつけられますが、してません。
(Respawn、NoHints、NoKill、NoClose、UseOld、など man FvwmButtons 参照。)

DockApp は左から
wmCalClockKbdwmWeatherbubblemonwmMemFree です。

Buttonbar_DockApp

AD
wmMemfree

DockApp wmMemFree をインストール

メモリの状態を表示してくれるDockApp。
使用しているノートPCはメモリを128MBしか積んでないので、メモリの状態は常に気になる。
メモリの拡張スロット?がお亡くなりのせいで苦労してます;

探してみるといろいろあるけど、今回は wmMemFree を選んだ。


ダウンロード

dockapps.orghttp://dockapps.org/file.php/id/165 より
wmmemfree-0.7.tar.bz2 をダウンロード。


rpmでインストール

1) tar.bz2 を展開。
2) make
3) checkinstall にてrpm化。
4) rpmでインストール。

$ tar xvjf wmmemfree-0.7.tar.bz2
$ cd wmmemfree-0.7/
$ make
$ checkinstall -R

$ cd ~/rpm/RPMS/i386/
$ su
# rpm -Uvh wmmemfree-0.7-1.i386.rpm

インストール完了。


起動方法など

$ wmmemfree &
とコマンド入力すれば起動する。

$ wmmemfree -h
でヘルプが表示される。

AD
wmWeather_1

DockApp wmWeather をインストール

気温や天候を表示してくれる DockApp。
NOAA - National Weather Service
http://weather.gov/
↑からデータをもらって表示してくれる。


ダウンロード

http://dockapps.org/file.php/id/17
↑より wmWeather-1.31.tar.gz をダウンロード。


rpmでインストール

1) tar.gz を展開。
2) make
3) checkinstall -R で rpmパッケージにする。
4) インストール。

$ tar xvf wmWeather-1.31.tar.gz
$ cd wmWeather-1.31/
$ less INSTALL
$ mv Src/* ./ ←checkinstall のために Src/ 内を移動する。
$ makeclean
$ make
$ checkinstall -R

$ cd ~/rpm/RPMS/i386/
$ su
# rpm -Uvh wmWeather-1.31-1.i386.rpm

インストール完了。
checkinstall パッケージが必要です。
# apt-get install checkinstall
make に失敗する時は XOrg-devel が必要です。
# apt-get install XOrg-devel


使用方法

$ wmWeather -h
とコマンド入力するとヘルプが出る。

$ wmWeather -s [StationID] &

表示したい場所を指定して起動。
場所は[StationID]です。
http://www.nws.noaa.gov/tg/siteloc.shtml
↑このサイトのページ、下の方 Display All Stations In a Country で Japan を選択して日本国内の情報画面に進む。

地名(5桁数字, StationID) となっています。
例) Sapporo Ab(47479, RJCO)

$ wmWeather -s rjco -m -hPa -mps &
オプション -m をつけて摂氏(℃)表示に。
-hPa ヘクトパスカル。-mps 風速m/秒。
DockAppをダブルクリックすると、情報が出ます。

wmWeather_2

AD
wmCalClockKbd

DockApp wmCalClockKbd をインストール

DockApp でデジタル時計が欲しい。
wmCalClockKbd というのがありました。


ダウンロード

http://dockapps.org/
↓ここの wmCalClockKbd のページより
http://dockapps.org/file.php/id/214

wmCalClockKbd-0.1a.tar.gz をダウンロード。


rpmでインストール

$ rpm -tb wmCalClockKbd-0.1a.tar.gz
$ cd ~/rpm/RPMS/i386/
$ su
# rpm -Uvh wmCalClockKbd-0.1a-1.i386.rpm
インストール完了。

エラー出る、 make が通らない時は XOrg-devel が必要。
# apt-get install XOrg-devel


使用方法

$ wmCalClockKbd &
で起動する。

$ wmCalClockKbd -h
とコマンド入力すればヘルプが出る。

$ wmCalClockKbd -tc white -24 -S -b 100 &
これは自分のメモ。

.fvwm2rc 設定 FvwmButtons

テーマ:
fvwm_button_bar2

.fvwm2rc 設定 FvwmButtons

ボタンバーのカスタマイズについてのメモ。
ボタンバー FvwmButtons について。
$ man FvwmButtons  ←コマンド入力
とすれば、ボタンバーの設定 man が見れる。


FvwmButtons ボタンバー全体の設定

*FvwmButtonsBack gray40  ←背景色
*FvwmButtonsFore white ←文字色
*FvwmButtonsFont -adobe-helvetica-medium-r-*--12-*-*-*-*-*-iso8859-1
↑フォント
*FvwmButtonsGeometry -1-1 ←位置
#*FvwmButtonsColumns 1 ←列(縦方向)
*FvwmButtonsRows 1 ←行(横方向)

↑これはVineLinuxのfvwm2rcの初期設定にあるものです。
簡単に変更してみます。

*FvwmButtonsGeometry -1+1  ←右上の位置に変更
*FvwmButtonsColumns 1 ←縦1列に変更(行頭"#"削除)
#*FvwmButtonsRows 1 ←行頭に"#"を追加

再起動すると、ボタンバーが右上、縦1列になってるはずです。

*FvwmButtonsPixmap none  ←none を指定

Pixmap に none を指定するとルートの壁紙を指定することになるので、ボタンバーが透明になります。


FvwmButtons(option) ボタンバー内の個々の設定

ボタンバーの中には、ボタン、ページャー、時計などのアプリが格納出来ます。
その個々を格納するには
*FvwmButtons(option)
で設定していきます。
通常のボタンであれば option = [title icon command] です。

*FvwmButtons(Title Sylpheed, Icon sylpheed.xpm, Action 'Exec exec sylpheed &')

例として Sylpheed を起動するボタンです。
指定するアイコンの大きさでボタンの大きさが決まります。
通常48x48などの大きさが良いでしょう。
ボタンが3つあり、ひとつに100x50の画像を指定すると、全てのボタンがその画像の大きさになってしまいます。

このボタン1個の大きさというのは重要です。
ボタンバー内に格納するもの全ての基準になります。
ボタン以外のものを格納する時にも、この基準の大きさになります。

ページャー(FvwmPager)を格納するときには
*FvwmButtons(Frame -1, Swallow "FvwmPager" "FvwmPager 0 0")
↑となります。
仮想デスクトップが 4x2 であればとても小さく表示されます。
基準の大きさの横に2倍の大きさで格納出来れば良さそうです。
DeskTopSize 4x2  ←デスクトップを 4x2

*FvwmButtons(Columns 2, Frame -1, Swallow "FvwmPager" "FvwmPager 0 0")
*FvwmButtons(2x1, Frame -1, Swallow "FvwmPager" "FvwmPager 0 0")
*FvwmButtons(Size 150 50, Frame -1, Swallow "FvwmPager" "FvwmPager 0 0")

↑ 3つの設定を書きました。どれか1行を設定する。
上2つは同じ内容です。
最後のように Size でピクセル指定できます。

ただし、やってみるとわかりますが Size で指定すると、全てのボタンがその大きさになってしまいます。

fvwm_buttonbar_new

.fvwm2rc 設定 ボタンバーをカスタマイズ

VineLinux の Fvwm2 の初期設定でのボタンバーは、現在では設定が古く登録されているコマンドが有効でない場合がある。
少し一般的に変更してみる。


ボタンバーの設定

315行目あたりから始まるボタンバーの設定をいじります。

まず、VineLinux のロゴマークのあるボタンはクリックすると mozilla が立ち上がるはずなのですが、起動しません。
これを直す。
 350行目あたり↓
*FvwmButtons(Title "Vine Linux", Icon vinelogo-nostr-48.xpm, Action 'Exec exec mozilla.sh &')
↑これの mozilla.sh & の .sh を削除

*FvwmButtons(Title "Vine Linux", Icon vinelogo-nostr-48.xpm, Action 'Exec exec mozilla &')
これで ロゴマークボタンをクリックすると mozilla が立ち上がります。

次に、検索のボタンを無くす。(w
このボタン、現在 Google などで検索することが多く、使用してません。(tknamazu さえインストールしてないかも。)
 351行目あたり↓
*FvwmButtons(Title 検索, Icon Info.xpm, Action 'Exec exec tknamazu &')
↑行頭に "#" を入れてコメントアウトする

#*FvwmButtons(Title 検索, Icon Info.xpm, Action 'Exec exec tknamazu &')
これで見えなくなります。
"#" を消すともとに戻ります。

VEdit のボタンは gedit に変更。
 352行目あたり↓
*FvwmButtons(Title VEdit, Icon clipboard.xpm, Action 'Exec exec vedit &')
↑の VEdit vedit を gedit に変更

*FvwmButtons(Title gedit, Icon clipboard.xpm, Action 'Exec exec gedit &')
これで gedit のボタンになります。
ただ、指定している clipboard.xpm が見当たらないので表示されません。
(VineLinux 3.1)

Sylpheed のボタンにアイコンを表示させる。
 353行目あたり↓
*FvwmButtons(Title Sylpheed, Icon writeletter.xpm, Action 'Exec exec sylpheed &')
↑の writeletter.xpm を sylpheed.xpm に変更

*FvwmButtons(Title Sylpheed, Icon sylpheed.xpm, Action 'Exec exec sylpheed &')
これで Sylpheed のアイコンが表示される。


gedit のボタンにアイコンを表示させる

gedit のアイコンは /usr/share/pixmaps/gedit-icon.png なので、"gedit-icon.png" を指定すれば表示できそうですが、実際指定してみると出来ませんでした。
これは fvwm2 のバージョンが古くボタンバーなどに "png" 画像を表示出来ない仕様のようです。"xpm" であれば表示出来ます。(最新バージョンでは"png"表示可能です)
古いVineのバージョンでも表示出来るように /usr/share/pixmaps/gedit-icon.png を "gedit-icon.xpm" に変換して表示させて見た。
変換には ImageMagick ($ display で起動させる) を使用した。
そのまま変換では影がまわりを黒くしてしまうので、gimp であらかじめ影の部分を取り除いてから変換するとキレイにいくかも。

fvwm_buttonbar_new

fvwm_button_bar


.fvwm2rc 設定 起動時に自動で起動させる(InitFunction)

Fvwm を起動した時、いつも自動で立ち上がっていて欲しいプログラムないですか?
いつも使う ターミナル や GKrellM など。

毎回起動時に立ち上がるように設定できます。


InitFunction の設定

########## 初期化関数(起動、再起動時の処理) ##########←130行目あたり
AddToFunc InitFunction "I" Module FvwmButtons
+ "I" exec xsetroot -mod 2 2 -fg \#554055 -bg \#705070
↑バックグラウンド(背景色)の設定

+ "I" exec gkrellm ←追加
+ "I" exec xterm -bg black -fg lightgray ←追加

例として gkrellm と xterm を毎回起動するように設定。
.fvwm に設定を追加して、一旦終了してから起動してみると、gkrellm と xterm が起動しているはずです。
(gkrellm がインストールされていないとダメです。
# apt-get install gkrellm してインストールしてください。)

自分のいつも使っているターミナルに設定すれば完了です。
その他、好きなアプリケーションを追加すれば良い。


知識

ウインドウの位置を指定して開始したい場合は、
xterm -geometry +30+30
のように指定すると良い。詳しくは $ man fvwm2 とコマンド入力して英語を読む。

fvwm_RootMenu

.fvwm2rc 設定 ルートメニュー(RootMenu)

ルートメニューには普段使用するターミナル(*term)や、アプリケーションを登録しておく。
初期状態では自分の使用しいるものが登録されていなかったり、使用していないものが登録されていたりします。
自分の使いやすいように変更します。


RootMenu の設定

################### 各メニュー設定 ####################←140行目あたり
AddToMenu RootMenu "ルート・メニュー" Title
+ "Eterm"%mini.xterm.xpm% Exec exec Eterm -b black -f lightgray -P no
+ "mlterm"%mini.xterm.xpm% Exec exec mlterm
+ "&Rxvt"%mini.xterm.xpm% Exec exec rxvt -bg black -fg lightgray
+ "xterm"%mini.xterm.xpm% Exec exec xterm -bg black -fg lightgray

.fvwm2rc 内に↑の設定をします。
Kterm の設定があると思いますが、現在 VineLinux 3.1 では kterm はデフォルトでインストールされていないので、変更した方が良いでしょう。
例では Eterm mlterm rxvt xterm を設定してみました。

AddToMenu RootMenu  "ルート・メニュー"  Title
↑ルートメニューの設定開始。

+ "mlterm"%mini.xterm.xpm% Exec exec mlterm
+ "&Rxvt"%mini.xterm.xpm% Exec exec rxvt -bg black -fg lightgray
↑設定内容は↓のようになります。

"メニューに表示する名前"
%メニューに表示されるアイコン%
Exec exec コマンド

コマンドにはオプションを設定できます。
rxvt のところに "&Rxvt" とありますが、これはショートカットを設定しています。
ルートメニューには "Rxvt" と下線付きで表示され、ショートカットが設定されていること表します。
ルートメニューが表示されている時に [r]キー を押してみてください。rxvt が立ち上がるはずです。

fvwm_RootMenu


その他

+     ""     Nop    ←罫線の挿入

+ "プログラム" Popup 設定名 ←サブメニューの定義

+ "Fvwmを終了する" Quit ←終了
+ "Fvwmを再起動" Restart fvwm ←再起動
+ "コマンドを再起動" Restart コマンド ←他を再起動

fvwm_Sticky

.fvwm2rc 設定 いつも同じ場所に表示(Sticky)

fvwm2 には仮想デスクトップと言われるものがあります。
マウスが画面の端まで行くと、次の仮想デスクトップに画面がスクロールするものです。(説明がむずかしいな)
この仮想デスクトップでスクロールさせると、通常ウインドウなどは元の位置から動きません。
しかし、初期設定のボタンバーなどは仮想デスクトップのスクロールと一緒についてきて(動いて)、いつも同じ場所に表示されます。

これを実現する設定が "Sticky" です。


Sticky の設定

例えば "GKrellM" などはいつも同じ場所にあって欲しい。
こういう DockApp 的なアプリはいつも画面の同じ場所にある方が都合が良い。
# その他一般的なプログラムのスタイル ←75行目付近に
Style "gkrellm" WindowListSkip, Sticky, ClickToFocus ←追加
↑ .fvwm2rc に追加します。
(VineLinux 3.1 の初期設定の場合の行数です)

fvwm2 を再起動すると、仮想デスクトップのスクロールの動きに GKrellM がついてくるようになります。

知識

$ jman fvwm2 ←コマンド入力
↑すると .fvwm2rc の設定などが詳しく英語で書かれています。(あれ? jmanなのに。。。)
-----------------------------------------
Sticky → いつも同じ場所に表示
WindowListSkip → WindowList に表示させない
ClickToFocus → クリックするとフォーカス
-----------------------------------------


StickyIcon の設定

"Sticky" と同じで "StickyIcon" という設定があります。
これは、"アイコン化された(Icon)ウインドウ"=アイコン がいつも同じ場所に表示される設定です。

# デフォルトのスタイル ←51行目付近
Style "*" StickyIcon ←追加
この設定はおすすめです。
仮想デスクトップをスクロールしてもアイコンがついてくる(同じ場所に表示される)ので、画面を広く使用したい時には大変便利です。
最小化(アイコンに)して画面をスクロール → 何も無いところでウインドウに戻す。(アイコンをダブルクリック)

この設定が fvwm2 を使う上での基本だと思ってます。


.fvwm2rc 設定 自動前面(FvwmAuto)を止める

VineLinuxのfvwm2の初期設定では、マウスカーソルがウインドウ上に0.5秒以上あると自動的にそのウインドウを最前面にします。
この設定、良いようであまり好きではなかったりします。

この設定が嫌いで自動前面をやめたい人は以下の設定でやめることが出来ます。


FvwmAuto を止める

# カーソルが500ms以上同じウィンドウにあればそのウィンドウを自動的にレイズする
#FvwmAuto 500 Raise Nop ←行頭に"#"を入れコメントアウトする
27行目付近の FvwmAuto からはじまる行をコメントアウトします。

fvwm2 を再起動すると設定が有効になり、マウスのカーソルが入っても最前面に上がって来ません。
フォーカスは入ります。
最前面に上げるにはタイトルバーをクリックします。


知識

ウインドウの端も(角ではない)タイトルバーと同じ設定になっています。
クリックで最前面。
ドラッグすると移動出来ます。

リサイズはウインドウの角(コーナー)だけ有効です。