Mac OS X で Alt+N を押して ~ 文字を書くのに慣れています。これは Emacs では機能しません。Alt+N キーはコマンド履歴にバインドされているようです。だから私の質問は、Mac OS X の Emacs で ~ 文字を書く方法ですか?
編集: Aquamacs を使用しています。
Mac OS X で Alt+N を押して ~ 文字を書くのに慣れています。これは Emacs では機能しません。Alt+N キーはコマンド履歴にバインドされているようです。だから私の質問は、Mac OS X の Emacs で ~ 文字を書く方法ですか?
編集: Aquamacs を使用しています。
この質問はかなり古いものですが、OS X 用の Emacs (最近最も人気のある選択肢) について満足のいく答えはないようです。だから、将来の読者のために...
OS X 用のプレーンな Emacs は、デフォルトで両方のAltキーを使用Metaします。多くの文字がAltドイツ語の Mac キーボード (チルダ、括弧、中括弧など)を使用して入力されるため、右キーを使用してチルダ ( ) およびその他の文字を入力し、左キーを使用できるように設定ns-right-alternate-modifier
することをお勧めします。として(のように)。nil
Alt-n AltMetaM-x
にカスタマイズCmdすることもできますMeta。すべてのオプションは、 の下でインタラクティブにカスタマイズできますM-x customize-group ns
。
いつでも「文字ビューア」を開いて「句読点」を選択し、「~」(チルダ) を見つけてダブルクリックすることができます。これにより、Emacs ポイントに挿入されます。(「システム環境設定」ウィンドウの「キーボード」ペインから「メニューバーにキーボードと文字ビューアーを表示」をチェックすると、「文字ビューアー」に簡単にアクセスできます。)
次のように emacs-lisp 関数を定義することもできます。
(defun tilde () (interactive) (insert "~"))
M-x tilde
次に、チルダを挿入するためにそれを呼び出します。次に、その機能を選択したキーの組み合わせに次のように割り当てることができます
(global-set-key "\M-\C-!" 'tilde) ;; you choose the combo
これらすべてを「emacs init」ファイルに追加します。
quoted-insert
これに対処する必要があります。
C-qAlt-N
Aquamacs : Options -> Options Commands Meta Key -> Meta and French ?
残念ながら、端末で emacs を実行している場合 (emacs -nw)、fpbhb による回答は機能しません。
両方の状況 (スタンドアロンと端末内) で機能するこの問題の解決策を思いつくことができました。また、私は国際キーボードを使用しており、ターミナルで emacs を実行しているときに特殊文字を入力できないという問題も修正できました。
このスニペットは、emacs をアプリとして (つまり、ターミナルではなく) 実行しているときに、左側のオプション キーを "META" に適切にバインドします。特殊文字を入力するために使用できる正しいオプション キーをバインドしません。
(setq mac-command-key-is-meta nil
mac-command-modifier nil)
(setq mac-option-key-is-meta t
mac-option-modifier 'meta
mac-right-option-modifier nil)
上記のすべては、ターミナルで emacs を実行する場合には効果がありません。ターミナルで同じキー バインドを取得するには、次の手順を実行する必要があります。
ターミナル設定 -> キーボード -> オプションをメタキーとして使用
残念ながら、これを行うと、オプション キーを使用して国際キーボードで特殊文字を入力できなくなります。特に、チルダ、バックスラッシュ、@ がありませんでした。
不足しているキー マッピングを .emacs に追加することで、この最後の問題を解決しました。
(define-key key-translation-map (kbd "M-ñ") (kbd "~"))
(define-key key-translation-map (kbd "M-º") (kbd "\\"))
(define-key key-translation-map (kbd "M-2") (kbd "@"))
ほら。