Notepad ++ สามารถสร้างเพื่อเปิดลิงก์ไฟล์ในตัวเองได้หรือไม่?


13

ในการตั้งค่า / การตั้งค่า Notepad ++ มีตัวเลือกบนMISC.แท็บภายใต้'การตั้งค่าลิงก์ที่คลิกได้'ทางด้านขวาเพื่อเปิดใช้งานเพื่อเปิดลิงก์ที่พบในไฟล์ที่แก้ไข มันขีดเส้นใต้พวกเขาและเปิดพวกเขาเมื่อดับเบิลคลิก ฉันได้ลองกับ file:///โปรโตคอลแล้ว แต่ก็ใช้งานได้จริง แต่มันทำงานได้ตามความสัมพันธ์ของไฟล์ที่ฉันตั้งไว้ใน Windows

มีวิธีโปรโตคอลหรือวิธี "ทำ" โปรโตคอล (ในพื้นที่) เช่น Notepad ++ เปิดไฟล์ทุกชนิด (ส่วนขยายใด ๆ ) จากลิงก์เหล่านี้ในเอกสารใน Notepad ++ หรือไม่ (เช่นในแท็บอื่น)


นี่เป็นการตอบสนองที่ค่อนข้างช้า ... ดังนั้นคุณไม่ต้องการเปลี่ยนโปรแกรมแก้ไขเริ่มต้นเป็น Notepad ++ คุณเพียงแค่ต้องการเปิดใช้งานลิงก์ที่อยู่ในแผ่นจดบันทึก ++ ++ จะยังคงอยู่ในนั้นเมื่อคุณเปิดมัน
Jon

@ จอนใช่แล้วอย่างที่คุณพูด! เป็นการดียิ่งขึ้นถ้าฉันสามารถเลือกชนิด (โปรโตคอล) ของลิงก์เพื่อเปิดภายใน (n ++) และภายนอก (OS) ดังนั้นฉันสามารถเลือกเฉพาะไฟล์: // ลิงก์เพื่อเปิดใน n ++
n611x007

1
ฉันเดาว่าจะต้องใช้ปลั๊กอินในการทำเช่นนั้น สแกนผ่านDirectory สำหรับปลั๊กอิน Notepad ++แต่ไม่เห็นอะไรอย่างนั้นเฉพาะปลั๊กอิน Explorer ที่สัญญาว่าจะเปิดไฟล์ใด ๆ ที่คลิกใน Npp
zagrimsan

สำหรับทุกคนที่นั่นอย่างที่ฉัน: ฉันไม่สามารถทำงานกับไฟล์: // ลิงก์ได้ เป็นเพราะฉันพยายาม "ไฟล์: // 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ในเส้นทางตราบใดที่คุณมีโปรโตคอลขวา:
โทมัสเอช. ชมิดท์

คำตอบ:


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 ทำงานแตกต่างกันมาก (บางครั้งเปิดโฟลเดอร์ใน explorer?!) ชุดค่าผสมส่วนใหญ่ไม่ทำงาน นอกจากนี้ฉันหนีออกมา\"%1\"ในไฟล์. reg
n611x007

จุดที่ถ่าย : "> ฉันแก้ไขตัวเองแล้ว แต่ฉันคิดว่าคุณสามารถทำได้ด้วยตัวเองเพราะมันเป็น bugfix สำหรับผลที่ไม่สอดคล้องกันโปรแกรมเมอร์ในตัวฉันอยากจะแนะนำให้คุณสร้างแอพทดสอบที่เน้น ไม่ว่ามันจะเป็นอะไรก็ตามที่หน้าต่างส่งผ่านไปให้มันเหมือน args [0] ... : D
CB

ไม่ทำงานบน Win10 ของฉัน (โดยมีหรือไม่มีการแก้ไขสำหรับ "(x86)" ในพา ธ ไฟล์) ฉันเดาว่าฉันต้องมีวิธีแก้ปัญหาที่ลุคอธิบายไว้ในคำตอบของเขาด้วย
StackzOfZtuff

1

คำตอบที่ระบุไม่สามารถใช้ได้กับระบบ Windows 7 Pro ของฉัน พารามิเตอร์%1ไม่เคยถูกจัดให้กับ NotePad ++ อย่างถูกต้องและเริ่มต้นด้วยไฟล์ใหม่ที่ว่างเปล่า

แต่แทนที่จะผมเริ่มแบทช์ไฟล์ผ่าน@=c:\soft\start-notepad.bat "%1" ในไฟล์ชุดนี้ฉันถอดออกNPP:///คำนำหน้าจาก%1ไปและแทนที่/ด้วยภายในของ\ %1จากชุดไฟล์นี้การเริ่มต้นของ NotePad ++ ด้วยพารามิเตอร์ที่ปรับเปลี่ยน%1นั้นทำงานได้อย่างสมบูรณ์แบบ นี่คือรหัสไฟล์แบบย่อ:

เริ่มต้น 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สำหรับ "พื้นที่" มิฉะนั้น hyperlinking ของการเชื่อมโยงจะหยุดหลังจากNPP:///c:/path/file name.txtfile

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.