用語の説明

テキストエディタ(text editor)
文字情報のみのファイル (テキストファイル)を作成, 編集, 保存するためのソフトウェア. 文字の入力, 削除, コピー, 貼り付け, 検索, 置換, 整形等の機能を備えている. CentOS では, 今回使う Gedit 以外に vi(vim), Emacs 等がある.

例えば, 小説家がコンピュータに小説の内容を入力するとします. そのとき必要なのは, 小説の文章を効率良く入力するための機能で, それを見栄え良く配置する必要はありません. 文章の配置を 決めるのは出版社や印刷屋が(著者の意向を酌みながら)行います. エディタは, この「文を効率良く入力する機能」に特化したソフトウェアです.

数理科学科の皆さんのエディタの使い方は, 「ソースコードエディタ」としての使い方をします. 前回の講義で述べましたが, コンピュータの内部にあるデータは 全て2進法の数です. コンピュータに対する命令も2進法の数として 存在しています. しかし, 人間には2進法の数は不便なので, コンピュータに対する指示を人間が理解可能な文書で記述し, それをコンピュータが翻訳して実行するという仕組みが開発されました. 実際皆さんが利用するプログラム(OS, アプリケーション共)は, そのような方法で作られています. この「コンピュータに対する 指示を記述した人間が理解可能な文書」の事を, ソースコード(source code)と言います. 今後, 大学でのコンピュータ関連の授業では, ソースコードを入力する事が多くあります.

コンピュータは人間とは違い機械ですから, 曖昧な指示は通用しません. ソースコードには, コンピュータが理解できる曖昧性の無い人工的な 言語が書かれます. ソースコードエディタでは, この人工的な言語の 入力に対する補助機能(予約語の強調や括弧の対応関係の表示)が備わっています.

上に述べた, gedit, vi(vim), Emacs はソースコードエディタとして十分な 機能を持っています. これらは, Mac OS, Windows, Linux 全てで動作します. ただし, 基盤情報統括センターでは, Mac には vi が, Linux には 全てが導入されており, Windows には全てが入っていません. それぞれの特徴を挙げると, 次のようになります.

vi(vim)
Bill Joy(Sum Microsystems 社の創立者, Sum Microsystems の開発した OS, Solaris は一昔前は基盤情報統括センターのサーバの OS だった)が California 大学バークレー校で学生時代, 1976年ころ開発したエディタ. vi は Visual editor の最初に 2文字. vim は Vi improved の略. Unix 系の OS では必ず導入されている. モードの概念がある(ように見える)ため 初心者にはとりつきづらいが, 作業の全てがキーボードでできる (というかそもそもマウスが使えない), 慣れると非常に高速な作業ができる, 最小限のシステムでも使えるなどの理由で, 現在も利用されつづけている. 日本語の入力にちょっと面倒なところが難.

Emacs
R. Stallman が 1975年ころから開発を始めた エディタ. Editor Macros を略して Emacs. ほとんどの Unix 系の OS に導入されている. 名前のとおり, 編集機能の集合体で, vi よりはかなり大きな プログラムであり, 高度な機能を備えるように拡張可能な プログラムとなっている. vi と同様作業の全てが キーボードだけでできる. きちんとした設定ファイルや 拡張機能が備わっていれば, gedit よりは使いやすいが, 現在の情報処理センターには, その拡張機能が導入されていない. 以前のシステムにはちゃんと入っていたので, Emacs を利用していた. また, macOS のキーボード機能の中には, emacs 由来のものが多く あるので, emacs の操作体系を知っていると, macOS が便利に 使えるようになる.

gedit
多くの Linux ディストリビューションに導入されている. Window のメモ帳に似た操作環境だが, ソースコードエディタとしての 機能がきちんと備わっている(Windows のメモ帳にはその機能はない). ソースコードエディタとしての残念な点は, 日本語入力で 全角の記号や英数が入力できるところで, これはソースコードの 間違いを探す上で大変になる(特に全角の空白は目に見えないが, ソースコードとしてエラーになることがある)ところです.

時間の都合で, vi や Emacs の使いかたは講義できませんが,

はじめての Linux これだけは知っておきたい, 小林真也監修, 宇戸寿幸他著, 森北出版,
にコンパクトな解説がありますので, 興味のある人は, 読んでみて下さい.

基盤情報処理センターのシステムは, 停電の日以外は, 遠隔から (Net が繋がれば, 世界中から)利用できます. 遠隔からセンターを利用する際には, グラフィカルなアプリケーションは通信帯域の 問題で, ほとんど使い物になりませんが, vi, emacs の利用は, 何の問題もありません.

SUGA Shuichi
2023-05-19