自分が複数のエディタを使う理由とその雑感、メンテナンス

エディタを一生の伴侶のように、一つを愛用し続ける人は多いと思いますが、自分は仕事の都合上、いくつものエディタを使い分けています。

# 開発環境として使用しているもの

自分が開発環境として使うのは以下の6種類です。並びは使い始めた順番です。

- notepad++
- Brackets → Phoenix
- Atom → Pulsar
- Sublime Text3
- VS Code
- Geany

なぜ、いくつも使うかというと、ワンオペエンジニアにとっては小～中規模の業務を並行で処理することが多く、**エディタを逐一変えた方がプロジェクトを間違えない**からです。その中で、自分が使いやすいと感じたのは以下の5つで、それぞれプラグインをカスタムチューンした上で、Gitに連携させてます。

## Notepad++
退職した先輩が愛用していたので存在を知り使ってみたのですが、驚いたのはその**軽さと処理の速さ**です。あと、このエディタを重宝している理由は以下の2つの機能が使えるからです。

- 特定のディレクトリ内全ファイルを対象としたデータの一括検索・置換ができる。

ほかのエディタにはない恐るべき機能だと思いますし、それが可能なのも処理の高速性に他なりません。元には戻せないので失敗したときは大変なことになりますが、そこはGitで世代管理しているので、そのリスクも心配いりません。

- nppFTPが非常に便利

当時、FTPをプラグインとして搭載していたのは同エディタだけでしたので、この機能は画期的でした。設定すればデータの同期を取ることもできる上、ftp上のファイルを自由に編集できるので非常に便利です。近年はほかのエディタにもプラグインがありますが、使いやすさはFFFTPぐらい単純です。

そして、**万が一WEBサーバが破損して修復不可能になったとしてもローカルにキャッシュデータが残る仕様なので、キャッシュからデータを吸い上げることができる**のも大変ありがたいです。

したがって、ファイル数が多く、自作サーバで開発しているプロジェクトに愛用しています。

## Brackets → Phoenix

**2021年9月を以てAdobeがサポートを終了していますが、有志コミュニティによって開発が引き継がれたようで2021年11月頃にver2がプレリリースされました。その後はクラウド型エディタのPhoenix Editorに採用されていましたが、2024年からこのPhoenixがアプリケーション化されるなど正式にBracketsの後継エディタなり一部プラグインは標準実装、さらに2025年からはその他Bracketsプラグインの一部が使用可能となっています。

自分が一番愛用しているエディタの一つで、このエディタはもともとAdobeが開発に関わっていたこともあって、他のエディタと異なり、**Webページ作成に特化している**という特色があります。したがって、ブラウザのライブプレビューやAdobeの画像編集データなど他のデータなどとも連携しています。また、**自動で（UTF-8、SJIS、EUC-jp）を文字化けなくエンコードしてくれる**ので、時代の古いファイルを処理するのも便利です。ですので、htmlでの動作が多いプロジェクトで愛用しています。また、デフォルトのテーマでは白い画面ですが、他と同様にダークモードにした方が眼が疲れなくていいです。

また、このBracketsはリアルタイムでファイルの同期を取ってくれるので、**同一ファイルを別エディタで開き、編集したとしても、編集画面に戻ればきちんと反映**されます。

あと、このBracketsはかなり色々カスタマイズしていますが、プラグインでのカスタマイズを前提としているAdobeの他のソフトと同様、Atomと比較すると**大量のプラグインを実装しても動作に支障が殆ど出ない**利点があります。それでも重くなってくる場合があるので、その場合は

デバッグ > 拡張機能付きでリロード

をこまめに押すとプラグインでのキャッシュが解放され、軽くなる場合が多いです。あと別のGitツールと連携させている場合は、Brackets Gitプラグイン（非常に評価が高く50万スター以上獲得しています）を有効にしていると非常に重くなる場合があります。

- Brackets Git …チェックしたものをチェックインしてコミットボタンを押すだけ。Gitの知識がなくても簡単に扱えます。ただし、他のGitソフトと同時に動かすと重くなります。Phoenix標準実装。
- Brackets File Icons …ファイルにアイコンが付与されます。
- Document Toolbar …ツールバーが表示されます。
- Indent Gides　…インデントが表示されるようになります。
- Paste And Indent …コピーアンドペーストを行ったときに自動的にインデントを調整してくれます。
- PHP SmartHints …任意で設定したユーザ定義関数までヒントをくれるなど、かなり高性能です。
- Quick Search …検索文字をハイライト表示してくれます。
- Sidebar Plus …ファイルにサイドバーを出すことができます。
- Whitespace Normalizer …全角に対し、ホワイトスペースで明示的に警告してくれます。
- Select Lines …行数をクリックしたときに、行を選択できます。なぜ、デフォルトで実装しないのか。
- SFtp Upload …これはめちゃくちゃ便利です。Phoenix標準実装
- color the tag name（タグに色つけ太郎）　…htmlタグがカラフルになり、配置や階層がわかりやすくなるのですが、その配色バランスが絶妙です。

中でもBackets GitのGit連携機能とSFTP UploadのFTP機能がものすごく便利で、更新があったファイルのみリスト表示され、好きなタイミングでサーバ転送し、コミットできます。他のエディタでも欲しいぐらいです。

## Atom → Pulsar
**2022年12月を以てGithubが開発を終了していますが、有志コミュニティによってフォークされたPulsarがリリースされていました。Electron系からJavascriptベースに書き換えたことで、起動も高速になっています。**

GitHubが開発したエディタであり、他のエディタより優れているのは**オートコンプリート機能の優秀さ**で、関数の場合は引数の説明が補足で入ってくる上に、独自定義の関数でさえも、それに対応しています。また、画面が非常に見やすく、プラグインの設定も一番わかりやすく、簡単に機能をオンオフできます。使っていると重くなってくることを欠点に挙げている人も多いですが、実は**Gitでプロジェクトを管理しておくだけで、驚くほど動作がサクサクになります**。したがって、オートコンプリート機能が優れていることから、同じデータを記述することが多い、DB操作メインのWEBシステム開発などに愛用しています。2022年12月15日で開発終了してしまったのですが、後継コミュニティによってAtomをフォークしたPulsarがリリースされていました。

※**起動の速さが段違いです。Atomとは何だったのでしょうか…。

## Sublime Text 
オーストラリアの有志プロジェクトによって開発されているエディタです。時折「気に入ったらお金払ってね」のウィンドウは表示されます（数時間に１回ぐらい）が、フリーソフトとして使えます。このエディタの最大の特長は言うまでもなく、**とにかく軽いことで、次に挙げるテキストエディタ並に起動時間も早い**です（Electron系とは比較になりません）。また、エディタの文字も太くて見やすいので、気軽にプログラムファイルをプレビューするのにも向いています。日本語に対応させるのが少し面倒ではあるのですが、一度設定してしまうと後は快適に使えます。デフォルトでMiniMapが実装されているのもいいです。
自分はデフォルトの参照用のほか、ローカル環境で柔軟に開発したい小規模なプロジェクトで愛用しています。

## Visual Studio Code
アイコンが紅かった黎明期の頃から知っており、巷でMicrosoftの本気だとか言われています。他のElectron系よりずっと軽く、また**大量の行数にも対応しているほか、多数の言語にも対応している**などかなり高性能です。昔は頻繁にアップロードがありそのたびにプロジェクトがリセットされてしまった、検索枠が見づらかったなど不満点も多かったですが、それも解消されていました。ただ、プラグインの設定はjsonファイルを触る必要があるのは少し不便だとは思いますし、Atomと比較してオートコンプリート機能がいまいち使いづらいなど改善要望点もあります。とりあえず、自分はファイル一つあたりの行数が多い、追加実装が多く処理が重くなりがちなプロジェクトで愛用しています。

また、このCodeが優れている点は検索、置換機能で、プログラムの部分変換に関しては一番便利だと思います。

## Geany
コンパイラ機能が搭載された、その上動作が非常に軽いエディタです。PythonやPerlでの業務処理プログラム開発用に愛用しています。このエディタが便利な点は、**選択した複数行に対し、一括でコメントアウトできる**（複数行を指定し、右クリックで「書式」→「行のコメントアウト」で可能）点です。

ちなみに、日本語フォントが中華系フォントになっていますが、そこは編集→設定→インターフェイスのフォント欄で調整できます。自分は游ゴシックに設定しています。


# その他の目的として愛用しているエディタ
その他の目的で愛用しているエディタは以下の4つです。なお、40以上はインストールしてみてテストしてます。

- サクラエディタ
- Mery
- EmEditor
- TeraPad

## サクラエディタ
今更説明不要な定番の国産エディタ。機能が豊富なのとデータの置換、csvファイルの管理などデータの編集用として重宝しています。また、ブロック単位のコピーができるのも強みですし、正規表現の機能も優秀で、ある程度の行数にも耐えられます。デフォルトがSJISになっていたりする点だけは要注意。

更にブロック単位の選択機能を使えば、**特定行から最終行までの一括選択、削除ができる**のでこれはかなり便利です。

## Mery
コンセプトが新聞記事からブログまで対応したという**テキスト編集に特化したテキストエディタ**で、デフォルトがUTF-8になっており、フォントのアウトラインも美麗なのでワープロソフトの代わりに使えたりもします。主にドキュメントや企画書、設計書などの草稿作成用です。また、exeファイルだけで起動するので持ち歩き用としても重宝しています。他のテキストエディタと比較するとやや重いですが、**マルチタブ**なのは大変便利ですし、背景をカスタマイズしたり画像を埋め込んだりもできます。

なお、このMeryですが、バージョン2.6.7から**縦書きにも対応**しており、簡単に切り換えできます。ほかに日本語フォントと英語フォントを別々の種類で表示させることができたり、色々と便利な機能が搭載されています（β版はもっと色々凄い機能が搭載されているようです）。

## Terapad
サクラエディタと並び有名な国産エディタ（デフォルトはSJIS）で、とにかく**起動の軽さが売り**の上、サクラエディタよりプログラムとの親和性が高く、実用的な有志のプラグインも非常に多いので参照用に重宝しています。

### Windows10の場合の注意点
Windows10だと事前にある作業をしないと設定変更が適用されません。たとえば、エディタを開き、背景画面などを設定しようとすると…

**user.iniの作成に失敗しました**

とか文言が出てきます。これについて調査してみたところ、どうやらWindowsの権限によってファイルを上書きできないのが原因のようです。そこで、Program Files内のTerapadフォルダの中を覗くとiniファイルでなくtxtファイルしか存在しなかったため、このtxtファイルをiniに書き換え、そして権限を0から2に変更すると、普通に問題なく操作できるようになります。また、この権限が厄介者で、Windows10でTeraPadを使用する場合はProgram files直下にフォルダを配置しないでおきましょう（自動インストールではなく、保存先を指定して実行する方が後々困らない）。そうしないと、各種プラグインも適用できなくなります。

## EmEditor（参考）
有料版は数十億行、**フリー版でも数百万行単位に対応**しているという、**大容量処理に特化したエディタ**で、しかも起動がかなり軽いです。そのため、大容量のcsv、SQLの参照に大変重宝しています。特に仕事柄SQLを扱うことが多いので、SQLファイルはほぼこのエディタに紐づけています。ただ、改行コードなどエンコード制御で引っかかりがち（特に、改行コードに統一性がないと、逐一質問してくる）なので、CSVではやや使いづらさも感じます。また、**FREE版ゆえに機能も限られているので、できることはせいぜい検索や置換ぐらい**です。

※注　自分は約款記載のなかったV16版の紹介でとどめています。V21以降は機能が更に拡張しているのですが、商用利用を禁じています(現在V16のダウンロードはできません)。