在 Notepad++ 中智能突出显示时显示出现次数

Posted

技术标签:

【中文标题】在 Notepad++ 中智能突出显示时显示出现次数【英文标题】:Show count of occurrences when smart highlighting in Notepad++ 【发布时间】:2015-03-03 20:04:59 【问题描述】:

是否可以显示智能突出显示的单词的出现次数?我的意思是当你双击一个单词时。

在 Matlab 中,例如智能突出显示是通过让光标触摸一个单词并在工具栏中 立即 显示例如 4 usages of "weight" found 来激活的。

搜索单词/短语会为您提供相同的信息,但是将计数直接显示在某处怎么样?

顺便说一句:智能突出显示的激活方式与双击不同吗?

【问题讨论】:

【参考方案1】:

您可以通过其他方式获取单词或匹配项的计数。

普通的Find窗口有一个Count按钮。如果按下它,它将在查找窗口的状态栏中显示找到的项目总数。

查找窗口的标记选项卡还显示按下全部标记时找到的项目数。此外,通过这种搜索找到的项目会永久突出显示。

【讨论】:

不,这不是@embert 要求的。查找不会立即告诉您出现的次数,只有在点击几下后才会告诉您。我将使用此功能检查我的代码中是否不再使用某些变量声明。 @HenkWiersema 你读过这个答案的第一句话吗?它在哪里说“...其他方式”?你读过关于“...标记所有被按下”的第二句话吗?这不是点击几下。您对超过 3 年的答案发表评论的意义何在?【参考方案2】:

找到答案here。

下载并安装python脚本插件 插件 --> Python 脚本 --> 新脚本 将其命名为SelectedTextCountIntoStatusBar.py 粘贴,保存并退出:

def callback_sci_UPDATEUI(args): if args['updated'] & UPDATE.SELECTION: matches = [] if editor.getTextLength() < 100000: # don't search "big" files if editor.getSelections() == 1 and not editor.getSelectionEmpty(): try: editor.research(r'\Q' + editor.getSelText() + r'\E', lambda m: matches.append(1)) except: matches = [] l = len(matches) notepad.setStatusBar(STATUSBARSECTION.DOCTYPE, ' ' if l == 0 else ' occurrence(s) of selected text'.format(l)) editor.callback(callback_sci_UPDATEUI, [SCINTILLANOTIFICATION.UPDATEUI])

插件 --> Python 脚本 --> 脚本 --> SelectedTextCountIntoStatusBar 双击一个单词 出现次数在状态栏中。

【讨论】:

哇,这个插件好用。【参考方案3】:

到目前为止,Notepad++ 不显示智能突出显示的计数(即通过双击一次出现突出显示单词)。

...但是将计数直接显示在某个地方怎么样?

作为替代方案:

打开查找窗口 (Search &gt; Find...) 导航到Mark 选项卡 在Find What:输入区输入单词 点击Mark All

这将标记所有匹配项,并在状态栏中显示匹配计数。

顺便说一句:智能突出显示可以以不同的方式激活吗? 双击?

还有另一种使用Style Token 进行智能突出显示的替代方法,可从右键单击上下文菜单中获得。观看下面的动画教程:

【讨论】:

以上是关于在 Notepad++ 中智能突出显示时显示出现次数的主要内容,如果未能解决你的问题,请参考以下文章

如何突出显示文本,然后将其保存以便下次访问同一页面时显示?

Forge Viewer - 我们可以在加载的模型上进行选择/突出显示并保存在数据库中,以便我们可以在下次用户加载时显示该选择吗?

仅在 kivy 首次启动时显示设置屏幕

UITabBar 中的 UICollectionView 在首次加载时显示错误的位置

notepad最多支持多少行

如何仅在应用程序首次启动时显示警报显示?