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. js的动态加载、缓存、更新以及复用(三)

    总体思路 1.  建立一个js服务,该服务实现通用js文件的加载.依赖.缓存.更新以及复用. 2.  各个项目如果使用通用js,可(bi)以(xu)使用js服务实现加载. 3.  Js服务只提供通用的 ...

  2. jquery.datepair日期时分秒选择器

    jquery.datepair是一个轻量级的jQuery插件,智能选择日期和时间范围,灵感来自于谷歌日历.Datepair将保持开始和结束日期/时间同步,并可以根据用户的操作设置默认值.该插件不提供任 ...

  3. jquery easyui tabs单击刷新右键刷新

    单击刷新 $(".tabs-inner").click(function(){var currTab = self.parent.$('#tabs').tabs('getSelec ...

  4. 1:时间戳转换成年月日函数,2:url截取参数方法,3:弹窗自定义方法 4:点击按钮加入购物车

    最近一直在使用vue.js来构建项目,先分享一下一些简单可复用的函数. 1:时间戳转换Date.prototype.format = function(fmt){ //author: yumeiqia ...

  5. float 和 inline-block的心得

    float 优点: 横向排列时比较方便,不存在浏览器兼容问题. 缺点: 1)多行横向排行时,换行后经常不能顶行显示. 2)浮动后会跳出当前流,造成父元素高度塌陷,解决办法比较成熟统一 ,不存在浏览器兼 ...

  6. 最简单的tab切换

    JS: $(".con").eq(0).show();    $(".btn span").click(function(){        var num = ...

  7. CSS学习总结(一)

    不知道大家对CSS的印象是怎么样的呢?也许有些模糊,也许根本不清楚.其实它跟我们密切相关,一旦我们浏览网页,都在与它打交道.没有它,我们看不到现在如此丰富多彩的网页效果.那么它到底是什么呢?又该如何使 ...

  8. Eclipse CDT Linux下内存分析 实战历险

    C++产品开发,上线集成时,都需要内存泄露.覆盖率等检测,这些在Windows下都有很好的工具,如 Visual Studio: 这个内置了很多的工具 Devpartner: VC6时BoundChe ...

  9. 教新手一步步解决:Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to和更新gradle问题

    android studio出现问题:Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_O ...

  10. Android studio 如何查看模拟器里面的文件

    1.查看SD卡里面的内容 2.看数据库