1、Emacs 快速指南

作者: 右耳菌 | 来源:发表于2023-05-21 15:06 被阅读0次

    1、一般定义 C

    C   
    

    表示 CONTROL 键 (有时候我们以CTRL或者CTL来表示,这里为了后续内容的统一和阅读方便,统一使用CTRL),一般不单独使用。

    Emacs的快捷操作指令中,经常看到

    C-<chr> 
    

    表示按住 CTRL键 的同时按下 字符<chr>键,如

    C-f
    

    表示按住 CTRL键 的同时按下 f

    2、一般定义 M

    M
    

    表示 META键(有时候用EDIT和ALT来表示,这里为了后续内容的统一和阅读方便,统一使用ALT),其他的同上所描述。

    3、常用指令

    • 退出Emacs
    C-x C-c
    
    • 退出正在运行(输入中,但是尚未输入完全的情况、执行过久的情况、Emacs无响应的情况)的命令
    C-g
    

    即本来要输入

    C-x C-c
    

    但是在输入了

    C-x
    

    后突然决定要中止了,就可以输入C-g

    • 移动到下一屏
    C-v # 可以使用pageDown 代替(不同键盘可能按键的上的文字内容不一致,但是知道意思就行)
    
    • 移动到上一屏
    M-v # 可以使用pageUp 代替(不同键盘可能按键的上的文字内容不一致,但是知道意思就行)
    
    • 重绘屏幕,并将光标所在行置于屏幕的中央
    C-l
    

    C-l 执行 1次中心,2次顶端,3次底端

    • 光标使用 - 向右移动一个字符
    C-f # f表示forward
    
    • 光标使用 - 向左移动一个字符
    C-b # b表示backward
    
    • 光标使用 - 向右移动一个词【对中文是移动到下一个标点符号】
    M-f
    
    • 光标使用 - 向左移动一个词【对中文是移动到上一个标点符号】
    M-b 
    
    • 光标使用 - 移动到下一行
    C-n # n表示next
    
    • 光标使用 - 移动到上一行
    C-p # p表示previous
    
    • 光标使用 - 移动到行首
    C-a # a表示ahead
    
    • 光标使用 - 移动到行尾
    C-e # e表示end
    
    • 光标使用 - 移动到句首
    M-a
    
    • 光标使用 - 移动到句尾
    M-e
    
    • 光标使用 - 移动文档头
    M-<
    

    这里要同时按下shift,否则输入的就是 M-,

    • 光标使用 - 移动到文档尾
    M->
    

    这里要同时按下shift,否则输入的就是 M-.

    注:以上的光标操作等内容,都可以结合数字参数来指明要执行多少次,如

    C-u 8 C-f
    

    表示向右移动8个字符,而 C-vM-v 则属于另一种类型的例外。当给定一个参数时,它们将滚动你指定的“行数”,而不是“屏数”。举例来说,C-u 8 C-v将文本向下滚动 8 行,这种情况下,光标不会移动哦!

    • 关闭其他的窗口,仅保留光标所在窗口
    C-x 1
    
    • 删除相关指令
    • 删除光标前的一个字符
    <DEL>
    
    • 删除光标后的一个字符
    C-d
    
    • 移除光标前的一个词
    M-<DEL>
    
    • 移除光标后的一个词
    M-d
    
    • 移除从光标到“行尾”间的字符
    C-k
    
    • 移除从光标到“句尾”间的字符
    M-k
    
    • C-<SPC>(冲突的情况下,建议使用C-@)和C-w移除指定内容

    首先将光标移动到要删除的内容的一端

    C-<SPC> # 或 C-@
    

    此时会出现底下会出现 mark set ,然后移动光标到要删除的内容的另一端,然后按下

    C-w
    

    即可移除选中的内容

    • 注: 修复
    • 召回(粘贴)
    • 召回最近一次移除的内容
    C-y # y表示yank
    

    在上边的指令执行后,可以再使用

    M-y
    

    召回再前面一次移除的内容,再继续则再召回上一次的内容,具体可以再次操作了解

    • 撤销(UNDO)
    • 方式1,推荐的方式
    C-/
    
    • 方式2,有一点点麻烦
    C-_
    
    • 方式3,很麻烦的方式
    C-x u
    
    • 文件相关
    • 寻找一个文件
    C-x C-f
    
    • 保存文件
    C-x C-s
    
    • 关闭文件重命名备份
      主要用于解决编辑文件的时候,会创建一个以 ~ 为后缀的备份文件的情况
    M-x customize-variable <Return> make-backup-files <Return>
    
    先点toggle然后点apply和save
    • 缓冲区
      Emacs 把每个编辑中的文件都放在一个称为“缓冲区(buffer)”的地方。
    • 列出缓冲区
    C-x C-b
    
    • 离开缓冲区列表
    C-x 1
    
    • 切换到指定缓冲区
    C-x b <指定缓冲区的名称>
    
    • 保存多个缓冲区
    C-x s
    
    • 挂起emacs
    C-z
    
    • 再次回到emacs
    1. 方式1
    fg
    
    1. 方式2
    %emacs
    
    • 字符替换
    M-x repl s<Return> <old_string> <Return> <new_string> <Return>
    
    • 自动保存
      Emacs 会定期将正在编辑的文件写入一个“自动保存”文件中。自动保存文件的文件名的头尾各有一个“#”字符,比如你正在编辑的文件叫“hello.c”,那么它的自动保存文件就叫“#hello.c#”。这个文件会在正常存盘之后被 Emacs 删除。
      如果因计算机突然罢工,后续如果要恢复自动保存的文件的内容,可以输入以下指令
    M-x recover file <Return>
    
    • 搜索(SEARCHING)
    • 向前搜索
    C-s
    
    • 向后搜索
    C-r
    

    搜索过程中,使用C-g 可以回到搜索之前位置,使用<Enter>可以定位到当前光标的位置。

    在渐进式搜索中,按 <DEL> (即backspace) 会“撤回”到最近一次搜索的命中位置。如果之前没有一个命中, <DEL> 会抹去搜索字符串中的最后一个字符。比如你已经输入了“c”,光标就停在“c”第一次出现的位置,再输入“u”,光标停在“cu”第一次出现的位置,这时再按 <DEL> ,“u”就从搜索字串中消失了,然后光标会回到“c”第一次出现的位置。

    • 多窗格
    • 拆分窗格 - 上下
    C-x 2
    
    • 滚动下方窗格内容
    C-M-v # 向下滚动
    C-M-S-v # 向上滚动, 也就是同时按住 CONTROL、META 和 SHIFT 再按 v
    
    • 跳转到其他的窗格
    C-x o # “o”指的是“其它(other)”
    
    • 只保留当前窗格
    C-x 1
    
    • 在新窗口打开(或新建)文件
    C-x 4 C-f # 后续输入文件名即可
    

    • 拆分窗格 - 左右
    C-x 3
    
    • 多窗口(MULTIPLE FRAMES)
      在图形界面上可以显示多个窗口
    • 创建一个新的窗口
    M-x make-frame <Return>
    
    • 关闭选中的窗口
    M-x delete-frame <Return>
    

    如果觉得有收获就点个赞吧,更多知识,请点击关注查看我的主页信息哦~

    相关文章

      网友评论

        本文标题:1、Emacs 快速指南

        本文链接:https://www.haomeiwen.com/subject/dsbwsdtx.html