"amEmacs.io"、テキストエディタ作りました

ここでも何度か書いているんだけど、iPad Pro + Magic Keyboard 用に "amEmacs.io" ってテキストエディタを作った。

Time using iPad certainly increased.

iPad は初代からずっと使っている。前はスクリーンキーボードを長いこと使っていた。Smart Keyboard が登場してからは Apple 純正の物理キーボードを使うようになった。

とにもかくにも大きなターニングポイントとなったのはやっぱり Magic Keyboard が登場したこと。リッチなキーボードになったことでタイピング体験は他のコンピューターと同じになったし、ついでに親指とか使ってトラックパッドでカーソル操作もできるようになったし。他のコンピューターと iPad は完全に別物ってのはあるんだけど、入力用のインターフェイスとしてのキーボードはやっぱり重要だった。少なくとも自分にとっては。

ここ、Voice でも何度も書いているけど、Magic Keyboard を使うようになってからはホントに iPad を使う時間が増えた。昔は Mac でやっていたようなことも iPad だけでやってたりするし。

I'd been looking for some good text editor for iPad.

Magic Keyboard を使うようになってから、Macic Keyboard で使うのによさげな iPad 用のテキストエディタを探し始めた。他のなにがなくとも絶対にちゃんと欲しい機能がいくつかあった。

ひとつは Emacs ライクなキーバインド。iPadOS では macOS と同様にキャレットを動かすための C-f とか C-b みたいなコマンドはサポートされているんだけど、マークをセットしたりリージョン選択したりとかも欲しかった。

次が日本語の文字とアルファベットの問題。結構多くのテキストエディタで日本語とアルファベットが同じ行にあると文字のベースラインが変わってしまって・・・それがすごい嫌だった。

だけど残念ながらそういうのを全部満たしてくれるエディタは見つからなかった。

じゃあどうするか。うん、作った。

The app called "amEmacs.io"

"amEmacs.io" って命名。名前に Emacs って含まれているけど、もちろんただの Emacs ライクなテキストエディタでしかない。だから本家の Emacs のコードはもちろん一切含まれていないし、Emacs は C と Lips で実装されているけど、amEmacs.io は JavaScript、CSS と HTML での実装。Emacs みたいな Lisp 環境ももちろん実装していないから、コードは全部 JavaScript で書いた。

"amEmacs.io" って名前は "Anonyz Mobile Emacs iPad Optimized" とかなんかそんな感じ。結構名前はどうでも良くって・・・少なくとも今のところはこれを一般にリリースしよう、とか公開しようみたいなことは考えていないからな。

amEmacs.io はネイティブアプリではなくってウェブアプリ。iPad と Mac の両方で使いたかったんだけど、ネイティブ実装するとメンテナンス大変だな・・・と。

ただ細かいことはやっている。iPad でアプリっぽく使えるように "apple-mobile-web-app-capable" のプロパティは設定したし、前に作ったアイコンをアプリ用のアイコンにも設定した。

Major features have been implemented.

amEmacs.io の基本的な実装はもう終わっている。

この記事でもちょっと触れたんだけど、今いろいろあって Mac を使えない時間が続いていて・・・Mac が使えなくなる前に基本的な実装は済ましておくことができて本当によかった。

amEmacs.io でもう何本か記事も書いたし、今もこの記事は amEmacs.io で書いてるし。

amEmacs.io のコアの部分はもう安定して動いている。なので次にやることがあるとすれば欲しい機能を欲しい時、必要な時に実装するだけ。

そのうちもうちょっと amEmacs.io ついて書くかも。多分。

Biography
自己紹介。
1984年4月17日、新潟県新潟市(現中央区)出身、東京都在住。本名は漢字で佐藤信之(大好きだったじーちゃんからもらった大切な名前)だけど、普段は堅苦しいからサトウノブユキってカタカナ表記を使ってる。気まぐれで Anonyz を作ったりしてる人。トレードマークになってるピンクや赤の髪の毛はサトウって苗字がありふれ過ぎているかが故に識別子として、が最初の理由。
Archives
月別記事