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


12

設定/プリファレンスでは、メモ帳++は、上のオプションがあるMISC.下のタブ[クリッカブルリンクの設定」を右に、有効に編集したファイルで見つかったオープンリンクにします。下線が引かれ、ダブルクリックで開きます。file:///プロトコルで試してみましたが、動作し ますが、実際には、Windowsで設定したファイルの関連付けに従って実行されます。

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


これはかなり遅い応答です...だから、デフォルトのエディターをNotepad ++に変更したくないので、Notepad ++内にあるリンクを開いたときにそこに残るようにしたいだけですか?
ジョン

@Jon yes、あなたが言うように!さらに、内部(n ++)および外部(OS)で開くリンクの種類(プロトコル)を選択できればさらに良いでしょう。したがって、file://リンクのみを選択してn ++で開くことができます。
n611x007

1
それにはプラグインが必要だと思います。Directoryを介してNotepad ++プラグインをスキャンしましたが、Nppでクリックされたファイルを開くことを約束するExplorerプラグインのみを見つけました。
ザグリムサン

私と同じくらい世間知らずの人には:これをfile://リンクで動作させることができませんでした。「file:// C:\ SomeFolder \ SomeFile.txt」を試していたからです。「file:// C:/SomeFolder/SomeFile.txt」に切り替えたときに動作しました
Rob3C

%20リンク内のスペースの置き換えとして使用することを忘れないでくださいfile://C:/Some%20Folder/Some%20File.txt。プロトコルが正しい限り、バックスラッシュ\をパスに残しても機能しますfile://C:\Some%20Folder\Some%20File.txt
トーマスH.シュミット

回答:


6

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\""

1
素晴らしいヒントと面白い結果:D。パス区切り文字と使用するディレクトリの数に応じて、N ++ / windowsの動作は大きく異なり(エクスプローラーでフォルダーを開くこともあります!)、ほとんどの組み合わせは機能しません。また\"%1\"、.regファイルでエスケープしました。
n611x007

要点。: ">私は自分で修正しましたが、バグ修正を考慮して、自分で修正できたと思います。一貫性のない結果に関しては、私のプログラマーは、ウィンドウがargs [0]として渡されるということは何でも...:D
CB

Win10では動作しません。(ファイルパスの「(x86)」の修正の有無にかかわらず。)ルークが彼の答えで説明している回避策も必要だと思います
-StackzOfZtuff

1

与えられた答えは私の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 ++で%20「スペース」などを使用して修正する必要があります。修正しないと、リンクのハイパーリンクNPP:///c:/path/file name.txtがの後に停止しfileます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.