XEmacs

XEmacsとは



XEmacsは、GUI及びCUI環境で利用可能なテキストエディタで、主にUnix系オペレーティングシステムとMicrosoft Windowsで動作します。このソフトウェアは、1980年代後半のGNU Emacsのバージョンを基にしたフォークであり、ユーザーはGNU General Public Licenseのもと、自由にダウンロード、利用、修正ができます。

歴史



XEmacsの開発は、1987年から1993年の間のGNU Emacs新バージョンのリリース遅延に起因しています。当時Lucid社がEmacsコードの改善を担当し、新しいバージョンをリリースする必要がありました。この新バージョンは、GNU Emacsのバージョン19を形成することを目指していましたが、その前にフリーソフトウェア財団(FSF)が受け入れる余地がなかったため、Lucid社は自社のバージョンを開発し続けました。その後、FSFはLucid社のコードの一部を統合し、GNU Emacsのバージョン19を出しました。

1994年にLucid社は廃業しましたが、他の開発者たちがそのコードを引き継ぎました。ただし、「Lucid」という商標の管理が不透明であったため、「XEmacs」の「X」はその当事者間のコンセンサスを示すものです。これにより、XEmacsはX Window Systemとは関連がないことが明確になっています。また、XEmacsはテキスト端末やX11以外のウィンドウシステムのサポートも提供しています。かつては、シンタックスハイライトなどの機能を提供し、GNU Emacsにはない独自の機能も搭載していました。

このように、ソフトウェア開発コミュニティでは、GNU EmacsおよびXEmacsとその他の類似エディタを総称して「emacsen」と呼びます。この呼称は、両者がTECO Emacsからインスピレーションを受けていることからきています。

機能



XEmacsは、単語や段落の編集、シンタックスハイライト、ユーザー定義のキーボードマクロ機能など、多様なテキスト編集機能を提供します。また、XEmacsのウェブサイトからはマニュアルや包括的なオンラインヘルプにアクセスできます。

XEmacsは多数のプログラミング言語やマークアップ言語の編集モードをサポートし、さらには多言語にも対応します。Unix/Linux、BSD、Mac OS Xといったオペレーティングシステムで動作します。Mac OSではX11が必要ですが、ネイティブCarbonバージョンも開発が進められています。Windows版にも、ネイティブインストーラとCygwinパッケージが存在します。

ユーザーはEmacs Lisp言語を使用して、エディタの機能をほぼ全て再設定できます。これにより、Lispコードを変更する際にエディタ全体をリコンパイルする必要がなくなります。また、多くのLisp拡張も事前に用意されています。

XEmacsはパッケージ管理システムを持ち、ユーザーはこのシステムを利用して新機能をダウンロードし、不要なパッケージを省くことが可能です。XEmacs 21.1以降、新機能が独立したパッケージとしても利用できるようになりました。これは、ユーザーが必要に応じて機能を選択できることを意味します。

開発



XEmacsの開発者は、プロジェクト開始から頻繁なリリースを目指していましたが、現在では年に2、3回のリリースとなっています。XEmacsは新しい実験的機能を導入することで、他のエディタに要素を提供し、独自性を保っています。また、コードの整合性やデータ抽象化を重視し、近代プログラミング慣行に従って広範囲にコードが書き直されています。

XEmacsは、オープンな開発環境を持ち、コミュニティからのフィードバックを受け入れる柔軟な体制を整えています。ただし、Unicodeのサポートについては問題があり、依存しているMule-UCSというパッケージが2005年には保守が終了しています。

XEmacsとGNU Emacs



XEmacsの開発者間には、GNU Emacsとの違いについて明確にする意見もあります。著作権譲渡の見解が異なる点がその一つで、GNU EmacsのFSFは著作権譲渡を必要とする一方で、XEmacsではその必要がなく、企業の関与を促すとしています。また、XEmacsの開発は遅くなりつつあり、GNU Emacsとの共通部分も増えてきています。これにより、一部のユーザーはXEmacsの将来に疑問を持つようになりました。

2015年には、XEmacsの開発者が将来の方針について議論し、メンテナンスモードへの移行を決定するなど、先行きが不透明な状態が続いています。XEmacsの重要なパッケージの多くはGNU Emacsとの両方で機能するように設計されていますが、今後の方向性が注目されています。

まとめ



XEmacsは、テキスト編集の優れた機能を提供する一方、その開発状況は変化し続けています。ユーザーは多様なプログラミング言語やマークアップ言語に対応し、パッケージを通じて新しい機能を追加することも可能です。しかし、GNU Emacsとの競争や開発者の減少など、将来的な課題も多く、それらに対してどのように対処するかが今後の焦点となるでしょう。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。