web-dev-qa-db-ja.com

Notepad ++でファイルリンク自体を開くことはできますか?

設定/環境設定では、Notepad ++のMISC.タブにある'Clickable Link Settings'の右側に、Enableに編集済みのリンクを開くオプションがあります。ファイル。それらに下線を付け、ダブルクリックで開きます。私はfile:///プロトコルで試してみましたが、機能しますが、実際には、Windowsで設定したファイルの関連付けに応じて実行されます。

Notepad ++が文書内のこれらのリンクからNotepad ++自体で任意の種類のファイル(任意の拡張子)を開くような方法、プロトコル、または(ローカル)プロトコルを「作成」する方法はありますか? (つまり、別のタブで)

13
n611x007

file://はWindowsの固有のプロトコルであるため、「Windowsで設定されているファイルの関連付け」を無視したい場合は、専用のプロトコルを使用することをお勧めします(npp://)。次に、これをレジストリに追加します(システムの対応するパスを使用):

[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\""
6
C.B.

与えられた答えは私のWindows 7 Proシステムでは機能しませんでした。パラメータ%1がNotePad ++に(正しく)提供されたことはなく、空の新しいファイルで開始されました。

ただし、代わりに@=c:\soft\start-notepad.bat "%1"を使用してバッチファイルを開始しました。このバッチファイルでは、NPP:///から%1プレフィックスを取り除き、/\に置き換えて%1。このバッチファイルから、変更されたパラメーター%1を使用したNotePad ++の開始は完全に機能します。短いバッチファイルのコードは次のとおりです。

start-notepad.bat

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の後に停止します。

1
Luke