窓使いの憂鬱 9 (のどか,yamy)

このエントリーをはてなブックマークに追加
49名無しさん@お腹いっぱい。
Windows上でEmacs(テキストエディタ)を使ってるんだけど↓
http://sourceforge.jp/projects/gnupack/downloads/48312/emacs-23.2_test-20100718.exe/
こいつだけなぜかキーの置き換えが利かない。
試したのはmayuだけど、のどかでもyamyでもいいので、原因わかる人いたら教えてください。

ウィンドウクラスはこんな感じ。
CLASS: C:\usr\local\emacs-23.2_test-20100718\bin\emacs.exe:Emacs

こういう単純な.mayuで試して、他のアプリでは置き換えが利くのにemacsだけ利かない理由がわからない。
include "104.mayu"
window ALL //
key _7 = $Colon
50名無しさん@お腹いっぱい。:2010/09/25(土) 01:04:45 ID:kvZ59dpS0
default.mayuを読み込むな。
5149:2010/09/25(土) 01:51:42 ID:0YTLecR/0
>>50
include "default.mayu"って明示的に書かないと読み込まれませんよね?
ホームディレクトリの.mayuには>>49の3行しか書いてないので、default.mayuは読んでないと思います。
52名無しさん@お腹いっぱい。:2010/09/25(土) 10:03:54 ID:muAPNzdkP
>>49
IC-I-K1- などが常に付いていませんか?
ログウィンドウの詳細をチェックして、何かキーを一つ押してみてください。
5349:2010/09/25(土) 13:55:56 ID:a2O7OO8t0
>>52
ありがとうございます。>>49の3行だけ定義して、詳細をチェックして7のキーを押してみました。
たぶん調査ウィンドウでは正常に置き換えられていると思います。
[スキャンコード]
  0x08 D-_7
 begin ReadFile();
 end ReadFile();
  0x08 U-_7
 * No key is pressed
 * Gen Modifiers {
  }
 begin ReadFile();
[仮想キー]
  0x08 D-_7
 * Gen Modifiers {
  => 0x2a D-LeftShift
  }
  => 0x27 D-Semicolon
 begin ReadFile();
  0x10 &VK( D-SHIFT )
  0xba &VK( D-OEM_1 )
 end ReadFile();
  0x08 U-_7
  => 0x27 U-Semicolon
 * No key is pressed
 * Gen Modifiers {
  => 0x2a U-LeftShift
  }
 begin ReadFile();
  0xba &VK( U-OEM_1 )
  0x10 &VK( U-SHIFT )
5449:2010/09/25(土) 14:20:02 ID:a2O7OO8t0
アプリの作りによってキーの置き換えができなくなるんでしょうかね。
どうも最近のバージョンだけ効かないみたい。ウィンドウクラス名は変わっていないのですが。
emacs 22.3、23.1 ○
emacs 23.2 ×

もし試してみたい方がいらっしゃったら、本家(http://ftp.gnu.org/gnu/emacs/windows/)から
emacs-XX.X-bin-i386.zipをダウンロード・解凍して、bin\runemacs -q <ファイル名>で
起動できます。
55名無しさん@お腹いっぱい。:2010/09/25(土) 14:36:05 ID:hmRQbTbg0
Emacsの操作をEmacsライクにする必要あるの?
いや逆がやりたいんだろうけど
56名無しさん@お腹いっぱい。:2010/09/25(土) 15:02:32 ID:UxLqKweG0
>>54
なぜかは分からないけどmayuから見るとIMEがONの状態に見えてる
だから
key IC-_7 = $Colon
ってやれば置き換えられる
5749:2010/09/25(土) 15:20:01 ID:a2O7OO8t0
>>56
ちゃんと効くようになりました!すごい!!
ありがとうございます。
一応、ntemacsスレにも報告しておこうかな。

>>55
Emacsだけでもキーの置き換えはできるのかもしれないんですが、
やりかたがよくわからないのでmayuに頼ってました。
(特に&WindowMoveVisiblyとか&MouseMoveみたいな関数系)