在eclipse中,如果用Ctrl+F来进行查找,它只会一个一个的找,如果使用如EmEditor之类的编辑器,则可以将所有与查找字符串匹配的内容高亮。所以我就想做一个简单类型功能的插件!
附件是一个高亮关键字的小插件,不过它目前有一些限制:
1.当前有打开的Editor,如:
IWorkbenchPage activePage = window.getActivePage();
if (activePage == null || activePage.getActiveEditor() == null) {
return;
}
因为我就是想找当前打开的Editor里的内容,所以没有Editor再找就没有意义了。
2.Editor的Control是一个Text或者是一个StyledText
我想高亮当前Editor中所选择的字符串。不过可以支持选择的控件类型太多了,我还没想好怎么把所有的选择都支持而不论它来自哪个控件,好像挺复杂的,所以暂时就对Text类型和StyledText做支持了。如下:
IEditorPart activeEditor = activePage.getActiveEditor();
Object control = activeEditor.getAdapter(Control.class);
3.当前Editor有一个对应的Resource在工作空间中
selectedResource = activeEditor.getEditorInput().getAdapter(
IResource.class);
if (selectedResource == null) {
return;
}
一个打开的Editor 不一定有一个对应的Resource在工作空间中存在的,最简单的你可以随便从一个地方拖一个文件到Eclipse的Editor区域打开,但是如果这个文件在工作空间中不存在,那暂时这个还不支持,因前目前我是直接调用Eclipse的查找API来做的,它需要一个IResource[]参数。回头我再考虑一下怎么扩展吧!
4.一定要有选择的内容
如果用户没有选择什么东西,显示查找就没有什么意义了
if (control instanceof StyledText) {
selectedText = ((StyledText) control).getSelectionText();
} else if (control instanceof Text) {
selectedText = ((Text) control).getSelectionText();
}
if(selectedText==null||selectedText.equals("")){
return;
}
5.其他的一些限制
有时即使一个操作看起来符合上面所有的要求,结果看起来可能也不会对,打开一个插件工程的插件描述文件:如果你是用MANIFEST.MF文件打开的,那么在plugin.xml页中进行查找就有问题,因为此时IResource得到的是MANIFEST.MF文件;反正在plugin.xml中也一样。
最后查找的结果就和Eclipse中按Ctrl+H出来的查找过程是一样的,只是结果只显示在当前Editor对应的Resource中存在的结果。至于选中后的背景颜色你可以去以下地方设置:
Window(菜单)-> Preferences->General->Editors->Text Editors->Annotations->Search Results
修改其中的Color就行了,最后结果大致如下:
![点击查看原始大小图片](http://dl2.iteye.com/upload/attachment/0011/9258/779f1fb4-0bb0-3410-9d9b-c963b1c57206-thumb.gif)
- 大小: 62.1 KB
分享到:
相关推荐
基于Jquery的关键字高亮插件 演示站点 http://indiboy.feelast.com/e/search/result/?searchid=17 联系QQ:11386442
高亮显示关键字。 因为在网上搜到的类似插件,觉得不是太完美,或者说是不太符合自己想要的要求,于是自己写的一个高亮显示关键字插件,感觉还可以
NULL 博文链接:https://nakupanda.iteye.com/blog/602882
jquery实现的关键字高亮插件,简单易用,连textarea中的关键字都可以高亮哦
OD高亮插件,把dll放入OD的Plugin文件夹下。OD高亮插件,把dll放入OD的Plugin文件夹下。OD高亮插件,把dll放入OD的Plugin文件夹下。
jquery.mark是一款功能强大的jQuery关键字文本高亮插件。它支持变音符号,同义词,自定义元素,自定义class名称,单词边界和iframe。它可以通过搜索的方式来高亮所有的指定关键字。
最近开发的时候做了textarea 高亮关键字,尝试过很多方法,比如用iframe,和编辑器替换,当然这也是一个方法,但是原来是用textbox的内容要达到兼容这两种方法是做不到的,所以这里是使用jquery插件和jquery核心文件搞的...
chrome 高亮 多个关键字 插件
纯客户端页面关键字搜索高亮jQuery插件,这里就是一个方法,没有打包,很好用!只需要调用$("tbody").textSearch("查阅"); 这种方式就OK,文档内容付有使用方式,下载后请谨记原著!
jQuery.Mark关键字文本高亮插件是一款支持变音符号,同义词,自定义元素,自定义class名称,单词边界和iframe。它可以通过搜索的方式来高亮所有的指定关键字。
jquery.mark是一款功能强大的jQuery关键字文本高亮插件。它支持变音符号,同义词,自定义元素,自定义class名称,单词边界和iframe。它可以通过搜索的方式来高亮所有的指定关键字。
可以对诸如const、enum、typedef别名、结构体引用等语法高亮进行设置,语言本身的关键字自然不用说了,比one dark pro等热门的插件颜色丰富的多。 根据自己喜好对c常用语法颜色进了仔细设置,并加有注释。
CodeColorer是一款基于GeSHi库的WordPress代码语法高亮插件。功能简单,使用方便,是一款比较轻量的插件。CodeColorer支持[cc lang="lang"]code[/cc]和<code lang="lang">code两种语法。 属性说明 属性列表如下,...
语言:English 这是一个扩展程序,突出显示了Google的搜索词。 此扩展程序突出显示Google在其他页面上搜索的单词。 它对应于以下功能。 ・更改突出显示的颜色・完全匹配搜索・禁用突出显示目标Google域如下。...
jQuery.Mark关键字文本高亮插件是一款支持变音符号,同义词,自定义元素,自定义class名称,单词边界和iframe。它可以通过搜索的方式来高亮所有的指定关键字。
jQuery Highlighter 是一个用来高亮显示文本关键字的 jQuery 插件。 支持同时高亮多个关键字 多个关键字之间可以重叠 能够取消高亮关键字
CodeColorer是一款基于GeSHi库的WordPress代码语法高亮插件,功能简单,使用方便,是一款比较轻量的插件。 属性说明 属性列表如下,括号内是参数类型.string是字符串;integer是整数;boolean是布尔型(开关),可...
Visual Studio 高亮插件 Visual Studio 高亮插件 方便 方便编程 高亮色显示关键字 方便使用 欢迎下载
dreamweaverasp搜索高亮显示插件,可以在搜索结果页高亮显示搜索的关键字,asp插件
突出显示您在Google中搜索的关键字 由于Chrome扩展程序采用新政策,因此请再次启用该扩展程序。请单击图标->这可以读取更改站点数据->在所有站点(推荐)或您当前所在的站点上。扩展程序,突出显示您在Google...