我可以在Notepad ++宏中搜索和替换吗?


18

我正在尝试在Notepad ++中创建一个宏,该宏允许我执行一些标准的“搜索与替换”。我可以让宏执行除搜索和替换以外的所有操作(添加行,添加字符)。

我找不到手动编辑宏的文件。

有没有人成功在Notepad ++中创建执行搜索和替换的宏?怎么样?

PS:我对其他可以执行此操作的工具不感兴趣-我知道我围绕perl,vi(m),UltraEdit,sed,awk自己的方式-我只是想知道Notepad ++是否可以做到这一点。

Answers:


13

是的,可以,我只是尝试记录一个新的宏,进行了搜索和替换,并且成功保存了该动作,因此当我播放该宏时,它执行了相同的搜索和替换动作。

我不是Notepad ++ Macros的专家,但我想您是...我打开了一个随机文件,并创建了一个名为test的宏。它寻找一个名为“ snip”的单词,并将其替换为“ blaa”。

shortcuts.xml关闭记事本++后打开文件将显示此新宏:

<Macro name="test" Ctrl="no" Alt="no" Shift="no" Key="0">
    <Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
    <Action type="3" message="1601" wParam="0" lParam="0" sParam="snip" />
    <Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
    <Action type="3" message="1602" wParam="0" lParam="0" sParam="blaa" />
    <Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
    <Action type="3" message="1701" wParam="0" lParam="1608" sParam="" />
</Macro>

这已经过测试并且可以在我的机器上运行,我可以手动修改此文件,更改会反映出来并在Notepad ++中工作。

但是请注意,该shortcuts.xml文件(位于Appdata文件夹中)仅在打开/退出Notepad ++时加载和保存。


谢谢。我找到了文件,但是录制仍然无法进行。我编辑了文件(当然不支持N ++)并粘贴了您的片段。N ++识别了该宏,但是它没有成功替换任何东西-我想它一定是某种无法满足的依赖性,导致我无法进行录制/播放。
Konerak 2010年

1
我所拥有的只是Notepad ++,没有特殊的加载项(从Ninite安装)...确保您使用的是最新版本-但是,如果无法正常运行,则说明您的安装可能有问题。
William Hilsum 2010年

我使用了“查找并替换所有文档”功能,并能够通过上面的示例代码成功进行生产,但做了两个小的更改:lParam上面的“ 768”变成了“ 2”,lParam“ 1608”变成了“ 1635”。否则,效果很好!(Notepad ++ 5.9.2)
Mike

我正在使用v7.6,并且能够记录宏以进行搜索和替换。它在中生成了相同的定义shortcuts.xml。但是,直到我关闭Notepad ++并重新打开程序,宏才起作用。我查看了shortcuts.xml用您的示例替换记录的内容,发现没有新内容写入该文件。然后,我想起了您关于仅在程序打开和关闭时才加载和保存快捷方式的注释。因此,感谢@WilliamHilsum提供的超级有用的提示。没有它,我可能会放弃努力。
亚当·波拉德

6

我以前发现这对我也不起作用。但是后来我从Notepad ++ 5.6.x更新到了5.9.8,现在我可以记录查找和替换了。非常好!

当然,shortcuts.xml由于没有宏编辑器,因此在录制一个宏之后进行手动编辑是不可避免的,并且您需要超级人的力量才能完美地记录一个巨大的宏。(在编辑该文件之前,请确保已关闭所有Notepad ++实例。)


1

我也没有在Notepad ++上找到任何宏编辑器(用于操作文本)(尽管Notepad ++提供了一些内置函数)。但是现在有一个可用于在Notepad ++上创建宏的插件。这个插件被称为“ Python Script ”(具有良好的文档和示例),通过它您可以编写任何种类的宏,因为使用此插件,您几乎可以完全控制编辑器和Notepad ++本身。如果您对python有一些基本的了解,则可以开始使用此插件编写宏(此插件本身的文档涵盖了初学者的一些基本python语法)。

您可以使用此插件搜索和替换宏,并执行几乎所有类型的操作。

这是更多信息的链接:http : //npppythonscript.sourceforge.net/

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.