March 09, 2021

Text editor I made, I call it "amEmacs.io".

画像

As I've already mentioned here on the Voice couple times, I made a text editor optimized for iPad Pro with Magic Keyboard, called "amEmacs.io".

🇯🇵 日本語 / ja

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

Time using iPad certainly increased.

I've used iPads since the original first generation iPad was released. Since then, I used to use on-screen keyboard for a long time. After Smart Keyboard was released, I started using Apple official physical keyboard with iPads.

Anyway, the biggest turning point was that the Magic Keyboard for iPad was released after all. It made us get to be able to get almost same rich experience of typing as other computers like Mac, and it gave us almost same experience of moving cursor as well. Now we can use trackpad and thumb to move cursor on screen of iPad. I understand other computers and iPads are perfectly different though, keyboard as user interface to input, was so important for me at least.

As I've mentioned here on the Voice several times before, now time using iPad certainly increased than before I started using Magic Keyboard. I do a lot of things that used to be what I did by Mac, with iPad.

🇯🇵 日本語 / ja

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

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

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

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

After I started using Magic Keyboard, I also started looking for some good text editor that I can use with Magic Keyboard comfortably. There were couple things that I absolutely didn't want to give up, even if nothing else I wanted was supported.

One of that is emacs-like key binding. iPadOS originally support some major key-bindings of the Emacs, same to macOS, for instance C-f, C-b to move caret. But I wanted more. For instance, to set mark by command and select region and so on.

🇯🇵 日本語 / ja

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

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

Next thing is supporting natural rendering both Japanese charactors and alphabet. Most text editors for iPad has some issues of baseline of charactors when I use both Japanese charactors and alphabet on same line. I didn't want that.

However, unfortunately there wasn't any text editors that filled all what I wanted.

So what to do? Right, I made the one.

🇯🇵 日本語 / ja

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

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

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

The app called "amEmacs.io"

I named the app "amEmacs.io". The name includes "Emacs" though, I am sorry that this is not the Emacs. This is just an emacs-like text editor. So, no code from source codes of the Emacs of course, the Emacs is developed by C and Lisp as you know though, the amEmacs.io is developed by only JavaScript, CSS and HTML. Of course it doesn't have Lisp environment like the Emacs provides neither, so I have to code everything I need by JavaScript.

The name of "amEmacs.io" is coming from "Anonyz Mobile Emacs iPad Optimized" or something like that. Yeah, the name is tiny stuff for me. Honestly, I don't care though. Because I have no plan to release this app to publish at least now.

🇯🇵 日本語 / ja

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

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

Actually the amEmacs.io is not a native app on iPadOS, it's just a web app. Because I wanted to use the amEmacs.io both on iPad and Mac, so if I developed as native app of both OS, I thought that maintaining would be the big issue.

But I did some tiny stuff to the app. Of course I set the property of "apple-mobile-web-app-capable" to use the app by full-screen on iPad just like a native app, I also set icon to the app. It's the one I made before.

🇯🇵 日本語 / ja

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

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

Major features have been implemented.

Major features of the amEmacs.io have already been implemented.

It was good to finish implementation major features before period of time I cannot use Mac. As I wrote on this article though, I cannot use Mac last couple weeks due to some issues.

I've already written couple articles using the amEmacs.io so far, I'm writing this article using the amEmacs.io in addition.

🇯🇵 日本語 / ja

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

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

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

Core of the amEmacs.io now works stable. So what to do next is to develop each features when I want or need.

I may be going to write some more about the amEmacs.io someday. Maybe.

🇯🇵 日本語 / ja

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

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

Voice
Articles related to theme of this article.

Biography
Introduction.

Born in Niigata pref, Japan, on April 17th, 1984. Living in Tokyo. Currently working at a company called "Atotok Inc" as a creative director.

I'm the one who creates Anonyz whimsically. Pink and red hair is identify of mine whose family name is "Sato" that is very common in Japan, like Steve in the U.S.

This website is where Nobuyuki Sato writes articles or shares photos and so on. Language used in contents on this website are English or Japanese. On Voice, publishing my thoughts, news, product reviews and so on. On Photos, sharing photos I shooted as my hobby.