emacs的查找

来源:互联网 发布:算法竞赛入门pdf微盘 编辑:程序博客网 时间:2024/05/19 09:11
  1. 最基本的东西
    C-s 开始正向查找C-r 开始方向查找

    这两个命令进入了查找模式,在 Emacs 中的术语叫做 Incremental Search , 也就是在你输入要查找的字符的时候,同时高亮显示找到的部分。

  2. 在查找模式下的一些操作。 下面的操作都是先按 C-s 或者 C-r 后,进入 Incremental Search Mode 之后的操作。

    • C-r , C-s , 分别是向前查找和向后查找当前输入的内容。

      如果当前内容是空的,也就是说你连续两次输入 C-s ,那么就是 “查找下一个 (Find next)”的操作。第一次是C-s 把你带入了 Incremental Search Mode , 第二次的 C-s 表示查找上一次查过的东西。 C-r 类似,只不过方向相反。

    • C-w 查找光标除所在的单词。

      例如, 你可以输入 C-r 然后马上输入 C-w ,光标所在位置的单词就自动变成了要查找的内容。

      多次输入 C-w 后面的单词就会一个一个的变成了查找内容一部分。

      C-w 还可以和上面介绍的 C-s C-r 配合使用。C-s 进入 Incremental Search Mode. 然后输入void f 然后光标会停留在一个 void f 的单词上,也许是 void far ,然后用 C-s 或者 C-r 找到某个 void f 的地方,然后 C-w 就可以把 f 后面的单词补全了。

    • C-y 把光标所在位置到行尾的部分作为查找内容。

      和 C-w 类似,只不过输入的不是一个单词,而是整整一行。

    • M-y 把 kill ring 中的东西输入为当前要查找的内容。
    • M-c 切换大小写敏感。
    • M-r 切换是普通查找还是正则表达式查找。
    • M-e 编辑要查找的内容

      Incremental Search 会随着用户的输入不断的改变光标的位置,有的时候很讨厌,那么就可以 M-e 编辑要查找的内容,然后按 Enter 回到 Incremetal Search 。

    • M-n M-p 浏览查找历史纪录

      可以查找以前查找过的内容。

    • C-q C-j 查找多行文字。

      如果你要的查找的内容是多行文字,也就是说,查找内容中含有换行字符 C-j 但是, Enter 键又作为结束查找的操作,一按 Enter 就退出了查找模式了。那么 C-q C-j 可以解决这个问题。 可以查看 如何输入特殊的控制字符 。

  3. 用 Nonincremental Search 查找。

    如果不习惯 Incremetal Search 的方式,那么可以 C-s <RET> 那么就用 Nonincremental Search 的方式查找,这种查找方式和普通的编辑器几乎一样。