Notepad++ 可以自行打开文件链接吗?

Notepad++ 可以自行打开文件链接吗?

在“设置/首选项”中,Notepad++ 在MISC.以下选项卡上有一个选项‘可点击链接设置’向右,向使能够打开在编辑的文件中找到的链接。它会在它们下划线并在双击时打开它们。我已经尝试使用该 file:///协议并且它有效,但它实际上根据我在 Windows 中设置的任何文件关联来执行它们。

有没有办法,协议,或者“制作”一个(本地)协议的方法,以便 Notepad++ 可以在 Notepad++ 本身中从文档中的这些链接打开任何类型的文件(任何扩展名)?(即在另一个选项卡中)

答案1

file://是 Windows 的固有协议,因此如果您想忽略“Windows 中设置的任何文件关联”,我建议您使用专用协议,例如npp://。然后将其添加到您的注册表中(使用系统上的相应路径):

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\NPP]
@="URL: NotePad++ Protocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\NPP\DefaultIcon]
@="\"C:\\Program Files\\Notepad++\\notepad++.exe\""

[HKEY_CLASSES_ROOT\NPP\shell]

[HKEY_CLASSES_ROOT\NPP\shell\open]

[HKEY_CLASSES_ROOT\NPP\shell\open\command]
@="\"C:\\Program Files\\Notepad++\\notepad++.exe\" \"%1\""

答案2

给出的答案不适用于我的 Windows 7 Pro 系统。该参数%1从未(正确)提供给 NotePad++,并且它以一个空的新文件启动。

但是我通过启动了一个批处理文件,@=c:\soft\start-notepad.bat "%1" 在这个批处理文件中,我删除了NPP:///前缀%1,并用替换了/其中\%1。从这个批处理文件中,使用修改后的参数启动 NotePad++%1确实可以正常工作。以下是简短的批处理文件代码:

启动记事本

set note=insert here the path to notepad++.exe
set para1=%1%
SETLOCAL ENABLEDELAYEDEXPANSION 
set para1=!para1:edit:///=!
set para1=!para1:/=\!
%note% %para1%

"%1"周围的引号%1实际上不是必需的,因为带有空格或特殊符号的路径或文件名无论如何都会导致 Notepad++ 中的超链接损坏。

如果有必要,必须在 NotePad++ 中使用例如%20“空格”进行更正,否则链接的超链接NPP:///c:/path/file name.txt将在之后停止file

答案3

在 Notepad++ v8.3.3 (64 位,Win 11) 中,我只需稍加修改即可在 notepad++ 中打开文件 URL。单击的文件将在 notepad++ 中作为新选项卡打开。出于某种原因,我需要写入:

file:///C:/Me/Documents/My%20File.txt

请注意后面的额外斜线file://

没有进行其他更改

相关内容