Microsoftは、コンソールベースのテキストエディタ「Microsoft Edit」(以下MS Edit)をオープンソースで開発中であることを発表した(写真01)。すでにMicrosoftは、Visual Studio CodeというGUIベースのエディタとして提供しており、「いまさらなぜ」という気がしないでもない。
過去を含めると、Microsoftは、似たような名前のプログラムを3つ開発した。1つは、現役のオンラインテキスト・エディタの「Microsoft Editor」である。もう1つは、1991年に出荷された、MS-DOS Ver.5.0以後に搭載されたMS-DOS Editor(実行コマンドとしてはEdit)だ。これは、Quick BASICの簡易版であるQBASICの一部で、QBASICがMS-DOS Ver.5.0に搭載されたことで、MS-DOS初期からあるEDLINの代替として搭載された。こちらは、IBM PCのビデオメモリを直接操作するプログラムで、32 bit版のWindows 10までは搭載されていた。16 bitのMS-DOSプログラムなので、16 bit互換環境を持たない64 bit版Windowsでは動作しない。また、日本語化されておらず、日本語版MS-DOSやWindowsには付属していなかった。
MS Editは、3つ目のコンソール版テキストエディタである。MS-Editは、画面の制御にVTエスケープシーケンスをつかっており、WindowsのGUIやコンソールAPIを使っていない。つまり、純粋にコンソールとEditのやりとりは、テキストに限られる。このため、Windows ターミナルなどが利用する仮想端末デバイスを介しての利用が可能だ。これにより、たとえばSSH経由で利用することも可能だ。
これに対して、コンソールAPIは、あくまでもローカルで動作するため、SSHを介して起動しても、リモート先でエディタが開いてしまう。Unix時代に作られたviやemacsなども同様にエスケープシーケンスで動作可能である。
端末装置はコンピュータとシリアルインターフェースで接続されており、その速度がソフトウェアの動作速度に影響していた。しかし、ConPTY(コンソール仮想端末)デバイスを介しての接続は、ローカルコンピュータ内での接続であり、高速なデータ転送が可能。また、SSHなどの場合でも、シリアル通信に比べれば高速なネットワーク経由での接続なので、ソフトウェアの動作速度に大きな影響を与える可能性は低い。つまり、エスケープシーケンスを使いながらも、高速な動作が可能だ。
MS-Editをみると、現状は最低限の機能を搭載した「ミニマリズム」的なエディタである。似たようなエディタにUnix/Linuxで使われていたpico(写真02)と、その代替として開発されたnano(写真03)がある。picoは、1989年に米国ワシントン大学でPineメールクライアントの一部として開発された。メールメッセージ編集用の最低限の機能を持つエディタある。当時、すでにEMACSやviが存在したが、シンプルなエディタを好む人達もいた。しかし、当時のpicoは、フリーなライセンスではなかったため、代替としてTIP(TIP Isn't Pico)が1999年に開発された。
BSD系Unixに同名のコマンド(TIP。Terminal Interface Processor)があったことから、picoをSI接頭辞と見立て、nanoという名前が採用された。nanoは、2001年からGNUプロジェクトの一部となっている。また、picoには、2005年にライセンスを変更するために作られたワシントン大学のAlpineメールクライアントに含まれるもの(alpine-pico)がある。多くのディストリビューションはこちらを採用しているようだ。
Linuxディストリビューションの中には、標準のインストール状態では、nanoを標準テキストエディタとして扱っているものがある。Emacsもviも熱烈な支持者がいて、どちらかを標準とすることは、難しいのかもしれない。
MS Editには、nanoやpicoに似た面がある。シンプルな機能で、メニューまたはキーボード操作を使う。ただし、マウス操作にも対応しており、マウスによる選択なども可能だ。WindowsターミナルのVTエスケープシーケンスには、マウス情報を取得する機能がある。
SI接頭辞では、ピコ(pico。
10のマイナス12乗)の上がナノ(nano。10のマイナス9乗)、その上がマイクロ(micro。10のマイナス6乗)である。つまり、「Micro」soft Editorというわけだ。pico、nanoに続く第三のエディタ、それがMicrosoft Editというわけだ。
今回のタイトルネタは、pico、nanoに続く第三のシンプルエディタという意味で、アシモフの「第二ファウンデーション」(ハヤカワ文庫SF。原題Second Foundation,1953)である。ある意味、ファウンデーションシリーズの最大の山場ともいえる作品。
編集部おすすめ