XEMACS(1)

名前
xemacs - 次世代 Emacs

形式
xemacs [ <コマンド行オプション> ] [ <ファイル名>... ]

機能説明
XEmacs は、Free Software Foundation の Richard Stallman によって書かれたもので、 Emacs との互換性を保持したまま多くの改良が加えられたバージョンです。 GNU Emacs バージョン 19 の早期リリースをもとに開発され、 GNU Emacs の後続リリースと同期がとられています。

XEmacs の主なマニュアルは、 XEmacs サブシステムの 1 つである Info を使ってオンラインで参照することができます。 完成された最新のマニュアルは、そちらを参照してください (ただし現時点では、Info 形式ドキュメントは英語版のみが用意されています)。 Emacs Lisp 使用方法についての完全なマニュアルとしては 『XEmacs Lisp Programmer's Manual』を、 オンラインで参照することができます。どちらのマニュアルも TeX 書式パッケージを使用すれば、きれいに印刷することができます。

使用できる XEmacs の機能は、ほかの Emacs エディタでできるすべての機能が含まれており、 編集コマンドは Lisp で記述されているため、容易に拡張することができます。

XEmacs には拡張対話型ヘルプ機能が用意されていますが、この機能を使用するには、 XEmacs ウィンドウとバッファについての扱い方を知っていることが前提となります。 CTRL-h でヘルプ機能を実行します。「XEmacs 自習書(CTRL-h t)」は、 初心者が数分間で XEmacs の基礎を知ることができる対話型のチュートリアルを呼び出します。 「適切検索...(CTRL-h a)」は、指定した機能を実行するコマンドを 探す手助けをします。 「キー/マウス記述...(CTRL-h k)」は、指定したキー操作の実行内容を表示します。 「関数記述...(CTRL-h f)」は、指定した名前の Lisp 関数を表示します。 さらに「キー/マウス割り当て...(CTRL-h CTRL-k)」を使用すると、 XEmacs リファレンスマニュアル上のキー操作を参照でき、 「Elisp 関数...(CTRL-h CTRL-f)」を使用すると、 『XEmacs Lisp Programmer's Manual』上の Lisp 関数を参照できます。 ユーザーがウィンドウシステムを使用している場合は、 これらのヘルプ機能はすべてヘルプメニューから使用することができます。

複数フレーム(トップレベルウィンドウ)、メニューバー、ツールバー、 水平・垂直スクロールバー、ダイアログボックス、拡張マウス機能 などを持つ X のようなウィンドウシステム環境下では、 XEmacs は 拡張 GUI(グラフィカルユーザーインタフェース)をサポートします。

XEmacs は、複数のフォントやカラー、可変幅フォント、可変行間隔を 完全にサポートしており、 ピックスマップをバッファに取り込むことも可能です (これは特に、W3 Web ブラウジングパッケージや一部の デバッガ、アウトライン機能のインタフェースに用いられます)。

XEmacs の「元に戻す」は、バッファに反映された数ステップ前までの変更を 取り消すことができ、編集のミスを簡単に修復することができます。

XEmacs には、多くの専用パッケージが用意されています。メールの読み出し (VM、MH-E、 RMail) や発信 (Mail)、ネットニュースの読み出しと投函 (GNUS)、 World Wide Web のブラウズ (W3)、すべての主要なプログラミング言語に で書かれたソースコードを編集するための特化されたモード、 多くの言語用の構文強調表示 (Font-Lock)、コンパイル (Compile)、 XEmacs ウィンドウ内で動作するサブシェル (Shell)、アウトライン編集 (Outline)、 Lisp の「読み込み、評価、表示」ループの実行 (Lisp-Interaction-Mode)、 ゲーム精神分析医 (Doctor) などです。

詳細なリファレンスマニュアルはありますが、 他のバージョンの Emacs を使用したことがあれば、 マニュアルなしでも問題なく対応できると思われます。 初めて Emacs を使用する人でも、チュートリアルを学習したり自動 マニュアル機能を利用することで、すぐに基本機能を使うことができるように なるでしょう。

XEmacs オプション

XEmacs は、X ウィンドウが動作する環境下では、すべての標準 X ツールキットの コマンドオプションを認識します。それに加えて、以下のオプションを認識 します (オプションが一連の複数の処理を意味する場合は、指定された順に実行されます)。

-t デバイス名
    使用中の標準入出力の代わりに、指定されたデバイスを使います。これは -nw オプションを含意しています。

-batch
    バッチモードで編集を行います。エディタは標準出力にメッセージを送出します。 実行ファイルを指定したり関数を呼び出す場合は、必ず -l 、 -f 、 -eval オプションを使用してください。

-nw ウィンドウシステム特有の表示用コードの使用をすべて禁止します。 現在の TTY を使用します。

-debug-init
    初期化ファイルの読み込み中にエラーが発生した場合、デバッガを起動します。

-unmapped
    初期フレームをマッピングしません。

-no-site-file
    サイト固有の初期化ファイル(site-init.el)を読み込みません。

-q、-no-init-file
    初期化ファイルを読み込みません。

-u ユーザー名、-user ユーザー名
    指定したユーザー固有の初期化ファイルを読み込みます。

ファイル名
    指定したファイルを編集します。

+行番号
    行番号 に指定した行に移動します
    (+ 符号と行番号の間に空白文字は入れないでください)。

-help、-flags、-?
    ヘルプメッセージを出力して終了します。

-V、-version
    バージョン番号を出力して終了します。

-f 関数名、 -funcall 関数名
    関数名 に指定した Lisp 関数を実行します。

-l ファイル名、 -load ファイル名
    ファイル名 に指定したファイル中の Lisp コードを読み込みます。

-eval フォーム
    フォーム に指定した Lisp のフォームを評価します。

-i ファイル名、-insert ファイル名
    現在のバッファに、 ファイル名 に指定したファイルを取り込みます。

-kill
    XEmacs を終了します( -batch で有効です)。

X での XEmacs の使用

XEmacs は、X ウィンドウシステム上で正しく動作するように開発されてきました。 X ウィンドウで XEmacs を起動すると、ディスプレイ内に独自の X ウィンドウを開きます。 ユーザーのオリジナルのウィンドウをそのまま使い続けることができるように、 エディタはバックグラウンドのジョブとして起動したほうがよいでしょう。

XEmacs は、以下の標準 X オプションを付けて起動することができます。

-geometry ##x##+##+##
    初期ウィンドウのジオメトリを指定します。## には、幅(文字数)、 高さ(文字数)、X オフセット(ピクセル数)、Y オフセット(ピクセル数) を数字で指定してください。 ##x## や +##+## などの書式の部分指定も有効です。(ジオメトリ仕様は、標準 X フォーマットに 準拠しています。詳細は X(1) を参照してください。)

-iconic
    起動時の初期ウィンドウをアイコンで表示します。

-name プログラム名
    ユーザーの X リソース内にあるデフォルトを参照するために使用される プログラム名を指定します。

-title タイトル名、-T タイトル名、-wn タイトル名
    XEmacs ウィンドウのタイトル名を指定します。

-d ディスプレイ名、-display ディスプレイ名
    ディスプレイ名 に指定したディスプレイ上に XEmacs ウィンドウを作成します。 このオプションは、コマンド行で最初 (先頭) に指定してください。

-font フォント名、-fn フォント名
    XEmacs ウィンドウのフォントとして、 フォント名 に指定したフォントを使用します。X フォントは /usr/lib/X11/fonts ディレクトリから選択してください。 XEmacs は、固定幅フォントと可変幅フォントのどちらでも動作しますが、 固定幅フォントを使用することをお勧めします。

-scrollbar-width ピクセル数
    垂直スクロールバーの幅を指定します。

-scrollbar-height ピクセル数
    水平スクロールバーの高さを指定します。

-bw ピクセル数、 -borderwidth ピクセル数
    XEmacs ウィンドウの境界幅を指定します。 ウィンドウ両側のデフォルト値は 1 ピクセルです。

-ib ピクセル数、 -internal-border-width ピクセル数
    フレームの境界とテキストとの間隔を指定します。 ウィンドウ両側のデフォルト値は 1 ピクセルです。

-fg カラー名、 -foreground カラー名
    テキストの色を設定します。カラー名については、 /usr/lib/X11/rgb.txt ファイル中のリストを参照してください。

-bg カラー名、 -background カラー名
    ウィンドウの背景の色を設定します。

-bd カラー名、 -bordercolor カラー名
    ウィンドウ境界の色を設定します。

-mc カラー名
    マウスポインタの色を設定します。

-cr カラー名
    テキストカーソルの色を設定します。

-rv、-reverse
    前景と背景の色を反転します(反転表示)。 このオプションを使用せずに、 前景色と背景色を明示的に設定することをお勧めします。

-xrm 引数
    コマンド行で任意のリソースを設定することができます。 .Xresource や .Xdefaults ファイル中に指定されるのと同様に、 引数 に指定した値がリソースとして解釈されます。

ユーザーは、たとえば .Xresources や .Xdefaults ファイルで、 XEmacs ウィンドウ用のリソースのデフォルト値を設定することもできます( xrdb(1) 参照)。 書式は以下のようになります。

    Emacs.キーワード:値

または

    Emacs*EmacsFrame.キーワード:値

です (どちらの形式かは、リソースによる)。

以下の書式を使用して、特定のフレームのリソースを設定することもできます。

    Emacs*フレーム名.キーワード:値

(VM のような完成されたパッケージは、それらのフレームに固有の リソース名を与えます。この場合は VM になります。)

XEmacs では、以下のキーワードに対するデフォルト設定をユーザーが行うことができます。

default.attributeFont (class Face.AttributeFont)
    ウィンドウのテキストフォントを設定します。

default.attributeForeground (class Face.AttributeForeground)
    ウィンドウテキストの色を設定します。

default.attributeBackground (class Face.AttributeBackground)
    ウィンドウの背景色を設定します。

フェイス.attributeFont (class Face.AttributeFont)
    フェイス名のフォントを設定します。 よく使用されるフェイス名を、以下に示します。

フェイス    目的
default    通常のテキスト。
bold    ボールド (太字) テキスト。
italic    イタリック (斜体) テキスト。
bold-italic    ボールドイタリックテキスト。
modeline    モード行テキスト。
zmacs-region    マウス選択されたテキスト。
highlight    マウス通過時の強調テキスト。
left-margin    左マージン内のテキスト。
right-margin    右マージン内のテキスト。
isearch    検索時の強調テキスト。
info-node    Info メニューのテキスト。
info-xref    Info 相互参照のテキスト。

フェイス.attributeForeground(class Face.AttributeForeground)
    指定フェイス用の前景色を設定します。

フェイス.attributeBackground(class Face.AttributeBackground)
    指定フェイス用の背景色を設定します。

フェイス.attributeBackgroundPixmap
    (class Face.AttributeBackgroundPixmap)
    指定フェイス用の背景ピックスマップを設定します。

フェイス.attributeUnderline (class Face.AttributeUnderline)
    指定フェイス用の下線の有無を決めます。

reverseVideo (class ReverseVideo)
    on に設定された場合は、ウィンドウは反転表示します。 このリソースを使用せずに、前景色と背景色を 明示的に設定することをお勧めします。

borderWidth (class BorderWidth)
    ウィンドウの境界幅をピクセル数で設定します。

internalBorderWidth (class InternalBorderWidth)
    ウィンドウの内側境界幅をピクセル数で設定します。

borderColor (class BorderColor)
    ウィンドウ境界の色を設定します。

cursorColor (class Foreground)
    ウィンドウのテキストカーソルの色を設定します。

pointerColor (class Foreground)
    ウィンドウのマウスカーソルの色を設定します。

geometry (class Geometry)
    XEmacs ウィンドウのジオメトリを設定します(上述)。

iconic (class Iconic)
    on に設定されている場合は、 XEmacs ウィンドウは最初にアイコン化されて表示されます。

menubar (class Menubar)
    XEmacs ウィンドウにメニューバーを表示させるかどうかを設定します。初期値は true です。

initiallyUnmapped (class InitiallyUnmapped)
    XEmacs が起動時にアンマップされた初期フレームを残すかどうかを設定します。

barCursor (class BarCursor)
    カーソルの形状を、箱型またはバーに設定します。

title (class Title)
    XEmacs ウィンドウのタイトル名を設定します。

iconName (class Title)
    XEmacs ウィンドウアイコンの名前を設定します。

scrollBarWidth (class ScrollBarWidth)
    垂直スクロールバーの幅をピクセル数で設定します。 値を 0 にすると、垂直スクロールバーは表示されません。

scrollBarHeight (class ScrollBarHeight)
    水平スクロールバーの高さをピクセル数で設定します。 値を 0 にすると、水平スクロールバーは表示されません。

scrollBarPlacement (class ScrollBarPlacement)
    垂直・水平スクロールバーの位置を設定します。"top-left"、"bottom-left"、 "top-right"、"bottom-right"のいずれかを選択します。 デフォルトでは、Motif と Lucid 用には "bottom-right" が、 Athena 用には "buttom-left" が設定されています。

topToolBarHeight (class TopToolBarHeight)
    上部のツールバーの高さをピクセル数で設定します。 値を 0 にすると、ツールバーは表示されません。

bottomToolBarHeight (class BottomToolBarHeight)
    下部ツールバー の高さをピクセル数で設定します。 値を 0 にすると、下部ツールバーは表示されません。

leftToolBarWidth (class LeftToolBarWidth)
    左側のツールバーの幅をピクセル数で設定します。 値を 0 にすると、左側のツールバーは表示されません。

rightToolBarWidth (class RightToolBarWidth)
    右側のツールバーの幅をピクセル数で設定します。 値を 0 にすると、右側のツールバーは表示されません。

topToolBarShadowColor (class TopToolBarShadowColor)
    ツールバーの上部シャドウの色を設定します。 (すべてのツールバーに有効。上部ツールバー以外にも有効です。)

bottomToolBarShadowColor (class BottomToolBarShadowColor)
    ツールバーの下部シャドウの色を設定します。 (すべてのツールバーに有効。上部ツールバー以外にも有効です。)

topToolBarShadowPixmap (class TopToolBarShadowPixmap)
    ツールバーの上部シャドウのピックスマップを設定します。 (すべてのツールバーに有効。上部ツールバー以外にも有効です。) 設定されていれば、このリソースは対応するカラーリソースを無効にします。

bottomToolBarShadowPixmap (class BottomToolBarShadowPixmap)
    ツールバーの下部シャドウのピックスマップを設定します。 (すべてのツールバーに有効。上部ツールバー以外にも有効です。) 設定されていれば、このリソースは対応するカラーリソースを無効にします。

toolBarShadowThickness (class ToolBarShadowThickness)
    ツールバーを囲むシャドウ濃度をピクセル数で設定します。

visualBell (class VisualBell)
    スクリーン点滅またはビープ音のどちらを使用するかを設定します。

bellVolume (class BellVolume)
    ビープ音の音量を設定します。設定範囲は 0 から 100 です。

useBackingStore (class UseBackingStore)
    XEmacs X ウィンドウのバッキングストア属性を設定するかどうかを決定します。 この属性を設定すると、 X サーバーが使用するメモリーが多くなりますが、 スクリーンを更新する際の X トラフィックが少なくなります。 また、モデム接続のような低速回線を使った X サーバーとの接続に有効です。

textPointer (class Cursor)
    テキスト上にマウスがあるときに使用するカーソルを設定します。

selectionPointer (class Cursor)
    マウス選択されたテキスト範囲上にマウスがあるときに使用する カーソルを設定します。

spacePointer (class Cursor)
    バッファ内の空白スペース上にマウスがあるときに(つまり、 行末やファイルの最後で) 使用するカーソルを設定します。

modeLinePointer (class Cursor)
    モードライン上にマウスがあるときに使用するカーソルを設定します。

gcPointer (class Cursor)
    ガーベッジコレクション中に表示するカーソルを設定します。

scrollbarPointer (class Cursor)
    スクロールバー上にマウスがあるときに使用するカーソルを設定します。

pointerColor (class Foreground)
    マウスカーソルの前景色を設定します。

pointerBackground (class Background)
    マウスカーソルの背景色を設定します。

マウスの使用

以下のリストは、X11 における XEmacs ウィンドウでの、マウスボタンの割り当てです。
マウスボタン 機能
左 ポイントの位置決めと、テキストの選択。
中央 テキストのペースト。
右 オプションメニューのポップアップ
SHIFT-左 選択範囲の拡張。
CTRL-左 選択した内容をポイント位置に挿入。
CTRL-中央 ポイントの位置決めとその位置でのテキストの選択。
CTRL-SHIFT-左 選択した内容を削除しその内容をポイント位置に挿入。
META-左 箱型選択。

ファイル

Lisp コードが、起動時にユーザーの初期化ファイル $HOME/.emacs から 読み込まれます。

/usr/local/info
Info 文書ブラウザ ( XEmacs のサブシステム)の参照するファイル。 『XEmacs Reference Manual』と『XEmacs Lisp Programmer's Manual』 の完全なテキストが、所定の階層構造で収められています。

/usr/local/lib/xemacs-$VERSION/info
Info ファイル(この位置とはかぎらない)

/usr/local/lib/xemacs-$VERSION/src
C ソースファイルとオブジェクトファイル(存在しない場合もある)

/usr/local/lib/xemacs-$VERSION/lisp/*
多くの編集コマンドを定義する Lisp ソースファイルとコンパイル済みファイル。 これらのファイルは機能や個々のパッケージ別にサブディレクトリ内に 分類され、置かれています。いくつかのファイルは 前もって読み込まれています。それ以外のものは、使用時にこれらのディレクトリから、 自動的に読み込まれます。

/usr/local/lib/xemacs-$VERSION/etc
いくつかの情報ファイル、ピックスマップファイル、 パッケージに使用されるデータファイルなど。

/usr/local/lib/xemacs-$VERSION/$CONFIGURATION
XEmacs に使用されるさまざまなプログラムファイル。

/usr/local/lib/xemacs-$VERSION/$CONFIGURATION/DOC
Lisp プリミティブ (基本関数) と XEmacs にあらかじめ 読み込まれた Lisp 関数のドキュメント文字列。 これらのファイルは、XEmacs 本体のサイズを減らすためにここに保管 されています。

/usr/local/lib/xemacs-$VERSION/etc/SERVICE
XEmacs ユーザーのための、学習、保守、移植、 カスタマイズなどのさまざまなサービスを提供する人々についてまとめています。

/usr/local/lib/xemacs/lock
2 人のユーザーが 1 つのファイルを同時に更新できないように、 XEmacs で更新中のすべてのファイルに対してできるロックファイルを保持します。

/usr/local/lib/xemacs/site-lisp
ローカルに作成する Lisp ファイル。

/usr/lib/X11/rgb.txt
正式の X カラー名がリストされています。

使用上の留意点と問い合わせ先
XEmacs に関するバグや修正の報告先として、また助言を求める宛先として、 comp.emacs.xemacs ニュースグループがあります。 ただし、問題点をバグとして報告する前に、 本当にそれがバグであるか、誤解や意図的な機能ではないか ということをお確かめください。バグレポートの方法や時期については、 リファレンスマニュアル(または Into システム) の後半近くある 「Reporting XEmacs Bugs」という章をお読みください。 また、報告するバグレポートには、動作中の XEmacs のバージョン番号とそれが動作しているシステムを記入してください。 最後に、バグの原因とそれが発生した状況を、できるだけそのまま保存しておいて ください。その保存状態が良ければ簡単に修正できる可能性が高くなります。 できるだけご協力をお願いします。 このニュースグループは、xemacs@xemacs.org というメールリストからの発信、受信を 双方向に行うことができます。ネットニュースに簡単にアクセスできないような場合は、 newsgroup に代わってメールリストを読むことができます。メールリストへの追加 ご希望の方は、xemacs-request@xemacs.org へメールをお送りください。 (直接リストにメールを送信しないでください。) XEmacs の保守担当者は、定期的にニュースグループを読んでいます。そして報告された バグに対して迅速に修正をするように努めています。しかしながら、すべての メッセージが保守担当者から返答を受けることができるわけではありません。 保守担当者以外に多数の人達がニュースグループを読んでおり、通常彼らからも 出くわした問題を解決するための助言を得ることができます。 ニュースグループから得られる情報以上に、詳細なサポートが必要な場合は、 SERVICE ファイル(上述)を参照してください。 そのファイルに、担当者がリストされています。 XEmacs のメールリストについての詳細は、 /usr/local/lib/xemacs-$VERSION/etc/MAILINGLISTS のファイルを参照してください。

非制約事項

XEmacs は、フリーのソフトウェアです。 XEmacs General Public License に述べられている限りにおいて、だれでも XEmacs やそれに付随したもののコピー、およびリファレンスマニュアルに表示されている 内容のコピーを、任意の人に提供することが許されています。

XEmacs は、UNIX システムの配布物とともにパッケージされて提供されることがありますが、 XEmacs は常にそれらのシステムに関するライセンスの範囲外です。もし XEmacs もそのライセンスに含まれているとすれば、それは配布許可要項に反します。 いかなる人も XEmacs の配布に関しては何の制約も受けてはならない、というのが General Public License の本来の目的です。

関連項目
X(1), xlsfonts(1), xterm(1), xrdb(1), emacs(1), vi(1)

著者

XEmacs は、Chuck Thompson <cthomp@xemacs.org>、Ben Wing <ben@xemacs.org>、 Jamie Zawinski <jwz@netscape.com>、Richard Mlynarik <mly@adoc.xerox.com>、 Martin Buchholz <mrb@eng.sun.com> 他、によって書かれました。 Free Software Foundation の Richard Stallman の書いた GNU Emacs バージョン 19 の早期バージョンをもとにしていましたが、 GNU Emacs が使用可能となった後では、その後続リリースに同期されています。 もともとは、(今や存在しない) Lucid, Inc. によって書かれたもので、 Lucid Emacs と呼ばれていました。

Chuck Thompson が XEmacs の再表示の基本部分を書き、 XEmacs の FTP と WWW サイトを保持し、 バージョン 19.11 ( XEmacs とよばれた最初のリリース) からすべての XEmacs の機能がリリースされました。 Ben Wing は、アジア言語のサポート、オンラインマニュアル (マニュアル ページと多くの FAQ を含む)、外部ウィジェットコードを書き、低レベルだった XEmacs サブシステムの多くの基本部分を強化し、書き直しました。 Jamie Zawinski は、 Lucid Emacs の初期バージョン (19.0) から最終バージョン (19.10) までのすべてを リリースし、これらすべてのリリースの主コード貢献者でした。 Richard Mlynarik は、 XEmacs Lisp オブジェクト割り当てシステムを書き直しと、キーマップコードと ミニバッファコードの修正、そして XEmacs と GNU Emacs バージョン 19 の初期の同期を行いました。

その他多くの人も、多大な貢献を続けてきました。詳細な内容(別の観点 から見た XEmacs の長い歴史や鮮明な画像、XEmacs 貢献者たち の人物紹介など)については、 ヘルプメニューの「XEmacs について」を参照してください。

追加情報
XEmacs の追加情報については、 ヘルプメニューの「XEmacs について」(上述)を参照するか、 /usr/local/lib/xemacs-$VERSION/etc/NEWS ファイルをお読みください。または Web ブラウザで

http://www.xemacs.org/

を指定してすると、XEmacs についての最新情報が得られます。

XEmacs についての FAQ (よく尋ねられる質問) も、この URL で見つけることができます。 XEmacs 内の Info システムからは、使用可能な旧バージョンに アクセスすることも可能です。

最新バージョンの XEmacs は、 ftp://ftp.xemacs.org/pub/xemacs/ またはお近くのミラーサイトから匿名 (anonymous) FTP で ダウンロードすることができます。 以下にミラーサイトの一覧を記述します。 ただし、ミラーサイトが変更されてアクセスできない場合もあります。

ftp://ftp.ai.mit.edu/pub/xemacs/
ftp://ftp.uu.net/systems/gnu/xemacs/
ftp://ftp.sunet.se/pub/gnu/xemacs/
ftp://ftp.cenatls.cena.dgac.fr/pub/Emacs/xemacs/
ftp://liasun3.epfl.ch/pub/gnu/xemacs/
ftp://ftp.th-darmstadt.de/pub/editors/xemacs/
ftp://audrey.levels.unisa.edu.au/xemacs/
ftp://sunsite.doc.ic.ac.uk/gnu/xemacs/
ftp://ftp.ibp.fr/pub/emacs/xemacs/
ftp://uiarchive.cso.uiuc.edu/pub/packages/xemacs/
ftp://ftp.technion.ac.il/pub/unsupported/gnu/xemacs/
ftp://thphys.irb.hr/pub/xemacs/

ミラーサイトの最新リストについては、Web サイトをご覧ください。