- ベストアンサー
GnomeWindowのキーボード操作
VineLinux2.6にてGnomeを使用しております。 GnomeのWindow移動をキーボードで行いたいのですが 方法がわかりません。 TWMのウィンドウをキーボード操作で操作するPatchは見つかったのですがGnome用にはこのようなPatchはないのでしょうか。よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
これまで lisp の経験はありませんでしたが,勉強がてら http://www.sics.se/~lofgren/sawmill/repository.html の 'no mouse' http://www.haun.org/kent/lisp1/ http://sawfish.gnome.gr.jp/doc/sawfish-ja.html を参考にして,作ってみました.(というか,'no mouse' のパーツを組み替えただけ) Ctrl+Alt+矢印キー,Shift+Ctrl+Alt+矢印キーで,フォーカスの当たっているウィンドウを移動できます. window の端の判定などはやってませんので,果てしなくどこかへ行ってしまいます. 気に入らなければ,オリジナルの 'no mouse' を参考に,カスタマイズしてください. 以下の lisp を ~/.sawfishrc に書けば O.K. です. (defun rsk-move-window (dir inc) "move the window to specified direction and pixels" (interactive) (let* ((win (input-focus)) (pos (window-position win)) (posx (car pos)) (posy (cdr pos))) (cond ((eq dir 'up) (setq posy (- posy inc))) ((eq dir 'down) (setq posy (+ posy inc))) ((eq dir 'left) (setq posx (- posx inc))) ((eq dir 'right) (setq posx (+ posx inc)))) (move-window-to win posx posy) (display-window win))) (bind-keys global-keymap "C-M-Up" '(rsk-move-window 'up 10)) (bind-keys global-keymap "C-M-Down" '(rsk-move-window 'down 10)) (bind-keys global-keymap "C-M-Left" '(rsk-move-window 'left 10)) (bind-keys global-keymap "C-M-Right" '(rsk-move-window 'right 10)) (bind-keys global-keymap "S-C-M-Up" '(rsk-move-window 'up 1)) (bind-keys global-keymap "S-C-M-Down" '(rsk-move-window 'down 1)) (bind-keys global-keymap "S-C-M-Left" '(rsk-move-window 'left 1)) (bind-keys global-keymap "S-C-M-Right" '(rsk-move-window 'right 1))
その他の回答 (1)
- astronaut
- ベストアンサー率58% (303/516)
Gnome というより Window Manager の機能ですよね. Vine-2.6 なら Sawfish だと思いますが,Sawfish の場合 lisp プログラムを書くことで,比較的簡単にできるようです. http://sawfish.gnome.gr.jp/index-ja.html から,詳細なマニュアルが日本語で読めますので,自分でプログラムしても良いでしょう. また,web を検索すると,キーボード操作を実現している人もいるようですから,sawfish をキーワードにして根気よく探せば,lisp プログラムも見つかるかもしれません.
お礼
詳しく回答いただきありがとうございました。 大変参考になりました。 ありがとうございました。