Emacs编辑

简介:

编辑首先就得定位光标位置

你肯定首先想到的是上下左右键甚至你更幸运有一个鼠标那么更容易定位插入点了。

可是想过没有如果你没有鼠标怎么办,更变态没有上下左右键呢,呵呵。

当然了,如果有的话可以使用他们,但是你是不是感觉你得大步移动你的手臂了,当你再移回键盘区可要费点心思了,难免分散一点注意力,不要小看这点,如果操作频繁的话规模可不可以忽视,我用emacs是干活的,好比cpu如果忙于处理外部事件难免影响工作。emacs很贴心给我们准备更方便的操作方式,用了4个位于主键盘区的键作为替代,使得我们的上手不用离开主键盘区就可以实现光标的上下左右移动,那就是pnbf这4个字母键的配合使用,当然了处于编辑直接用这4个字母是不行的,那会当作普通的编辑字符,OK上功能键呵呵Ctrl键(我们用C)表示哈,C-x表示我们按Ctrl的同时按下x这点我们会用pc的人应该都比较熟悉哈,emacs与众不同的地方是还可以多按几个键这样可以有更多的组合了。

好了我们来一一看一下:

光标向左移动一个字符位置是C-b (这个b就是back的首字母啦,方便记忆)

光标向右移动一个字符位置是C-f (这个f就是forwards的首字母啦,代表向前进,方便记忆)

光标向上移动上一行字符位置是C-p (这个p就是previous-line的首字母啦,方便记忆)

光标向左移动一个字符位置是C-n (这个n就是next-line的首字母啦,方便记忆)

好了,赶紧练习下吧。

那要是移动一个单词的距离呢(标点符号等定界)

Alt键我们用(M-)表示哈,就是Meta键?

M-f代表向右移动到下一个单词位置或者ESC f也行(如果不喜欢Alt键的话,按一下Esc键松开再按,注意我没有写ESC-f呵呵,后面这种替代不说了,我主要用M-演示)

M-b就是向左啦。

要是把光标移动到行尾呢是C-e(就是end啦)

行首呢C-a(注意不是全选哈,有说用a表示是A-Z字母表里的开头,还算比较形象吧)

M-a表示移动到句子开始 .

编辑

删除光标到行尾C-k(kill-line的意思),所以后面还烙下个换行符捏,再按C-k会删掉那个。

C-d删除光标处的字符,往前删是Backspace退格删。

M-d是删到单词结束

往前删除是M-backspace

撤销C-x u

C-@(得按Shift键和2的那个键)设置标记点,用于选择区块起始,比较没有鼠标嘛。(CUA下还是比较直观的,高亮选择,如果没有的话,可以在执行操作前C-x C-x确认下标记点设置的对不对,这个命令是交换编辑点和当前光标的,可以自由切换)

全选在哪里,呵呵(不是Ctrl-A)是C-x h(这个x是代表扩展命令,想想C-(a-z)也就能26个组合,但是这样组合更多了:-)

这个其实就是标记整个缓冲区Buffer.

交换光标行和前一行,C-x C-t

交换前后两个单词M-t

 

我们来试验下:


 
 
  1. 1.C-x C-f 
  2. 文件 g:/hello.c 
  3. 没有自动新开一个buffer 
  4.  
  5. 2. 
  6. inc <TAB> 注意需要装YASnippet 
  7. 出来智能提示菜单,选择<>那个 
  8.  
  9. stdio.h <TAB> 
  10.  
  11. --------------------------当前结果---------------- 
  12. #include <stdio.h> 
  13. -------------------------------------------------- 
  14.  
  15. <RET> <RET> 两次回车空一行 
  16.  
  17. main <TAB> -----YASnippet自动扩展主函数 
  18.  
  19. --------------------------当前结果---------------- 
  20. #include <stdio.h> 
  21.  
  22. int main(int argc, char *argv[]) 
  23.   【光标出于这里】 
  24.   return 0; 
  25. -------------------------------------------------- 
  26.  
  27. printf <TAB>  ---扩展printf("%s\n"); 
  28.  
  29. hello,world. <TAB>  
  30.  
  31. ----------------------------OK------------------- 
  32. #include <stdio.h> 
  33.  
  34. int main(int argc, char *argv[]) 
  35.   printf ("hello,world.\n"); 
  36.   return 0; 
  37. ---------------------------------------------------- 
  38.  
  39. C-x C-s 存盘 

现在编译这个简单的c程序,

M-x compile (TAB可以自动补全命令,这个跟在shell命令行类似)

底下出来

Compile command:make -k

修改为

Compile command:gcc hello.c -o myhello

这样生成一个myhello.exe程序。

不信可以C-x d打开目录看一下:

M-x shell

打开shell,执行下看看:

 

 

 

 

 

  本文转自 xcf007 51CTO博客,原文链接:http://blog.51cto.com/xcf007/860634,如需转载请自行联系原作者


 

 




相关文章
|
5月前
|
开发工具 Linux 程序员
20. 【Linux教程】emacs 编辑器
20. 【Linux教程】emacs 编辑器
54 0
|
11月前
|
小程序 Shell Linux
VI编辑器配置代码高亮
Linux下的VI编辑器和VIM编辑器最大的区别就是VIM编辑器有代码高亮显示。 VI编辑器没有代码高亮显示。 但是习惯了代码高亮显示的我,突然看到了一片一个色儿的代码,让我有点不适应。
141 0
|
Java Unix Linux
文本编辑工具vi的使用
vi 是Linux/Unix上的一个文本编辑器,vim(Vi IMproved)是它的增强版。
101 0
|
开发工具
文本编辑工具vim
文本编辑工具vim
84 0
文本编辑工具vim
|
人工智能 Unix Linux
vi/vim编辑器详解
1、文本编辑器vi命令 1.1 文本编辑器的作用 创建或修改文本文件 维护Linux系统中的各种配置文件
617 0
|
Java 开发工具
VI/VIM编辑器
VI/VIM编辑器
105 0
|
弹性计算 Linux 开发工具
vim文本编辑工具
Vim 是一个基于文本界面的编辑工具,使用简单且功能强大。更重要的是,Vim 是所有 Linux 发行版本默认的文本编辑器。 很多人习惯将 Vim 称为 Vi,其实 Vim 是 Vi 的增强版(在 Vi 的基础上增加了正则表达式的查找、多窗口的编辑等功能),使用 Vim 进行程序开发会更加方便。
212 0
|
Linux 开发者
VI 编辑器|学习笔记
快速学习 VI 编辑器
134 0
VI 编辑器|学习笔记
|
Linux 开发者
VI 编辑器2|学习笔记
快速学习 VI 编辑器2
114 0