The shortcut "&Format" in Column editor dialog is unecessary.
Furthermore, some characters 'o' are inserted in colomn mode when Alt-F is triggered (and Column editor dialog is closed).
No selection:
Example: Pos : 1,234
Meaning: Single caret is at position 1233 in document (user position 1234)
Single stream selection (no change to existing behavior):
Example: Sel : 27 | 2
Meaning: 27 characters selected on 2 lines
Multiple stream selections (this PR behavior):
Example: Sel 3 : 72 | 6
Meaning: 3 selections of 72 characters on 6 lines
Rectangular selection with no virtual space in column block (this PR behavior):
Example: Sel : 2x4 = 8
Meaning: selection of 2 rows(lines) by 4 columns; 8 characters in that selection
Rectangular selection with some virtual space in column block (this PR behavior):
Example: Sel : 2x4 🡢 6
Meaning: selection of 2 rows(lines) by 4 columns; 6 real characters in that selection
Close#8524, close#8780
The bug: after closing last file opened in 2nd view in Window sialog, the last file opened in 2nd view in Notepad++ is closed, but remain in Window dialog.
This PR is a workaround solution to close Window dialog if the last document is closed.
Fix#8697, close#8721
Improvements :
- add templated classes (and template-nested templated classes)
- add namespaced classes
- add classes which inherits another class without the accessibility keyword (private is optional for example)
- add classes with virtual inheritance
- add functions defined with the following keywords
- (left) consteval|constexpr|friend|inline|static|virtual
- (right) const|final|noexcept|override
- add functions defined with templated types (and template-nested templated types)
- add operator definitions
Close#5175
The both flags -export=functionList & -quickPrint don't need Notepad++ GUI, so Notepad++ will start up invisiblely while one of these 2 flags is given. It doesn't prevent Notepad++ from being visible in the case of -export=functionList but this PR make unit-tests more bearable.
If a non-existing file is open as the 1st tab (opened then file is deleted outside of Notepad++), and "Close All BUT this" is run, then current document will be closed.
Fix#8617
Allow user to start making a stream selection and then change to column block by pressing ALT key during mouse or keyboard selection.
Fix#8555, close#8557
Fix accented characters in ANSI files not found in "find in files" and "replace in files" commands issues.
This regression (in v7.7 from v7.6.6) is due to the upgrade of Scintilla from v3.56 to v4.14.
Fix#5825, fix#5830, fix#7668, fix#7773
Make workspace (project) & session xml setting files consistent while their file extensions are defined in Preferences dialog:
1. If I specify a session file in the command line (, or if I double-click a session file in the Explorer), not the session file itself is opened, but the session stored in it.
2. If I specify a workspace file in the command line (, or if I double-click a workspace file in the Explorer), not the workspace file itself is opened, but the Project Panel 1 switches to the specified workspace file.
3. If I specify a session file in the `File` menu `Open Ctrl-O`, not the session file itself is opened, but the session stored in it.
4. If I specify a workspace file in the `File` menu `Open Ctrl-O`, not the workspace file itself is opened, but the Project Panel 1 switches to the specified workspace file.
5. If I drag a session file to Npp, not the session file itself is opened, but the session stored in it.
6. If I drag a workspace file to Npp, not the workspace file itself is opened, but the Project Panel 1 switches to the specified workspace file.
That means that once an user extension is defined for these 2 types of file, Notepad++ stores only the session or the workspace but not opens the file itself. The session and workspace setting files are not supposed to be edited manually.
If a defined conflict happens (for example, a non session or workspace setting file with the defined extension), user can always remove the defined extension from Preferences dialog temporarily to open it.
cherry picked from commit 70e746b7a8fe44c9a1e724581ceb3b457138a474
Close#8374, fix#8324
... by using Scintilla's DirectWrite technology.
It allows ligature support if the font needed (for exemple "Fira Code") is installed.
Fix#2287, close#8326Fix#442, fix#675, fix#813, fix#870, fix#1621, fix#3458, fix#4056, fix#4086, fix#4490, fix#8305
1. Add file extension automatically while changing file type via combobox in new style dialog.
2. Add file extension automatically for session files and workspace files while saving in new style dialog.
Fix#4876, close#8311, close#8312
Fix Mouse remains in clicked state after resizing docked windows:
The reason for the effect is the mouse hook procedure, which seems to be quite obsolete in contemporary systems: it catches the mouse messages and posts them a second time to the same window. I assume, that was ment to speed up the shifting of the splitters on "prehistoric systems" (That's what you call every system not supporting transparent windows). I see no regression without this hook.
What happens is, the hook catches the WM_LBUTTONUP message and posts it to DockingSplitter::runProc. Here, the hook is released and ReleaseCapture() is called. All fine.
But Windows fails to update its internal key state, when the WM_LBUTTONUP comes as an posted-by-a-hook message. So, if you call GetKeyState(VK_LBUTTON) after ReleaseCapture() in the original code, then it is still in a pressed state. Which confuses the Document Map later.
Fix#8285, close#8286
This PR fixes the following effects:
1. Document map overlay remains visible after minimize to tray.
2. Document map overlay is left behind on current monitor after moving Npp with Windows+Shift+Arrow to another monitor.
3. Document map overlay escapes to another monitor without Npp, when Windows+Shift+Arrow is pressed while the input focus is at the document map.
Fix#1317, close#8280
The current bug: the unconnected network or USB drive while loading a file from it is not detected. As a result Notepad++ opens an empty or uncomplete document.
This commit fix it by not opening anything and showing error box, if file reading fails.
Fix#3381, close#8267
The full story, debated before, is that regular expression searching in a backward direction from the caret position causes matches that the user does not expect. The best thing that was decided to do (group decision) is to fully disable upward searching.
Fix#3640, close#8269
Due to the mysterious reason, change the icon in About box makes application icon display incorrectly (in explorer & on taskbar).
This reverts commit 3a46a6c23d.
I recently went through a bunch of my own source code as well as about half of Mozilla's source code for Firefox. As I found CSS keywords that were not included in Notepad++, I added them locally.
I then merged them with existing keywords, and sorted the combined list alphabetically.
The result is reflected in this pull request.
I hope it helps you and others.
Close#8028
Any setting other than the default setting "for new opened document - UTF8 apply to opened ansi files" will cause C/C++ and other some languages (not for xml though) folding lost on startup.
Fix#4103
"&R" keyboard shortcut for "Replace in Files" is in conflict with one for "Replace", and there's no more available shorcut for "Replace in Files". So let's just remove this useless shortcut.
Fix#3539