[Mew-dist 04881] Re: b33

YAMAGUCHI, Shuhei yamagus at example.com
1998年 5月 27日 (水) 02:03:42 JST


やまぐち@ねっとらぴゅたの住人、です。

以下でのWindow版とは、
『(and (boundp 'window-system) window-system)がnon-nilである』
状態のことです。
#Windows版と紛らわしいので、念のため。 ^^;

>>> In article <19980526211609M.kazu at example.com>,
>>>    Kazu Yamamoto (山本和彦) <kazu at example.com> writes:

  kazu> (3) よーく仕様を考えてみると
  kazu> 
  kazu> 	C-h は補完ウインドウのバックスクロールにしたい
  kazu> 	DEL delete にしたい
  kazu> 
  kazu> そして、bobcat を読み込んでいる人は、これをひっくり返したいです。

Window版Emacs/MuleはBSやDelをファンクションキーとして扱うのに対し、
bobcatはキーの交換を文字コードレベルでのみしか行わないためです。
#たぶん、-nw付きで起動すれば、何もしなくてもかずさんの期待通りになって
#いるんじゃないかと思います。

私の場合、Window版でDelを^Hとして扱うため、~/.emacsに以下のコードを入
れています。
#もっとも、help-for-helpをC-x ?に割り当てているため、普段は全然Delを使
#わないですけど、ま、気分の問題です。 ^^;

(load "term/keyswap")
(if (and (boundp 'window-system)
         window-system)
    (progn
      (substitute-key-definition 'rmail 'mew menu-bar-file-menu)
      (define-key function-key-map [delete] [?\^h])
      (put 'delete 'ascii-character ?\^h)))

今試し直した感じだと、
(load "term/keyswap")
(if (and (boundp 'window-system)
         window-system)
    (define-key function-key-map [delete] [?\^h]))
だけでいいようです。
じゃ、それっぽく見える(put 'delete ...)は何なのかというと、よくわかり
ません。誰か解明してください。 ^^;
#Xでのファンクションキーがvectorじゃなかった頃の、古いMule(1.xまで?)で
#の設定じゃないかと思っているのですが…。
##いつ頃からかはわかりませんが、bobcatの実体はkeyswapになってます。


  kazu> <<宿題>>
  kazu> 
  kazu> bobcat.el を読み込んでいないとき、minibuffer では
  kazu> 
  kazu> 	C-h help
  kazu> 	DEL delete
  kazu> 
  kazu> である。では、bobcat を読み込むと
  kazu> 	
  kazu> 	C-h delete
  kazu> 	DEL delete
  kazu> 
  kazu> となり、ひっくり返せないのはなぜか? 
  kazu> 
  kazu> どうも、DEL への key binding はハードコーディングのような気がします。

そういうわけで、BSとDELをひっくり返すという意味では、bobcatが読まれて
いたらMewでどうこうするというより、各自の設定で解決すべき問題な気がし
ます。
BSやDelに関数を割り当てたいという話に落ち着くのであれば、
(define-key キーマップ [backspace] '関数)
(define-key キーマップ [delete] '関数)
です。

でわでわ
-- 
yamagus at example.com / やまぐち@ねっとらぴゅたの住人
  yamagus at example.com / 山口 修平
PGP-Fingerprint: 25 0F 6F E1 57 AD 56 08  3A BC D0 9B 48 AF 31 7A



Mew-dist メーリングリストの案内