Chinaunix首页 | 论坛 | 博客
  • 博客访问: 618726
  • 博文数量: 172
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 1252
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-29 22:26
文章分类

全部博文(172)

文章存档

2011年(6)

2010年(7)

2009年(159)

我的朋友

分类: LINUX

2009-07-03 15:02:13

最近在使用emacs(不是xemacs,不是gtk-emacs)编写C程序,碰到的前辈同样遇到的问题:缩进用TAB还是空格的问题。

默认情况下emacs是使用TAB的,下面的配置语句可设定所有遇到TAB的地方都使用适当个数的空格缩进(写到配置文件~/.emacs中):

  1. (setq-default indent-tabs-mode  nil)

另外还认识了两个命令:

M-x tabify 将所有超过两个的连接空格使用TAB替换掉。

M-x untabify 将所有TAB使用适当个数的空格替换掉。

emacs 功能强大,现在越用越顺手了。

本人的使用感觉,它只是个简单的编译器,还是一个带强大编译功能的强大的开发IDE。

在网上搜索了半天没有找到答案,硬是去看了点emacs英文手册才搞定的,看来还是有问题查手册啊。

emacs 在Mark Set 间跳转快捷键:
C-u C-@ 在本缓冲区中根据Mark Set的顺序依次向后跳转。
C-x C-@ 在全局中根据Mark Set的顺序依次向后跳转。

使用imenu命令跳转到当前文件中的函数:
M-x imenu RET

* 清理代码中的不必要的空格和TAB
如果代码文件最后面,或者行尾有很多的不必要的空格,并且你就是完美主义
者,有洁癖,那么可以使用 whitespace-buffer 看一下当前buffer中有哪些“垃圾”。如果要清理,简单的使用 whitespace-cleanup 就可以了。

  • Emacs替换^M

    遇到用Emacs打开的文件都有^M, 这个应该是Mac机产生的换行符(这样的代码看起来会死人的),以为简单的m-x repl RET s RET在输入^M替换一下就可以,但是很快发现,这个办法根本不行, ^M这个根本不是输入的研究了一下, 终于找到了办法:
    1.C-x RET c undecided-unix RET C-x C-w RET y
    2.M-S < 到文档的最开始处
    3.M-x replace-string RET C-q C-m RET RET
    这样就ok了, 注意上面的C-q C-m就是换行符的生成方法,而不是简单的输入^M. Enjoy it.


  • 阅读(4884) | 评论(0) | 转发(0) |
    给主人留下些什么吧!~~