テキストエディタ

テキストエディタ（）は、コンピュータで文字情報（テキスト）のみのファイル、すなわちテキストファイルを作成、編集、保存するためのソフトウェア（プログラム）である。

一般的に、文字情報の入力、削除、コピー、貼り付け、検索、置換、整形などの機能を備えている。

Windowsのメモ帳や、macOSのテキストエディット、UNIXのvi、Emacsなど、多くのオペレーティングシステム (OS) やデスクトップ環境に最初から装備されている。

特徴 
ソースコードの記述のためプログラマに愛用されるが、ワープロソフトの代わりに著述業の人々に愛用される場合もある。ワープロソフトは高機能な反面、起動や終了に時間がかかり、動作が鈍重で、出力されるファイルが大きくなる傾向がある。その点、テキストエディタは小回りが利く、素早く動けるなどのメリットがある。禁則処理など日本語編集に特化した機能を搭載したテキストエディタもある。

様々なテキストエディタ

編集形態 
 スクリーンエディタ
 現在は、画面上に編集するテキストを表示し、その上でカーソルを移動させて編集を行なうテキストエディタが主流で、スクリーンエディタと呼ばれる。
 ラインエディタ
 行単位で編集を行うものである。スクリーンエディタが開発される以前のテキストエディタは、主にこれが使用されていた。その後は、最速のエディタが必要な場合や、スクリーンエディタが起動しないような緊急の場合に利用されるエディタとなった。CP/MのED、MS-DOSのEDLIN、UNIX系ではedなどがこれに該当する。ラインエディタの基本的な操作は一行のコマンドであり、数字や文字列検索で行を指定し、表示させたり挿入・削除や文字列置換などの編集をしたりした後、保存する。
 ストリームエディタ
 入力のテキストを、正規表現等の一定の規則に従って変換して出力するものは、ストリームエディタと呼ばれる。

GUIへの対応 
GUIではOSによるが、表示形態の違いでSDIとMDIの二種類がある。SDIの場合は、ひとつのウィンドウ内にひとつのデータのみを表示する。複数のデータを処理する場合は、複数のウィンドウを開くことになる。複数のデータを他のアプリケーションと見比べながら作業するには都合がいいが、その分、ウィンドウ管理が繁雑になる。MDIの場合は、ひとつのウィンドウ内に複数のデータを表示することができ、ウィンドウの代わりにタブなどの機能を通してデータを利用する。また他にも、EmacsやGVimの様に、ひとつのウィンドウ内に複数のデータを保持し、コマンドまたはタブを通じてアクセスするものもある。

テキストの種類 
テキストエディタは文字情報だけを持つプレーンテキストを扱うが、そのデータの意味は、汎用的な文章、リッチな体裁のある文書、プログラム、インターネット上のコンテンツ、百科事典、画像、楽譜、回路図、数値データ、データベースの操作、システムの設定、予定表など、実に多様である。プレーンテキストには特定の意味が無いため、後から幾らでも意味付けできるからである。

文字情報に加えて、個々の文字に色や書体、スタイルなどを持たせることができるソフトウエアは、マルチスタイルテキストまたはリッチテキストと呼ばれるファイルを生成する。

スクリプト 
テキストエディタの中にはスクリプト、またはマクロと呼ばれる、編集作業の自動化、機能拡張、さらにはテキストエディタのインタフェースそのものの変更を行える機能を持っているものもある。スクリプトには、言語インタプリタなどの他のアプリケーションの機能を利用するもの、独自に開発されたもの、作業手順の自動記録などの機能を通じて利用するものなどの種類がある。代表的なスクリプトには、EmacsのEmacs Lisp、秀丸エディタの秀丸マクロなどがある。スクリプトを利用することにより、ファイル管理や、ネットワーク通信まで行えるテキストエディタ以上の総合的な利用を行なうことが出来る場合もある。

その他の種類 
テキストエディタの中には、打鍵時に音がなったり、入力画面の背景に壁紙を挿入したりするような、アクセサリ的要素の強い機能を持つものもある。また、日本向けでは、縦書用のインターフェイスを持ち、普通の縦書文書を書くのと同じように利用することのできるものもある。

テキストエディタにはたくさんの種類があり、インターネットを通して公開されている。

テキストエディタの利用目的

日常的な文書編集 
テキストエディタの利用目的のひとつに、日常的な文書の編集がある。メモを取ったり、メールを記述したりなどでは、テキストエディタが利用されることがある。

それに対して業務用文書では、リッチテキストやオフィスアプリケーションによる文書が使われることもあるが、アプリケーションによっては、一般のテキストエディタ相当のものが組み込まれている場合や、テキストエディタそのものを呼び出す機能の付いている場合もある。

ほとんどのオペレーティングシステムにはテキストエディタがインストールされているので、環境の違うオペレーティングシステムでも確実に参照したり編集したりできるという利点がある。

プログラミング 

テキストエディタの古くからの利用目的にプログラミングがあるため、プログラミング支援機能を持っているものは多い。具体的には、プログラム言語の種類による予約語の色分け（シンタックスハイライト）、入力の補完、コンパイラやデバッガなど外部アプリケーションとの連携、自動インデントなどの機能である。これらは、プログラマーの負担を減らし、プログラミングの補助と成り得る。

データ編集 
テキストエディタを通じてログファイルなどの固定長、可変長のデータを編集する場合もある。この際に、一部のエディタは矩形コピー、矩形貼り付け（「箱型」、「ボックス」など、エディタによって呼称に揺れがある）などの機能を通じて、作業負担を大幅に減らすことができる。何万行、何十メガバイトといった巨大なデータを扱う必要がある場合、こうしたデータの扱いにすぐれたテキストエディタが求められる。

関連項目 

 テキストエディタの一覧
 エディタ戦争
 統合開発環境
 オーサリングツール