emacs search, 讲的很清楚。
默认情况下,Emacs采用了一种很待殊的”增量搜索”的功能,虽然它与我们常用的搜索方法在操作习惯上有很大的不同,但习惯后确实是十分的方便。
要让Emacs开始执行搜索,可以按C-s或C-r,前者是从光标位置往后查找,后者则是往前查找。我们以C-s为例。按动C-s后,Emacs在 Minibuffer中提示: I-Search:,这时您便可以输入要搜索的关键字了,现在学习试验的阶段建议您输入时手脚慢一点,看看Emacs是如何来执行您的搜索请求的。
比如,要搜索“search”一词,您输入s,这时Emacs会把光标移动到最近一个s字母上,这里如果您暂停输入一会儿,Emacs就会把所有的s字母进行高亮。您继续输入e,这时Emacs就找到了最近的se字母组合。一直输入下去,直到Emacs找到您要找的内容,这时按回车键即可结束查找。
在查找过程中,您可以反复按动C-s或C-r来执行向后或向前的查找。如果您已经找到一了一个匹配的内容,并且按了回车键结束了查找,这时如要继续查找这个内容,您只需按两次C-s或C-r即可,第一次按动用于激活查找功能,而第二次按动则表示要继续查找。
在输入查找关键字时,如果不小心输错了,可以按动<DEL>键来清除前一个字符,请注意,在Emacs术语中,<DEL>键是指我们通常所说的<BackSpace>键,而<delete>键才表示我们键盘上的<delete>或<Del>键。
输入关键词时也有一个细节的问题,如果您输入的关键字全部是英文小字母,则Emacs会进行不区分大小写的查找。但如果输入的关键字中包含有大写字母, Emacs就会进行区分大小写的查找。另外在查找的过程中,可以通过M-c快捷键来切换区分大小字模式,可以用它来强行指定是否区分大小写。
如果不想用Emacs的增量搜索功能,也可以让Emacs进行传统的搜索,在按下C-s或C-r后,直接打一个回车键,这时Emacs就将进行非增量搜索,您可以输入你的关键字,再按回车键来执行搜索。
下面要介绍的是更为强大的正则表达式搜索功能。您可以通过按动C-M-s或C-M-r来启动正向或反向的正则表达式搜索功能,Emacs会在Minibuffer中提示Regexp I-search:,这时您便可以输入正要匹配的正则表达式了。
在正则表达式中可以使用很多的控制符号,这里我挑选几个常用的作一个简单的介绍,更全面复杂的解释可以在Emacs的手册中查到。
’.’ (句号): 正则表达式的中句号可以用于匹配一个任意的字符。比如正则式’a.b’就可以匹配abb,acb,adb。。。等等以a开头以b结尾的三个字符的字符串。
’*': 正则表达式中的*号可以用于表示把它前面的字符重复0次或多次。比如’ff*’可以匹配一个或多个相连的f的字符串。
’+': 正则表达式中的+号与*号的作用基本相同,区别在于它表示把它前面的字符重复1次或多次,所以可知正则式’ff*’等价与’f+’。
Emacs的正则表达式语法十分复杂与强大,请您阅读Emacs手册来对它们进行全面的学习,一定会给您的工作带来巨大的便捷,作为一篇入门教程,这里我就不再作更全面的叙述了。
emacs search, 讲的很清楚。的更多相关文章
- [Virtualization][SDN] 讲的很好的SDN软件定义网络视频课程
51CTO的免费课程,开始以为是扯蛋的,后来看了一下,讲的很好.注册一下,免费的. 只看了导论,挺好的. http://edu.51cto.com/course/course_id-4466.html
- 【转】漫谈linux文件IO--io流程讲的很清楚
[转]漫谈linux文件IO--io流程讲的很清楚 这篇文章写的比较全面,也浅显易懂,备份下.转载自:http://blog.chinaunix.net/uid-27105712-id-3270102 ...
- 一直对zookeeper的应用和原理比较迷糊,今天看一篇文章,讲得很通透,分享如下(转)
本文转自http://blog.csdn.net/gs80140/article/details/51496925 一直对zookeeper的应用和原理比较迷糊,今天看一篇文章,讲得很通透,分享如下: ...
- 讲的很详细的一篇关于object equals() & hashCode() 的文章
转: 讲的很详细的一篇关于object equals() & hashCode() 的文章 哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率.在Java ...
- 体绘制(Volume Rendering)概述之3:光线投射算法(Ray Casting)原理和注意要点(强烈推荐呀,讲的很好)
转自:http://blog.csdn.net/liu_lin_xm/article/details/4850609 摘抄“GPU Programming And Cg Language Primer ...
- 转载 linux 僵尸进程,讲的很透彻
僵尸进程的产生和避免,以及wait,waitpid的使用 在fork()/execve()过程中,假设子进程结束时父进程仍存在,而父进程fork()之前既没安装SIGCHLD信号处理函数调用waitp ...
- 什么是WebSocket (经常听别人讲感觉很高大上其实不然)
WebSocket 协议在2008年诞生,2011年成为国际标准.现在所有浏览器都已经支持了.WebSocket 的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真 ...
- 这篇文章关于两阶段提交和Paxos讲的很好
http://blog.chinaunix.net/uid-16723279-id-3803058.html <两阶段提交协议与paxos投票算法> 点评:2PC绝对是CP的死党,是分布式 ...
- 公钥,私钥,SSL(讲的很生动) (转) 对称加密、非对称加密初探
最近开始做消息推送,有不少概念性的东西需要知道,首先应该了解的是密钥.这片文章很清晰的讲解了对称密钥.非对称密钥.ssl的知识. 原文地址:http://chenling1018.blog.163.c ...
随机推荐
- 单击Echart饼图实现数据钻取
使用场景和需求: 第一层饼图显示党员党龄分布的情况. 点击某个党龄段,查看拥有该党龄段的党支部. 默认显示3个党支部,余下的党支部合并为其它,点击其它,查看余下的党支部. 点击某个党支部,返回第一层饼 ...
- Word试卷文档模型化解析存储到数据库
最近在搞一套在线的考试系统,有许多人反映试题的新增比较麻烦(需要逐个输入),于是呼就整个了试卷批量导入了 poi实现word转html 模型化解析html html转Map数组 Map数组(数组的操作 ...
- HDU 1548 A strange lift(dij+邻接矩阵)
( ̄▽ ̄)" //dijkstra算法, //只是有效边(即能从i楼到j楼)的边权都为1(代表次数1): //关于能否到达目标楼层b,只需判断最终lowtime[b]是否等于INF即可. # ...
- 几种访问其他域swf文件,或本地浏览器运行环境【安全沙箱】冲突解决方法
声明: 几种方法都源自网络,我只负责汇总一下子,因为来自多方转载,也找不到初始出处了,需要的可以随意收藏,物尽其用,蛮好^_^ 对于类似的出错信息:SecurityError: Error #2148 ...
- shell之路【第一篇】shell简介与入门
shell简介 1.Shell 诞生于 Unix,Unix的第一个脚本语言,是与 Unix/Linux 交互的工具,单独地学习 Shell 是没有意义的,shell使用的熟练程度反映了用户对Unix/ ...
- PatrolRobot(UVa1600)BFS
PatrolRobot(UVa1600)BFS 珉黻郐距 河吏蝉醉 闵棵黏言 芤她之瞌 褰上稽莨 錾傻奉 郦玫睃芩 摇摇头还没回答魏海洪就抢先回答道:呵呵你们几个别试 蚰镉氡 钬 绦可 ...
- js css优化-- 合并和压缩
在项目框架中,首先要引用很多css和js文件,80%的用户响应时间都是浪费在前端.而这些时间主要又是因为下载图片.样式表.JavaScript脚本.flash等文件造成的.减少这些资源文件的Reque ...
- hosts.deny 和hosts.allow 配置不生效
需求:需要用hosts.deny限制用户通过ssh登录 在/etc/hosts.deny中加入 sshd: all 在/etc/hosts.allow中加入 sshd:all #拒绝所有的ip链接ss ...
- 关于ckeditor过滤掉html样式标签之我见
1.CKEDITOR编辑器属性可以通过修改/ckeditor/config.js文件来控制 //标签过滤默认是开启的,默认会过了<style>样式标签设置为true可关闭过滤config. ...
- maven之pom
记录一下最近的pom的相关设置,plugin的官方地址配置:http://maven.apache.org/plugins/index.html 看了网上说了很多例子,有很多不清楚,看一下官方的,会有 ...