WordでEmacsしたい

Emacsenならば、Wordを編集しているときに、うっかりEmacsキーバインドを使ってしまうことはあるあるです。 上の行に移動しようとしてCtrl-Pを押してしまい、印刷ダイアログを起動させた回数は数え切れません。

同じような経験をしたことがあるならば、Wordのショートカットキーをカスタマイズしてみましょう。 ちまちまと設定しなければならず、最初の手間はかかりますが、QoLが爆上がりすること間違いなしです。

Wordのショートカットキーを変更したい

  1. Microsoft Wordを起動する

  2. Tools -> Customize Keyboardをクリック

  3. ダイアログで該当する操作を探し、キーを追加/削除する

    1. Categories: All Commandsを選択

    2. Commands: Wordの操作名のキーワードで検索

    3. Specify a Keyboard Shortcut: 既存のキーを削除したり、新しいキーを割り当てる

macOSのWordでは、多くのショートカットキーの修飾キーはCtrlキーにも、Cmdキーにもバインドされています。 なので、Emacsバインドと競合するショートカットキーであっても、Ctrlキーを使うバインドのほうを削除したり、別の操作に割り当てたりしても、あまり問題は起こりません。

置き換えたショートカットキー

以下に、実際に置き換えた内容をリストしておきます。

Wordの操作名

Wordバインド

変更点

Emacsバインド

ApplyHeading1

cmd-option-1

そのまま

Googleドキュメント

ApplyHeading2

cmd-option-2

そのまま

Googleドキュメント

ApplyHeading3

cmd-option-3

そのまま

Googleドキュメント

ApplyListBullet

cmd-S-L

cmd-S-8を追加

Googleドキュメント

Cancel

Esc

C-gを追加

C-g

CharLeft

Left Arrow

C-bを追加

C-b

CharLeftExtend

S-Left Arrow

S-C-bを追加

C-SPC -> C-b

CharRight

Right Arrow

C-fを追加

C-f

CharRightExtend

S-Right Arrow

S-C-fを追加

C-SPC -> C-f

CmdInsNewPara

なし

C-oを追加

C-o

DeleteBackWord

そのまま

C-hを追加

C-h

DeleteWord

そのまま

C-dを追加

C-d

DocClose

cmd-w

EditCopy

cmd-c

C-cを削除

M-w

EditCut

cmd-x

C-xを削除

C-w

EditFind

cmd-f

C-fを削除、C-sを追加

C-s

EditFindDialog

なし

cmd-fを追加

EditFindPrevious

cmd-shift-g

C-rを追加

C-r

EditPaste

C-y

C-vを削除、C-yを追加

C-y

EditRedoOrRepeat

cmd-y

C-yを削除

C-u 数値 C-/

EditReplace

なし

S-C-rを追加

M-%

EditSelectAll

cmd-a

C-aを削除

C-x h

EditUndo

cmd-z

C-zを削除、C-/を追加

C-/

EndOfLine

End

C-eを追加

C-e

EndOfLineExtend

S-End

C-kを追加

C-SPC -> C-e

FileExit

cmd-q

FileNew

cmd-S-p

cmd-S-pを削除

FileNewDefault

cmd-n

C-nを削除

C-x C-f

FilePrint

cmd-p

C-pを削除

FileSave

cmd-s

C-sを削除

C-x C-s

IndentLine

なし

C-iを追加

C-i

LineDown

Down Arrow

C-nを追加

C-n

LineUp

Up Arrow

C-pを追加

C-p

PageDown

Page Down

C-vを追加

C-v

PageUp

Page Up

S-C-vを追加

M-v

ResetChar

C-SPC

ShowComments

なし

C-;を追加

C-;

StartOfLine

Home

C-aを追加

C-a

Underline

cmd-u

C-uを削除

UnIndentLine

なし

S-C-iを追加

S-TAB