テキストエディタ

テキストエディタとは

テキストtextは文字、エディタeditorは編集するもの、という意味。つまりテキストエディタとは文字だけのファイルを作成・編集するためのソフトウェアである。

文字だけのファイル、というとWordやPagesのようなワープロソフトを思い浮かべるかもしれない。しかし、ワープロソフトは文字の大きさやフォント、段落のレイアウト、ページの区切り、といった文字や文章の見かけも設定することができる。文字だけ、というのは、どの文字か、という情報だけで、見かけは含まれていない(空白や改行は含まれる)。

コンピュータを専門的に使う際には文字だけのファイルを使う機会は多い。コンピュータの設定はテキストファイルで行うことが多い。今見ているようなWebページも実体はテキストファイル(HTMLファイル)である。また、プログラムもテキストファイルである。

ワープロソフトでもテキストファイルを作成・編集できなくもないが、多少都合が悪い。ワープロソフトが得意な見かけの設定はテキストファイルには不要である一方、ワープロソフトにはHTMLやプログラムを書くための支援機能は無い。つまり目的に合っていない道具を使うことになり、作業効率が著しく悪い。

幾つかのワープロソフトは作成した文書をHTML形式で保存することができる。

そこで、コンピュータを専門に学ぶ上ではテキストエディタを使いこなせるようにならなければならない。

テキストエディタの種類

テキストエディタ自体は世の中でたくさん開発されているが、普及しているものとなるとそれほどは多くない。プログラミングに適した代表的なエディタを幾つか、ごく簡単に紹介しておこう。

Vim

元々はviというシェル(ターミナル)上で動作するテキストエディタ。Vimはviの発展版。キーボードのみで操作が可能で使いこなせば高速に編集できるが、入力モードと閲覧モードを切り替えるという独特な操作方法のため初心者には敷居が高いかもしれない。なお、ほとんどのUNIX系のOSでviは最初から使えるようになっているので、緊急事態的に設定ファイルを編集する必要が生じた場合でも使い方を知っていると困らない(他のエディタはインストールする必要がある)。

vimはmacOSにも最初から入っていて、ターミナル上でviコマンドで起動できるが、MacVimという単独アプリもある。

Emacs

Vimに並んで古典的なテキストエディタの一つ。Emacs Lispというプログラミング言語が用意されていて、プログラムを書くことで自由に機能拡張することができる。電子メールの読み書きやWebブラウザとしても使えるなど、単なるテキストエディタを超えたコンピューティング環境とも言える(が、文字しか扱えないので時代遅れ感は否めないが。それでもEmacs Lispは超強力である)。元々はシェル上で動作していたが、現在ではウィンドウ環境に対応しているものが多い。

本家Emacsのサイト GNU Emacs
Mac版Emacs Emacs for Mac macOS ←ここからダウンロードするよりも、後述の配布サイトからダウンロードすることを推奨する。

mi

Macでは結構古くからあるテキストエディタ。昔はミミカキエディットという名称だった。今風のGUI環境に合ったユーザインタフェースとなっているためコンピュータ理工学部(情報理工学部の前身)の学生の間では人気が高かったようである。使いやすいエディタであるが、Macでしか使えない、というのが最大の欠点だろう。

公式サイト mi

Sublime Text

プログラマに評判が高いテキストエディタ。Mac版以外にWindowsやLinux版もある。拡張性が高く、使い勝手が良いらしい。「恋に落ちるテキストエディタ」という異名を持つとのこと。評価のための使用は無料だが、継続して使用するには購入する必要がある($80、結構高い)。

公式サイト Sublime Text

Atom

2015年に正式リリースされ、話題のエディタ。これもMac版以外にWindowsやLinux版もあり、拡張性が高い。設定すればメニューを日本語化することもできる(やりかたは自分で調べよう)。

※2022年12月15日、開発終了しました。 

公式サイト Atom

Visual Studio Code

Microsoft製だがMac版もLinux版もある(当然Windows版も)。ここ数年で飛躍的にユーザ数が増えている。情報理工学部でも一番人気なようだ。

公式サイト Visual Studio(このページ内の「Visual Studio コード」)

どのエディタを使うべきか

突き詰めれば個人の好みなので、好きなものを使えばよい。ただし、エディタごとに利点と欠点は常に存在する。最初のうちはあれこれ触ってみるのもよいだろうが、ある程度使い込まないと良さが分からないかもしれない。

古くからのプログラマが使っているエディタはVimとEmacsであり、この二大派閥でいまだに宗教論争が繰り広げられている。これらはGUIが無い時代に開発されたエディタであるので、基本的な操作はキーのみで行い、その操作感は独特なものがあるので初心者にはとっつきにくい(が、慣れれば非常に効率的に操作できる)。また、複数ウィンドウを使うようなことは想定されていなかったので、現在のVimやEmacsは対応しているものの少々使いにくい。逆に言えばシェルだけあれば使えるので、遠隔アクセスして作業する時にはこれらのエディタを使うのが便利である。情報系の学問を専門に学んだというのにこれらをまったく触ったことのないのはモグリである。消えて無くなることはまずないので未来永劫安心して使えるだろう。

miは機能的には十分だが、Macでしか使えないので、卒業して就職すると別のエディタに乗り換えざるを得ないかもしれない。また、開発者がいつまで作り続けてくれるかという不安要素もある。

Sublime Textはマルチプラットフォームなので開発が続く限りは当分困らないだろう。が、有料であるので本格的にプログラミングができるようになってから手を出すのでもよいかもしれない。Atomは残念ながら開発終了してしまった。Visual Studio Codeは有望な選択肢であり、使う人もかなり増えた。2023年現在ではVisual Studio Codeが覇権を握っているようである。

本演習では、プログラミング作業に使うエディタは限定しないが、Visual Studio Codeで基本的な作業の流れを説明していく。

なお、統合開発環境(IDE: Integrated Development Environment)と呼ばれる、プログラムを開発するためのソフトウェアではエディタ機能も搭載している。IDEを使う場合は、その組み込みのエディタを使うことになる。しかし、初心者にはIDEは敷居が高すぎるし、プログラミング作業が理解しにくくなるので、本演習ではIDEは使用しない。自分で学習して欲しい。