[command]ではなく[Ctrl]を利用するショートカットキー
「メモ」アプリで作業しているとき、キーボードだけでカーソルを行末へ移動するときどうしていますか? キー操作に慣れたMacユーザであれば、そりゃ[command]+[→]でしょ、と答えるかもしれません。では同じくキーボードだけでテキストをカットするときは? カット&ペーストは操作の基本、すぐに[command]+[x]を思い浮かべるはずです。
それらの操作方法は、OS標準のキーバインドとして定義されており、アプリの[編集]メニューで確認できます。[command]キーを軸としたキーバインド体系は、メモアプリに限らずPagesやKeynoteなどmacOSネイティブのアプリに共通した“お約束”ですから、初心者じゃあるまいし何をいまさら、と思われるかもしれません。
しかし、macOSには別系統のキーバインドが存在します。カーソルキーを行末へ移動するなら[Ctrl]+[e]、テキストをカットするなら行頭で[Ctrl]+[k]、という[Ctrl]キーを軸としたキーバインド体系も用意されているのです。PagesやKeynoteでもOK、サードパーティ製を含む多くのアプリで利用できます。アプリの[編集]メニューには表示されていないのに… どういうことでしょう?

[Ctrl]を使うキーバインドの起源はEmacs
これらの[Ctrl]キーを軸にしたキーバインドは、「Emacs(イーマックス)」というUNIXで普及したテキストエディタに由来します。Emacs Lispというプログラミング言語の処理系を内包するなど、テキストエディタと呼ぶには違和感があるほど多機能で、多くのUNIXユーザに支持されてきました。
macOSでは、歴史的な経緯からそのEmacsの主要なキーバインドをサポートしています。カーソルを行頭へ移動するなら[Ctrl]+[a]、カーソル位置の文字を削除するなら[Ctrl]+[d]など、Emacsの編集スタイルをそのままMacで利用できるのです(下表)。
| キー | 動作 |
|---|---|
| Ctrl+a | カーソルを行頭へ移動 |
| Ctrl+e | カーソルを行末へ移動 |
| Ctrl+f | カーソルを1文字右へ移動 |
| Ctrl+b | カーソルを1文字左へ移動 |
| Ctrl+p | カーソルを1行上へ移動 |
| Ctrl+n | カーソルを1行下へ移動 |
| Ctrl+h | 1文字削除(Backspace) |
| Ctrl+d | カーソル位置の文字を削除 |
| Ctrl+k | カーソル位置から行末まで削除 |
| Ctrl+t | カーソル前後の文字を入れ替え |
| Ctrl+y | Ctrl-kで削除した内容を貼り付け |
| Ctrl+o | カーソルの位置を変えずに1行挿入 |
カーソル前後の文字を入れ替える[Ctrl]+[t]のように、[command]キーを軸としたキーバインド体系には存在しないものもありますから、覚えておくと便利です。
特に利用価値が高いキーバインドは、[Ctrl]+[k](カーソル位置から行末まで削除)と[Ctrl]+[y]([Ctrl]+[k]で削除した内容を貼り付け)です。削除したテキストはクリップボードに格納されるわけではないため、基本的には同一アプリ上でしか利用できませんが(他アプリへのペーストは原則不可)、テキストを行/段落単位でカット&ペーストする作業が格段にスピードアップします。[Ctrl]+[k]の直後に[Ctrl]+[y]でペーストすれば、コピー代わりに使えるところもメリットです。
ただし、すべてのアプリで利用できるわけではありません。メモやメール、SafariといったmacOSに標準装備のアプリでは利用できますが、Webブラウザ上で動作するアプリ(Google スプレッドシートなどのWebアプリ)、Microsoft Wordなど一部のサードパーティ製アプリではサポートされません。それには、明確な理由があります。

Emacs由来のキーバインドが当たり前のように使える理由
Emacs由来のキーバインドが多くのアプリで当たり前のように使える理由は、macOSを支えるフレームワーク(アプリを構成する再利用可能な部品/プログラムの集合体)のなかでも基本中の基本といえる存在の「AppKit」にあります。
macOSのAppKitは、Mac OS X/macOSの礎となったNeXTSTEP/OPENSTEPを構成するGUIフレームワーク「Application Kit」の機能の多くを継承しています。NeXTSTEPはUNIXワークステーションを意識した機能を備えており、UNIXで利用者の多いEmacsと操作体系に互換性を持たせようとしたのでしょう。
Emacs由来のキーバインドはApplication Kitのテキスト編集機能として実装されました。それがAppKitに名を変えた現在も引き継がれているというわけです。
AppKitは、macOSで「Cocoa」と呼ばれる開発環境のうち、ウインドウ枠の描画やボタンがクリックされたときの反応などGUIの基礎部分を担っています。Cocoaアプリは基本的にAppKitを組み込みます。その結果として、[Ctrl]+[a]など[Ctrl]キーを軸としたキーバインド体系もサポートされることになるのです。
反対の見方をすれば、[Ctrl]+[a]や[Ctrl]+[k]が使えるアプリはCocoa/AppKitを使用したアプリ、NeXTSTEP/OPENSTEPのDNAを受け継ぐアプリということができます。32ビットアプリが廃止されCarbonアプリが消滅するなどMac OS Xのレガシーが失われつつある一方、その前時代の名残りがいまなお第一線で利用されているというのは、なんとも興味深い話ですよね。


おすすめの記事
著者プロフィール
海上忍
IT/AVコラムニスト。UNIX系OSやスマートフォンに関する連載・著作多数。テクニカルな記事を手がける一方、エントリ層向けの柔らかいコラムも好み執筆する。執筆以外では、オーディオ特化型Raspberry Pi向けLinuxディストリビューションの開発に情熱を注いでいる。2012年よりAV機器アワード「VGP」審査員。
![意外と知らない、[Ctrl]キーを使ったMacのショートカット。macOSに残るNeXTの1ピース – Mac活用“ワンランクアップ”講座 第23回](https://macfan.book.mynavi.jp/wp-content/uploads/2026/07/AdobeStock_487177807-720x540.jpeg)








