.右Ctrlキーを実行キーにする

      コマンドラインパラメータで /Yr を指定するか               (7)章
      .INI ファイルで R-Ctl_ENTER = 1 を指定する                (6)章
      "OPT RCTL ON"コマンドを使用するか

      GUI版(wxe,gxe)ではSetupダイアログのR-Ctrlチェックボックスをセットします。
      コマンドラインパラメータでの指定があれば優先し、なければ
      OPTコマンドか、.INIファイルのどちらかででR-Ctrl使用の指定があれば
      R-Ctrlが実行キー、Enterキーが改行になります
      GUI版のR-CtrlチェックボックスはOPTコマンドと同じです。
      GUI版とコンソール版はOPTコマンドについては同期しています。

      同時にini ファイルで R-Ctl_NewLine=1を指定すると右Ctrlキーは
      改行に、Enterキーは実行キーのままなります。
      コマンドラインパラメータでは /Yrr になります。(Linux 版では -Yrr)
      iniファイルのR-Ctl_NewLineパラメータをコマンドラインで否定するには
      /Nrr を指定します。


#ifdef LNX

      コンソール版は右Ctrlキー単独の押し下げを検知できませんが、
      次のような方法もあります。
        X11 通常使用しないキーシンボルでターミナルエミュレータがEsc文字列を生成するものを選びます。
        それをxemodmap コマンドで 右Ctrlキーに割り当て、Esc文字列をxeに認識させる。
        そのEsc文字列を--kオプションでxeに認識させる。
      xmodmapで設定できるシンボルは /usr/include/X11/keysymdef.h で見ることが出来ます。

      例.1)
          私のFC12環境では KP_Begin で試しました
          "xmodmap -pke" コマンドでは次のように表示されます
              keycode  84 = KP_Begin KP_5 KP_Begin KP_5
              keycode 105 = Control_R NoSymbol Control_R
          xmodmap コマンドで KP_Begin を Control_R に割り当てます
              xmodmap -e "keycode 105 = KP_Begin NoSymbol Control_R"
          同梱の xekbchk ユーティリティーは KP_5 は ^[[E を生成することを示します
          そこで次のようなファイルを用意し
              keymap.rctl
                  ############################################################
                  [common]
                  [gnome-terminal]
                      KeyString:R-Ctl       =^[[E           #string by KP-5
                  ############################################################
          xe を "xe --kkeymap.rctl -Yr" で立ち上げる
          ("opt rctl on" xeコマンドで  -yr オプションは不要になります)
          これで Enter は 改行キー, R-ctrl は 実行キーとなります
          "-yr -yrr" をしてすると Enter は実行キー, R-Ctrl は 改行キーとなります
          (注)次の設定だけでで右Ctrlは実行キーになりますがEnterキーは改行キーにはなりません
            この設定で -Yr とすると Enter/Rctrlの両方が改行になります
                  keycode 105 = Return

      例.2)
          適当なターミナルエミュレータがEsc文字を生成するキーシンボルが見つからない場合
          文字コードを利用することも出来ます
          他のキーのコンビネーションで同じ文字列が生成されても区別は出来ないので
          お使いのロケールで使用しない文字コードを探してください。
          例えば yacute を使用する場合
            xmodmap  -e "keycode 109 = yacute"
          とgnome-terminalなりkonsoleから入力すると右Ctrlでyacute(=0xfd)が生成される様になります。
          (キーコード番号 109 が Control_R かどうかは xmodmap -pk で確認してください。)
          yacuteはコードポイント0xfdですが Terminal Emulator の Character Encoding 設定により変わります。
          UTF8では 0xc3bd となります。

          生成される文字列をxeに認識させるにはkeymapファイルを使用します。

              ##########################################################################
              [common]
              KeyString:R-Ctl       =\x8f\xab\xf2   #string by yacute
              KeyString:R-Ctl       =\xc3\xbd       #UTF8 string for yacute
              KeyString:R-Ctl       =\xfd           #ISo-8859-1  for yacute

          このファイル名を例えば key.rh9 とした場合iniファイルで
              LNX_Keymap  = /g/src/xe/key.rh9  ##(Linux Console Version Only) Keymap file to detect remapping by xmodmap cmd
          と記述します。(プロトタイプは ini コマンドで出力できます)
          ワークDirにおいた場合は  LNX_Keymap  = ::key.rh9  という記述でもOKです。
          コマンドラインパラメータの場合は --k/g/src/xe/key.rh9 のように指定します。

      (注意)
        GUI版の gxe は keycode番号でキーを識別するのでxmodmapでの設定変更の影響は
        受けませんが、xmodmapの変更はシステム全体の話なので影響を受けるアプリケーションも
        あると考えられます。

#endif