都说Emacs是比较强大的编辑器,就如我问一个朋友,他反问我说的一样:"它比你年纪都大,你说呢",呵,正好有一个朋友平时是使用这个编辑器,我也顺便研究一下,有不懂的地方还可以请教请教,后来发现,嗯,不会的地方还真多啊.哈.让我来看看所谓的"神"一样的编辑器倒底是什么样的.
我是使用的Windows的操作系统,所以下面所说的都是以Windows为基础.
Windows下的Emacs的版本也有好多,本来朋友推荐我自己编译一份,无耐公司上外网都使用代理,网上提供的地址无法访问.便下载了一个已经编译好的.我所用的是Emacs23,虽然现在这个版本还是alpha版,还有很多的Bug,但其中有很多好的地方,如对中文的支持,不需自己再去配置了.呃,以前的版本我也没用过,不过看资料都说要配置中文的支持的,感觉挺麻烦,而且我只是平时自己本地使用,So,管他什么Bug不Bug呢,呵,方便最好.
把下载的9个部分解压,之后把它放到一个指定的目录中,无需安装.我放在了"G:\Soft\Emacs"下.之后运行"bin"目录下的"runemacs.exe"便可启动Emacs了.
说实话,第一次打开它,感觉有些无从下手,不知道要怎么用,随便点了几下,按了几下,呃,都不知道怎么用.不过有了一些了解之后,就会发现它确实很好用.嗯.我现在就是在用Emacs来写这些内容的.呵.
在菜单"Help->Emacs Tutorial"中,可以查看到Emacs的帮助指南,里面介绍的也是比较详细的了,常用的操作都有介绍,看一遍之后你对它基本也有些了解了,而且还是有多种语言版本的哦,对于我这样的英文不好的人来说,直接看中文的,怎是一个爽字了得?哈.
基本的使用方式了解了,但是看着那白底黑字,感觉真是不爽,便想把颜色样式改一下.询问朋友,说是下载一个Color-theme便可.我是从color-theme处下载的.之后将压缩包解压,放到一个指定的目录中.修改.emacs文件,在其中添加如下内容:
(add-to-list 'load-path "g:/Soft/Emacs/emacs-lisp/color")
(require 'color-theme)
(color-theme-initialize)
(if window-system
(color-theme-tty-dark)
(color-theme-tty-dark)
)
其中,load-path是你之前所指定的目录.
什么?.emacs文件你找不到?那你自己创建一个嘛.什么?不知道在哪创建?在你的HOME目录下啦.
我就是因为这个HOME目录,搞得我郁闷了好久.朋友告诉我创建一个HOME的环境变量,在下面创建这个文件就可以了.可是环境变量我也试了,注册表我也试了,可是我做的修改就是一点反应也没有.看网上也是这么说的,可是我这里就是不好用.最后才发现,因为我安装的别的程序,创建了一个叫HOME的用户的环境变量,把我设置的系统的环境变量给覆盖掉了,所以才一点反应也没有.找到这个问题之后,我所做的修改也都OK了,可用了.
设置完颜色,嗯,你可以根据自己的需要,慢慢的发掘它啦.
下面是我看帮助文件时记录的命令:
Ctrl+x Ctrl+c 退出Emacs
Ctrl+v 下一屏
Alt+v 上一屏
Ctrl+l 重绘屏幕,让光标所在行置于屏幕中央
Ctrl+p 上一行
Ctrl+n 下一行
Ctrl+b 向左移
Ctrl+f 向右移
Alt+b 向左移一个单词(英文, 中文的话向左移到标点符号)
Alt+f 向右移一个单词(同上)
Ctrl+a 移动到行首
Ctrl+e 移动到行尾
Alt+a 移动到句首
Alt+e 移动到句尾
Alt+< 移动到最开头(<需要按住Shift,所以这个组合将变成Shift+Alt+,)
Alt+> 移动到最末尾(<需要按住Shift,所以这个组合将变成Shift+Alt+.)
Ctrl+u 数字 命令 可以执行重复次数的命令
Ctrl+g 使命令失去响应
Ctrl+x 1 关掉除当前光标所在窗口的其他窗口
退格键 删除光标前的一个字符
Ctrl+d 删除光标后的一个字符
Alt+退格 移除光标前的一个词
Alt+d 移除光标后的一个词
Ctrl+k 移除从光标到行尾的字符
Alt+k 移除从光标到句尾的字符
Shift+Ctrl+2 定义块首
Ctrl+w 删除块首到光标所在伴置
Ctrl+y 召回移除的内容
Alt+y 召回上一次移除的内容,循环...
Ctrl+x u 撤销
Ctrl+_ 撤销
Ctrl+x Ctrl+f 打开/新建文件
Ctrl+x Ctrl+s 保存
Ctrl+x Ctrl+b 列出缓冲区
Ctrl+x 1 关闭缓冲区
Ctrl+x b 缓冲区名 打开指定的缓冲区
Ctrl+x s 保存所有缓冲区内的文件
替换字符串
Alt+x
repl s<tab>(replace string)
被替换的字符串(回车)
用来替换的字符串(回车)
Over
PS:为了熟悉Emacs的操作,俺现在鼠标基本都不用啦.呵呵.虽然这没有必要.只是为了更快的习惯它的操作而已.^_^