ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287

【emacs tutorial】是熟悉 emacs 的入门资料。一共几十个命令,不需硬记,勤练即可。

翻页命令

C-v:向前移动一屏

M-v:向后移动一屏

C-l:重绘屏幕,并将光标所在行置于屏幕的中央

光标控制

C-n:移动到下一行(next)

C-p:移动到上一行(previous)

C-f:向右移动一个字符(forward)

C-b:向左移动一个字符(backward)

M-f:向右移动一个词【对中文是移动到下一个标点符号】

M-b:向左移动一个词【对中文是移动到上一个标点符号】

C-a:移动到行首

C-e:移动到行尾

M-a:移动到句首

M-e:移动到句尾

M-<:移动到所有文字的最开头

M->:移动到所有文字的最末尾

在大部分键盘上,大于号、小于号需要用 Shift 来输入。

数字参数

C-u n cmd:命令 cmd 重复执行 n 次。

例如:C-u 8 C-f 会向前移动 8 个字符。

终止命令

C-g:可以终止一条执行过久的命令,也可以取消数字参数和只输入到一半的命令。

关掉其他窗格

C-x 1:关掉其它所有窗格

有一系列命令是以 C-x 开始,这些命令许多都跟“窗格、文件、缓冲区(buffer)”等等有关。

插入和删除

<Delback>:删除光标前的一个字符

C-d:删除光标后的一个字符

M-<Delback>:移除光标前的一个词

M-d:移除光标后的一个词

C-k:移除从光标到“行尾”间的字符

M-k:移除从光标到“句尾”间的字符

在 Windows 键盘中,Backspace 键就是 <Delback>。

 

移除缓冲区里的任何一部分

先将光标移到想移除区域的一端,按 C-@,再将光标移到另一端,按 C-w 就可以把两点间的文字移除

召回移除的文字

C-y:在光标处插入最后移除的内容

连续按 C-y,可以连续召回最后移除的文字,这实际上实现了复制的功能。

M-y:在光标处插入前一次移除的内容

连续按 M-y,可以召回更前一次被移除的内容。

撤销

C-x u:消除一个命令所造成的所有改变

文件

C-x C-f:寻找一个文件

C-x C-s:储存这个文件

如果寻找不存在的文件,就会创建新文件。不过只有在存盘时,Emacs才会真正创建文件。

可以用 C-x C-f 打开多个文件,要切回第一个文件,同样可以用 C-x C-f。

缓冲区

Emacs 把每个编辑中的文件都放在一个称为“缓冲区(buffer)”的地方。每寻找到一个文件,Emacs 就在其内部开辟一个缓冲区。

C-x C-b:列出当前所有的缓冲区

C-x b:切换缓冲区

C-x s:保存多个缓冲区

缓冲区和文件是对应的,所以也可以用 C-x C-f 切换缓冲区。

不过,缓冲区未必都有对应文件:比如 “*Messages*” 缓冲区就没有对应文件,它存放的都是在 Emacs 底部出现的消息。

命令集扩展

C-x:字符扩展(C-x 之后输入另一个字符或者组合键)

M-x:命令名扩展(M-x 之后输入一个命令名)

C-x 的扩展命令有很多,上面已经学过 C-x C-f、C-x C-s 等等。再比如:

C-x C-c:离开 Emacs

命令名扩展比如:

M-x replace-string:在全文范围内把一个字符串替换成另一个

自动保存

Emacs 会定期将正在编辑的文件写入一个“自动保存”文件中,文件名是在原有文件名的头尾各加一个 “#” 字符。该文件会在正常存盘后被删除。

M-x recover file<Return>:恢复文件

切换主模式

M-x text mode<Return>:切换到text模式(当然也可以切换到 Fundamental 等其他模式)

C-h m:查看当前主模式的文档

辅模式

辅模式提供一些辅助的功能。每个辅模式都可以独立地开启和关闭,跟其它辅模式无关,跟主模式也无关。如:

M-x auto fill mode<Return>:启动/关闭“自动折行模式”

C-u 80 C-x f:将每行最大字符数设置为 80

M-q:手动折行(光标必须位于需要折行的那一段)

搜索

C-s:向下搜索

C-r:向上搜索

Emacs是渐进式(incremental)搜索,意思是搜索与输入同时进行。

再按一次 C-s,搜索下一个出现的位置。按 <Return> 可以结束搜索。

多窗格

C-x 2:将屏幕划分成两个窗格,光标停留在上方的窗格里

C-M-v:向下滚动下方的窗格(在一个窗格中编辑,用另一个窗格作为参考时很有用)

C-M-S-v:向上滚动下方的窗格(同时按住 CONTROL、META 和 SHIFT 再按 v)

C-x o:将光标转移到其他窗格

C-x 4 C-f:寻找的文件出现在下方的窗格中,同时光标也跳到那里

获得更多帮助

Emacs 提供了一些命令来查看命令文档,这些命令都以 Ctrl-h 开头。

C-h ?:Emacs会列出它能提供哪些帮助

C-h c C-p:Emacs 会给出这个命令(C-p)的简要说明

C-h k C-p:新打开一个窗格以显示函数的名称及其文档

C-h f previous-line<Return>:解释一个函数(previous-line)

C-h v:显示 Emacs 变量的文档(变量可以被用来“定制 Emacs 的行为”)

C-h a:相关命令搜索(输入一个关键词后,Emacs会列出所有命令名中包含此关键词的 M-x 命令列表)

C-h i:阅读联机手册(也就是通常讲的 Info)

C-h i 命令会打开一个称为 “*info*” 的特殊缓冲区,在那里可以阅读软件使用手册。按 m emacs <Return> 可以阅读 Emacs 的使用手册。按“?”会进入 Info 的使用指南。Emacs Info 会是我们主要的参考文档。

emacs 新手笔记(一) —— 阅读【emacs tutorial】的更多相关文章

  1. emacs 新手笔记(四) —— 使用 dired 完成一些简单的文件和目录操作

    ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 据说熟悉了 dired,就可以在 emacs 下轻松管理文件和目录了,甚至不再需要 shell 和桌面操作. ...

  2. emacs 新手笔记(三) —— 为 emacs 做一点简单的定制

    ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 在 emacs 启动时,会加载 ~/.emacs 文件.在该文件中编辑一些 lisp 代码,是一种最为简单的 ...

  3. emacs 新手笔记(二) —— 分割窗格 (split window)

    初极狭,才通人.复行数十步,豁然开朗.—— 陶渊明·桃花源记 ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 使用 split-window-xxx 函数可 ...

  4. emacs window版环境配置(设置默认的.emacs文件,指向自定义.emacs达到自定义home的目的)

    1.下载解压包 下载地址  ,下载之后我是直接解压到E:\emacs中的,E:\emacs中就有bin,libexec…等文件; 2.点击bin中的addpm.exe文件进行安装emacs; 3.就会 ...

  5. emacs 入门第一课:Emacs里的基本概念

    Table of Contents 无聊的开场白 buffer(缓冲区) window(窗口)与frame Emacs的mode Emacs Lisp 函数function.命令command.键绑定 ...

  6. emacs使用笔记

    C-h t tutorial [移动基本操作]C-f C-b C-p C-n 前后上下 C-v C-a 行首 C-e行尾C-a 和 C-e 可以将光标移动到"一行"的头部和尾部.M ...

  7. Emacs学习笔记1

    Emacs笔记-Emacs基本的文本操作 使用命令时要在minibuffer缓冲区中 关于文件 注意 在对单词的操作中C开头的控制范围要比M开头的控制范围要下 对于文件的撤销操作, 不要使用C-x, ...

  8. Emacs学习笔记之主模式笔记

    % 模式相关—————————————————————————— 这里经常用的也就各种语言相对应的模式,有些就没再写进去,比如f90等模式 Fundamental mode 基本模式         ...

  9. Emacs学习笔记2

    emacs的启动初始化 需要有一个~/.emacs文件, 这个和vim一样 emacs中的查找与替换 递增查找 C-s, 在minibuffer中输入即可, 在一次C-s会跳转到下一个 两次C-g取消 ...

随机推荐

  1. CI框架源码阅读笔记6 扩展钩子 Hook.php

    CI框架允许你在不修改系统核心代码的基础上添加或者更改系统的核心功能(如重写缓存.输出等).例如,在系统开启hook的条件下(config.php中$config['enable_hooks'] = ...

  2. 【原创】SQLServer将数据导出为SQL脚本的方法

    最近很多同学问到一个问题,如何将MSSQLServer的数据库以及里面的数据导出为SQL脚本,主要问的是MSSQLServer2000和2005,因为2008的管理器已经有了这个功能,2000和200 ...

  3. ActiveMQ 简介与安装

    一. 概述与介绍 ActiveMQ 是Apache出品,最流行的.功能强大的即时通讯和集成模式的开源服务器.ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provide ...

  4. JSON.NET 使用技巧

    1. 序列化相关技巧 通过特性忽略某些属性 有时候我们会有这样的需求,我们只需要序列化实体类中的一部分属性,这时候我们可以通过声明忽略掉一些我们不需要序列化的属性,有两种方式可以使用么达到这个目标: ...

  5. 分享50款 Android 移动应用程序图标【上篇】

    在这个移动程序流行的时代,持续增长的应用程序经济充满了商业机遇.任何对应用程序设计感兴趣的人,将会喜欢上这里的50个独特的 Android 应用程序图标.这些例子中的图标能够让应用程序的设计更具吸引力 ...

  6. 定制Eclipse IDE之界面篇

    为什么要定制IDE?      在工作时候,当公司有了自己的框架,给自己开放人员用,甚至是可以卖的时候,我们可以做成一个产品,而这个产品将包括框架本身.文档.工具.教程等等.工具之中最重要的莫过于开发 ...

  7. The specified file or folder name is too long

    You receive a "The specified file or folder name is too long" error message when you creat ...

  8. ReflectUitls类的编写和对反射机制的解析

    ReflectUitls类的编写和对反射机制的解析 反射相关的类 反射相关的类,最基本的当然是Class类. 获取了Class对象之后,就可以接着生成对象实例.调用方法.查看字段等等. 字段(Fiel ...

  9. Android Animation学习(一) Property Animation原理介绍和API简介

    Android Animation学习(一) Property Animation介绍 Android Animation Android framework提供了两种动画系统: property a ...

  10. .frame类库简单介绍与使用

    .a静态库是Unix推出的,几乎所有平台都可以使用: .framework是Apple推出的,是对.a静态库的封装,方便使用. 1.新建framework类库项目 2.生成的类库中,自定义的源头文件需 ...