Emacs

来自站长百科
跳转至: 导航、​ 搜索

Emacs即Editor MACroS(宏编辑器),是一种文本编辑器,在程序员和其他以技术工作为主的计算机用户中广受欢迎.Emacs最初由Richard Stallman于1975年在MIT协同Guy Steele共同完成。这一创意的灵感来源于TECMAC和TMACS,它们是由Guy Steele、Dave Moon、Richard Greenblatt、Charles Frankston等人编写的文本编辑器。

自诞生以来,Emacs演化出了众多分支,其中使用最广泛的两种分别是:1984年由Richard Stallman发起并由他维护至2008年的GNU Emacs,以及1991年发起的XEmacs。XEmacs是GNU Emacs的分支,至今仍保持着相当的兼容性。它们都使用了Emacs Lisp这种有着极强扩展性的编程语言,从而实现了包括编程、编译乃至网络浏览等等功能的扩展。

软件概况[ ]

授权协议:免费软件

软件类别:国外软件 / 编辑器

官方网站:http://www.gnu.org/software/emacs

软件下载:Windows版站长下载 | Linux版站长下载

Emacs的历史[ ]

Emacs在1970年代诞生于MIT人工智能实验室(MIT AI Lab)。在此之前,人工智能实验室的ITS上运行的操作系统PDP-6和PDP-10的默认编辑器是一个叫TECO(Text Editor and Corrector)的行编辑器。与现代的文本编辑器不同,TECO将击键、编辑和文本显示按照不同的模式进行处理,稍晚出现的vi与它有些类似。在TECO上击键并不会直接将这些字符插入到文档里去,必须先输入一系列相应的TECO指令,而被编辑的文本在输入命令的时候是不会显示在屏幕上的。在如今还在使用的UNIX编辑器ed(ed)上,我们还能看到类似的工作方式。

1970年代初,Richard Stallman访问Stanford AI Lab时见到了那里的"E" editor。这种编辑器有着所见即所得的直观特点,深深打动了Stallman。后来Stallman回到MIT,那时候MIT AI lab的黑客Carl Mikkelsen 已经给TECO加上了称作“Control-R”的编辑显示模式,使得屏幕能跟随用户的每次击键刷新显示。Stallman重写了这一模式,使它运行得更有效率,后来又加入了宏,允许用户重新定义运行TECO程序的键位。

这一新版的TECO立刻在AI实验室流行开来,并且很快积累起了大量自定义的宏,这些宏的名字通常就以“MAC”或者“MACS”结尾,意为“宏”(macro)。两年后,Guy Steele承担起统一当时存在的各种键盘命令集的工作。Steele和Stallman经过一夜奋战,最终由Stallman完成了这一任务,包括一套扩展和注释新的宏包的工具。

这个完成的系统被称作EMACS,代表“Editing MACroS”。根据Stallman的说法,他采用这个名字是“因为当时<E>在ITS里还没有被当作缩写用过。”("because <E> was not in use as an abbreviation on ITS at the time." )也有说法指出,当时波士顿在MIT附近有家名为“Emack & Bolio's”的商店出售的冰激凌很受欢迎,Dave Moon是那里的老主顾,他就将ITS上一个给文本排版的程序命名为BOLIO,然而Stallman并不喜欢甚或根本不知道那种冰激凌,此事后来成了黑客界的一桩公案。

Stallman意识到过多的定制、在开发过程中事实上的分支以及针对特殊用途的限制,威胁着Emacs的发展。后来他写道:“ Emacs的发布基于社群共享,这意味着所有的发展都要反馈给我,由我进行整合和发布。("EMACS was distributed on a basis of communal sharing, which means all improvements must be given back to me to be incorporated and distributed.") ”

最初的Emacs同TECO一样只能运行在PDP-10系统。Emacs虽然是在TECO的基础上发展起来的,不过它已经足以被认为是一个新的文本编辑器了。很快,Emacs就成为ITS上的标准编辑程序,接着由Michael McMahon移植到Tenex和TOPS-20系统上。

特点[ ]

Emacs不仅仅是一个编辑器,它是一个集成环境,或可称它为集成开发环境,这些功能如让用户置身于全功能的操作系统中,在基于编辑器的功能基础上,Emacs自行开发了一个“bourne-shell-like”的shell:EShell。Emacs还可以:

  • 收发电子邮件
  • 通过FTP/TRAMP编辑远程档案
  • 通过Telnet登录主机
  • 上新闻组
  • 登陆IRC和朋友交流
  • 查看日历
  • 撰写文章大纲
  • 对多种编程语言的编辑
  • 调试程序,结合GDB,EDebug等。支持C/C++PerlPythonLisp等等
  • 玩游戏
  • 计算器
  • 记日记
  • 管理日程,Task,ToDo,约会等
  • 个人信息管理
  • 目录管理
  • 文件比较
  • 阅读info和man文档
  • 浏览网站
  • 为各种程序(TeX等)提供统一的操作界面
  • display editor
  • 实时编辑器
  • 高级编辑器
  • Self-documenting
  • 可定制性
  • 可扩展性(集成Lisp语言)
  • 支持X Window环境

使用手册[ ]

Emacs安装[ ]

Emacs/Emacs使用[ ]

Emacs/Emacs插件[ ]

Emacs/Emacs其他[ ]

相关条目[ ]

参考来源[ ]