エディタ
この記事はエディタについてのうんちくとか、情報を書いたページです。 主にWindowsユーザー向けですが、できるだけ一般的な情報を書いたつもりです。。。
イントロダクション
結論から言えば、「自分の好きなエディタをつかえ」ということになります。それ以外の答え(このエディタがおすすめだよ)のような内容は書いてありませんので、その情報を求めている場合はこの記事は参考にはならないかもしれません。
この記事の前半は、エディタに関するうんちく話、後半はエディタ選びに参考になるような話を書いたつもりです。
できる限り、飛ばし飛ばし読んでも理解できるように記述しました。逆にそのため、やや冗長に感じる部分もあるかもしれません。
“エディタ”とは?
エディタ(Editor)というのは、言葉本来の意味はテキストに限らず「編集機能」自体のことをさすものですが、一般的には「(プレイン)テキストエディタ」をさします。
と、まぁ要するに、エディタってのは”テキストファイル”を編集するものです。Windowsユーザーは、「メモ帳」を想像すればいいでしょう。あれもエディタの一種です。Macは。。。詳しくは知りません。。。
エディタはいろんな事に利用されます。単に課題レポートなどで文章を作成するとき、HTML、LaTeX形式のドキュメントを記述するとき、あるいはプログラムのソースコードを書くときなどに使用されます。
一般に、エディタはプレインテキスト形式以外のファイルは読み込むことはできません。正確に言うと、読み込むことはできますが、読み込んでもまともに使用できません。この意味を知りたい人は、一度画像ファイルなどをメモ帳などで開いてみてください。意味のないように見える文字の羅列が表示されるはずです。
ワード(Microsoft Word)とは何が違うの?
ワードは、テキストに書式情報(フォント・色・文字の大きさ)やメタ情報などを埋め込むことができます。それに対してエディタは、書式情報のないテキストを編集するだけです。主な違いはそこです。
ちなみに、Wordで書式情報なしのテキストファイルを編集することはできますが、エディタでWordのファイルを閲覧することは(一般的に)できません。
エディタは何を使えばいいの?
基本的に、どんなものでもそうであるように、エディタも自分にあったもの、目的に合ったものを使うのがベストでしょう。そのエディタを見つけるには、少なくともいくつかのエディタを実際に試してみる必要があるでしょう。
参考になるように、この記事の後半には一般的なテキストエディタの機能についてと、探し方、また具体的にいくつかのエディタを紹介しています。
自分にあったいいエディタが見つかったのに、わざわざ他に使い辛いエディタを使う必要はありません。また、「機能が乏しいからそのエディタを使わない方がいい」などということもありません。使っているエディタが使いづらく、他にもっといいと感じるエディタがあればそれに変えればいいのです。使いづらいと思ってから乗り換えても、決して遅くはありません。
大抵のOSでは(少なくともWindowsでは)幸いなことに、多くのソフトウェアで共通のショートカットキーが使えます。例えば、「Ctrl+C」でコピー、「Ctrl+V」で貼り付け、「Ctrl+S」で保存、などです。つまり、あるエディタソフトウェアから別のソフトウェアに乗り換える障壁は高くないということです。その上、国内、海外含めて多くのソフトウェア製作者によって、たくさんのエディタソフトウェアが作成されています。 せっかくたくさんあるのですから、もしこれからプログラミングなどでエディタを使う機会があるなら、いろいろ試してみるといいと思います。
エディタについている機能
エディタ選びの参考になるように、まずはエディタについている一般的な機能をあげてみます。 と、いっても文字だけ書いても分かり辛いと思うので、ここではTeraPad、K2Editorなどいくつかのエディタを例として使ってみます。
テキスト編集
当然、テキストエディタなんだからテキストの編集ができます。ただテキストを書く以外にも、様々な編集補助機能がついています。
- オートインデント-各行頭の空白(=インデント)を自動で付与してくれる機能です。プログラムのソースコードを記述の際には必須といえる機能です。
- 上書きモード-テキストを書く際、文字を上書きしていくモードです。大抵のエディタでInsertキーを押すことで使えます。たまに重宝します。
- 操作取り消し(アンドゥ)-Ctrl+Zキーでメモ帳では直近の一回の操作のみしか取り消せません。しかし、大抵のエディタでは、編集操作を複数回取り消す機能や、編集履歴から選択して操作を戻す機能などが備わっているものがあります。
基本的な編集機能はほとんどのエディタで同じです。
検索、置換、正規表現
ては
- 検索-長いテキストを編集するとき、ある単語がどこにあるか探したいときに、検索機能が使えます。大抵はCtrl+Fで呼び出せます。
- 置換-例えば文章中のすべての「editor」を「エディタ」に置き換えたい場合などに、置換機能が利用できます。
- 正規表現-この検索・置換機能において、正規表現検索と呼ばれる、ある程度幅を持った検索方法が利用できるエディタもあります。例えば、ログイン名を抽出(検索)したい場合、「[ts][0-9]{5}[a-z]{2}」のような正規表現と呼ばれる文字列を用いて検索します。(正規表現の表記法はエディタによってばらつきがあります)
構文強調
ある特定の単語や文章構造を色付けしたり太字表示して、強調表示することで文章を見やすくする機能のことを構文強調機能といいます。
多くのエディタでは、プログラミング言語で用いられる予約語(例えばC言語であれば、whileやfor、ifなど)や、HTMLタグを強調表示する機能が備わっています。また、これらのエディタではほとんどの場合、編集しているファイルに応じて、強調表示の方法を自動的に切り替えることができます。
左図は、K2EditorでC++言語のファイルを開いたときの画面です。このエディタでは、C++の予約語を青太字、コメントを緑、数字をピンク、といったような表示をするようになっています。
これらの表示方法はほとんどの場合カスタマイズできます。また、自分で表示方法の定義をすればどんなプログラミング言語にも対応することができます。
自動補完
キーワードや、ある特定の文字列を途中まで入力する事で、残りの文字列を表示したり、補完してくれる機能が備わっているものもあります。
単体のエディタでは備わっているものは少なく、IDE(総合開発環境)ではこの機能が組み込まれているものが多くあります。
右図は、Visual Studio(MicrosoftのIDEソフトウェア)上のエディタでC#言語の自動補完メニューを表示したところです。このエディタでは、候補をメニューで表示し、上下キーで選択することができます。
また、キーワードに関連したマニュアル(あるいはその一部分)を自動的に表示する機能が備わっているものもあります。
外部ツールの実行
コンパイラやインタプリタ、その他テキスト編集補助ツールなど、外部ツールの実行をやりやすくするための機能があるエディタもあります。大抵は、簡単なショートカットキーを設定することができ、たとえば「F5キーを押したらコンパイルして実行」などの設定ができます。
設定方法は大抵の場合やや複雑で、パス名やコマンドラインに関しての知識を要求されます。ただし、使いこなせれば非常に便利な機能になるでしょう。
その他にも、マクロや組み込みスクリプト言語機能が含まれているエディタもあり、そのような機能を駆使することで高度なカスタマイズが可能になります。emacsに組み込まれているEmacs Lispなんてのはその代表例です。
複数のドキュメント/場所に対する同時編集
多くはないですが、タブ式で複数のドキュメントを一つのウィンドウで同時に開くことができる機能をもつエディタもあります。また、ウィンドウを上下に分割し同じドキュメントを編集したり、違うドキュメントを分割表示する事ができるものもあります。
この機能は、たくさんのファイルを同時に編集する際に便利な機能です。たくさんのウィンドウを開くことなく、たくさんのファイルを開くことができます。
エディタの探し方
エディタを探す方法はたくさんあります。一番簡単なのは、インターネット上の情報サイトを利用する事です。窓の杜や、vectorなどにテキストエディタのリストがあります。それ以外にも、googleなどで検索することで情報がかかれたたくさんのWebサイトが出てくるでしょう。
いくつかの個人的意見
さて、ここまでは比較的一般論的な情報を書いてきました。
ここから少し個人的な意見を交えた事を書いていきます。というか書きたかった事はここから下がメインです。。。
メモ帳じゃだめなの?
メモ帳もれっきとしたテキストエディタの一つです。べつにこれを使っているからダメなんていうことはありませんが、使っていれば不便になってくるで しょう。例えば、文字が見づらい、行数が知りたいのに分からない、プログラムのコンパイル/実行が面倒、取り消しが一回しかできない、などなどです。
ただ、特に不満に感じなければ無理に乗り換える必要もありません。メモ帳ほど、必要最小限に機能がまとまっていて、動作が軽く、安定しているエディタはおそらくないでしょう。
emacs(≒xyzzy)っていいの?
イントロダクションで記したように、本来その普遍的な答えはありません。しかし少しだけ、個人的な意見にも触れつつ情報を書いておきます。
まず、上節にも書いたように、基本的に自分にあったエディタを使えばいいということが大切です。逆にいえば、emacs(xyzzy)があなたに とって優れているかどうかは、あなたが決めることです。つまり、「emacsっていいの?」に答えることはできません。ただし、パラメータをもう一つ与え て、「emacsって自分にとっていいの?」という質問なら答えを導き出せる可能性があります。
で、答えを書きます。使う人が「emacsを使ったことがない」かつ「Windowsが使い慣れている」ならば、emacs(xyzzy)はよい選択だとは言えないでしょう。 なぜならば
- Windows標準のキーバインド(ショートカットキー)とはかけ離れている
- (上の理由により)エディタ使用法の習得に時間がかかる
- emacsのキーバインドは、emacsと限られた一部のソフトウェアでしか使えない
ただし、当然その人にあっているエディタを使用するのが一番です。気になったらどんなものでも一回使用してみるといいかもしれません。 「自分に合う!」と思えば、もちろんxyzzy等のemacs系エディタを利用すべきです。 ただ、ほとんどの人はそうならないと思います。気になるようであれば、xyzzyをダウンロードして起動し、試しに適当な文章をコピー&ペースト してみてください。