2012-06-20 31 views
5

私はMac OS XでAlt + Nを押して〜文字を書くのに使っています。これはEmacsでは機能しません。 Alt + Nキーがコマンド履歴にバインドされているようです。だから私の質問は、Mac OS XでEmacsの〜文字を書く方法です。Mac OS X上のEmacsにチルダ(〜)文字を書くには?

編集:私はAquamacsを使用しています。

+0

どのキーボードとキーボードのレイアウトを使用していますか?英語のものは、少なくともバッククイック '\' 'の上に置いてください。 – Ryan

+0

ドイツのレイアウトのApple Keyboardを使用しています。 –

答えて

2

いつでも「文字ビューア」を開いて「句読点」を選択し、「〜」(チルダ)を見つけてダブルクリックすることができます。それはEmacsポイントに挿入されます。 (「文字ビューアは、」システム環境設定]ウィンドウの[キーボード]ペインから「メニューバーに表示キーボード&文字ビューア」をチェックした後に容易にアクセス可能である。)

またとしてのemacs-lispの関数を定義できます。

(defun tilde() (interactive) (insert "~")) 

M-x tildeと入力してチルダを挿入します。その機能を、選択したキーコンボに

(global-set-key "\M-\C-!" 'tilde) ;; you choose the combo 

というように割り当てて、これをすべて 'emacs init'ファイルに追加することができます。

+0

この解決方法はエディタ中に機能しますが、ミニバッファでも機能します。どのようにそれでそれを動作させるためにどのようなアイデア?このような関数をミニバッファから呼び出して、結果をミニバッファに入れることはできますか(私はEmacsには全く新しいです)? – pbernery

+0

IMHO、これは答えではありません。根本的な問題は、EmacsがOS X上に文字を入力するためのAltを無効にしていることに起因します。 – fpbhb

0

quoted-insertこれに対処する必要があります。

C-QのAlt-N

+0

私のために働かない、私はちょうど "î"を得る。私のキーボードはベルギー語 - フランス語ですが、チルダのキーコンボはemacs以外のAlt-Nです。 – Norswap

0

Aquamacs:オプション - >オプションコマンドのMetaキー - >メタとフランス?

7

この質問はかなり古くなっていますが、答えはEmacs for OS X(これらの中で最も人気のある選択肢)では満足できないようです。だから、将来の読者のために... OS X用

平野Emacsは、デフォルトでメタとして両方Altキーキーを使用しています。できるだけ多くの文字がドイツのMacのキーボード(などチルダ、括弧、中括弧)でAltキーを使用して入力され、私はチルダ(のAlt-N)と使用して他の文字を入力可能にする、nilns-right-alternate-modifierを設定することをお勧めしたいですアルトキー、が一つ(M-x用等)メタとして使用することができるを残しています。

またはcmdは、Metaにカスタマイズすることができます。すべてのオプションは、M-x customize-group nsでインタラクティブにカスタマイズできます。

0

残念ながら、emacsを端末(emacs -nw)で実行しているときは、fpbhbの答えは機能しません。

私は、両方の状況(スタンドアロンと端末内)で動作するこの問題に対する解決策を考え出すことができました。また、私は国際的なキーボードを持っていて、端末でemacsを実行しているときに特殊文字を入力できないという問題を解決することもできました。

このスニペットは、emacsをアプリとして(端末ではなく)実行しているときに、左のオプションキーを「META」に正しくバインドします。ターミナルでemacsのを実行している時には、上記のすべては効果がありません

(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) 

:それは特殊文字を入力するために使用することができ、右Optionキーを、結合しません。ターミナルで同じキーバインディングを取得するには、あなたがする必要があります:

ターミナル設定 - >キーボード - > useオプションとしてメタこれを実行した後、あなたが入力するオプションキーを使用することはできません、

残念ながらキー国際的なキーボードの特殊文字。特に、私はチルダ、バックスラッシュ、@を忘れていました。

私は自分の.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 "@")) 

ほら。

関連する問題