xterm | |
|---|---|
Bash シェルを実行し、/etc のリストを表示するサンプル xterm。 | |
| 原作者 | マーク・ヴァンデヴォールド |
| 開発者 | トーマス・ディッキー |
| 初回リリース | 1984 (1984年) |
| 安定版リリース | |
| リポジトリ | |
| オペレーティング·システム | Unix、Unixライク、MVS OpenVMS、OS/2 |
| タイプ | ターミナルエミュレータ |
| ライセンス | MIT /X コンソーシアムライセンス |
| Webサイト | 見えない島 |
xtermはX Window Systemの標準端末エミュレータです。これにより、コマンドラインインターフェースを必要とするプログラムを実行できます。
特定のプログラムが指定されていない場合、xtermはユーザーのシェルを実行します。Xディスプレイは、1つ以上のユーザーのxtermウィンドウの出力を同時に表示できます。[ 2 ] [ 3 ]各xtermウィンドウは独立したプロセスですが、すべてが同じキーボードを共有し、各xtermプロセスがフォーカスを取得すると順番にキーボードを使用します。通常、フォーカスはユーザーが画面上でポインタ(マウスカーソルなど)を動かすとXアプリケーション間で切り替わりますが、xtermはフォーカスを取得するオプション(Secure Keyboard機能)と、キーボードを使わずに送信された入力イベントを受け入れるオプション(Allow SendEvents機能)を提供しています。これらのオプションには、xtermのマニュアルに記載されているように制限があります。[ 4 ]
XTermはX Window Systemよりも以前に誕生しました。XTermは、Xの開発が始まった1984年の夏、ジム・ゲティスの弟子であるマーク・ヴァンデヴォールドによって、VAXStation 100 (VS100)用のスタンドアロン端末エミュレータとして開発されました。しかし、スタンドアロンプログラムとしてよりもXの一部として使用する方がより有用であることがすぐに明らかになったため、X向けに再設計されました。ゲティスの記述によると、「xtermの内部構造がこれほどまでに恐ろしい理由の一つは、当初は単一のプロセスで複数のVS100ディスプレイを操作できるように設計されていたことにある」とのことです。[ 5 ]
Xリファレンス実装の一部として長年使用されましたが、1996 年頃に開発のメイン ラインはXFree86 (X11R6.3 からフォーク) に移行し、現在は Thomas Dickey によって保守されています。
xtermの亜種も数多く存在し、例えば韓国語話者向けのhantermや日本語話者向けに設計されたktermなどがあります。[ 6 ] X用の端末エミュレータのほとんどはxtermの亜種として始まりました。[ 7 ]
初期のバージョンではVT102とTektronix 4014をエミュレートしていました。 [ 8 ]
後のバージョンでは、次のようなDECおよびその他の端末 用の制御シーケンスが追加されました。


ほとんどのXアプリケーションと同様に、xtermはグローバルXリソースファイル(例:/usr/lib/X11/app-defaults/XTerm)、ユーザーごとのリソースファイル(例:~/XTerm、~/.Xresources)、またはコマンドライン引数を介してカスタマイズできます。ほとんどのコマンドラインオプションは、マニュアルページに記載されているように、リソース設定に対応しています。
プログラム名はxtermですが、XリソースクラスはXTermです。uxtermスクリプトはこれをオーバーライドし、 UXTerm リソースクラスを使用します。
XTermには通常、メニューバーはありません。xtermの3つのメニューにアクセスするには、Ctrlキーを押しながらマウスの左ボタン、中ボタン、または右ボタンを押します。「ツールバー」のサポートをコンパイル時に組み込むことで、同じメニューを呼び出すことができます。
サポートされている端末制御機能は次のとおりです。
市販の端末マシンで使用されるプロトコルに加えて、xterm では、次のような他の端末エミュレータで採用されているいくつかのプロトコルも追加されました。
当初、XtermはPortable Compiled Format(PCF)ビットマップフォントのみをサポートしていましたが、2000年にXftライブラリが導入され、TrueTypeなどの最新のストロークベースのフォントがサポートされるようになりました。[ 18 ]