LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: 倩儿

emacs的方便(大家补充下去,好吗)

[复制链接]
 楼主| 发表于 2004-3-17 17:38:24 | 显示全部楼层
最初由 zhong 发表
根本没必要用,有X不用去用控制台??有必要这样玩自己吗?
用X效率才是最高的,,我得罪说句“喜欢在控制台下用emacs,我觉得是有emacs情结吧。”

假如认为X最有效率的话,那你一定是个windows迷了;那vi(非其变种如vim)也没有X支持啊,为什么其用户群至今依然庞大呢?
zhong大哥,如果你没有用过emacs以及vi,你没有资格发言。
发表于 2004-3-17 18:40:01 | 显示全部楼层
可以上当perl-qq前端,可以当图片浏览器用,可以听mp3,这是我觉得比较爽的。
 楼主| 发表于 2004-3-17 19:08:46 | 显示全部楼层
最初由 aries1998 发表
可以上当perl-qq前端,可以当图片浏览器用,可以听mp3,这是我觉得比较爽的。

图片浏览器这点则不敢恭维,还是做emacs强项的事情吧。
还能听mp3,做perl-oicq前端吗?!这位大哥指点。
发表于 2004-3-17 20:55:06 | 显示全部楼层
我的EMACS就是当用C-v到文件的最后时,有时会死在那,所有的键都失去作用了,只好在其它的terminal中把它kill掉。不知道这是emacs的毛病,还是我在FreeBSD下的emacs有这个毛病:-(
发表于 2004-3-17 21:11:21 | 显示全部楼层
大部分时候emacs假死是因为作为其它程序的前台,后台程序的错误造成的,我在emacs里面用w3m浏览网页就会死,呵呵!
 楼主| 发表于 2004-3-17 21:28:45 | 显示全部楼层
假死现象在很多模式都存在。
比如,在ange-ftp里下载过程中,emacs就停止响应直到下载完成为止;在mail模式里发信过程也如此。
希望emacs的未来版本能多线程。
发表于 2004-3-17 21:30:19 | 显示全部楼层
它的伟大之处就在于,在shell字符界面下就可以实现多任务并行作业……
只是都能在emacs环境中做而已,说的好像linux是单任务系统一样

现在bash的默认编辑模式…………
vim的操作模式注定成不了bash的默认快捷键……

萝卜好还是白菜好……
 楼主| 发表于 2004-3-17 21:32:10 | 显示全部楼层
最初由 sd44 发表
它的伟大之处就在于,在shell字符界面下就可以实现多任务并行作业……
只是都能在emacs环境中做而已,说的好像linux是单任务系统一样

现在bash的默认编辑模式…………
vim的操作模式注定成不了bash的默认快捷键……

萝卜好还是白菜好……

linux当然是多任务操作系统,只不过emacs把这点淋漓精致地发挥出来。
 楼主| 发表于 2004-3-17 22:10:16 | 显示全部楼层
emacs是一个安全的编辑器,它不会弄丢你的文件,即使在极意外的情况下。
1.emacs有自动保存功能
自动保存文件为#filename#,从自动保存文件恢复文本的方法是

  1. Esc x recover-file
复制代码

提示a:
可以把自动保存文件用C-xC-f打开新窗口进行浏览,假设旧窗口为要恢复的原文本,使用命令

  1. Esc x compare-windows
复制代码

对比这两个版本间的不同之处。
提示b:
可以改变auto-save-interval变量来改变文件自动保存的频率,默认情况下emacs每隔300次击键自动存盘一次。
在~/.emacs加入这一句即可:

  1. ;;把100改成你喜欢的值
  2. (setq auto-save-interval 100)
复制代码


2.emacs有自动备份功能
与自动保存文件不同的是,emacs还会在每次你编辑完文本保存退出后,自动生成一个备份文件filename~。
可以用C-xC-w另存为正式文本。
 楼主| 发表于 2004-3-17 23:12:13 | 显示全部楼层
最方便的shell:
1.一次执行一条命令

  1. Esc !
复制代码

可惜这样有局限性,就是不能使用emacs的自动补足功能(TAB键)。通常用于编辑工作时想查看一下系统信息。

2.使用shell模式

  1. Esc x shell
复制代码

缺点:其终端类型为dumb,不能使用info,man效果校差。

最有趣的两点:
3.对编辑缓冲区中的文本执行Unix命令
比如说你要排序一个文本块,先选取文本块

  1. C-@
复制代码

移动到文本块末尾,然后执行命令

  1. Esc |
复制代码


4.把命令输出回显到编辑缓冲区

  1. C-u Esc !
复制代码


结合3.4两点,我们可以对编辑缓冲区里的文本块进行处理后回显到缓冲区里,这对很多编辑工作而言是很方便的事情。

当然,如果你不满意你的编辑结果,可以恢复到最初的状态

  1. Esc x revert-buffer
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表