且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Emacs学习笔记2

更新时间:2022-08-12 16:15:52

emacs的启动初始化

  • 需要有一个~/.emacs文件, 这个和vim一样

emacs中的查找与替换

  • 递增查找

C-s, 在minibuffer中输入即可, 在一次C-s会跳转到下一个
两次C-g取消查找
C-r也一样, 只是向文件头查找

技巧: 使用C-s, C-w试一下
  • 单词查找

C-s, RETUREN, C-w, 字符, RETURN
  • 替换
M-x replace-string
  • 查询替换

M-%

空格表示确认替换并且调到下一个
n表示直接跳到下一个
!表示不会在询问了, 直接替换, 这个好用

使用C-x, M, M显示上次的查找

为了使查找更加方便

M-x, set-variable, case-fold-search, nil ; 查找时区分大小写, 是精准匹配
M-x, set-variable, case-replace, nil: 替换时真的就会替换成你想要的那样子, 替换时不改变大小写
以上两项***写在.emacs初始化文件中
(seq-default case-fold-search nil)
(seq-default case-replace nil)
即可

正则表达式的使用


1. M-x, re-search-forward
2. M-x, re-search-backward

查找和替换

1. M-x, query-replace-regexp
2. M-x, replace-regexp

切换缓冲区

  • C-x, b buffername ; 创建一个buffer
  • C-x, k buffername ; kill一个buffer
  • M-x kill-some-buffers ; kill多个buffer, 还会一个一个地询问
  • M-x rename-buffer ; 为当前的buffer重命名

只读

  • 在左下角, 如果有%号表示只读的, *表示可写的, 使用C-x, C-q更改

切分窗口

C-x 2: 水平
C-x 3: 竖直
C-x o: 在多个窗口之间切换

如果多个窗口编辑的是同一个缓冲区, 修改会同步

C-x 1: 只保留当前的窗口
C-x 0: 删除所有的窗口


对于窗口大小的调整
C-x ^: 拉高
C-x }: 拉宽

如果想要拉低的话: M-x shrink-window
如果想要拉窄: C-x {

C-x +: 使窗口变成同样的大小


C-x 4 ...: 可以创建一个新的窗口而不改变当前的窗口去执行相应的命令
C-x 5 ...: 与4类似但是这是新打开一个图形界面的窗口去显示相应内容
C-x 5 2: 创建一个一毛一样的X窗口


如果要在X窗口之间切换需要: C-x 5 o
如果想要删除使用: C-x 5 0
列出所有的Buffer
  • C-x, C-b
在列出的Buffer列表中, 如果想要删除一个Buffer, 将光标锁定到哪一行, 按下k, 则会在哪一行的
开头显示D表示Dead, 在按下x就会删除了

设置书签(超级好用, 尤其是在目录较深的情况下)

  • r表示remoute, m表示make, b表示bookmark, l表示list
  • C-x, r, m: 创建一个书签
  • C-x, r, b: 跳转到一个书签
  • C-x, r, l: 显示书签列表

其他重点

  • C-x, r, filename: 只读, 拿来看书不错