スキップしてメイン コンテンツに移動

fvwm2の設定: menus

  ~/lib/conf/wm/menus

  fvwmのメニューの設定.デスクトップ上をクリックするなどの際に,ポップアップして現れるもの.

######################## 各メニュー設定  ###################
AddToMenu RootMenu
#+   "XTerm"		Exec exec xterm
#+   "Rxvt"		Exec exec rxvt
#+	""		Nop
#+	"Remote Logins"	Popup Remote-Logins
#+	""		Nop
#+  "Fvwm Simple Config Ops"  Popup Misc-Ops
#+                   "Refresh Screen"   Refresh
#+                       "Recapture Screen" Recapture
#+			""		Nop
+   "Apps"              Popup Apps
+   ""                  Nop
+   "Restart Fvwm" 	    Restart fvwm
#+   "Fvwm Modules"      Popup Module-Popup
#+   "Fvwm Window Ops"   Popup Window-Ops
+   "Fvwm"              Popup Fvwm
+   ""                  Nop
+   "Exit Fvwm"         Popup Quit-Verify

#AddToMenu Utilities     "Utilities" Title
#+			"Top"		Exec exec xterm -T Top -n Top -e top
#+			"Calculator"	Exec exec xcalc
#+			"Xman"		Exec exec xman
#+			"Xmag"		Exec exec xmag
#+                       "Editres"       Exec exec editres
#+			""		Nop
#+			"XEmacs"	Exec exec xemacs
#+                       "Mail"          MailFunction xmh "-font fixed"
#+			""		Nop
#+                       "XLok"         Exec exec xlock -mode random
#+			""		Nop
#+                       "Reset X defaults" Exec xrdb -load $HOME/.Xdefaults 

#AddToMenu Utilities     "kterm"         Exec exec kterm -sb
#+                       "netscape"      Exec exec netscape
#+                       "netscape6"     Exec exec ns6
#+                       "emacs"         Exec exec emacs
#+                       "rmail"         Exec exec emacs -e mh-rmail
#+                       "smail"         Exec exec emacs -e mh-smail
#+                       "mnews"         Exec exec kterm -sb -e mnews
#+                       "xjdic"         Exec exec kterm -sb -e xjdic
#+                       "audiotool"     Exec exec /usr/openwin/bin/audiotool
#+                       "xkill"         Exec exec xkill
#+                       "xlpr"          Exec exec xlpr
#+                       "xnolok"        Exec exec xlock -nolock
#+                       "xlock"         Exec exec xlock

AddToMenu Apps
+   "kterm"	 Exec exec kterm -sb
+   "emacs"	 Exec exec emacs
+   "firefox"	 Exec exec firefox

AddToMenu Fvwm
+   "Fvwm Modules"      Popup Module-Popup
+   "Fvwm Window Ops"   Popup Window-Ops

AddToMenu Misc-Ops "Misc Config Opts" Title
+                  "Sloppy Focus"        ChangeDefaultFocus SloppyFocus
+                  "Click To Focus"      ChangeDefaultFocus ClickToFocus
+                  "Focus Follows Mouse" ChangeDefaultFocus FocusFollowsMouse
+                  "" Nop
+                  "Colormap Follows Mouse" ColormapFocus FollowsMouse
+                  "Colormap Follows Focus" ColormapFocus FollowsFocus
+                  "" Nop
+                  "Full Paging ON"         EdgeScroll 100 100
+                  "All Paging OFF"         EdgeScroll 0 0
+                  "Horizontal Paging Only" EdgeScroll 100 0
+                  "Vertical Paging Only"   EdgeScroll 0 100
+                  "Partial Paging"         EdgeScroll 50 50
+                  "Full Paging && Edge Wrap" EdgeScroll 100000 100000

AddToMenu Window-Ops    "Window Ops"    Title           
+                       "Move"          Move
+                       "Resize"        Resize
+                       "Raise"         Raise
+                       "Lower"         Lower
+                       "(De)Iconify"   Iconify
+                       "(Un)Stick"     Stick
+                       "(Un)Maximize"  Maximize 100 100
+                       ""              Nop
+                       "Delete"        Delete
+                       "Close"         Close
+                       "Destroy"       Destroy
+                       ""              Nop
+                       "Refresh Screen" Refresh

AddToMenu Window-Ops2   "Move"          Move
+                       "Resize"        Resize
+                       "Raise"         Raise           
+                       "Lower"         Lower           
+                       "Iconify"       Iconify
+                       "(Un)Stick"     Stick
+                       ""              Nop             
+                       "ScrollBar"     Module FvwmScroll 2 2
+			"Identify"	Module	FvwmIdent
+                       ""              Nop             
+                       "Delete"        Delete  
+                       "Destroy"       Destroy         
+                       "Close"         Close           
#+                       "Print"         PrintFunction

# be sure to fill these in with your correct machine names:
#AddToMenu Remote-Logins	"dopey"	 Exec rsh dopey rxvt -display $HOSTDISPLAY &
#+			"snoopy" Exec rsh snoopy rxvt -display $HOSTDISPLAY &
#+			"grumpy" Exec rsh grumpy rxvt -display $HOSTDISPLAY &
#+			"happy"	 Exec rsh happy rxvt -display $HOSTDISPLAY &
#+			"bailey" Exec rsh bailey rxvt -display $HOSTDISPLAY &
#+			"barnum" Exec rsh barnum rxvt -display $HOSTDISPLAY &
#+			"joker"	 Exec rsh joker rxvt -display $HOSTDISPLAY &
#+			"signal" Exec rxterm signal

# FvwmIdent     WindowにマウスをあわせてクリックするとWindowの情報を表示
# FvwmTalk      Fvwmのコマンドを実行する。例えば FvwmIdent とか。
# FvwmButtons   FvwmIconMan Pager などが合体しているやつ
# FvwmPager     Pager(仮想デスクトップの位置関係を表示するやつ)を表示
# FvwmWinList   Windowのリストを表示するやつ
# FvwmBanner    Fvwmのロゴを表示。意味なし
# FvwmScroll    WindowをクリックするとそのWindowにスクロールバーがつく
# FvwmBacker    仮想デスクトップ毎に背景色をわけて設定するやつ
# FvwmAuto      マウスカーソルをあわせていると自動的にRaiseする
# FvwmIconBox   アイコンをまとめておく。Style "*" NoIcon のときのみ
# FvwmIconMan   アイコンをまとめておく
#AddToMenu Module-Popup	"FvwmModules"	Title
#+			"Identify"	Module	FvwmIdent
#+			"Talk"  	Module	FvwmTalk
#+			""		Nop
#+			"Button-Bar"	Module	FvwmButtons
#+			"Pager (1 desks)" Module  FvwmPager 0 0
#+			"Pager (2 desks)" Module  FvwmPager 0 1
#+			"WinList"	Module  FvwmWinList
#+			""		Nop
#+			"Banner"	Module	FvwmBanner
#+                       "ScrollBar"     Module  FvwmScroll 50 50
#+			"Background"	Module  FvwmBacker
#+                       "AutoRaise"     Module  FvwmAuto 200 Raise Nop
#+                       "Stop AutoRaise" KillModule FvwmAuto
#+			""		Nop
#+			"IconBox"	Module	FvwmIconBox
#+                       "IconMan"       Module  FvwmIconMan
#+			""		Nop
#+                       "Form - Rlogin"      Module FvwmForm Rlogin
#+                       "Form - MyFvwmTalk"  Module FvwmForm MyFvwmTalk
#+                       "Form - QuitVerify"  Module FvwmForm QuitVerify
AddToMenu Module-Popup  "FvwnModules"       Title   
+                       "Button-Bar"    Module  FvwmButtons
+                       "Identify"      Module  FvwmIdent
+                       "Pager"         Module  FvwmPager 0 1
+                       "WinList"       Module  FvwmWinList
+                       "IconMan"       Module  FvwmIconMan

#AddToMenu Quit-Verify 	"Really Quit Fvwm?" Title	
#+		      	"Yes, Really Quit"  Quit	
#+		      	""		    Nop	
#+                       "Restart Fvwm2"     Restart fvwm2
#+		      	"Restart Fvwm"	    Restart fvwm
#+		      	""		    Nop	
#+		      	"Start twm"         Restart twm
#+		      	"Start ctwm"        Restart ctwm
#+		        "Start tvtwm"       Restart tvtwm
#+		        "Start vtwm"        Restart vtwm
#+		      	"Start mwm"    	    Restart mwm
#+	      	      	"Start olwm"        Restart /usr/openwin/bin/olwm
#+		      	""		    Nop	
#+		      	"Start dummy"       Restart xterm
#+		      	""		    Nop	
#+		      	"No, Don't Quit"    Nop	
AddToMenu Quit-Verify   "Restart Fvwm2"     Restart fvwm2
+                       ""                  Nop 
+                       "Yes, Really Quit"  Quit
+                       ""                  Nop 
+                       "Restart Fvwm" 	    Restart fvwm
+                       "No, Don't Quit"    Nop 


######################## 簡易関数 ##########################
#
#AddToFunc MailFunction	   "I" Next [$0] Iconify -1
#+		           "I" Next [$0] Focus
#+			   "I" None [$0] Exec $0 $1
# I=シングルクリック M=ドラッグ D=ダブルクリック
AddToFunc Move-or-Raise         "I" Raise
+                               "M" Move
+                               "D" Maximize 100 100

AddToFunc Move-or-Raise2        "M" Raise
+                               "M" Move
+                               "D" Lower

AddToFunc Move-or-Iconify       "M" Raise
+                               "M" Move
+                               "D" Iconify

AddToFunc Resize-or-Raise       "I" Raise
+                               "M" Resize
+                               "D" Maximize 100 100

AddToFunc Resize-or-Raise2      "M" Raise
+                               "M" Resize
+                               "D" Lower

#AddToFunc PrintFunction         "I" Raise
#+                               "I" Exec xdpr -id $w

#AddToFunc PrintReverseFunction  "I" Raise
#+                               "I" Exec xdpr 1/2 -h -rv -id $w

AddToFunc Iconify-and-Raise     "I" Iconify
+                               "I" Raise

AddToFunc FocusNextWindow
#+ I Next [CurrentDesk] Raise
+ I Next [CurrentDesk] focus

AddToFunc FocusPrevWindow
#+ I Prev [CurrentDesk] Raise
+ I Prev [CurrentDesk] focus

# RLOGIN machine fg bg
#AddToFunc RLOGIN "I" Exec kterm -fg $1 -bg $2 -e rlogin $0 -8

# TELNET machine fg bg
#AddToFunc TELNET "I" Exec kterm -fg $1 -bg $2 -e telnet $0

AddToFunc FocusAndWarp "I" Focus
+                      "I" WarpToWindow 2p 2p

AddToFunc DeiconifyFocusAndWarp "I" Iconify -1
+                               "I" FocusAndWarp

AddToFunc ChangeDefaultFocus "I" Style "*" $0
+                            "I" Recapture

AddtoFunc Focus-and-Raise
+ I Fucus
+ I Raise

このブログの人気の投稿

TeXマクロプログラミング

2012.03.30 更新 スライド化しました.   新しいマクロ定義 以下に例を示す. \dev\hoge{ほげ}    これにより,\hogeが「ほげ」に変換される.引数を使うには,以下のように記述する. \dev\hour#1{今は#1時です}   別の方法 上に示した処理は,以下のようにも記述できる. \newcommand{\hoge}{ほげ} \newcommand{\hour}[1]{今は#1時です}   defとnewcommand違い defとnewcommandが異なる箇所として,以下が上げられる. 定義命令を定義している処理系 マクロを多重定義した場合の動作 引数のとり方  まず,定義されている処理系が異なる.defはtexで定義されており,newcommandは,latexで定義されている.  次に,多重定義した際の動作が異なる.defでは,新しい定義で上書きする.一方,newcommandではエラーを出力する.  最後に,defでは,引数のとり方としてパターンマッチングを利用できる.例えば,以下のマクロ定義があるとする. \def\Hatchr(#1,#2)(#3,#4)#5 これにより,以下に示すインターフェイスを実現する. \Hatchr(3,4)(7,8){hoge}   マクロの複製 以下の処理では,\hogeの内容を\fugaに複製する. \let\fuga\hoge   マクロの初期化 以下のコードで,\hogeを初期化する. \let\fuga\relax  ここで,\relaxは初期化のために利用する空の定義である.   マクロに文字を追加し再定義 defによる定義は,マクロの多重展開をおこなわない.例えば,以下のコードを考える. \def\hoge{ほげ} \def\hoge{\hogeふぇふぇ}  この後,\hogeを利用すると「\hogeふぇふぇ」と展開される.つまり,一度だけしかマクロは展開されない.  マクロを展開してから定義する際には,以下の記述を用いる. \edef\hoge{\hogeふぇふぇ}  これに

beamerでしおりを付ける

しおり   しおりとは,acroreadなどでpdfを表示する際に,ウィンドウの左側に表示される目次のようなものである.このしおりを使うことで,文章の構成を大まかに把握したり,特定の項目に移動することが簡単にできる.   beamerには,標準でしおりを付ける機能が備わっている.以降では,しおりを付ける方法について述べる. しおりをつける   beamerでしおりを付けるには,次のコマンドをtexの文章中に記述する. section{} subsection{} subsubsection{}   カッコの中に記述する文字列が,しおりの項目名に使用される.また,section,subsection,subsubsectionを使い分けることで,階層化をすることも可能. 文字化け対策   しおりは,標準の仕様ではUnicodeのみがサポートされている.EUCを使う場合は,そのままではしおりの日本語が文字化けする.このため,Unicodeを用いない際には,何らかの対策が必要である.   以下では,EUCを利用する人のための対処策を述べる.ここで,dviからpdfを生成する際の方法によって,対処の仕方が異なることに注意する.具体的には,(1)dvipdfmxを用いる場合と,(2)dvipsおよびps2pdfを用いる場合で,対処の仕方が異なる.以降,それぞれについて述べる. dvipdfmxを用いる場合   次のコードをプリアンブルに記述しておくことで解決できる.これにより,しおりの部分の文字列が,自動でUnicodeに変換される. \ifnum 42146=\euc"A4A2 \AtBeginDvi{\special{pdf:tounicode EUC-UCS2}}\else \AtBeginDvi{\special{pdf:tounicode 90ms-RKSJ-UCS2}}\fi   ただし,実行にはEUC-UCS2というファイルが必要.texをインストールする際に,標準でシステムに入る場合はこのままコンパイルできるが,無ければコンパイルできない.私がこれまで経験したなかでは,Vine 5.0, Mac OSXには含まれているが,Debian lennyには入っていなかった.   システムにEUC-UCS2が無い場合,以下のようなサイトから取ってくる.取って

ssh-agentの管理を自動化する

ssh-start.sh ssh-agentの管理を自動化するスクリプトssh-start.shを紹介する. 詳細 ssh-agentを使うことで,sshでリモートログインする際に,パスワードの入力を省略できる. ssh-agentを利用するためには,ソケットのパスとプロセスIDを環境変数に登録する必要がある.環境変数に登録すべき情報は,ssh-agentの起動時に,以下のように標準出力に出力される. $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-XTqIvn4918/agent.4918; export SSH_AUTH_SOCK; SSH_AGENT_PID=4919; export SSH_AGENT_PID; echo Agent pid 4919; 上記のように,ssh-agentの出力はシェルコマンドとなっており,実行すれば環境変数がセットされる.このため,多くの解説記事では,次のようにevalを用いる方法が述べられている. $ eval `ssh-agent` Agent pid 4919 しかし,この方法は,同じssh-agentのプロセスを複数のシェルから利用することはできない.上記コマンドを他のシェル上でも実行すれば,動作はするが,次の点で優れた手法とは言えない. ssh-agentのプロセスを複数起動する (本来は1個で充分). 起動毎に秘密鍵の登録,およびパスフレーズの入力が必要となる. 上記の問題は解決するには,1個のssh-agentを複数のシェルから再利用すればよい.例えば2個のターミナルから1個のssh-agentプロセスを利用するには,次のようにする. # terminal 1 $ ssh-agent > ~/tmp.sh $ source ~/tmp.sh Agent pid 4919 # terminal 2 $ source ~/tmp.sh Agent pid 4919 こうすることで,2個のターミナルから同一プロセスのssh-agentを利用できる. 以上の処理を自動化したものが,ここで紹介するスクリプトである. 使い方 環境変数を扱かうため,通常のスクリプトのようには利用できない.このため,sourceコマンドや.(ドット)コマンドで実行する. $ source /path/to/dir/s