XEmacs 21.5.29 (ベータ版)、アンチエイリアスフォントを搭載 | |
| 原作者 | ルーシッド株式会社 |
|---|---|
| 開発者 | XEmacs コミュニティ |
| 最終リリース | 21.4.22 [1]
/ 2009年1月30日 |
| プレビューリリース | 21.5.35 [2]
/ 2023年5月13日 |
| オペレーティング·システム | GNU、Linux、Windows、macOS、[3] BSDなどへのクロスプラットフォーム |
| タイプ | テキストエディタ |
| ライセンス | GPL-2.0以降 |
| Webサイト | このサイトについて |
XEmacsは、ほぼすべてのUnix 系オペレーティング システムとMicrosoft Windowsで動作するグラフィカルおよびコンソールベースのテキスト エディターです。XEmacs は、1980 年代後半のGNU Emacsのバージョンに基づいたフォークです。XEmacs は、 GNU General Public Licenseバージョン 2 またはそれ以降のバージョンに基づいて利用できるフリー ソフトウェアとして、すべてのユーザーがダウンロード、使用、および変更できます。
歴史
1987年から1993年にかけて、 GNU Emacsの新バージョン(バージョン19と推定)のリリースに大幅な遅れが生じました。 [4] 1980年代後半、リチャード・P・ガブリエルのLucid Inc.は、Energize C++ IDEをサポートするEmacsを出荷する必要に直面しました。そこでLucidは、コードの改善と拡張を行うチームを募集し、[5] 1991年にリリースされた新バージョンがGNU Emacsバージョン19の基礎となることを意図していました。しかし、彼らには、彼らの変更がフリーソフトウェア財団(FSF)に受け入れられるのを待つ時間がありませんでした。[6] Lucidは、Emacsのバージョンの開発と保守を継続し、FSFは1年後にGNU Emacsのバージョン19をリリースし、コードの一部をマージし、他の部分を調整しました。[7]
1994年にLucid社が倒産すると、他の開発者がそのコードを引き継ぎました。[8] Sun Microsystems などの企業はLucid Emacsの出荷を継続したいと考えていましたが、商標「Lucid」を誰が最終的に管理するかがわからなかったため、商標の使用は法的に曖昧になっていました。したがって、XEmacsの「X」は、XEmacsの開発に携わる関係者間の妥協を表しています。[9]
したがって、XEmacsの「X」はXウィンドウシステムとは関係ありません。当初はX11のみをサポートしていましたが、[10] XEmacsはX11以外のテキストベースの端末とウィンドウシステムをサポートしました。インストーラーは、XEmacsとGNU Emacsの両方をXサポートの有無にかかわらずコンパイルできます。一時期、XEmacsには、 GNU Emacsにはない色付けなどの端末固有の機能もありました。
ソフトウェア コミュニティでは、一般的に GNU Emacs、XEmacs (および他の同様のエディター) を総称または個別にemacsen (oxen との類似性から) またはemacsと呼びます。これは、どちらもオリジナルのTECO Emacsからインスピレーションを得ているためです。
特徴
XEmacs には、単語や段落を操作するコマンド(削除、移動、移動など)、ソース コードを読みやすくする構文強調表示、ユーザーが定義した編集コマンドの任意のバッチを実行する「キーボード マクロ」があります。
XEmacs には包括的なオンライン ヘルプがあり、XEmacs Web サイトから 5 つのマニュアルを入手できます。XEmacs は多くの言語をサポートし、多くのプログラミング言語やマークアップ言語の編集モードもサポートしています。XEmacs は、Unix / Linux、BSD、Mac OS Xなど、多くのオペレーティング システムで動作します。Mac OS で実行するにはX11 が必要ですが、ネイティブのCarbon[アップデート]バージョンの開発は開始されています。Microsoft Windows 環境用の XEmacs には、ネイティブ インストーラーとCygwinパッケージの 2 つのバージョンがあります。
ユーザーは、 Emacs Lisp言語を使用して、エディターのほぼすべての機能を再構成できます。Lisp コードを変更しても、エディターを再起動したり再コンパイルしたりする必要はありません。プログラマーは、事前に作成された Lisp 拡張機能を多数提供しています。
XEmacs の機能を拡張および補完するパッケージが多数存在します。ユーザーは、XEmacs のパッケージ マネージャーを使用してそれらを個別にダウンロードするか、xemacs-sumo パッケージまたは「sumo tarballs」を使用して一括で適用することができます。[11] XEmacs のパッケージ マネージャーは、GNU Emacs で使用される ELPA パッケージ システムより 10 年近く前に存在し、互換性がありません。XEmacs 21.1 以降、機能は XEmacs コアから移動され、パッケージとして個別に利用できるようになっています。これにより、ユーザーは不要なパッケージを除外できます。XEmacs には、GNU Emacs が開発する 10 年以上前からパッケージ マネージャーがありましたが、新しいパッケージをロードする前に XEmacs を再起動する必要があります。
発達
プロジェクト開始当初から、XEmacs の開発者は頻繁なリリース サイクルを目指していました。[12] また、実験に対するオープン性も目指しており、XEmacs は他の emacsen よりも早く新しい機能を提供することがよくあります。たとえば、先駆的なインライン イメージ、可変フォント、ターミナル カラーリングなどです。開発者は長年にわたり、一貫性を向上させ、データ抽象化を強調する最新のプログラミング ルールに従うために、コードを大幅に書き直してきました。XEmacs には、独立して保守されている Lisp パッケージ用のパッケージ システムがあります。最新[アップデート]バージョンでは、GTK+がサポートされ[13] 、Mac OS X 用のネイティブ Carbon ポートが提供されています。[14]
XEmacsは、匿名CVS、後にMercurialアクセス、公開開発メーリングリストなど、常に非常にオープンな開発環境を備えていました。XEmacsには500ページを超える内部マニュアルが付属しています(Wingら、2004年)。[15]
XEmacs ではUnicodeのサポートが問題となっている。2005 年現在、リリース版はUnicode をサポートするためにMule -UCS と呼ばれるメンテナンスされていないパッケージに依存している。一方、XEmacs の開発ブランチは 2002 年 5 月から外部 Unicode エンコーディングの強力なネイティブ サポートを提供しているが、内部 Mule 文字セットは完全性に欠けており、2005 年 9 月現在開発は停滞しているようだ。[16]
XEmacsの開発には、安定版、ガンマ版、ベータ版の3つのブランチがあり、[12] ベータ版には最初に新機能が追加されますが、テスト、安定性、セキュリティが劣る可能性があります。開発者は1997年2月9日にバージョン20.0を、1998年7月12日にバージョン21.0をリリースしました。2009年1月の時点で、安定版ブランチはバージョン21.4.22、ベータ版ブランチはバージョン21.5.28に達しています。2007年時点ではガンマ版は存在しません。XEmacs [アップデート]21.4.0のリリース以降、バージョン番号は、2番目の数字が奇数の場合は開発バージョン、2番目の数字が偶数の場合は安定版リリースを示すという方式になっています。
XEmacs と GNU Emacs
XEmacs の主要開発者の何人かは、XEmacs と GNU Emacs の分裂についての説明を公表している。たとえば、Stephen Turnbull による双方の議論の要約[17]などである。主な意見の相違の 1 つは、著作権の譲渡に関する見解の相違である。FSF は、コードを GPL 違反から守るためには FSF への著作権の譲渡が必要であると考えている[18]。一方、XEmacs の開発者は、著作権の譲渡がないことで大企業が関与できるようになったと主張している。企業はコードをライセンスできる場合もあるが、株主に対する受託者義務 に関する慎重な姿勢から、コードを完全に譲渡する許可を得るのに苦労する可能性があるからである。[要出典]
フリーソフトウェア財団は、マージの試みやクロス開発中に著作権が譲渡されたため、XEmacs コードの著作権の大部分を保有しています。 [19] 新しい XEmacs コードが GNU Emacs に組み込まれるかどうかは、多くの場合、個々の貢献者がコードを FSF に譲渡する意思があるかどうかにかかっています。どちらかのエディタの新機能は、遅かれ早かれもう一方のエディタにも反映されるのが普通です。さらに、多くの開発者が両方のプロジェクトに貢献しています。
XEmacs プロジェクトは、GNU Emacs APIとの互換性を維持する方針をとっています。たとえば、ネイティブの拡張機能を介してオーバーレイを実装する互換性レイヤーを提供しています。「XEmacs 開発者は、特に Lisp レベルで、コードを GNU Emacs と互換性のある状態に保つよう努めています。」[20]
XEmacsの開発が遅くなるにつれ、XEmacsはGNU Emacsの多くのコードを取り入れるようになり[21] 、一方でGNU Emacsは以前はXEmacsのみだった多くの機能を実装した。このため、一部のユーザーはXEmacsの死を宣言し、XEmacsの開発者はGNU Emacsに貢献すべきだと主張した[22] 。
GnusやDiredなど多くの主要パッケージは、以前は両方で動作するように開発されていましたが[23] 、 Gnusの主な開発者は、他のパッケージも同様にXEmacsのサポートを廃止していることを理由に、GnusツリーをメインのEmacsトランクに移動し、XEmacs互換コードを削除する意向を発表しました。[24] [25]
2015年12月、プロジェクト管理者のスティーブン・J・ターンブルは、開発者の減少とGNU Emacsの進歩により、プロジェクトはGNU Emacsとの将来の互換性に関して「岐路に立っている」と述べたメッセージをXEmacs開発リストに投稿した。将来の方向性については、開発を完全に終了する、現在のバージョンのGNU Emacsから新しいフォークを作成する、将来誰かが開発を再開したい場合に備えてプロジェクトをメンテナンスモードにするなど、いくつかの選択肢が提示された。 [26]この最後の選択肢が方向性として決定され、個々の貢献者がWebサイトと開発リソースに最小限のサポートを提供するという約束をした。
2020年、XEmacsプロジェクトは、以前のホストであるBitbucketのMercurialサポートの廃止に伴い、 MercurialソースリポジトリをHeptapodに移行しました。2023年5月、プロジェクトはベータバージョン21.5.35「kohlrabi」で、ほぼ10年ぶりのXEmacsの新しいベータバージョンをリリースしました。[27]
SXEmacs

SXEmacs プロジェクトは XEmacs 21.4 をフォークし、10 年以上にわたって開発を続け、2020 年になっても新しいリリースを発行しました。
参照
参考文献
- ^ 「XEmacs: XEmacs 21.4.22 "Instant Classic" がリリースされました」。2009年1月30日。 2023年7月19日閲覧。
- ^ 「XEmacs: XEmacs 21.5.35 "kohlrabi" がリリースされました」。2023年5月13日。 2023年7月19日閲覧。
- ^ 「Darwin / MacOS X 用 XEmacs」。
- ^ 「Emacs Timeline」Jwz.org . 2014年12月1日閲覧。
- ^ 「Command Line Warriors - EmacsとXEmacsの歴史」。commandline.org.uk。2010年11月22日時点のオリジナルよりアーカイブ。
- ^ 「FOLDOC の Xemacs」。Foldoc.org。2014年12 月 1 日閲覧。
- ^ リチャード・ストールマン。「XEmacsの起源」。Stallman.org 。2014年12月1日閲覧。
- ^ ジョン・S・ジェイコブス・アンダーソン、FAQ のコンテンツの盗難。「XEmacs: XEmacs の歴史」。Xemacs.org。2014年 12 月 18 日時点のオリジナルよりアーカイブ。2014年12 月 1 日に閲覧。
- ^ 「XEmacs 内部マニュアル: Emacs の歴史」Xemacs.org 。2014年12 月 1 日閲覧。
- ^ 「Lucid Emacs は 30 年前にリリースされました」。www.jwz.org。2022 年 8 月 20 日。2022 年 8 月 25 日閲覧。
- ^ john s jacobs anderson は著者名が記載されていない古いコンテンツを使用しています。「XEmacs: クイックスタート パッケージ ガイド」。Xemacs.org。2014年12月 1 日閲覧。
{{cite web}}:|author=一般的な名前があります (ヘルプ) - ^ ab 「XEmacs: リリース通知アーカイブ」。Xemacs.org 。 2014年12月1日閲覧。
- ^ Stephen J. Turnbull. 「XEmacs: GTK プラットフォーム上の XEmacs」。Us.xemacs.org。 2016 年 3 月 4 日時点のオリジナルよりアーカイブ。 2014 年12 月 1 日閲覧。
- ^ “Home”. 2007年9月14日時点のオリジナルよりアーカイブ。2009年6月22日閲覧。
- ^ 「XEmacs 内部マニュアル: 目次」.
- ^ 「Mule-on-Windows、Unicode をフルサポートする XEmacs」Calypso.tux.org。2015 年 9 月 4 日時点のオリジナルよりアーカイブ。2014 年12 月 1 日閲覧。
- ^ 「XEmacs: XEmacs vs. GNU Emacs」Xemacs.org 。 2014年12月1日閲覧。
- ^ 「なぜ FSF は貢献者から著作権譲渡を受けるのか - GNU プロジェクト - フリーソフトウェア財団」Fsf.org 。2014年12 月 1 日閲覧。
- ^ 「Xemacs vs GNU Emacs」。XEmacs
は GNU プログラムの修正版であるため、GNU ソフトウェアです。また、ほとんどの著作権が FSF にあるため、GNU ソフトウェアでもあります... XEmacs には選択の余地がありません。そのコードの多くは Free Software Foundation によって著作権が保護されており、GPL の下でのみ XEmacs で利用できるからです。
- ^ 「XEmacs に関するよくある質問: はじめに」Xemacs.org 。2014年12 月 1 日閲覧。
- ^ 「XEmacs 21.5.33 リリースノート」。Xemacs.org。2016年3月4日時点のオリジナルよりアーカイブ。2014年12月1日閲覧。
- ^ 「XEmacs は死んだ。XEmacs 万歳!」Steve-yegge.blogspot.com。2008 年 5 月 1 日時点のオリジナルよりアーカイブ。2014 年12 月 1 日閲覧。
- ^ 「Xemacs と Gnu Emacs の比較」。
幸いなことに、多くのパッケージ メンテナーが、機能は同じではないかもしれませんが、モジュールを Xemacs と Gnu Emacs の両方で動作するようにしようとしています。
- ^ 「Gnus の開発を Emacs に移行する?」
- ^ 「Gnus 開発における倫理について」 2016 年 1 月。
- ^ 「岐路に立つ XEmacs」。2016 年 10 月 14 日にオリジナルからアーカイブ。
過去 10 年間、XEmacs の作業は低レベルで継続され、ユーザー レベルの機能ではほとんど目に見えませんでした。その間、GNU Emacs はほぼすべての XEmacs 機能を実装しました...同時に、XEmacs に欠けていて、移植にかなりの労力を要する機能もいくつか実装されました...コードの主要な貢献者である開発者は、現在、個人的および職業上の責任があり、近い将来に GNU Emacs との完全な互換性に必要な大規模な機能を実装するために十分な時間を XEmacs に費やすことができません...過去に多大な貢献をした開発者の何人かは、近い将来にそうすることは *ない* ことを認めています。ユーザーおよびサポーターの皆さんにそのことをお知らせするのは当然です。
- ^ 「XEmacs: XEmacs 21.5.35 "kohlrabi" がリリースされました」。Xemacs.org 。2023年7月19日閲覧。
外部リンク
- 公式サイト
