プログラムをコーディングする時に必要となるのがエディタです。最近はコーディングに VSCode や Eclipse、IntelliJ など統合開発環境を使う方が多いと思います。私も React や Vue、Angular などの JavaScript 関係は VSCode を使いますし、C や C# は Visual Studio を使います。Java 関係だと Eclipse を使っています。これら開発環境のエディタは、プログラム言語の構文色分けはもちろんのこと、補完機能やコーディングエラーの修正提案、クラスやメソッド依存関係の解析など機能満載。ソースのバージョン管理もできて、デバッガとしての機能も統合されています。プログラム開発にはこういった統合開発環境は、今やなくてはならないものです。そのため最近は、テキストやソースコードを編集する機能しかない「テキストエディタ」と呼ばれるソフトウェアに興味を持たない人が多いのではないでしょうか。
歳をとると昔話ばかりになって恐縮なのですが、私が初めて触れたプログラミング言語は Fortran で 、当時 MS-DOS上で動くR:BASEというデータベースのデータを計算させるプログラムを書いていました。その時エディタとして使っていたのが WordStar というフルスクリーンでテキスト編集できるワープロソフトです。このエディタの操作にはショートカットキーを多用します。^C でスクロールダウン、^R でスクロールアップなど、CTRL+アルファベットで操作を指示する1(ワン)ストローク系のショートカット、 ^KO でファイルのオープン、^KS でファイルの保存、^QF で検索など、CTRL+アルファベット2文字で操作をする2(ツー)ストローク系のショートカットがあり、それらを駆使してエディタを操作していました。「三つ子の魂百まで」じゃありませんが、私にとってこのワードスターのショートカットはその後のプログラミング人生においてなくてはならないものとなってしまいました。
PC-98 MS-DOS 用のテキストエディタは Mifes や Final、Red、そして伝説の EZ, VZ など数々のエディタが発売されましたが、いずれもプリセットとしてワードスター系のショートカットを備えていました。Windows の時代になってからは、Mifes、秀丸エディタ、少し遅れて EmEditor など高機能なエディタが発売されていますが、これらはショートカットとして2ストロークキーを定義できるようになっています。ただし無料で使えるフリーのエディタは2ストロークキーを定義できないものが多く、私にとって使いにくのです。実は統合開発環境もしかりで、エディタに2ストロークキーを定義できるものを知りません。
UNIXの世界に目を向けると、私は Sun Sparc のSun OS上で当初 vi を使って X Window のアプリケーションを作っていました。その後、同僚を見習って emacs を使うようになりました。emacs はカスタマイズにより、エディタ内でデバッガを動かしたりメールの読み書きできたり、ファイラーと組み合わせてバージョン管理(当時はCVS)をやらせたりと、ちょっとした統合開発環境でした。emacs はそもそも2ストロークキーで操作します。WordStarライクではないのですが、デフォルトの定義は第一ストロークの修飾キーが違うだけで割り当てられている機能が似ていたりします。もちろんカスタマイズで変更できるので自分が使いやすいように定義しなおしていました。
WindowsであれLinuxであれ、テキストエディタでプログラミングをすることは少なくなりました。とはいえ、私は Mifes、EmEditor、秀丸の正規ユーザです。ちょっとテキストファイルを見る場合はテキストエディタを起動しますし、何か込み入ったテキストの修正が必要な場合や大量のデータ処理が必要な場合もテキストエディタを使います。Mifes や EmEditor は CSVファイルの処理が得意です。サイズが大きなファイルを難なく扱えるため、ログ解析などシステム運用でも重宝しています。
EmEditor や Mifes は結構な価格しますけど、それに見合った機能と拡張性を兼ね備えています。EmEditor なんて、もう使い切れないほどの機能満載なので、いまだに知らない設定や機能だらけです。Mifes が 10 からなかなかバージョンアップしない時期がありまして、その時に EmEditor を購入しました。開発者の江村さんは昔から有名なプログラマで尊敬している方です。一方、Mifes は PC-98 MS-DOS の時代を知るエンジニアなら必ず現場で見かけたエディタでしょう。メガソフトが発売している老舗のエディタでして、今なお生き残っているというのは、ある意味凄い。私にとって「安心感の塊」のエディタです。ITエンジニアに限らず、一般の方にもテキストエディタの世界を知って欲しいです。