Notepad++: get path

Post your working scripts, libraries and tools
User avatar
jeeswg
Posts: 5290
Joined: 19 Dec 2016, 01:58
Location: UK

Notepad++: get path

18 Aug 2018, 15:12

- Here is a script to retrieve the path of the text file from Notepad++.

Code: Select all

;Get Info from Context Menu (x64/x32 compatible) - AutoHotkey Community
;https://autohotkey.com/boards/viewtopic.php?f=6&t=31971
;42029	Current Full File path to Clipboard
;42030	Current Filename to Clipboard
;42031	Current Dir. Path to Clipboard

#IfWinActive ahk_class Notepad++
q:: ;notepad++ - get path
SendMessage, 0x111, 42029,,, A ;WM_COMMAND := 0x111 ;Current Full File path to Clipboard
vPath := Clipboard
MsgBox, % vPath
return

w:: ;notepad++ - get path (alternative)
WinGetTitle, vWinTitle, A
vPath := RegExReplace(vWinTitle, " - Notepad\+\+$")
if (SubStr(vPath, 1, 1) = "*")
	vPath := SubStr(vPath, 2)
Clipboard := vPath
MsgBox, % vPath
return
#IfWinActive
- To set the path, see the JEE_NotepadSetPath function here. It emulates a drag-and-drop to set the file path. (A technique that works on about half of the programs I use.)
notepad get/set path (get/set text file path) - AutoHotkey Community
https://autohotkey.com/boards/viewtopic.php?f=6&t=30050

- See also:
Notepad2: get path - AutoHotkey Community
https://autohotkey.com/boards/viewtopic.php?f=6&t=54265
User avatar
CerpinTaxt
Posts: 13
Joined: 23 Dec 2017, 12:16

Re: Notepad++: get path

18 Aug 2018, 17:55

Clipboard and WinTitle are pretty unreliable. This is a much more stable method:

Code: Select all

NppGetCurrentDocPath()
{
	Process, Wait, Notepad++.exe, 1
	  dwProcessId := ErrorLevel

	hNpp := DllCall("FindWindow", "Str", "Notepad++", "Int", 0, "Ptr")
	
	if !(WinExist("ahk_id " . hNpp) AND WinExist("ahk_PID " . dwProcessId))
		return

	; Retrieve a handle to the N++ process so we can read its memory space
	PROCESS_VM_OPERATION	:= 0x0008
	PROCESS_VM_READ			:= 0x0010
	hProcess := DllCall("OpenProcess", "UInt", (PROCESS_VM_OPERATION | PROCESS_VM_READ )
						, "Int" , false, "UInt", dwProcessId, "Ptr")
	
	; Allocate a buffer in N++'s memory space 
	MEM_COMMIT		:= 0x1000
	PAGE_READWRITE	:= 0x04
	MAX_PATH		:= 260 * (A_IsUnicode ? 2 : 1)
	hBuf := DllCall("VirtualAllocEx", "UInt", hProcess, "UInt", 0, "UInt", MAX_PATH
					, "UInt", MEM_COMMIT, "UInt", PAGE_READWRITE, "Ptr")
	
	If !(hProcess AND hBuf)
		return

	; Tell N++ to fill the allocated buffer with the path of the current open tab
	NPPM_GETFULLCURRENTPATH	:= 4025
	DllCall("SendMessage", "Ptr", hNpp, "UInt", NPPM_GETFULLCURRENTPATH, "UInt", MAX_PATH, "Ptr", hBuf)
	
	; Set the capacity of the AHK variable we're going to fill with the remote buffer's contents
	VarSetCapacity(CurrentPath, MAX_PATH, 0)

	; Fill buffer 'CurrentPath' with 'MAX_PATH' number of bytes from remote buffer 'hBuf'
	DllCall("ReadProcessMemory", "Ptr", hProcess, "Ptr", hBuf, "Ptr", &CurrentPath, "UInt", MAX_PATH, "UInt", 0)
	
	; Release remote buffer 'hBuf' because we're done with it
	MEM_RELEASE := 0x8000
	DllCall("VirtualFreeEx", "Ptr", hProcess, "Ptr", hBuf, "UInt", 0, "UInt", MEM_RELEASE)
	
	; Close the handle opened by OpenProcess
	DllCall("CloseHandle", "Ptr", hProcess)
	
	; Resize var to fit the size of its contents because the value will likely be less than MAX_PATH
	VarSetCapacity(CurrentPath, -1)
	
	return CurrentPath
}
Last edited by CerpinTaxt on 20 Aug 2018, 11:04, edited 1 time in total.
Image
and with just one faint glance back into the sea
the mollusk lingers with its wandering eye
User avatar
jeeswg
Posts: 5290
Joined: 19 Dec 2016, 01:58
Location: UK

Re: Notepad++: get path

18 Aug 2018, 18:08

- Many thanks for this. I did a bit of searching and didn't come across NPPM_GETFULLCURRENTPATH.
- Warning: I would save any files before testing the function, since interacting with the address space of another process can potentially cause crashes and thus the loss of data.
User avatar
CerpinTaxt
Posts: 13
Joined: 23 Dec 2017, 12:16

Re: Notepad++: get path

20 Aug 2018, 11:06

Turns out that the method I was using before to determine the PID and necessary hwnd of the Notepad++ class was less than reliable. I've updated the post with what I hope will be much less prone to failure. Changed how I did a few things and threw in a couple more failsafes as well as tried to include a bit of commenting to maybe make things a bit more clear.
Image
and with just one faint glance back into the sea
the mollusk lingers with its wandering eye
User avatar
TheDewd
Posts: 1130
Joined: 19 Dec 2013, 11:16
Location: USA

Re: Notepad++: get path

22 Aug 2018, 13:33

You could also retrieve the ToolTip text from the tabs while hovering the mouse cursor over them:

Code: Select all

#SingleInstance, Force

CoordMode, ToolTip, Screen
CoordMode, Mouse, Screen

F1::
	ControlGetText, tooltip1,, ahk_class tooltips_class32
	MsgBox, % tooltip1
return
I don't like this method, but if you really need the info it's great to know more examples.
Image Bulldozer - Sokoban inspired game from 1994 recreated in AutoHotkey.
User avatar
jeeswg
Posts: 5290
Joined: 19 Dec 2016, 01:58
Location: UK

Re: Notepad++: get path

22 Aug 2018, 13:47

Here's another way. I don't use Notepad++ very much, so I only wrote it just now.

Code: Select all

#IfWinActive ahk_class Notepad++
q:: ;notepad++ - get paths of open files
PostMessage, 0x111, 11001,,, A ;WM_COMMAND := 0x111 ;Windows...
WinWaitActive, Windows ahk_class #32770
hWnd2 := WinExist()
ControlGet, vText, List,, SysListView321, % "ahk_id " hWnd2
WinClose, % "ahk_id " hWnd2
vOutput := ""
Loop, Parse, vText, `n, `r
{
	oTemp := StrSplit(A_LoopField, "`t")
	vOutput .= oTemp.2 "\" oTemp.1 "`r`n"
}
Clipboard := vOutput
MsgBox, % vOutput
return
#IfWinActive
User avatar
TheDewd
Posts: 1130
Joined: 19 Dec 2013, 11:16
Location: USA

Re: Notepad++: get path

22 Aug 2018, 14:11

Here's another one:

Code: Select all

#SingleInstance, Force

q::
	WinMenuSelectItem, ahk_class Notepad++,, View, Summary...
	WinWaitActive, Summary ahk_class #32770
	hWnd2 := WinExist()
	ControlGetText, SummaryText, Static1, Summary ahk_class #32770
	WinClose, % "ahk_id " hWnd2
	RegExMatch(SummaryText, "path:\s(.*?)Created", Match)
	MsgBox, % Match1
return
Image Bulldozer - Sokoban inspired game from 1994 recreated in AutoHotkey.
User avatar
jeeswg
Posts: 5290
Joined: 19 Dec 2016, 01:58
Location: UK

Re: Notepad++: get path

30 Aug 2018, 20:33

- Here's a list of keyboard shortcuts:
Keyboard And Mouse Shortcuts - Notepad++ Wiki
http://docs.notepad-plus-plus.org/index ... _Shortcuts
- Here's a list of menu constants:

Code: Select all

;Notepad++ v7.2.2 menu constants

;using JEE_MenuGetTextAll from:
;GUIs via DllCall: get/set internal/external control text - AutoHotkey Community
;https://autohotkey.com/boards/viewtopic.php?f=6&t=40514

-1	&File
-1	&Edit
-1	&Search
-1	&View
-1	E&ncoding
-1	&Language
-1	Se&ttings
-1	&Macro
-1	&Run
-1	&Plugins
-1	&Window
-1	&?
41003	X

	[&File]
	41001	&New	Ctrl+N
	41002	&Open...	Ctrl+O
	-1	Open Containing Folder
	41022	Open Folder as Workspace...
	41014	Re&load from Disk
	41006	&Save	Ctrl+S
	41008	Save &As...	Ctrl+Alt+S
	41015	Save a Copy As...
	41007	Sav&e All	Ctrl+Shift+S
	41017	Rename...
	41003	&Close	Ctrl+W
	41004	Clos&e All
	-1	Close More
	41016	Move to Recycle Bin
	0
	41012	Load Session...
	41013	Save Session...
	0
	41010	Print...	Ctrl+P
	1001	Print Now
	0
	41023	&1: C:\MyFile.txt
	41032	&2: C:\MyFile.txt
	41031	&3: C:\MyFile.txt
	41030	&4: C:\MyFile.txt
	41029	&5: C:\MyFile.txt
	41028	&6: C:\MyFile.txt
	41027	&7: C:\MyFile.txt
	41026	&8: C:\MyFile.txt
	41025	&9: C:\MyFile.txt
	41024	1&0: C:\MyFile.txt
	-1
	41021	Restore Recent Closed File	Ctrl+Shift+T
	42040	Open All Recent Files
	42041	Empty Recent Files List
	-1
	41011	E&xit	Alt+F4

		[Open Containing Folder]
		41019	Explorer
		41020	cmd

		[Close More]
		41005	Close All but Active Document
		41009	Close All to the Left
		41018	Close All to the Right

		[]

		[]

	[&Edit]
	42003	&Undo	Ctrl+Z
	42004	&Redo	Ctrl+Y
	0
	42001	Cu&t	Ctrl+X
	42002	&Copy	Ctrl+C
	42005	&Paste	Ctrl+V
	42006	&Delete	DEL
	42007	Select A&ll	Ctrl+A
	42020	Begin/End Select
	0
	-1	Copy to Clipboard
	-1	Indent
	-1	Convert Case to
	-1	Line Operations
	-1	Comment/Uncomment
	-1	Auto-Completion
	-1	EOL Conversion
	-1	Blank Operations
	-1	Paste Special
	-1	On Selection
	0
	42037	Column Mode...
	42034	Column Editor...	Alt+C
	42051	Character Panel
	42052	Clipboard History
	0
	42028	Set Read-Only
	42033	Clear Read-Only Flag

		[Copy to Clipboard]
		42029	Current Full File path to Clipboard
		42030	Current Filename to Clipboard
		42031	Current Dir. Path to Clipboard

		[Indent]
		42008	Increase Line Indent	Tab
		42009	Decrease Line Indent	Shift+Tab

		[Convert Case to]
		42016	&UPPERCASE	Ctrl+Shift+U
		42017	&lowercase	Ctrl+U
		42067	&Proper Case	Alt+U
		42068	Proper Case (blend)	Alt+Shift+U
		42069	&Sentence case	Ctrl+Alt+U
		42070	Sentence case (blend)	Ctrl+Alt+Shift+U
		42071	&iNVERT cASE
		42072	&ranDOm CasE

		[Line Operations]
		42010	Duplicate Current Line	Ctrl+D
		42012	Split Lines	Ctrl+I
		42013	Join Lines	Ctrl+J
		42014	Move Up Current Line	Ctrl+Shift+Up
		42015	Move Down Current Line	Ctrl+Shift+Down
		42055	Remove Empty Lines
		42056	Remove Empty Lines (Containing Blank characters)
		42057	Insert Blank Line Above Current	Ctrl+Alt+Enter
		42058	Insert Blank Line Below Current	Ctrl+Alt+Shift+Enter
		0
		42059	Sort Lines Lexicographically Ascending
		42061	Sort Lines As Integers Ascending
		42063	Sort Lines As Decimals (Comma) Ascending
		42065	Sort Lines As Decimals (Dot) Ascending
		0
		42060	Sort Lines Lexicographically Descending
		42062	Sort Lines As Integers Descending
		42064	Sort Lines As Decimals (Comma) Descending
		42066	Sort Lines As Decimals (Dot) Descending

		[Comment/Uncomment]
		42022	Toggle Single Line Comment	Ctrl+Q
		42035	Single Line Comment	Ctrl+K
		42036	Single Line Uncomment	Ctrl+Shift+K
		42023	Block Comment	Ctrl+Shift+Q
		42047	Block Uncomment

		[Auto-Completion]
		50000	Function Completion	Ctrl+Spacebar
		50001	Word Completion	Ctrl+Enter
		50002	Function Parameters Hint	Ctrl+Shift+Spacebar
		50006	Path Completion	Ctrl+Alt+Spacebar

		[EOL Conversion]
		45001	Windows (CR LF)
		45002	Unix (LF)
		45003	Macintosh (CR)

		[Blank Operations]
		42024	Trim Trailing Space
		42042	Trim Leading Space
		42043	Trim Leading and Trailing Space
		42044	EOL to Space
		42045	Remove Unnecessary Blank and EOL
		0
		42046	TAB to Space
		42054	Space to TAB (All)
		42053	Space to TAB (Leading)

		[Paste Special]
		42038	Paste HTML Content
		42039	Paste RTF Content
		0
		42048	Copy Binary Content
		42049	Cut Binary Content
		42050	Paste Binary Content

		[On Selection]
		42073	Open File
		42074	Open Containing Folder in Explorer
		0
		42075	Search on Internet
		42076	Change Search Engine...

	[&Search]
	43001	&Find...	Ctrl+F
	43013	Find in Files...	Ctrl+Shift+F
	43002	Find &Next	F3
	43010	Find &Previous	Shift+F3
	43048	Select and Find Next	Ctrl+F3
	43049	Select and Find Previous	Ctrl+Shift+F3
	43014	Find (Volatile) Next	Ctrl+Alt+F3
	43015	Find (Volatile) Previous	Ctrl+Alt+Shift+F3
	43003	&Replace...	Ctrl+H
	43011	&Incremental Search	Ctrl+Alt+I
	43045	Search Results Window	F7
	43046	Next Search Result	F4
	43047	Previous Search Result	Shift+F4
	43004	&Go to...	Ctrl+G
	43009	Go to Matching Brace	Ctrl+B
	43053	Select All Between Matching Braces	Ctrl+Alt+B
	43054	Mar&k...
	0
	-1	Mark All
	-1	Unmark All
	-1	Jump up
	-1	Jump down
	0
	-1	Bookmark
	0
	43052	Find characters in range...

		[Mark All]
		43022	Using 1st Style
		43024	Using 2nd Style
		43026	Using 3rd Style
		43028	Using 4th Style
		43030	Using 5th Style

		[Unmark All]
		43023	Clear 1st Style
		43025	Clear 2nd Style
		43027	Clear 3rd Style
		43029	Clear 4th Style
		43031	Clear 5th Style
		43032	Clear all Styles

		[Jump up]
		43033	1st Style	Ctrl+Shift+1
		43034	2nd Style	Ctrl+Shift+2
		43035	3rd Style	Ctrl+Shift+3
		43036	4th Style	Ctrl+Shift+4
		43037	5th Style	Ctrl+Shift+5
		43038	Find Style	Ctrl+Shift+0

		[Jump down]
		43039	1st Style	Ctrl+1
		43040	2nd Style	Ctrl+2
		43041	3rd Style	Ctrl+3
		43042	4th Style	Ctrl+4
		43043	5th Style	Ctrl+5
		43044	Find Style	Ctrl+0

		[Bookmark]
		43005	Toggle Bookmark	Ctrl+F2
		43006	Next Bookmark	F2
		43007	Previous Bookmark	Shift+F2
		43008	Clear All Bookmarks
		43018	Cut Bookmarked Lines
		43019	Copy Bookmarked Lines
		43020	Paste to (Replace) Bookmarked Lines
		43021	Remove Bookmarked Lines
		43051	Remove Unmarked Lines
		43050	Inverse Bookmark

	[&View]
	44034	Always on Top
	44032	Toggle Full Screen Mode	F11
	44009	Post-It	F12
	0
	-1	Show Symbol
	-1	Zoom
	-1	Move/Clone Current Document
	-1	Tab
	44022	Word wrap
	44072	Focus on Another View	F8
	44042	Hide Lines	Alt+H
	0
	44010	Fold All	Alt+0
	44029	Unfold All	Alt+Shift+0
	44030	Collapse Current Level	Ctrl+Alt+F
	44031	Uncollapse Current Level	Ctrl+Alt+Shift+F
	-1	Collapse Level
	-1	Uncollapse Level
	0
	44049	Summary...
	0
	-1	Project
	44085	Folder as Workspace
	44080	Document Map
	44084	Function List
	0
	44035	Synchronize Vertical Scrolling
	44036	Synchronize Horizontal Scrolling
	0
	42026	Text Direction RTL	Ctrl+Alt+R
	42027	Text Direction LTR	Ctrl+Alt+L
	0
	44097	Monitoring (tail -f)

		[Show Symbol]
		44025	Show White Space and TAB
		44026	Show End of Line
		44019	Show All Characters
		0
		44020	Show Indent Guide
		44041	Show Wrap Symbol

		[Zoom]
		44023	Zoom &In (Ctrl+Mouse Wheel Up)	Ctrl+Num +
		44024	Zoom &Out (Ctrl+Mouse Wheel Down)	Ctrl+Num -
		44033	Restore Default Zoom	Ctrl+Num /

		[Move/Clone Current Document]
		10001	Move to Other View
		10002	Clone to Other View
		10003	Move to New Instance
		10004	Open in New Instance

		[Tab]
		44086	1st Tab	Ctrl+Numpad 1
		44087	2nd Tab	Ctrl+Numpad 2
		44088	3rd Tab	Ctrl+Numpad 3
		44089	4th Tab	Ctrl+Numpad 4
		44090	5th Tab	Ctrl+Numpad 5
		44091	6th Tab	Ctrl+Numpad 6
		44092	7th Tab	Ctrl+Numpad 7
		44093	8th Tab	Ctrl+Numpad 8
		44094	9th Tab	Ctrl+Numpad 9
		0
		44095	Next Tab	Ctrl+Page down
		44096	Previous Tab	Ctrl+Page up
		0
		44098	Move Tab Forward	Ctrl+Shift+Page down
		44099	Move Tab Backward	Ctrl+Shift+Page up

		[Collapse Level]
		44051	1	Alt+1
		44052	2	Alt+2
		44053	3	Alt+3
		44054	4	Alt+4
		44055	5	Alt+5
		44056	6	Alt+6
		44057	7	Alt+7
		44058	8	Alt+8

		[Uncollapse Level]
		44061	1	Alt+Shift+1
		44062	2	Alt+Shift+2
		44063	3	Alt+Shift+3
		44064	4	Alt+Shift+4
		44065	5	Alt+Shift+5
		44066	6	Alt+Shift+6
		44067	7	Alt+Shift+7
		44068	8	Alt+Shift+8

		[Project]
		44081	Project Panel 1
		44082	Project Panel 2
		44083	Project Panel 3

	[E&ncoding]
	45004	Encode in ANSI
	45008	Encode in UTF-8
	45005	Encode in UTF-8-BOM
	45006	Encode in UCS-2 BE BOM
	45007	Encode in UCS-2 LE BOM
	-1	Character sets
	0
	45009	Convert to ANSI
	45010	Convert to UTF-8
	45011	Convert to UTF-8-BOM
	45012	Convert to UCS-2 BE BOM
	45013	Convert to UCS-2 LE BOM

		[Character sets]
		-1	Arabic
		-1	Baltic
		-1	Celtic
		-1	Cyrillic
		-1	Central European
		-1	Chinese
		-1	Eastern European
		-1	Greek
		-1	Hebrew
		-1	Japanese
		-1	Korean
		-1	North European
		-1	Thai
		-1	Turkish
		-1	Western European
		-1	Vietnamese

			[Arabic]
			45034	ISO 8859-6
			45045	OEM 720
			45026	Windows-1256

			[Baltic]
			45032	ISO 8859-4
			45040	ISO 8859-13
			45047	OEM 775
			45027	Windows-1257

			[Celtic]
			45041	ISO 8859-14

			[Cyrillic]
			45033	ISO 8859-5
			45068	KOI8-R
			45067	KOI8-U
			45066	Macintosh
			45050	OEM 855
			45058	OEM 866
			45021	Windows-1251

			[Central European]
			45049	OEM 852
			45020	Windows-1250

			[Chinese]
			45060	Big5 (Traditional)
			45061	GB2312 (Simplified)

			[Eastern European]
			45030	ISO 8859-2

			[Greek]
			45035	ISO 8859-7
			45046	OEM 737
			45059	OEM 869
			45023	Windows-1253

			[Hebrew]
			45036	ISO 8859-8
			45055	OEM 862
			45025	Windows-1255

			[Japanese]
			45062	Shift-JIS

			[Korean]
			45063	Windows 949
			45064	EUC-KR

			[North European]
			45054	OEM 861 : Icelandic
			45057	OEM 865 : Nordic

			[Thai]
			45065	TIS-620

			[Turkish]
			45031	ISO 8859-3
			45037	ISO 8859-9
			45051	OEM 857
			45024	Windows-1254

			[Western European]
			45029	ISO 8859-1
			45042	ISO 8859-15
			45048	OEM 850
			45052	OEM 858
			45053	OEM 860 : Portuguese
			45056	OEM 863 : French
			45044	OEM-US
			45022	Windows-1252

			[Vietnamese]
			45028	Windows-1258

	[&Language]
	46042	Ada
	46009	ASP
	46033	Assembly
	46044	AutoIt
	46022	Batch
	46002	C
	46023	C#
	46003	C++
	46040	Caml
	46048	CMake
	46050	COBOL
	46056	CoffeeScript
	46010	CSS
	46051	D
	46034	Diff
	46028	ActionScript
	46026	Fortran
	46052	Gui4Cli
	46046	Haskell
	46005	HTML
	46019	INI file
	46047	Inno Setup
	46004	Java
	46007	JavaScript
	46057	JSON
	46055	JSP
	46041	KIXtart
	46031	LISP
	46024	Lua
	46018	Makefile
	46045	Matlab
	46015	MS-DOS Style
	46016	Normal Text
	46029	NSIS
	46014	Objective-C
	46011	Pascal
	46013	Perl
	46008	PHP
	46036	PostScript
	46053	PowerShell
	46035	Properties
	46012	Python
	46054	R
	46017	Resource file
	46037	Ruby
	46027	Shell
	46032	Scheme
	46038	Smalltalk
	46020	SQL
	46030	TCL
	46025	TeX
	46021	Visual Basic
	46039	VHDL
	46043	Verilog
	46006	XML
	46049	YAML
	0
	46150	Define your language...
	46080	User-Defined

	[Se&ttings]
	48011	Preferences...
	46001	Style Configurator...
	48009	Shortcut Mapper...
	0
	-1	Import
	0
	48018	Edit Popup ContextMenu

		[Import]
		48005	Import plugin(s)...
		48006	Import style theme(s)...

	[&Macro]
	42018	Start Re&cording
	42019	S&top Recording
	42021	&Playback	Ctrl+Shift+P
	42025	&Save Current Recorded Macro...
	42032	&Run a Macro Multiple Times...
	-1
	20000	Trim Trailing and save	Alt+Shift+S
	-1
	48016	Modify Shortcut/Delete Macro...

		[]

		[]

	[&Run]
	49000	&Run...	F5
	-1
	21000	Launch in Firefox	Ctrl+Alt+Shift+X
	21001	Launch in IE	Ctrl+Alt+Shift+I
	21002	Launch in Chrome	Ctrl+Alt+Shift+R
	21003	Launch in Safari	Ctrl+Alt+Shift+A
	21004	Get php help	Alt+F1
	21005	Wikipedia Search	Alt+F3
	21006	Open file in another instance	Alt+F6
	21007	Send via Outlook	Ctrl+Alt+Shift+O
	-1
	48017	Modify Shortcut/Delete Command...

		[]

		[]

	[&Plugins]
	-1	Converter
	-1	MIME Tools
	-1	NppExport
	-1	Plugin Manager

		[Converter]
		22000	ASCII -> HEX
		22001	HEX -> ASCII
		0
		22002	Conversion Panel
		0
		22003	Edit Configuration File
		22004	About

		[MIME Tools]
		22005	Base64 Encode
		22006	Base64 Encode with Unix EOL
		22007	Base64 Decode
		0
		22008	Quoted-printable Encode
		22009	Quoted-printable Decode
		0
		22010	URL Encode
		22011	Full URL Encode
		22012	URL Decode
		0
		22013	SAML Decode
		0
		22014	About

		[NppExport]
		22015	&Export to RTF
		22016	&Export to HTML
		22017	&Copy RTF to clipboard
		22018	&Copy HTML to clipboard
		22019	&Copy all formats to clipboard

		[Plugin Manager]
		22020	&Show Plugin Manager
		22021	&About

	[&Window]
	11020	Recent Window
	11001	&Windows...

	[&?]
	47010	Command Line Arguments...
	0
	47001	Notepad++ Home
	47002	Notepad++ Project Page
	47004	Notepad++ Community (Forum)
	47011	Live Support
	47005	Get More Plugins
	0
	47012	Debug Info...
	47000	About Notepad++	F1

==================================================

;using Resource Hacker

1500 MENU
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
{
POPUP "&File"
{
	MENUITEM "&New",  41001
	MENUITEM "&Open...",  41002
	POPUP "Open Containing Folder"
	{
		MENUITEM "Explorer",  41019
		MENUITEM "cmd",  41020
	}
	MENUITEM "Open Folder as Workspace...",  41022
	MENUITEM "Re&load from Disk",  41014
	MENUITEM "&Save",  41006
	MENUITEM "Save &As...",  41008
	MENUITEM "Save a Copy As...",  41015
	MENUITEM "Sav&e All",  41007
	MENUITEM "Rename...",  41017
	MENUITEM "&Close",  41003
	MENUITEM "Clos&e All",  41004
	POPUP "Close More"
	{
		MENUITEM "Close All but Active Document",  41005
		MENUITEM "Close All to the Left",  41009
		MENUITEM "Close All to the Right",  41018
	}
	MENUITEM "Move to Recycle Bin",  41016
	MENUITEM SEPARATOR
	MENUITEM "Load Session...",  41012
	MENUITEM "Save Session...",  41013
	MENUITEM SEPARATOR
	MENUITEM "Print...",  41010
	MENUITEM "Print Now",  1001
	MENUITEM SEPARATOR
	MENUITEM "E&xit",  41011
}
POPUP "&Edit"
{
	MENUITEM "&Undo",  42003
	MENUITEM "&Redo",  42004
	MENUITEM SEPARATOR
	MENUITEM "Cu&t",  42001
	MENUITEM "&Copy",  42002
	MENUITEM "&Paste",  42005
	MENUITEM "&Delete",  42006
	MENUITEM "Select A&ll",  42007
	MENUITEM "Begin/End Select",  42020
	MENUITEM SEPARATOR
	POPUP "Copy to Clipboard"
	{
		MENUITEM "Current Full File path to Clipboard",  42029
		MENUITEM "Current Filename to Clipboard",  42030
		MENUITEM "Current Dir. Path to Clipboard",  42031
	}
	POPUP "Indent"
	{
		MENUITEM "Increase Line Indent",  42008
		MENUITEM "Decrease Line Indent",  42009
	}
	POPUP "Convert Case to"
	{
		MENUITEM "&UPPERCASE",  42016
		MENUITEM "&lowercase",  42017
		MENUITEM "&Proper Case",  42067
		MENUITEM "Proper Case (blend)",  42068
		MENUITEM "&Sentence case",  42069
		MENUITEM "Sentence case (blend)",  42070
		MENUITEM "&iNVERT cASE",  42071
		MENUITEM "&ranDOm CasE",  42072
	}
	POPUP "Line Operations"
	{
		MENUITEM "Duplicate Current Line",  42010
		MENUITEM "Split Lines",  42012
		MENUITEM "Join Lines",  42013
		MENUITEM "Move Up Current Line",  42014
		MENUITEM "Move Down Current Line",  42015
		MENUITEM "Remove Empty Lines",  42055
		MENUITEM "Remove Empty Lines (Containing Blank characters)",  42056
		MENUITEM "Insert Blank Line Above Current",  42057
		MENUITEM "Insert Blank Line Below Current",  42058
		MENUITEM SEPARATOR
		MENUITEM "Sort Lines Lexicographically Ascending",  42059
		MENUITEM "Sort Lines As Integers Ascending",  42061
		MENUITEM "Sort Lines As Decimals (Comma) Ascending",  42063
		MENUITEM "Sort Lines As Decimals (Dot) Ascending",  42065
		MENUITEM SEPARATOR
		MENUITEM "Sort Lines Lexicographically Descending",  42060
		MENUITEM "Sort Lines As Integers Descending",  42062
		MENUITEM "Sort Lines As Decimals (Comma) Descending",  42064
		MENUITEM "Sort Lines As Decimals (Dot) Descending",  42066
	}
	POPUP "Comment/Uncomment"
	{
		MENUITEM "Toggle Single Line Comment",  42022
		MENUITEM "Single Line Comment",  42035
		MENUITEM "Single Line Uncomment",  42036
		MENUITEM "Block Comment",  42023
		MENUITEM "Block Uncomment",  42047
	}
	POPUP "Auto-Completion"
	{
		MENUITEM "Function Completion",  50000
		MENUITEM "Word Completion",  50001
		MENUITEM "Function Parameters Hint",  50002
		MENUITEM "Path Completion",  50006
	}
	POPUP "EOL Conversion"
	{
		MENUITEM "Windows (CR LF)",  45001
		MENUITEM "Unix (LF)",  45002
		MENUITEM "Macintosh (CR)",  45003
	}
	POPUP "Blank Operations"
	{
		MENUITEM "Trim Trailing Space",  42024
		MENUITEM "Trim Leading Space",  42042
		MENUITEM "Trim Leading and Trailing Space",  42043
		MENUITEM "EOL to Space",  42044
		MENUITEM "Remove Unnecessary Blank and EOL",  42045
		MENUITEM SEPARATOR
		MENUITEM "TAB to Space",  42046
		MENUITEM "Space to TAB (All)",  42054
		MENUITEM "Space to TAB (Leading)",  42053
	}
	POPUP "Paste Special"
	{
		MENUITEM "Paste HTML Content",  42038
		MENUITEM "Paste RTF Content",  42039
		MENUITEM SEPARATOR
		MENUITEM "Copy Binary Content",  42048
		MENUITEM "Cut Binary Content",  42049
		MENUITEM "Paste Binary Content",  42050
	}
	POPUP "On Selection"
	{
		MENUITEM "Open File",  42073
		MENUITEM "Open Containing Folder in Explorer",  42074
		MENUITEM SEPARATOR
		MENUITEM "Search on Internet",  42075
		MENUITEM "Change Search Engine...",  42076
	}
	MENUITEM SEPARATOR
	MENUITEM "Column Mode...",  42037
	MENUITEM "Column Editor...",  42034
	MENUITEM "Character Panel",  42051
	MENUITEM "Clipboard History",  42052
	MENUITEM SEPARATOR
	MENUITEM "Set Read-Only",  42028
	MENUITEM "Clear Read-Only Flag",  42033
}
POPUP "&Search"
{
	MENUITEM "&Find...",  43001
	MENUITEM "Find in Files...",  43013
	MENUITEM "Find &Next",  43002
	MENUITEM "Find &Previous",  43010
	MENUITEM "Select and Find Next",  43048
	MENUITEM "Select and Find Previous",  43049
	MENUITEM "Find (Volatile) Next",  43014
	MENUITEM "Find (Volatile) Previous",  43015
	MENUITEM "&Replace...",  43003
	MENUITEM "&Incremental Search",  43011
	MENUITEM "Search Results Window",  43045
	MENUITEM "Next Search Result",  43046
	MENUITEM "Previous Search Result",  43047
	MENUITEM "&Go to...",  43004
	MENUITEM "Go to Matching Brace",  43009
	MENUITEM "Select All Between Matching Braces",  43053
	MENUITEM "Mar&k...",  43054
	MENUITEM SEPARATOR
	POPUP "Mark All"
	{
		MENUITEM "Using 1st Style",  43022
		MENUITEM "Using 2nd Style",  43024
		MENUITEM "Using 3rd Style",  43026
		MENUITEM "Using 4th Style",  43028
		MENUITEM "Using 5th Style",  43030
	}
	POPUP "Unmark All"
	{
		MENUITEM "Clear 1st Style",  43023
		MENUITEM "Clear 2nd Style",  43025
		MENUITEM "Clear 3rd Style",  43027
		MENUITEM "Clear 4th Style",  43029
		MENUITEM "Clear 5th Style",  43031
		MENUITEM "Clear all Styles",  43032
	}
	POPUP "Jump up"
	{
		MENUITEM "1st Style",  43033
		MENUITEM "2nd Style",  43034
		MENUITEM "3rd Style",  43035
		MENUITEM "4th Style",  43036
		MENUITEM "5th Style",  43037
		MENUITEM "Find Style",  43038
	}
	POPUP "Jump down"
	{
		MENUITEM "1st Style",  43039
		MENUITEM "2nd Style",  43040
		MENUITEM "3rd Style",  43041
		MENUITEM "4th Style",  43042
		MENUITEM "5th Style",  43043
		MENUITEM "Find Style",  43044
	}
	MENUITEM SEPARATOR
	POPUP "Bookmark"
	{
		MENUITEM "Toggle Bookmark",  43005
		MENUITEM "Next Bookmark",  43006
		MENUITEM "Previous Bookmark",  43007
		MENUITEM "Clear All Bookmarks",  43008
		MENUITEM "Cut Bookmarked Lines",  43018
		MENUITEM "Copy Bookmarked Lines",  43019
		MENUITEM "Paste to (Replace) Bookmarked Lines",  43020
		MENUITEM "Remove Bookmarked Lines",  43021
		MENUITEM "Remove Unmarked Lines",  43051
		MENUITEM "Inverse Bookmark",  43050
	}
	MENUITEM SEPARATOR
	MENUITEM "Find characters in range...",  43052
}
POPUP "&View"
{
	MENUITEM "Always on Top",  44034
	MENUITEM "Toggle Full Screen Mode",  44032
	MENUITEM "Post-It",  44009
	MENUITEM SEPARATOR
	POPUP "Show Symbol"
	{
		MENUITEM "Show White Space and TAB",  44025
		MENUITEM "Show End of Line",  44026
		MENUITEM "Show All Characters",  44019
		MENUITEM SEPARATOR
		MENUITEM "Show Indent Guide",  44020
		MENUITEM "Show Wrap Symbol",  44041
	}
	POPUP "Zoom"
	{
		MENUITEM "Zoom &In (Ctrl+Mouse Wheel Up)",  44023
		MENUITEM "Zoom &Out (Ctrl+Mouse Wheel Down)",  44024
		MENUITEM "Restore Default Zoom",  44033
	}
	POPUP "Move/Clone Current Document"
	{
		MENUITEM "Move to Other View",  10001
		MENUITEM "Clone to Other View",  10002
		MENUITEM "Move to New Instance",  10003
		MENUITEM "Open in New Instance",  10004
	}
	POPUP "Tab"
	{
		MENUITEM "1st Tab",  44086
		MENUITEM "2nd Tab",  44087
		MENUITEM "3rd Tab",  44088
		MENUITEM "4th Tab",  44089
		MENUITEM "5th Tab",  44090
		MENUITEM "6th Tab",  44091
		MENUITEM "7th Tab",  44092
		MENUITEM "8th Tab",  44093
		MENUITEM "9th Tab",  44094
		MENUITEM SEPARATOR
		MENUITEM "Next Tab",  44095
		MENUITEM "Previous Tab",  44096
		MENUITEM SEPARATOR
		MENUITEM "Move Tab Forward",  44098
		MENUITEM "Move Tab Backward",  44099
	}
	MENUITEM "Word wrap",  44022
	MENUITEM "Focus on Another View",  44072
	MENUITEM "Hide Lines",  44042
	MENUITEM SEPARATOR
	MENUITEM "Fold All",  44010
	MENUITEM "Unfold All",  44029
	MENUITEM "Collapse Current Level",  44030
	MENUITEM "Uncollapse Current Level",  44031
	POPUP "Collapse Level"
	{
		MENUITEM "1",  44051
		MENUITEM "2",  44052
		MENUITEM "3",  44053
		MENUITEM "4",  44054
		MENUITEM "5",  44055
		MENUITEM "6",  44056
		MENUITEM "7",  44057
		MENUITEM "8",  44058
	}
	POPUP "Uncollapse Level"
	{
		MENUITEM "1",  44061
		MENUITEM "2",  44062
		MENUITEM "3",  44063
		MENUITEM "4",  44064
		MENUITEM "5",  44065
		MENUITEM "6",  44066
		MENUITEM "7",  44067
		MENUITEM "8",  44068
	}
	MENUITEM SEPARATOR
	MENUITEM "Summary...",  44049
	MENUITEM SEPARATOR
	POPUP "Project"
	{
		MENUITEM "Project Panel 1",  44081
		MENUITEM "Project Panel 2",  44082
		MENUITEM "Project Panel 3",  44083
	}
	MENUITEM "Folder as Workspace",  44085
	MENUITEM "Document Map",  44080
	MENUITEM "Function List",  44084
	MENUITEM SEPARATOR
	MENUITEM "Synchronize Vertical Scrolling",  44035
	MENUITEM "Synchronize Horizontal Scrolling",  44036
	MENUITEM SEPARATOR
	MENUITEM "Text Direction RTL",  42026
	MENUITEM "Text Direction LTR",  42027
	MENUITEM SEPARATOR
	MENUITEM "Monitoring (tail -f)",  44097
}
POPUP "E&ncoding"
{
	MENUITEM "Encode in ANSI",  45004
	MENUITEM "Encode in UTF-8",  45008
	MENUITEM "Encode in UTF-8-BOM",  45005
	MENUITEM "Encode in UCS-2 BE BOM",  45006
	MENUITEM "Encode in UCS-2 LE BOM",  45007
	POPUP "Character sets"
	{
		POPUP "Arabic"
		{
			MENUITEM "ISO 8859-6",  45034
			MENUITEM "OEM 720",  45045
			MENUITEM "Windows-1256",  45026
		}
		POPUP "Baltic"
		{
			MENUITEM "ISO 8859-4",  45032
			MENUITEM "ISO 8859-13",  45040
			MENUITEM "OEM 775",  45047
			MENUITEM "Windows-1257",  45027
		}
		POPUP "Celtic"
		{
			MENUITEM "ISO 8859-14",  45041
		}
		POPUP "Cyrillic"
		{
			MENUITEM "ISO 8859-5",  45033
			MENUITEM "KOI8-R",  45068
			MENUITEM "KOI8-U",  45067
			MENUITEM "Macintosh",  45066
			MENUITEM "OEM 855",  45050
			MENUITEM "OEM 866",  45058
			MENUITEM "Windows-1251",  45021
		}
		POPUP "Central European"
		{
			MENUITEM "OEM 852",  45049
			MENUITEM "Windows-1250",  45020
		}
		POPUP "Chinese"
		{
			MENUITEM "Big5 (Traditional)",  45060
			MENUITEM "GB2312 (Simplified)",  45061
		}
		POPUP "Eastern European"
		{
			MENUITEM "ISO 8859-2",  45030
		}
		POPUP "Greek"
		{
			MENUITEM "ISO 8859-7",  45035
			MENUITEM "OEM 737",  45046
			MENUITEM "OEM 869",  45059
			MENUITEM "Windows-1253",  45023
		}
		POPUP "Hebrew"
		{
			MENUITEM "ISO 8859-8",  45036
			MENUITEM "OEM 862",  45055
			MENUITEM "Windows-1255",  45025
		}
		POPUP "Japanese"
		{
			MENUITEM "Shift-JIS",  45062
		}
		POPUP "Korean"
		{
			MENUITEM "Windows 949",  45063
			MENUITEM "EUC-KR",  45064
		}
		POPUP "North European"
		{
			MENUITEM "OEM 861 : Icelandic",  45054
			MENUITEM "OEM 865 : Nordic",  45057
		}
		POPUP "Thai"
		{
			MENUITEM "TIS-620",  45065
		}
		POPUP "Turkish"
		{
			MENUITEM "ISO 8859-3",  45031
			MENUITEM "ISO 8859-9",  45037
			MENUITEM "OEM 857",  45051
			MENUITEM "Windows-1254",  45024
		}
		POPUP "Western European"
		{
			MENUITEM "ISO 8859-1",  45029
			MENUITEM "ISO 8859-15",  45042
			MENUITEM "OEM 850",  45048
			MENUITEM "OEM 858",  45052
			MENUITEM "OEM 860 : Portuguese",  45053
			MENUITEM "OEM 863 : French",  45056
			MENUITEM "OEM-US",  45044
			MENUITEM "Windows-1252",  45022
		}
		POPUP "Vietnamese"
		{
			MENUITEM "Windows-1258",  45028
		}
	}
	MENUITEM SEPARATOR
	MENUITEM "Convert to ANSI",  45009
	MENUITEM "Convert to UTF-8",  45010
	MENUITEM "Convert to UTF-8-BOM",  45011
	MENUITEM "Convert to UCS-2 BE BOM",  45012
	MENUITEM "Convert to UCS-2 LE BOM",  45013
}
POPUP "&Language"
{
	MENUITEM "Ada",  46042
	MENUITEM "ASP",  46009
	MENUITEM "Assembly",  46033
	MENUITEM "AutoIt",  46044
	MENUITEM "Batch",  46022
	MENUITEM "C",  46002
	MENUITEM "C#",  46023
	MENUITEM "C++",  46003
	MENUITEM "Caml",  46040
	MENUITEM "CMake",  46048
	MENUITEM "COBOL",  46050
	MENUITEM "CoffeeScript",  46056
	MENUITEM "CSS",  46010
	MENUITEM "D",  46051
	MENUITEM "Diff",  46034
	MENUITEM "ActionScript",  46028
	MENUITEM "Fortran",  46026
	MENUITEM "Gui4Cli",  46052
	MENUITEM "Haskell",  46046
	MENUITEM "HTML",  46005
	MENUITEM "INI file",  46019
	MENUITEM "Inno Setup",  46047
	MENUITEM "Java",  46004
	MENUITEM "JavaScript",  46007
	MENUITEM "JSON",  46057
	MENUITEM "JSP",  46055
	MENUITEM "KIXtart",  46041
	MENUITEM "LISP",  46031
	MENUITEM "Lua",  46024
	MENUITEM "Makefile",  46018
	MENUITEM "Matlab",  46045
	MENUITEM "MS-DOS Style",  46015
	MENUITEM "Normal Text",  46016
	MENUITEM "NSIS",  46029
	MENUITEM "Objective-C",  46014
	MENUITEM "Pascal",  46011
	MENUITEM "Perl",  46013
	MENUITEM "PHP",  46008
	MENUITEM "PostScript",  46036
	MENUITEM "PowerShell",  46053
	MENUITEM "Properties",  46035
	MENUITEM "Python",  46012
	MENUITEM "R",  46054
	MENUITEM "Resource file",  46017
	MENUITEM "Ruby",  46037
	MENUITEM "Shell",  46027
	MENUITEM "Scheme",  46032
	MENUITEM "Smalltalk",  46038
	MENUITEM "SQL",  46020
	MENUITEM "TCL",  46030
	MENUITEM "TeX",  46025
	MENUITEM "Visual Basic",  46021
	MENUITEM "VHDL",  46039
	MENUITEM "Verilog",  46043
	MENUITEM "XML",  46006
	MENUITEM "YAML",  46049
	MENUITEM SEPARATOR
	MENUITEM "Define your language...",  46150
	MENUITEM "User-Defined",  46080
}
POPUP "&Language"
{
	POPUP "A"
	{
		MENUITEM "ActionScript",  46028
		MENUITEM "Ada",  46042
		MENUITEM "ASP",  46009
		MENUITEM "Assembly",  46033
		MENUITEM "AutoIt",  46044
	}
	MENUITEM "Batch",  46022
	POPUP "C"
	{
		MENUITEM "C",  46002
		MENUITEM "C#",  46023
		MENUITEM "C++",  46003
		MENUITEM "Caml",  46040
		MENUITEM "CMake",  46048
		MENUITEM "COBOL",  46050
		MENUITEM "CoffeeScript",  46056
		MENUITEM "CSS",  46010
	}
	POPUP "D"
	{
		MENUITEM "D",  46051
		MENUITEM "Diff",  46034
	}
	POPUP "F"
	{
		MENUITEM "Fortran (free form)",  46026
		MENUITEM "Fortran (fixed form)",  46058
	}
	MENUITEM "Gui4Cli",  46052
	POPUP "H"
	{
		MENUITEM "Haskell",  46046
		MENUITEM "HTML",  46005
	}
	POPUP "I"
	{
		MENUITEM "INI file",  46019
		MENUITEM "Inno Setup",  46047
	}
	POPUP "J"
	{
		MENUITEM "Java",  46004
		MENUITEM "JavaScript",  46007
		MENUITEM "JSON",  46057
		MENUITEM "JSP",  46055
	}
	MENUITEM "KIXtart",  46041
	POPUP "L"
	{
		MENUITEM "LISP",  46031
		MENUITEM "Lua",  46024
	}
	POPUP "M"
	{
		MENUITEM "Makefile",  46018
		MENUITEM "Matlab",  46045
		MENUITEM "MS-DOS Style",  46015
	}
	POPUP "N"
	{
		MENUITEM "Normal Text",  46016
		MENUITEM "NSIS",  46029
	}
	MENUITEM "Objective-C",  46014
	POPUP "P"
	{
		MENUITEM "Pascal",  46011
		MENUITEM "Perl",  46013
		MENUITEM "PHP",  46008
		MENUITEM "PostScript",  46036
		MENUITEM "PowerShell",  46053
		MENUITEM "Properties",  46035
		MENUITEM "Python",  46012
	}
	POPUP "R"
	{
		MENUITEM "R",  46054
		MENUITEM "Resource file",  46017
		MENUITEM "Ruby",  46037
	}
	POPUP "S"
	{
		MENUITEM "Shell",  46027
		MENUITEM "Scheme",  46032
		MENUITEM "Smalltalk",  46038
		MENUITEM "SQL",  46020
	}
	POPUP "T"
	{
		MENUITEM "TCL",  46030
		MENUITEM "TeX",  46025
	}
	POPUP "V"
	{
		MENUITEM "Visual Basic",  46021
		MENUITEM "VHDL",  46039
		MENUITEM "Verilog",  46043
	}
	MENUITEM "XML",  46006
	MENUITEM "YAML",  46049
	MENUITEM SEPARATOR
	MENUITEM "Define your language...",  46150
	MENUITEM "User-Defined",  46080
}
POPUP "Se&ttings"
{
	MENUITEM "Preferences...",  48011
	MENUITEM "Style Configurator...",  46001
	MENUITEM "Shortcut Mapper...",  48009
	MENUITEM SEPARATOR
	POPUP "Import"
	{
		MENUITEM "Import plugin(s)...",  48005
		MENUITEM "Import style theme(s)...",  48006
	}
	MENUITEM SEPARATOR
	MENUITEM "Edit Popup ContextMenu",  48018
}
POPUP "&Macro"
{
	MENUITEM "Start Re&cording",  42018
	MENUITEM "S&top Recording",  42019
	MENUITEM "&Playback",  42021
	MENUITEM "&Save Current Recorded Macro...",  42025
	MENUITEM "&Run a Macro Multiple Times...",  42032
}
POPUP "&Run"
{
	MENUITEM "&Run...",  49000
}
POPUP "&?"
{
	MENUITEM "Command Line Arguments...",  47010
	MENUITEM SEPARATOR
	MENUITEM "Notepad++ Home",  47001
	MENUITEM "Notepad++ Project Page",  47002
	MENUITEM "Notepad++ Community (Forum)",  47004
	MENUITEM "Live Support",  47011
	MENUITEM "Get More Plugins",  47005
	MENUITEM SEPARATOR
	MENUITEM "Update Notepad++",  47006
	MENUITEM "Set Updater Proxy...",  47009
	MENUITEM SEPARATOR
	MENUITEM "Debug Info...",  47012
	MENUITEM "About Notepad++",  47000
}
MENUITEM "X",  41003
}

==================================================

1501 MENU
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
{
POPUP "Popup"
{
	MENUITEM "Activate",  43101
	MENUITEM SEPARATOR
	MENUITEM "New",  43102
	MENUITEM "New and Paste",  43103
	MENUITEM "Open...",  43104
	MENUITEM "Find in Files...",  43013
	MENUITEM SEPARATOR
	MENUITEM "Close Tray Icon",  43105
}
}

==================================================

11000 MENU
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
{
MENUITEM "Recent Window",  11020,  GRAYED
MENUITEM "&Windows...",  11001
}

==================================================

Return to “Scripts and Functions”

Who is online

Users browsing this forum: CyL0N, Mipha and 46 guests