試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

mltermのキー設定

まずは使える機能の一覧。

mltermで割り当てられる機能一覧
機能名動作既定のキー
OPEN_SCREEN新規疑似端末をウィンドウとともに作成Ctrl+F1
OPEN_PTY新規疑似端末を現在のウィンドウに作成し、切り替えるCtrl+F2
NEXT_PTY疑似端末の切り替え(次)Ctrl+F3
PREV_PTY疑似端末の切り替え(前)Ctrl+F4
SCROLL_UP1ページ上(後ろ)にスクロールShift+PgUp(Prior)
SCROLL_DOWN1ページ下(先)にスクロールShift+PgDn(Next)
PAGE_UP1行上(後ろ)にスクロールShift+(Up)
PAGE_DOWN1行下(先)にスクロールShift+(Down)
INSERT_SELECTION選択範囲(PRIMARY)を貼り付けShift+Insert
IM_HOTKEYm17nライブラリもしくはkdbの入力メソッドを使用している場合の変換モード変更-
(任意の文字列)指定した文字列を入力-
proto:(制御文字列)mltermの設定を変更する-
(2009/8/15)貼り付け操作に関する記述を修正*1
SCROLL_UPとSCROLL_DOWNは有効にするために以下の設定が必要。-qオプションを毎回付けて起動してもよいがおすすめはしない。
ファイル名: ~/.mlterm/main

use_extended_scroll_shortcut = true

  1. 文字列出力を利用したコマンド実行
  2. 割り当てるキーの書き方
  3. 設定例

文字列出力を利用したコマンド実行

文字列の出力で、最後に改行コードの「\n」を入れると、Enterキーを押すのと同じ効果があるため、これを利用して、ショートカットキー一発でコマンドを実行させることもできる。

割り当てるキーの書き方

  • [キー]=[機能]の形
  • Ctrl/Shift/AltはそれぞれControl/Shift/Modと書き、組み合わせは「+」で結ぶ
  • キーの名称は/usr/include/X11/keysymdefs.h*2の「XK_(シンボル名)」という部分を参照して決定(例:yのキーなら「XK_y」*3があるので設定には「Control+y」のような形で書く)

設定例

設定のルールと機能を踏まえた上で、好みに応じた設定を作成すると、幸せになれる。
ファイル名: ~/.mlterm/key

## 機能割り当て
Control+1=OPEN_PTY
Control+2=NEXT_PTY
Control+3=PREV_PTY
Mod+y=INSERT_SELECTION
Shift+Up=PAGE_UP
Shift+Down=PAGE_DOWN

## 機能を無理矢理無効化
Control+F35=OPEN_SCREEN
Shift+F34=SCROLL_UP
Shift+F33=SCROLL_DOWN

## 長い文字列の決め打ち・コマンド実行
Control+F1="mlclient -P\n"
Control+F2="echo -e \"${PATH//:/\\n}\"\n"
Control+F3="./configure --help | less\n"
Control+F4="CFLAGS=\"-march=native -pipe\" CXXFLAGS=\"-march=native -pipe\" ./configure "
Control+F5="less /var/log/Xorg.0.log\n"

## エンコーディング変更(疑似端末単位)
Control+F7="proto:encoding=eucjp"
Control+F8="proto:encoding=utf8"

(2007/7/7)「proto:encoding」によるエンコーディング切り替えを追加

使用したバージョン:

  • mlterm 2.9.3-r1

*1:クリップボード(CLIPBOARD記憶)に記憶したものが入るのはそれが選択範囲になっているときだけで、(mltermはCLIPBOARD記憶は扱わないので)その後別の場所を選択すると、CLIPBOARD記憶の内容はそのままでも新しい選択範囲のほうが貼り付けられる

*2:システムによっては/usr/X11R6/include/X11/keysymdefs.hという場所になる

*3:大文字と小文字のコードは別なので注意。ここのキー設定においては小文字を使用するのがよい