何らかの理由で、backspace
emacs (端末バージョン) を押すとカーソルの前の文字が削除されますが、emacs GUI (Mac 用) で同じキーを押すとカーソルの下の文字が削除されます。normal-erase-is-backspace-mode
emacsセッションがGUIにあるかどうかに応じて、誰でも設定方法を教えてもらえますか?
レコードについては、 によるとC-h k
、どちらの場合もbackspace
キーは にバインドされています。DEL
何らかの理由で、backspace
emacs (端末バージョン) を押すとカーソルの前の文字が削除されますが、emacs GUI (Mac 用) で同じキーを押すとカーソルの下の文字が削除されます。normal-erase-is-backspace-mode
emacsセッションがGUIにあるかどうかに応じて、誰でも設定方法を教えてもらえますか?
レコードについては、 によるとC-h k
、どちらの場合もbackspace
キーは にバインドされています。DEL
バックスペースを正常に機能させるために、Mac の emacs 設定で次を使用しています。
;; Fix Delete key and activate graphical frame.
(defun my-make-frame-hook ()
(when (window-system)
(normal-erase-is-backspace-mode t)
(when (fboundp 'ns-do-applescript)
(ns-do-applescript "tell application \"Emacs\" to activate"))))
;; Do this for initial frame...
(my-make-frame-hook)
;; ...and for any subsequently created frame.
(add-hook 'after-make-frame-functions
'(lambda (frame)
(select-frame frame)
(my-make-frame-hook)))
このソリューションは、デーモン モードを使用している場合でも問題なく動作するほど堅牢です。
(ns-do-applescript は明らかに新しいフレームを生成するためのものです。)
ここ(window-system)
では、 に特に関心があるはずです。
emacs がウィンドウ システムを使用している場合、またはターミナル セッションである場合、関数display-graphic-p
は戻ります。次のようなことができます。t
nil
(setq normal-erase-is-backspace (display-graphic-p))
どのバージョンのEmacsを使用していますか?バックスペースが機能するように何かを構成する必要があるのは非常に怪しいようです。
皮切りに
emacs -Q
バックスペースがどのように機能するかを説明します。