Help us understand the problem. What is going on with this article?

macOSのEmacsキーバインドを使いこなそう

はじめに

最近の若い人は最初に触れるコンピュータがMacという人もいると思います。
そこでぜひ知っておいた方がいいのがEmacsキーバインドです。
このEmacsキーバインドについて軽く書いてみます。
あとオマケとして、ちょっとしたスクリプトも載せておきます。

Emacsキーバインドとは

Emacsはvi(Vim)と並び、Unix系OSで広く使われているテキストエディタです。
便宜上テキストエディタと書いていますが、拡張性が非常に高く、何でもできちゃいます。
テキストエディタというよりは、今で言うIDE(統合開発環境)に近いものです。

自分はEmacsは使わなくなりましたが、そのEmacsに由来するキーバインドは今でもよく使っています。
macOS以外のEmacsキーバインドが使える有名なものとしてはbashが挙げられます。

macOSのEmacsキーバインドの由来

macOSではEmacsキーバインドが使えますが、
その由来はMac OS X・・・ではなく、もっと前にさかのぼります。

それは、Steve JobsがAppleを追われた際に作った会社、NeXTです。
こんなコンピュータを作っていました。

SA410004.jpeg
SA410007.jpeg

このNeXT社の作ったNEXTSTEPというOSにEmacsキーバインドが組み込まれていました。

そして時は流れ、1997年にAppleがNeXT社を買収し、
NEXTSTEPはMac OS Xとして乗っ取り生まれ変わりました。

Emacsキーバインドが使えるアプリ

macOSのネイティブアプリの基盤となっている、Cocoaを使っているアプリはまず間違いなく使えます。
逆に言えば、Cocoaを使っていないアプリ、
具体的には独自にWidgetを作っているフレームワークでは対応していないことが多いです。
例えばJavaやAdobe AIRで作られたものはダメです。
JetBrains製品は独自に対応していますが、一部標準と違うのでカスタマイズが必要です。

ちなみに、iOSでも外付けキーボードを使えばEmacsキーバインドが使えます。

使えるEmacsキーバインド

これだけのキーバインドがEmacs由来(のはず)です。

  • カーソル移動
    • Ctrl + F: 1文字右
    • Ctrl + B: 1文字左
    • Ctrl + P: 1行上
    • Ctrl + N: 1行下
    • Ctrl + A: 行の先頭
    • Ctrl + E: 行の末尾
    • Ctrl + Option + F: 1単語後
    • Ctrl + Option + B: 1単語前
    • Ctrl + V: 1ページ前
    • Ctrl + L: カーソルを中央になるようにスクロール
  • 削除
    • Ctrl + H: 前の文字を削除
    • Ctrl + D: 後の文字を削除
    • Ctrl + K: 行末まで削除(カット)
    • Ctrl + Y: 貼り付け(yank)
  • その他
    • Ctrl + T: カーソル前後の文字を入れ替え
    • Ctrl + O: 改行追加

全部は覚えなくてもいいです(自分も使ってません)が、覚えておくと便利です。

GoogleスプレッドシートでEmacsキーバインド

Emacsキーバインドではウェブブラウザでも使えます。
しかし不届きものがいました。

それは、Googleスプレッドシートです。Ctrl + Eすら使えません。
これではあまりに使いにくいということで、頑張って対応してみました。
一部動きませんが、だいたい動きます。

おわりに

NEXTSTEPの直系のOSが今まで残ってて、
自分がそれを使っているとは24年前には思いませんでした( ´ω`)

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした