9

私の問題は次のようなものです。まず、Mac で Terminal.app を使用して ssh -Y を介してリモート サーバーにログインします。次に、そのリモートサーバーにインストールされているemacsを次のように入力して開きます

emacs

ssh を使用する際にオプション -Y を追加したため、Mac にインストールされている XQuartz で emacs が開かれます。

このとき、問題が発生します。option キーは Meta として扱われず、ESC キーのみが Meta として扱われます。しかし、オプションキーをメタとして使いたいです。

どうすれば解決できますか?

4

1 に答える 1

8

http://www.emacswiki.org/emacs/MetaKeyProblemsを見てください。

特にこの部分。

その後、X11 ウィンドウ (Applications/Utilities/X11.app) から、option/alt キーをメタ キーとして emacs を実行できます。さらに、xmodmap コマンドを使用して、X11 でのみコマンド キーを Control に再マップすることができます。これには、コマンド キーが他の Mac アプリケーションで期待どおりに動作できるという利点があります。xmodmap は、Alt/Option キーが emacs のメタ キーに設定されていることを確認することもできます。これは、次の ~/.xmodmap ファイルで実行できます (感嘆符で始まる行はコメントであり、省略できます)。

! undo any meta keys already set
 clear Mod1
 ! keycodes 63 and 71 are the left and right COMMAND buttons adjacent to the spacebar; set them to be control keys
 keycode 63=Control_L
 keycode 71=Control_R
 ! keycodes 66 and 69 are the option/alt keys; assign them as Meta keys
 keycode 66=Meta_L
 keycode 69=Meta_R
 ! now tell X11 that the Meta keys act as the Mod1 (meta) modier key; that is, when they are pressed with KEY, it is the same as hitting M-KEY
 add Mod1 = Meta_L Meta_R
 ! tell X11 that the Control keys are Control modifiers, so when pressed with u (for example) it is the same as hitting C-u
 add Control = Control_L Control_R

コマンドで上記のファイルを使用します

xmodmap ~/.xmodmap

emacs を起動する前に (たとえば、ログイン シェル オプションを xterm に使用する場合は、/etc/bashrc から、つまり、ターミナルの X11/Application/Customize で xterm -ls)。

于 2013-01-17T12:58:57.843 に答える