我想在Vim/gVim中搜索多个字符串,并以不同的颜色突出显示它们.有没有办法用开箱即用的Vim或插件做到这一点?
我是一个长期的Vim用户(3或4年),他最近开始处理一些深层嵌套的代码.此代码使用空格缩进,而不是制表符.我想要一些干净且不分散注意力的缩进指示,以帮助跟踪我在看多层次深层时所处的代码块.
:set list
Run Code Online (Sandbox Code Playgroud)
仅显示制表符和结束行字符.我找到了一个插件(目前似乎无法挖掘出来),它会突然逐渐变暗颜色突出每个缩进级别,但这在视觉上没有吸引力.理想情况下,我希望在每个缩进级别看到细垂直线.许多新奇的编辑都有这个功能,但我还是不愿意放弃Vim.
有谁知道如何实现这一目标?
我通过Gmail将代码发送给了我的朋友,但正如您猜测的那样,代码未在Gmail中突出显示.是否有解决方案来突出显示通过Gmail发送的代码?
因此,我有一个包含2 ListView
个小部件的活动,当您在第一个中选择一个值时,第二个将填充与第一个中的选择相关的值ListView
.这个机制没有问题,但现在我希望用户选择保持突出显示.我已经阅读了与此主题相关的一个很好的问题,似乎有很多方法可以实现这一点但是在尝试了4-5之后,我仍然无法让它工作.
我已经ListView
使用android:listSelector="#CCCCCC"
XML属性在第二个工作了,但是一旦OnItemClickListener
引入混合(这就像我第一次使用的那个ListView
),这似乎被擦干净了.
到目前为止,这是我得到的:
自定义OnItemClickListener
我发现浏览关于这个主题的各种答案(稍微修改它,以便它加载我的信息第二个ListView):
private class ItemHighlighterListener implements OnItemClickListener {
private View oldSelection = null;
public void clearSelection() {
if(oldSelection != null) {
oldSelection.setBackgroundColor(android.R.color.transparent);
}
}
public void onItemClick(AdapterView<?> parent, View view, int pos, long id) {
clearSelection();
oldSelection = view;
view.setBackgroundDrawable(view.getContext().getResources().getDrawable(R.drawable.list_selector));
loadClubs(mXMLPortalOptions.getRegion(pos).getId());
mClubList.setAdapter(new ArrayAdapter<String>(getApplicationContext(), R.layout.list_item_white, mClubs));
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的list_selector.xml
档案:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true"><shape>
<solid android:color="#CCCCCC" />
</shape></item>
<item android:state_selected="false"><shape>
<solid …
Run Code Online (Sandbox Code Playgroud) 是否可以显示智能突出显示的单词的出现次数?我的意思是当你双击一个单词时.
在Matlab如智能高亮由具有光标接触的单词在工具栏中激活它立即说,例如4 usages of "weight" found
.
搜索单词/短语将为您提供相同的信息,但如何直接在某处显示计数?
BTW:智能突出显示是否可以以不同于双击的方式激活?
我是新用的vs2010我已经读过,当你点击一个变量时,它想要突出显示该文件中该变量的所有实例,并突出显示红色或显示错误以及数字行所在的位置.我怎样才能让vs2010这样做,因为默认情况下它并没有为我做到这一点,突出显示工作会很棒.谢谢.
我database search query
在数据库中搜索用户输入的单词并返回a Cursor
.
在我ListActivity
,我有一个ListView
将持有项目(光标项目).该ListView
项目的布局基本上是一个TextView
.我的意思是,这ListView
将是一个列表TextView
.
我想要的是突出search term
它出现在哪里TextView
.我的意思是突出显示:不同的颜色或不同的背景颜色或任何东西使它与文本的其余部分不同.
这可能吗?如何?
更新:
cursor = myDbHelper.search(term); //term: a word entered by the user.
cursor.moveToFirst();
String[] columns = {cursor.getColumnName(1)};
int[] columnsLayouts = {R.id.item_title}; //item_title: the TextView holding the one raw
ca = new SimpleCursorAdapter(this.getBaseContext(), R.layout.items_layout, cursor,columns , columnsLayouts);
lv = getListView();
lv.setAdapter(ca);
Run Code Online (Sandbox Code Playgroud)
对于@Shailendra:该search()
方法将返回一些标题.我想突出那些与这个term
词匹配的标题中的单词.我希望现在很清楚.
我认为标准突出显示在某种程度上是有用的.使用回调和嵌套结构进行编程时,这没有用.关键词和字符串,它们出现在任何地方,当它们以不同的颜色显示时它会有所帮助,但是这些颜色并不能说明我在哪个范围内,我处于词汇的立场.
在道格拉斯·克罗克福德(Douglas Crockford)的一次谈话中,我听说过背景突出,我记不起来了.这个想法是为了突出范围的词汇水平.Toplevel定义用color0着色,内层块语句用color1着色,每次引入新的作用域时都会递归重复.下面是一个使用一些虚构节点库的例子.(现在添加了一个(ish(或方案lisp))示例)
这不一定是节点或javascript.我想知道是否有一个编辑器/ vim插件实现这种功能.我不知道上下文突出显示是否是这个词,但我不能只找到一个.谷歌搜索上下文突出显示基于通用令牌的突出显示和ConTeXt的结果(我没有任何线索).
这是否存在?是否有编辑器实现此功能?更重要的是,我可以在vim中使用它吗?
另一个与我的相同的问题,没有真正的答案:在任何代码编辑器中都实现了Crockford风格的Context Coloring吗?
要求是:
<u>
和</u>
这里为简单起见,答案可以通过仅包含ASCII字符的列表集中于不区分大小写的搜索,并假设术语分隔符是普通空格 - 即.输入为"Foo bar baz"的查询表示搜索项['foo', 'bar', 'baz']
.
澄清:
最终的应用程序(也许并不奇怪)是一种自动完成的.
TL; DR
最近的小提琴并排比较提出的算法:
https ://jsfiddle.net/Mikk3lRo/ndeuqn02/7/
(如果添加新算法,请随时更新此链接)jsPerf以更现实/更具代表性的方式比较算法 - 在每个代表上,一些字符串基本上"输入"一个字符:https:
//jsperf.com/comparison-of-algorithms-to-search-and-highlight在这一点上,很清楚(由于trincot的优秀基础比较),原始实现所使用的大部分时间都花在了DOM输出上.它的重要性尽可能地在小提琴中被最小化.
还有,在每个搜索算法之间的性能有着明显的区别,但他们没有一个人是一直快速EST上的每个按键.在重新审视并清理我自己的"分而治之"之后,在我尝试的任何现实场景中,它的表现都优于其他人.
Tigregalis介绍了预运行优化的想法,这似乎是合理的,因为选项不太可能在击键之间改变.我在这里为所有方法添加了(一个函数).我从中看到一个明显的好处的唯一算法是在Skirtle的Permutations中,但我会鼓励每个回答者考虑它是否对他们自己的算法有用.
有些算法比其他算法更容易适应.我仍然认为这比实际实施中的微小性能差异更重要.
请注意,当前版本的Tigregalis'收缩集有一个错误 - 我已将其从小提琴和jsperf中排除,直到修复为止.
理论上,这可以通过"手动"构建一个RegExp来解决,该RegExp包含由捕获组分隔的搜索项的每个可能的排列,以捕获术语之间的任何内容 - 搜索"foo bar"结果(foo)(.*?)(bar)|(bar)(.*?)(foo)
.
然后突出显示一次通过string.replace()
.如果字符串中有任何更改,我们会匹配.
演示:
var options = ['United States', 'United Kingdom', 'Afghanistan', 'Aland Islands', 'Albania', 'Algeria', 'American Samoa', …
Run Code Online (Sandbox Code Playgroud)我想是绘制一个关键,例如F4,以便按F4将切换搜索亮点的知名度,并让开始新的搜索能够知名度,无论现在的知名度.
我尝试过的:
:nohlsearch
不关闭hlsearch
设置的情况下暂时禁用高亮显示,但不会再次切换可见性.:set hlsearch!
打开/关闭,但我不想切换hlsearch
设置,只是切换可见性设置.如果hlsearch
关闭则不会自动返回新搜索.似乎没有相反的形式,:nohlsearch
并且命令本身在从函数调用时存在问题.
我发现了类似的问题,但他们没有提供答案.
更新:
第一条评论提供了我要求的内容,转载如下:
let hlstate=0
nnoremap <F4> :if (hlstate == 0) \| nohlsearch \| else \| set hlsearch \| endif \| let hlstate=1-hlstate<cr>
Run Code Online (Sandbox Code Playgroud)
(对于任何使用此功能的人来说都是这样的 - 将地图填充到一行而不是使用功能是必要的,因为您无法对功能内部的突出显示进行更改.)
相关问题略有不同的功能:https: //stackoverflow.com/a/16750393/1176650