1 扩展脚本:让EverEdit支持“批量查找”功能
1.1 背景
最近遇到写文档,由于来源不同,需要确认文档中的函数列表是否与接口文档中函数名相同,由于函数名有200多个, 1个个查找非常费事,也没有找到可以批量查找的工具,于是自己写了一个EverEdit的批量查找的扩展。
1.2 准备工作
- 下载“批量查找”插件:下载地址
- 插件安装方法:扩展脚本安装方法
1.3 使用说明
1.3.1 界面介绍
界面主要分为两个区:①,输入待查找文本;②,选项区
查找方式
:仅输出是否命中
:只输出待查找的内容是否出现在目标文档中,建议与“输出位置”结合使用。输出匹配内容
:输出与查找内容匹配的文字部分,特别是正则表达式查找时,会输出更有用的信息。输出匹配行
:如果目标文档中某行与查找字串匹配,则输出该行完整文本。
区分大小写
:如字面意思,查找文字只有大小写完全匹配时字符串才算匹配。正则表达式
:使用正则表达式方式查找。输出位置
:输出窗口会显示匹配字符串在目标文档中的行号,双击鼠标可以跳转到目标文档对应行。
1.3.2 使用“仅输出是否命中”方式查找文本
结果示例:
@~C:\Users\tuyan\Documents\test-1.txt(217,0):^s-save\((218,0):^s-read\((未匹配到行,0):^s-add\((220,0):^s-overwrite\((221,0):^sf-info\((222,0):^soundfilename\((223,0):^s-plot\((224,0):^spec-plot\((225,0):^spec-print\(
搜索结束,共匹配到8行记录,耗时0.72秒!
注:使用上图中的查找条件。
匹配到目标:查找字符串会在结果前显示行号,该查找方式只会显示第1个匹配的内容,其余文本行如果也有匹配的字符串则会忽略,即命中即结束。
未匹配到目标:行号部分会提示“未匹配到行”。
1.3.3 使用“输出匹配内容”方式查找文本
结果示例:
@~C:\Users\tuyan\Documents\test-1.txt(217,0):s-save((218,0):s-read((220,0):s-overwrite((221,0):sf-info((222,0):soundfilename((223,0):s-plot((224,0):spec-plot((225,0):spec-print(
搜索结束,共匹配到8行记录,耗时0.839秒!
注:使用上图中的查找条件。
没有匹配到的字符串就不会输出, 有读者可能会奇怪:这不是查什么输出什么,既然输出的和查找的内容一样,那还查什么劲呢?, 其实,这里更大的用处是使用正则表达式提取满足条件的文字部分。
如果目标文档中有一行文本匹配多个查找条件,也只会输出1次该行文本的匹配部分。
1.3.4 使用“输出匹配行”方式查找文本
结果示例:
@~C:\Users\tuyan\Documents\test-1.txt(217,0):s-save(expression, [maxlen, filename, progress], format: format, mode: mode, bits: bits, swap: flag, play: play) [SAL](218,0):s-read(filename, time-offset: offset, srate: sr, dur: dur, nchans: chans, format: format, mode: mode, bits: n, swap: flag) [SAL](220,0):s-overwrite(expression, maxlen, filename [, offset, progress]) [SAL](221,0):sf-info(filename) [SAL](222,0):soundfilename(name) [SAL](223,0):s-plot(sound [, dur, n]) [SAL](224,0):spec-plot(sound [, offset: offset, dur: dur, res: res, bw: bw, db: db]) [SAL](225,0):spec-print(file sound [, offset: offset, dur: dur, res: res, bw: bw, threshold: threshold]) [SAL]
搜索结束,共匹配到8行记录,耗时0.763秒!
注:使用上图中的查找条件。
没有匹配到的查找字符串不会输出,如果有多个查找条件都匹配目标文档中的同1行文本,则只会输出1次该行文本。
作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来自AI平台,如:豆包、DeepSeek(硅基流动)(注册链接)等,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!
Copyright © 2022~2025 All rights reserved.