Emacs Mac Port版 emacs-27.1-mac-8.0 を使用しています。
MacOSのキーボードショートカットに合わせる
- Macのアプリケーションには Cut, Copy, Paste, フォントサイズ変更など command キーを使った標準的なショートカットがあるので、Emacsもそれに合わせます。
- command キーを
super
にするので、meta
は option キーと function キーに割り当てています。
(when (equal window-system 'mac)
(setq mac-function-modifier 'meta)
(setq mac-option-modifier 'meta)
(setq mac-command-modifier 'super)
(global-set-key (kbd "s-x") 'kill-region)
(global-set-key (kbd "s-c") 'kill-ring-save)
(global-set-key (kbd "s-v") 'yank)
(global-set-key (kbd "s-a") 'mark-whole-buffer)
(global-set-key (kbd "s-s") 'save-buffer)
(global-set-key (kbd "s-z") 'undo)
(global-set-key (kbd "s-+") 'text-scale-adjust)
(global-set-key (kbd "s--") 'text-scale-adjust))
Finder
- ファイルのアイコンを Emacs にドラッグすると、次のような動作になります。
- Dired mode のバッファにドラッグした場合は、そのファイルを Dired で表示しているディレクトリにコピーします。
- それ以外の場合は、そのファイルを Emacs で開きます。
- Emacs で表示中のファイル(を内包しているフォルダ)を Finder に表示させたい時は、
M-!
(shell-command)でopen .
を実行します。
Mail.app
- Mail.app で表示されているメール(本文だとテキスト選択になるので、ヘッダのところ)を Emacs にドラッグすると、そのメールのメッセージIDが挿入されます。
- それを編集して
(shell-command "open メッセージID")
としておけば、行末でC-x C-e
を打つとメールを開くことができます。
- それを編集して
Chrome
-
Chrome のテキスト入力欄の内容を Emacs で編集できます。(Mac限定ではないですが、ついでに書いておきます)
-
準備として次の二つが必要です。
- Chrome の拡張機能 Edit with Emacs をインストールする。
- Emacs のパッケージ edit-server をインストールする。
-
実際に編集する時は次のようにします。
- Edit with Emacs にサイトの読み取り許可を与えます。設定によって、「拡張機能をクリックしたとき」とか「すべてのサイト」とか選べます。
- Emacs で
M-x edit-server-start
を実行します。 - テキスト入力欄の右下に Edit というボタンができるので、これをクリックします。
- Emacs で新しいバッファが開き、テキスト入力欄の現在の内容が挿入されます。
- Emacs でテキストを編集し、
C-c C-c
を押します。 - テキストが Chrome の入力欄に書き戻されます。
QuickLook
- Dired mode でスペースキーを押すと QuickLook でプレビューを表示するようにできます。What are the advantages of Emacs for Mac OS X users? - Quoraの Zhou hai Tao さんの回答のところにコードがあります。