XEMAC

XEmacs
XEMAC
XEmacs logo.png
Xemacs-21.5.b29.png
XEmacs 21.5.29 (베타)에일리어스 방지 폰트 탑재
원저작자루시드 주식회사
개발자XEmacs 커뮤니티
최종 릴리즈
21.4.22[1] / 2009년 1월 30일; 13년 전(2009년 1월 30일)
프리뷰 릴리즈
2013년[2] 6월 23일, 9년 전(2013년 6월 23일)
운영 체제GNU, Linux, Windows, macOS,[3] BSD 등에 대한 크로스 플랫폼
유형텍스트 편집기
면허증.GPL-2.0 이후
웹 사이트www.xemacs.org

XEmacsMicrosoft Windows뿐아니라 거의 모든 Unix 계열 운영 체제에서 실행되는 그래픽 및 콘솔 기반 텍스트 편집기입니다.XEmacs는 1980년대 후반의 GNU Emacs 버전을 기반으로 하는 포크입니다.모든 사용자는 GNU General Public License 버전 2 이후 버전에서 사용할 수 있는 무료 소프트웨어로서 XEmac을 다운로드, 사용 및 수정할 수 있습니다.

역사

1987년과 1993년 사이에 새로운 버전의 GNU Emacs(버전 [4]19로 추정)를 출시하는 데 상당한 지연이 발생했습니다.1980년대 후반, 리처드 P. 가브리엘루시드사는 Energize C++ IDE를 지원하기 위해 Emacs를 출하해야 하는 상황에 직면했습니다.그래서 Lucid는 1991년에 출시된 그들의 새로운 버전이 GNU Emacs 버전 19의 기초를 형성할 [5]목적으로 코드를 개선하고 확장하기 위해 팀을 모집했다.그러나 그들은 자유 소프트웨어 재단(FSF)[6]이 자신들의 변경 사항을 받아들일 때까지 기다릴 시간이 없었다.루시드는 Emacs 버전을 계속 개발하고 유지하며, FSF는 1년 후에 GNU Emacs 버전 19를 출시했으며, 일부 코드를 병합하고 일부 [7]다른 부분을 채택했다.

1994년에 루시드가 폐업했을 때, 다른 개발자들이 [8]그 코드를 알게 되었다.Sun Microsystems와 같은 회사들은 Lucid Emacs를 계속 출하하기를 원했지만, 결국 누가 상표 "Lucid"를 지배하게 될 지 아무도 알지 못했기 때문에 이 상표를 사용하는 것이 법적으로 모호해졌다.따라서 XEmac의 "X"[9]는 XEmac 개발에 관여하는 당사자들 간의 타협을 나타낸다.

따라서 XEmacs의 "X"는 X Window System과 관련이 없습니다.XEmacs는 항상 X11 이외의 텍스트 기반 단말기와 윈도우 시스템을 지원했습니다.인스톨러에서는, X의 서포트 유무에 관계없이, XEmac 와 GNU Emac 의 양쪽 모두를 컴파일 할 수 있습니다.한동안 XEmacs는 GNU Emacs에 없는 컬러링과 같은 단말기 고유의 기능도 가지고 있었다.

소프트웨어 커뮤니티에서는 일반적으로 GNU Emacs, XEmacs(및 다수의 유사한 에디터)를 집합적으로 또는 개별적으로 Emacs(박센과 유사) 또는 Emacs라고 부릅니다.이것들은 모두 원래의 TECO Emacs에서 영감을 얻었기 때문입니다.

특징들

XEmac에는 단어와 단락조작하는 명령어(삭제, 이동, 이동 등), 소스 코드를 읽기 쉽게 하기 위한 구문 강조 표시 및 사용자가 정의한 임의의 편집 명령어 배치를 수행하기 위한 "키보드 매크로"가 있습니다.

XEmacs에는 포괄적인 온라인 도움말과 XEmacs 웹사이트에서 구할 수 있는 5개의 매뉴얼이 있습니다.XEmacs는 많은 프로그래밍 및 마크업 언어 편집 모드뿐만 아니라 많은 인간 언어도 지원합니다.XEmacs는 Unix/Linux, BSDMac OS X를 포함한 많은 운영 체제에서 실행됩니다. Mac OS에서 실행하려면 X11이 필요합니다. 반면 개발은 네이티브 Carbon 버전에서 시작되었습니다.Microsoft Windows 환경용 XEmac에는 네이티브인스톨러와 Cygwin 패키지의 2가지 버전이 있습니다.

사용자는 Emacs Lisp 언어를 사용하여 에디터의 거의 모든 기능을 재구성할 수 있습니다.Lisp 코드를 변경해도 사용자가 편집기를 재시작하거나 다시 컴파일할 필요가 없습니다.프로그래머들은 미리 작성된 많은 Lisp 확장자를 사용할 수 있게 되었습니다.

많은 패키지가 XEmac의 기능을 확장 및 보완하기 위해 존재합니다.사용자는 XEmacs의 패키지 매니저를 통해 단편적으로 다운로드하거나 xemacs-sumo 패키지 또는 "sumo tarballs"[10]를 사용하여 일괄 적용할 수 있습니다.XEmacs의 패키지 매니저는 GNU Emacs에 의해 사용되는ELPA 패키지 시스템보다 거의 10년 이전이며 호환성이 없습니다.XEmacs 21.1 기능은 XEmacs 코어에서 벗어나 패키지로 별도로 사용할 수 있게 되었습니다.이것에 의해, 유저는 불필요하게 패키지를 제외할 수 있습니다.XEmacs는 GNU Emacs가 개발되기 전에 10년 이상 패키지 매니저를 가지고 있었지만, XEmacs는 새로운 패키지를 로드하기 전에 재기동할 필요가 있습니다.

발전

프로젝트 시작부터 XEmac 개발자들은 잦은 출시 [11]주기를 목표로 했습니다.또, XEmac은, 다른 emacsen보다 먼저 새로운 기능(예를 들면, 인라인 이미지 개척, 가변 폰트, 터미널 컬러링)을 제공하는 것도 목적으로 하고 있습니다.수년간 개발자들은 일관성을 개선하고 데이터 추상화를 강조하는 최신 프로그래밍 규칙을 따르기 위해 코드를 광범위하게 재작성했습니다.XEmacs에는 독립적으로 관리되는 Lisp 패키지를 위한 패키징 시스템이 있습니다.최신 버전은 GTK+ 지원[12] 및 Mac OS [13]X용 네이티브 Carbon 포트를 갖추고 있습니다.

XEmacs는 익명의 CVS, 나중에 Mercurial 액세스, 공개적으로 액세스할 수 있는 개발 메일 목록 등 항상 매우 개방적인 개발 환경을 갖추고 있습니다.XEmacs에는 500페이지 이상의 내부 매뉴얼이 포함되어 있습니다(Wing, et al., 2004).[14]

Unicode 지원은 XEmac에서 문제가 되고 있습니다.2005년 현재 출시된 버전은 Unicode를 지원하기 위해 Mull-UCS라고 불리는 유지보수가 되지 않은 패키지에 의존하고 있는 반면, XEmacs의 개발 부문은 2002년 5월부터 외부 Unicode 인코딩에 대한 강력한 네이티브 지원을 해 왔지만, 내부 Mull 문자 집합은 완전성이 부족하여 2005년 [15]9월부터 개발이 중단된 것으로 보인다.

XEmacs 개발은 안정적, 감마 [11]및 베타라는 3가지 부문을 특징으로 하며, 베타에서는 새로운 기능을 먼저 제공하지만 테스트, 안정성 및 보안성이 저하될 수 있습니다.개발자들은 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와 GNU Emacs 간의 분할에 대한 설명을 발표한 XEmacs의 주요 개발자가 있다.예를 들어 Stephen Turnbull이 양측의 주장을 요약한 것이다[16].주요 의견 불일치 중 하나는 저작권 할당에 대한 다른 관점을 포함한다.그 FSFFSF가 가능한 반면, XEmacs는 개발자들 가끔씩 기업들이 신중한 태도 때문에 적절히 끓여라에 수탁 직무와 관련된 그들의 코드 라이센스를 구입할 수 있다는 저작권 업무가 부족 주요 기업 관여하는 것을 허용했다고 주장해 왔다 그것은 GPLviolations,[17]에 대한 코드를 방어할 수 있도록 필요한 저작권 할당을 본다hareholders, 기업은 어웨이 코드를 완전히 [citation needed]할당하기 위한 허가를 받는 데 어려움을 겪을 수 있습니다.

Free Software [18]Foundation은 합병 시도 및 교차 개발 시 이전 저작권 할당으로 인해 XEmacs 코드의 많은 저작권을 보유하고 있습니다.새로운 XEmacs 코드 조각이 GNU Emacs에 들어갈지 여부는 종종 코드를 FSF에 할당하려는 개별 기여자의 의지에 달려 있습니다.어느 에디터의 새로운 기능은 보통 조만간 다른 에디터에 표시됩니다.게다가 많은 개발자들이 두 프로젝트에 모두 기여하고 있습니다.

XEmacs 프로젝트에는 GNU Emacs API와의 호환성을 유지하는 정책이 있습니다.예를 들어 네이티브 익스텐트 기능을 통해 호환성 레이어를 구현하는 오버레이를 제공합니다."XEmacs 개발자들은 특히 리스프 수준에서 [19]그들의 코드가 GNU Emacs와 호환되도록 노력합니다."

XEmacs의 개발이 늦어짐에 따라, XEmacs는 GNU [20]Emacs로부터 많은 코드를 통합한 반면, GNU Emacs는 이전의 많은 XEmacs만의 기능을 구현했다.이로 인해 일부 사용자들은 XEmacs의 사망을 선언하고 개발자들이 대신 [21]GNU Emacs에 기여하는 것을 옹호하고 있다.

Gnus와 Dired같은 많은 주요 패키지는 이전에 둘 [22]다 작동하도록 개발되었지만, Gnus의 주요 개발자는 XEmacs 지원을 [23][24]중단한 다른 패키지를 언급하며 Gnus 트리를 메인 Emacs 트렁크로 이동하고 XEmacs 호환성 코드를 제거하겠다는 의도를 발표했다.

2015년 12월 프로젝트 관리자인 Stephen J.Turnbull은 XEmacs 개발 목록에 개발자 감소와 GNU Emacs의 진보로 인해 프로젝트가 향후 GNU Emacs와의 호환성에 관해 "교차로에 서 있다"는 메시지를 게시했습니다.개발을 완전히 종료하거나, 현재 버전의 GNU Emacs에서 새로운 포크를 만들거나,[25] 미래에 개발을 재개하고 싶은 경우에 대비하여 프로젝트를 유지 보수 모드로 전환하거나 하는 등 향후의 방향을 위해 여러 가지 옵션이 배치되어 있습니다.이 마지막 옵션은 웹사이트와 개발 자원에 대한 최소한의 지원을 제공하겠다는 개별 기여자들의 약속으로 결정된 방향이었습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ http://www.xemacs.org/Releases/21.4.22.html 를 참조해 주세요.
  2. ^ http://www.xemacs.org/Releases/21.5.34.html 를 참조해 주세요.
  3. ^ "XEmacs for Darwin / MacOS X".
  4. ^ "Emacs Timeline". Jwz.org. Retrieved 1 December 2014.
  5. ^ commandline.org.uk https://web.archive.org/web/20101122021051/http://commandline.org.uk/2007/history-of-emacs-and-xemacs/. Archived from the original on November 22, 2010. {{cite web}}:누락 또는 비어 있음 title=(도움말)
  6. ^ "Xemacs from FOLDOC". Foldoc.org. Retrieved 1 December 2014.
  7. ^ Richard Stallman. "The Origin of XEmacs". Stallman.org. Retrieved 1 December 2014.
  8. ^ john s jacobs anderson, stealing content the FAQ. "XEmacs: History of XEmacs". Xemacs.org. Archived from the original on December 18, 2014. Retrieved 1 December 2014.
  9. ^ "XEmacs Internals Manual: A History of Emacs". Xemacs.org. Retrieved 1 December 2014.
  10. ^ john s jacobs anderson using old content with no listed author. "XEmacs: Quickstart Package Guide". Xemacs.org. Retrieved 1 December 2014. {{cite web}}: author=범용명(도움말)이 있습니다.
  11. ^ a b "XEmacs: Release Notice Archive". Xemacs.org. Retrieved 1 December 2014.
  12. ^ Stephen J. Turnbull. "XEmacs: XEmacs on the GTK platform". Us.xemacs.org. Archived from the original on 4 March 2016. Retrieved 1 December 2014.
  13. ^ "Archived copy". Archived from the original on 2007-09-14. Retrieved 2009-06-22.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  14. ^ "XEmacs Internals Manual: Table of Contents".
  15. ^ "Mule-on-Windows, full Unicode support XEmacs". Calypso.tux.org. Archived from the original on 4 September 2015. Retrieved 1 December 2014.
  16. ^ "XEmacs: XEmacs vs. GNU Emacs". Xemacs.org. Retrieved 1 December 2014.
  17. ^ "Why the FSF gets copyright assignments from contributors - GNU Project - Free Software Foundation". Fsf.org. Retrieved 1 December 2014.
  18. ^ "Xemacs vs GNU Emacs". XEmacs is GNU software because it's a modified version of a GNU program. And it is GNU software because the FSF is the copyright holder for most of it... XEmacs has no choice, because much of its code is copyrighted by the Free Software Foundation, and is only available to XEmacs under the GPL.
  19. ^ "Frequently asked questions about XEmacs: Introduction". Xemacs.org. Retrieved 1 December 2014.
  20. ^ "XEmacs 21.5.33 release notes". Xemacs.org. Archived from the original on 4 March 2016. Retrieved 1 December 2014.
  21. ^ "XEmacs is Dead. Long Live XEmacs!". Steve-yegge.blogspot.com. Archived from the original on 1 May 2008. Retrieved 1 December 2014.
  22. ^ "A Comparison of Xemacs and Gnu Emacs". Luckily many of the package maintainers are attempting to make their modules work with both Xemacs and Gnu Emacs, though the functionality may not be identical.
  23. ^ "Moving Gnus development to Emacs?".
  24. ^ "It's About Ethics in Gnus Development". January 2016.
  25. ^ "XEmacs at a crossroads". Archived from the original on 2016-10-14. For the past decade, work on XEmacs has continued at a low level, and mostly not visible in user-level features. In the meantime, GNU Emacs has implemented almost all XEmacs features...At the same time, a number of features that XEmacs lacks, and would require substantial effort to port, have been implemented...the developers who have been the primary contributors of code currently have personal and professional commitments that prevent them from devoting enough time to XEmacs to implement the large features necessary for full compatibility with GNU Emacs for the foreseeable future...several developers who have contributed heavily in the past have acknowledged that they *won't* be doing so for the foreseeable future. It's only fair that we let you, our users and supporters, know about that.

외부 링크