今回は、Windows用のテキストエディタを比較する。
テキストエディタは、主に、HTMLやPHP、Javaスクリプトの記述に使っている。
初めてホームページを構築して以来、HTMLの記述にはテキストエディタを使ってきたので、テキストエディタは私にとって欠かせないアイテムである。
もっとも最近は、HTMLの記述にテキストエディタではなく、HTMLエディタを使っているが、コードモードでタグを直接入力しているのでスタイルとしては変わっていない。
代わって、テキストエディタでWordPress用のプラグインのコードを書くことが多くなって来ている。
使う文字コードもUTF-8が多くなって来ており、マルチバイト文字を含まないUTF-8のファイルを作成することも多い。
この場合、テキストエディタの文字コード自動判別機能には頼れないのだが、ファイルをドロップしてエディタを起動し、編集するスタイルであるため、デフォルトの文字コードの設定が不可欠になる。
とは言え、常にUTF-8で開くというのも困るため、ファイルタイプ別にデフォルトの文字コードを設定できるテキストエディタが好ましい。
例えば、拡張子が「php」なら「UTF-8 BOMなし」で開くといった具合だ。
テキストエディタはシンプルなアプリケーションかもしれないが、些細な違いが使い勝手を左右するものである。
とは言え、私のテキストエディタの使い方は、ごくシンプルで、マクロを使ったり、正規表現を活用するようなことはない。
細かい拘りがあることは否定しないが、基本的に必要とする機能は下記のみである。
- テキストが入力出来ること。(当たり前)
- Shift-JIS、EUC、UTF-8をサポートし、文字コード、改行コードの切り替えや保存時の指定が容易なこと。
- 一般的な検索機能と置換機能を持つこと。
- シンプルに強調表示出来ること。
幸い日本には、優秀なテキストエディタの開発者が歴史的にも多いようで、日本語のインターフェースとドキュメントを持つテキストエディタを簡単に入手出来る。
テキストエディタに限った話ではないが、長く継続して使い続ける可能性が高い分、オープンソースでないフリーのものに頼ると痛いことになる場合がある。
開発は、開発者の都合によって停止する場合があるからだ。
開発が停止した場合、オープンソースでない限り、第三者が開発を引き継ぐことも難しい。
私が経験した実例を上げるとターミナルエミュレーターの「Tera Term Pro」の開発がストップした事がある。
「Tera Term Pro」のケースは、比較的、幸運と言え、現在は、オープンソースとのプロジェクトとして「Tera Term」開発が継続されている。
以下で、テキストエディタの比較を行うが、使わない機能については正直なところ良く分からないので、基本的な機能を比較する。
秀丸エディタ
「秀丸エディタ」は、シェアウェアではあるが、Windows用のテキストエディタの定番の1つである。
歴史も古いので利用者は多いはずである。
現時点での最新版は、バージョン8.10。
- 対応OS:Windows95、98、Me、NT4.0、2000、XP、2003、Vista、7
- ライセンス:有償(4,200円)
- サポートする文字コード:Shift-JIS、JIS、EUC、UTF-16、UTF-16BE、UTF-8、UTF-7、他 ※Unicodeは、BOMの有無が指定可能。
- テキストエディタエンジン:独自
起動や動作の速さ、強力なマクロ、grepを使用した検索・置換など高機能な点が売りだが、正直なところ、特殊な使い方を要求しな限りは、フリーのテキストエディタと比べて大きな差があるわけではない。
サポートは、原則としてフォーラムで受けることになるが、メールでもサポートも用意されている。
サポートする文字コードの種類は多く、中国語や韓国語、アラビア語などの数多くの文字コードに対応してが、殆どの人にとって意味のないことだろう。

ウィンドウ上部にはメニューとボタンが配置されており、配列は、ごく一般的なもので、そのため操作性は良い。ウィンドウの下部にはボタンが配置されている。
「編集」メニューの「変換」では、「大文字/小文字」、「全角/半角」、「かな/カナ」、「半角カナ/全角カナ」、「TAB/空白」などの変換ができ、変換機能は充実している。
通常モードの他に「タブモード」を備えており、タブを使って複数のファイルを開くことも出来る。
設定は細かく出来るので、好みにカスタマイズし易い。これは大きな利点である。

また、「ファイルタイプ別の設定」という形で、ファイル拡張子ごとの動作が定義でき、この機能を使えば、例えば、拡張子が「html」ならUTF-8で開くといった指定や、強調表示の設定が可能である。

予め、定義されている拡張子もあるが、例えば、PHPは定義されていないので、必要ならば自身で定義する必要がある。
秀丸のサイトでは、マクロや強調表示定義ファイルを公開する場が用意されており、PHPのような未定義のファイルタイプの強調表示定義ファイルも入手出来るので、面倒な強調表示の定義にも困らないはずだ。
マクロや強調表示定義ファイルを公開する場があることは、ユーザーにとっても大きな利点であり、探す手間を省くことができる。
秀丸エディタは、シェアウェアであり、継続利用するためには、ライセンス料の支払いが必要になるが、例外として「秀丸エディタフリー制度」という制度がある。
条件を満たせば、期間限定で無料で利用でき、対象は、学校内での学生の利用、金銭的に困っている学生の個人的な利用、フリーソフトウェアの作者、Windows関連の書籍の著者が対象になっているが、申請しても許可されない場合もあるらしい。
TeraPad
「TeraPad」は、SDIタイプのフリーのテキストエディタで、定番の1つである。
私は、その名称から「Tera Term」と作者が同一かと思っていたが、これは間違いである。
現時点での最新版は、バージョン1.08。
- 対応OS:Windows95、98、Me、NT4.0、2000、XP、2003、Vista、7
- ライセンス:フリーウェア
- サポートする文字コード:Shift-JIS、JIS、EUC、Unicode、UTF-8、UTF-8N
- テキストエディタエンジン:TEditor
機能的にはシンプルだが、過不足がなく、テキストエディタとしては必要十分である。

ウィンドウ上部にはメニューとボタンが配置されており、配列は、ごく一般的なもので、そのため操作性は良いが、「ファイル」->「名前を付けて保存」を実行する際に文字コードや改行コードの指定が出来ず、代わりに「文字/改行コード指定保存」を実行する必要があり、慣れの問題ではあるが少し戸惑う。
「編集」メニューの「変換」では「大文字/小文字」、「全角/半角」、「TAB/空白」の変換が可能。
「編集モード」という拡張子毎の動作モードを持つが、設定はシンプルでファイルタイプ別の細かな設定は出来ない。

デフォルトの「編集モード」には、PHPも含まれており、PHPの強調表示も可能である。
「ツールの設定」で外部のプログラムを登録して処理に使用できる。
例えば、ブラウザを起動して、編集中のファイルをブラウザで表示するなど。
「TeraPad」のサイトにも簡単な例の説明が書かれているが、例の通り設定すれば、HTMLモードでHTMLファイルを編集中に、HTMLファイルに記述されたCSS部分のみを選択して、子ウィンドウで開き、CSS部分のみをCSSモードで編集するといったことも可能である。

この場合、子ウィンドウで保存すれば、親ファイルにも変更が反映される。
関連リンクに、情報やツールを提供しているサイトが掲載されているので、活用の参考にすると良いだろう。
VxEditor
「VxEditor」は、SDIタイプのフリーのテキストエディタである。
現時点での最新版は、バージョン1.0.1。
- 対応OS:Windows95、98、Me、NT4.0、2000、XP、2003、Vista、7
- ライセンス:フリーウェア
- サポートする文字コード:Shift-JIS、JIS、EUC、Unicode(LE)、Unicode(BE)、UTF-8、UTF-8N
- テキストエディタエンジン:TEditor
フリーのテキストエディタではあるが、機能は優れており、有償のテキストエディタと遜色はない。
例えば、文字コードの自動判別も優秀で、自動判別が出来なかった場合でも、正しい文字コードを指定し直してやれば、その文字コードを記憶しているようで、次回、そのファイルを開いた時に、正しい文字コードで開いてくれる。
キー操作の記録と再生機能が搭載されており、「IEでプレビュー」する機能は、HTMLの記述に便利だ。

ウィンドウ上部にはメニューとボタンが配置されており、配列は、ごく一般的なもので、そのため操作性は良い。
ウィンドウの下部にはボタンが配置されており、その下には文字コード、改行コードなどの情報が表示される。
「編集」メニューの「変換」では「大文字/小文字」、「全角/半角」、「かな/カナ」、「TAB/空白」の変換が可能。
設定は、細かくできる。

「設定の定義」では「秀丸エディタ」のようにファイルタイプ別の細かな設定が出来るようになっている。
デフォルトではPHPは、登録されていないが、設定ファイルさえあれば、手作業で定義しなくとも簡単に登録できる。

「ツールの設定」では、「TeraPad」のように外部のプログラムを登録でき、外部のプログラムやマクロ、スクリプトを使った処理が実行できる。
実行のタイミングも細かく指定できるので、工夫次第で面白い処理が出来そうだ。
例えば、保存後にFTPでアップロードするといった処理も可能なようである。
VxEditor情報を提供するサイトへのリンクが掲載されており、必要な設定ファイルやツールなども比較的探しやすい。
K2Editor
「K2Editor」は、SDIタイプのフリーのテキストエディタで、多彩な機能を搭載している。
制限があるためオープンソースではないが、「K2Editor」に危険性がないことを証明する意味でソースコードは公開されている。
現時点での最新版は、バージョン1.5.9。
- 対応OS:Windows98、2000、XP
- ライセンス:フリーウェア
- サポートする文字コード:Shift-JIS、JIS(ROMAN)、JIS(ASCII)、EUC、Unicode(LE)、Unicode(BE)、UTF-8、UTF-8N、UTF-7
- テキストエディタエンジン:拡張TEditor
フリーではあるが、grepによる検索やdiff、マクロを備えている。
意外に面白いのが「ファイルをエクスプローラで開く」機能で、編集中のファイルが保存されているフォルダをエクスプローラで開いてくれる。

ウィンドウ上部にはメニューとボタンが配置されており、配列は、ごく一般的なもので、そのため操作性は良い。デフォルトの画面は、シンプルな構成になっている。
「編集」メニューの「変換」では「大文字/小文字」、「TAB/空白」のみの変換が可能。
設定は、かなり細かく出来る。

「ファイルタイプ別の設定」では、拡張子ごとの動作を定義できるが、PHPは、予め定義されていない。

勿論、自分で定義でき、設定ファイルがあれば、設定をファイルから読み込むことも可能だが、公開されている設定ファイルの種類が少ない。
必要なマクロや設定ファイルは、リンク集で探すことが出来る。
サクラエディタ
「サクラエディタ」は、オープンソースのテキストエディタである。
ANSI版とUnicode版の2つ存在し、現時点での最新版は、バージョン1.6.6.0(ANSI版)とバージョン2.0.2.0(Unicode版)。
1.6.6.0(ANSI)版はインストーラ付きで配布されており、当然ながら、こちらの方がインストールし易い。
ここでは、2.0.2.0(Unicode版)についてまとめる。
導入の際は、同梱の「QuickStartV2.zip」内のテキストファイルも読むこと。
- 対応OS:Windows 2000、XP、Vista、7(Unicode版のバイナリ)
- ライセンス:フリーウェア
- サポートする文字コード:Shift-JIS、JIS、EUC、Unicode、Unicode(BE)、UTF-8、CESU-8、UTF-7 ※Unicodeは、BOMの有無が指定可能。
- テキストエディタエンジン:不明
特徴として異なる改行コードが混在したファイルを扱える。
マクロやgrepによる検索、diffによる差分表示、入力補完機能など備え、フリーとは思えない程の高機能ぶりである。

デフォルトでは、シンプルな画面表示だが、特徴として「変換」メニューが配置されている。
通常モードの他に「タブモード」を備えており、タブを使って複数のファイルを開くことも出来る。
「変換」メニューが独立しており、文字コードや改行コードの変換の他、「大文字/小文字」、「全角/半角」、「かな/カナ」、「半角カナ/全角カナ」、「半角カナ->全角かな」「TAB/空白」の変換が可能。
その他にも高度な整形機能を備える。
設定に関しても、細かな設定が出来るように配慮されている。

ファイルタイプでつの設定が行える「タイプ別設定」を備え、拡張子ごとの動作も定義できる。

PHPは定義されていないので、必要ならば自分で定義する必要がある。
PHP用の設定ファイルをインポートすれば早いのだが、Unicode版については情報が少なく、設定ファイルも見つからなかった。
PHPエディタ
「PHPエディタ」は、PHPに特化したフリーのテキストエディタであり、PHPの開発環境とも言える。
現時点での最新版は、バージョン1.78.5。
- 対応OS:Windows 98、Me、2000、XP
- ライセンス:フリーウェア
- サポートする文字コード:Shift-JIS、JIS、EUC、Unicode(LE)、Unicode(BE)、UTF-8N
- テキストエディタエンジン:不明
「プロジェクト」という形で、ファイルを管理できる点が特徴であり、複数のPHPファイルで構成されるアプリケーションの開発に向いている。
PHPマニュアルの参照、コードの補完機能、標準関数の引数のヒント、構文チェック(要PHP)などPHPに特化した機能を搭載しており、楽にPHPが記述できる設計だ。
インターフェースも一般的なテキストエディタとは若干異なっている。

左メニューには、定義されている関数の一覧が表示され、ダブルクリックすると関数が記述された箇所まで移動する。
「編集」メニューの「変換」では、「全角/半角」、「かな/カナ」変換の他、「URLのエンコード/デコード」が実行出来るようになっている。
PHPに特化した設計であることもあり、設定項目は、比較的シンプルである。

「プロジェクト」としてファイルを関連付けるのではなく、通常のテキストエディタのように、ファイル単位で編集したい場合は、「プロジェクト」機能を除いたスタンドアロン版も用意されているので、こちらを使うと良いだろう。
その他のエディタ
以下にその他のテキストエディタの一部をまとめる。
EmEditor・・・エムソフトが開発、販売するシェアウェア。
Dana Text Editor・・・「Becky! Internet Mail」で有名な「リムアーツ」が開発、販売。
Peggy・・・開発者向きの高機能なテキストエディタ。シェアウェア。
Meery・・・フリーのテキストエディタ。SDIとTDIの切り替えが可能で、タブ表示出来る。
Apsaly・・・高機能なテキストエディタ。現在は、ベータ版のため無償。寄付特典有り。
Ginnie・・・タブ切り替えタイプのMDIテキストエディタ。ベータ版のため無償だが、ライセンスキーの取得が必要。
OEdit・・・フリーのテキストエディタ。
OTBEdit・・・フリーのタブ式テキストエディタ。