学习Emacs系列教程(一):基本使用

转载 2012年03月23日 13:05:17
前言的前言:本人也是初学Emacs,之前对Vim也只接触了一点,所以也谈不上对哪个更喜欢,也分不出哪个更好。写这个教程的目的一是方便自己更好的学习Emacs,
二是没事找事。如果有专家路过还望多指点。

前言:大名鼎鼎的Emacs,传说中程序员的终极武器,已经跨越了文本编辑器,IDE的境界,可以替代操作系统GUI的东东。怀着一种膜拜的心情我决定开始学习Emacs,期望有一天也能成为一代Emacs大侠。

参考书目:
1. GNU Emacs Manual (Emacs 官网有下)
2. O'Relly Learning GNU Emacs, 3rd Edition

一、Emacs的安装使用
     学习软件的第一件事当然是把它下下来, http://ftp.gnu.org/pub/gnu/emacs/windows/emacs-23.1-bin-i386.zip 目前最新版23.1,这个版本号够吓人的,Opera的10.0还不及别人的一半。本人不幸,使用的是Windows版本。
     安装过程异常简单,直接解压就行,但路径中不能包含空格,所以就表往Program Files文件夹下面丢了,我是直接放在根目录的,找起来也方便。运行bin目录下的addpm.exe可以添加开始菜单快捷方式。也可以直接运行runemacs.exe 来启动Emacs。
     卸载也很方便,Emacs不会对系统写任何垃圾东东,直接删除文件夹即可卸载,还有你的快捷方式。
     启动Emacs后的界面如下:
      猛的一看,没什么太出彩的地方,感觉比较简陋。上面依次是标题栏、菜单栏、工具栏,中间一大块就是编辑文本的地方,下面两行是mode line 和echo area。
      echo area是你输入命令和显示消息的地方。
      在mode line中第一个字符表示字符集,c代表chinese-gbk,后面那个 \ 符号表示换行类型,\是指DOS的CRLF换行,另外还有Unix的LF换行和Mac的CR换行。然后一个字符,表示打开的文件是否可写(先称为文件便于理解,实际上是buffer),%表示只读,- 和 * 表示可写。再一个字符表示文件是否已写,% 或 - 表示还没动,*表示已经更改。这两个字符组合起来有四个状态。
符号 表示
%%
只读,未更改
--
可写,未更改
**
可写,已更改
%*
只读,已更改
     再后面一个 - 表示路径,后面黑体的 *GNU Emacs* 表示buffer的名称。后面的All表示光标的位置,当文件在一页就能显示完的时,这里是All,此外还有Top, Bot,以及当前位置百分比。L5表示第五行。Fundamental 是模式名,模式种类很多,这个以后介绍。
     如果是第一次使用,点击Emacs Tutorial,里面也有Emacs的一些基本介绍,而且是中文。

二、Emacs按键
     Vim 把控制和编辑分成了两个模式,单独操作,互不影响。而Emacs是同时进行编辑和控制,只不过控制命令需要使用控制键。
     Emacs的控制键就三个Control,Shift和 Meta,Control 和 Shift 键盘上都有,Meta 在美式键盘中就是Alt,在苹果键盘上是那个很花的四个圈的键,如果键盘上没有Alt (这个要某些欧洲人才会遇到)可以使用Esc 代替,另外Esc 不想Alt 通常当组合键用,它要单独按一下,再按另外的。
     以后控制命令就这样表示:    
     C-f       Ctrl+f
     C-M-f   Ctrl+Alt+f
     C-_    Ctrl+Shift+-
     Emacs中,这些组合键其实是一些函数的快捷方式,比如C-n 是next-line的快捷方式。我们除了使用组合键意外,还可以直接调用函数。
按下M-x,然后输入函数名就可以调用函数了。

三、进入退出Emacs
   进入前面已经说了,现在说怎么退出。
  最直接的办法,点右上角的叉,当然这个没什么技术含量。
      比较文明的方法,C-x C-c ,如果当前文件已经修改会问你是否保存。
  野蛮点的方法,调用函数kill-emacs,即M-x kill-emacs,直接退出,不管是否修改。
  不过直接退出后,Emacs会在相同目录下保留一个以#号开头结尾的相同文件名文件,下次启动可以使用M-x recover-file来恢复。如果是多次保存后,还会有个以~结尾的文件,保存了上次信息。


       教程的第一部分就写到这儿,虽然没有太多实际的东西,总算开了个头吧。


原文http://www.cnblogs.com/robertzml/archive/2009/09/10/1564108.html

学习Emacs系列教程(一):基本使用

前言的前言:本人也是初学Emacs,之前对Vim也只接触了一点,所以也谈不上对哪个更喜欢,也分不出哪个更好。写这个教程的目的一是方便自己更好的学习Emacs, 二是没事找事。如果有专家路过还望多指点...
  • yonggeno1
  • yonggeno1
  • 2014年09月10日 16:05
  • 1004

[转]《零基础入门深度学习》系列文章(教程+代码)

无论即将到来的是大数据时代还是人工智能时代,亦或是传统行业使用人工智能在云上处理大数据的时代,作为一个有理想有追求的程序员,不懂深度学习(Deep Learning)这个超热的技术,会不会感觉马上就o...
  • TS1130
  • TS1130
  • 2016年11月20日 21:07
  • 33061

Spark 学习入门教程

转载请注明作者,谢谢支持! 一、环境准备 测试环境使用的cdh提供的quickstart vm hadoop版本:2.5.0-cdh5.2.0 spark版本:1.1.0 二、H...
  • wankunde
  • wankunde
  • 2014年12月02日 10:12
  • 92293

学习Emacs系列教程(一):基本使用

前言的前言:本人也是初学Emacs,之前对Vim也只接触了一点,所以也谈不上对哪个更喜欢,也分不出哪个更好。写这个教程的目的一是方便自己更好的学习Emacs, 二是没事找事。如果有专家路过还望多指点...
  • ruglcc
  • ruglcc
  • 2012年08月02日 08:18
  • 752

学习Emacs系列教程(九):缓冲管理 (十):多窗口

学习Emacs系列教程(九):缓冲管理   首先提及一点,这里的缓冲就是Emacs中的buffer。闹,所谓的缓冲就是当前你正在编辑的东东。比如,你打开一个文件Emacs会建立一...
  • qq252101792
  • qq252101792
  • 2012年03月23日 13:13
  • 968

学习Emacs系列教程(九):缓冲管理

首先提及一点,这里的缓冲就是Emacs中的buffer。闹,所谓的缓冲就是当前你正在编辑的东东。比如,你打开一个文件Emacs会建立一个缓冲来装载这个文件,当你调用帮助时Emacs会建立一个叫"*He...
  • ruglcc
  • ruglcc
  • 2012年08月02日 10:14
  • 933

学习Emacs系列教程(四):Minibuffer

上回介绍了在Emacs中如何插入删除文本的简单操作,以及一些杂七杂八的命令,都还是蛮容易的。这回先跳过编辑这部分,介绍Emacs中的Minibuffer,呃,翻译过来叫迷你缓冲,听着比较难受,后面还是...
  • ruglcc
  • ruglcc
  • 2012年08月02日 09:21
  • 935

学习Emacs系列教程(六):编辑(3)

这次介绍编辑中关于粘贴复制的部分,不过在Emacs中称粘贴复制为Killing和Yanking,而不是通常说的Cutting和Pasting,当然差别不会太多。   一、Killing   Ki...
  • ruglcc
  • ruglcc
  • 2012年08月02日 09:39
  • 999

学习Emacs系列教程(八):查找替换

http://www.cnblogs.com/robertzml/archive/2010/03/03/1675870.html 查找替换是任何编辑器都不可能缺少的功能,就连小小的Notepad都有...
  • kezhen
  • kezhen
  • 2015年02月02日 17:15
  • 980

学习Emacs系列教程(五):编辑(2)—— 标记

http://www.cnblogs.com/robertzml/archive/2010/02/15/1668592.html 学习Emacs系列教程(五):编辑(2)—— 标记  学习Em...
  • PurpleGalaxy
  • PurpleGalaxy
  • 2014年10月17日 14:30
  • 396
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:学习Emacs系列教程(一):基本使用
举报原因:
原因补充:

(最多只允许输入30个字)