Notepad ++ v6.5.3 +添加了新的菜单命令:Open Containing Folder in Explorer
和Open Containing Folder in cmd
,但无法将新菜单项添加到快捷键映射器中,因此可以将它们映射到快捷键。
我可以创建这些命令的快捷方式吗?
我知道有扩展和运行命令可以做类似的事情,但我更喜欢使用新的内置功能。</ p>
答案 0 :(得分:5)
(TL;最后的DR。)
事实证明,您可以使用Notepad ++的内置宏来执行此操作,但您必须手动编辑它们(而不是录制它们)。
您需要修改的文件是您的个人资料的shortcuts.xml
文件,通常位于%APPDATA%\Notepad++\shortcuts.xml
。注意:如果您尝试edit the configuration files with Notepad++ itself,可能会遇到麻烦。
accepted answer How to write macro for Notepad++?提及使用Resource Hacker查找菜单wParams。打开记事本++。exe并扩展第一个菜单部分后,我得到了这个:
请注意引用字符串后面的数字。
这是我的shortcuts.xml文件的宏部分:
<Macros>
<Macro name="Trim Trailing and save" Ctrl="no" Alt="yes" Shift="yes" Key="83">
<Action type="2" message="0" wParam="42024" lParam="0" sParam="" />
<Action type="2" message="0" wParam="41006" lParam="0" sParam="" />
</Macro>
</Macros>
这是默认安装中的“Trim Trailing and save”宏。请注意,在第二个Action标记中,wParam值41006与Resource Hacker中列出的Save菜单项编号匹配,这确认了我们需要使用的编号以及我们需要放置的位置。
因此,如果您复制该宏,请删除第一个操作标记,为其指定一个新名称,并更改Action的wParam属性以匹配Resource Hacker中与您想要的操作对应的数字,您将获得以下宏可以粘贴在宏列表的末尾:
<Macro name="Open Containing Folder in Explorer" Ctrl="no" Alt="no" Shift="no" Key="0">
<Action type="2" message="0" wParam="41019" lParam="0" sParam="" />
</Macro>
<Macro name="Open Containing Folder in cmd" Ctrl="no" Alt="no" Shift="no" Key="0">
<Action type="2" message="0" wParam="41020" lParam="0" sParam="" />
</Macro>
最后,再次启动Notepad ++后,您可以转到Shortcut Mapper的Macros部分,然后选择所需的快捷方式。
将上述宏复制到shortcuts.xml文件中,并在重新启动Notepad ++后使用Shortcut Mapper设置快捷方式。
答案 1 :(得分:4)
打开文件“ shortcuts.xml ”[filepath:C:\ Users \ UserName \ AppData \ Roaming \ Notepad ++]
在<UserDefinedCommands> ..</UserDefinedCommands>
标记之间添加这两行代码并保存。
<Command name="Open Containing Folder in Explorer" Ctrl="yes" Alt="yes" Shift="no" Key="69">explorer /select,$(FULL_CURRENT_PATH)</Command>
<Command name="Open Containing Folder in cmd" Ctrl="yes" Alt="yes" Shift="no" Key="84">cmd /K cd /d $(CURRENT_DIRECTORY)</Command>
注意:您还可以通过更改
Ctrl
,Alt
,Shift
和Key
(字符的ASCII值)的值来自定义键盘快捷方式
(重新)启动Notepad ++。现在您可以在“运行”菜单中看到新添加的选项