Skip to content

Commit 75fc449

Browse files
committed
8.7.8 + scintilla 5.5.5 & Lexilla 5.4.3
1 parent 1de9f75 commit 75fc449

20 files changed

+269
-23
lines changed

NppPlugin/include/Common.h

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -287,4 +287,10 @@ BOOL getFileAttributesExWithTimeout(const wchar_t* filePath, WIN32_FILE_ATTRIBUT
287287

288288
bool doesFileExist(const wchar_t* filePath, DWORD milliSec2wait = 0, bool* isTimeoutReached = nullptr);
289289
bool doesDirectoryExist(const wchar_t* dirPath, DWORD milliSec2wait = 0, bool* isTimeoutReached = nullptr);
290-
bool doesPathExist(const wchar_t* path, DWORD milliSec2wait = 0, bool* isTimeoutReached = nullptr);
290+
bool doesPathExist(const wchar_t* path, DWORD milliSec2wait = 0, bool* isTimeoutReached = nullptr);
291+
292+
293+
// check if the window rectangle intersects with any currently active monitor's working area
294+
bool isWindowVisibleOnAnyMonitor(const RECT& rectWndIn);
295+
296+
bool isCoreWindows();

NppPlugin/include/Notepad_plus_msgs.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ enum LangType {L_TEXT, L_PHP , L_C, L_CPP, L_CS, L_OBJC, L_JAVA, L_RC,\
3939
L_MMIXAL, L_NIM, L_NNCRONTAB, L_OSCRIPT, L_REBOL, \
4040
L_REGISTRY, L_RUST, L_SPICE, L_TXT2TAGS, L_VISUALPROLOG,\
4141
L_TYPESCRIPT, L_JSON5, L_MSSQL, L_GDSCRIPT, L_HOLLYWOOD,\
42-
L_GOLANG, L_RAKU, L_TOML,\
42+
L_GOLANG, L_RAKU, L_TOML, L_SAS,\
4343
// Don't use L_JS, use L_JAVASCRIPT instead
4444
// The end of enumated language type, so it should be always at the end
4545
L_EXTERNAL};
@@ -111,7 +111,7 @@ enum Platform { PF_UNKNOWN, PF_X86, PF_X64, PF_IA64, PF_ARM64 };
111111
// return value: The number of files in XML session file
112112

113113
#define NPPM_GETSESSIONFILES (NPPMSG + 14)
114-
// NPPM_GETSESSIONFILES (wchar_t** sessionFileArray, wchar_t* sessionFileName)
114+
// BOOL NPPM_GETSESSIONFILES (wchar_t** sessionFileArray, wchar_t* sessionFileName)
115115
// the files' full path name from a session file.
116116
// wParam[out]: sessionFileArray is the array in which the files' full path of the same group are written. To allocate the array with the proper size, send message NPPM_GETNBSESSIONFILES.
117117
// lParam[in]: sessionFileName is XML session full path
@@ -974,7 +974,7 @@ enum Platform { PF_UNKNOWN, PF_X86, PF_X64, PF_IA64, PF_ARM64 };
974974
// Note: there's no symetric command NPPM_SETTABCOLORID. Plugins can use NPPM_MENUCOMMAND to set current tab color with the desired tab color ID.
975975

976976
#define NPPM_SETUNTITLEDNAME (NPPMSG + 115)
977-
// int NPPM_SETUNTITLEDNAME(BufferID id, const wchar_t* newName)
977+
// BOOL NPPM_SETUNTITLEDNAME(BufferID id, const wchar_t* newName)
978978
// Rename the tab name for an untitled tab.
979979
// wParam[in]: id - BufferID of the tab. -1 for currently active tab
980980
// lParam[in]: newName - the desired new name of the tab
@@ -1018,6 +1018,7 @@ enum Platform { PF_UNKNOWN, PF_X86, PF_X64, PF_IA64, PF_ARM64 };
10181018
// ...
10191019
// }
10201020

1021+
10211022
// For RUNCOMMAND_USER
10221023
#define VAR_NOT_RECOGNIZED 0
10231024
#define FULL_CURRENT_PATH 1

NppPlugin/include/SciLexer.h

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -152,6 +152,7 @@
152152
#define SCLEX_TROFF 137
153153
#define SCLEX_DART 138
154154
#define SCLEX_ZIG 139
155+
#define SCLEX_NIX 140
155156
#define SCLEX_SEARCHRESULT 150
156157
#define SCLEX_OBJC 151
157158
#define SCLEX_USER 152
@@ -205,6 +206,19 @@
205206
#define SCE_C_USERLITERAL 25
206207
#define SCE_C_TASKMARKER 26
207208
#define SCE_C_ESCAPESEQUENCE 27
209+
#define SCE_COBOL_DEFAULT 0
210+
#define SCE_COBOL_COMMENT 1
211+
#define SCE_COBOL_COMMENTLINE 2
212+
#define SCE_COBOL_COMMENTDOC 3
213+
#define SCE_COBOL_NUMBER 4
214+
#define SCE_COBOL_WORD 5
215+
#define SCE_COBOL_STRING 6
216+
#define SCE_COBOL_CHARACTER 7
217+
#define SCE_COBOL_WORD3 8
218+
#define SCE_COBOL_PREPROCESSOR 9
219+
#define SCE_COBOL_OPERATOR 10
220+
#define SCE_COBOL_IDENTIFIER 11
221+
#define SCE_COBOL_WORD2 16
208222
#define SCE_D_DEFAULT 0
209223
#define SCE_D_COMMENT 1
210224
#define SCE_D_COMMENTLINE 2
@@ -1799,6 +1813,8 @@
17991813
#define SCE_RUST_BYTESTRING 21
18001814
#define SCE_RUST_BYTESTRINGR 22
18011815
#define SCE_RUST_BYTECHARACTER 23
1816+
#define SCE_RUST_CSTRING 24
1817+
#define SCE_RUST_CSTRINGR 25
18021818
#define SCE_DMAP_DEFAULT 0
18031819
#define SCE_DMAP_COMMENT 1
18041820
#define SCE_DMAP_NUMBER 2
@@ -2154,6 +2170,23 @@
21542170
#define SCE_ZIG_KW_SECONDARY 14
21552171
#define SCE_ZIG_KW_TERTIARY 15
21562172
#define SCE_ZIG_KW_TYPE 16
2173+
#define SCE_ZIG_IDENTIFIER_STRING 17
2174+
#define SCE_NIX_DEFAULT 0
2175+
#define SCE_NIX_COMMENTLINE 1
2176+
#define SCE_NIX_COMMENTBLOCK 2
2177+
#define SCE_NIX_STRING 3
2178+
#define SCE_NIX_STRING_MULTILINE 4
2179+
#define SCE_NIX_ESCAPECHAR 5
2180+
#define SCE_NIX_IDENTIFIER 6
2181+
#define SCE_NIX_OPERATOR 7
2182+
#define SCE_NIX_OPERATOR_STRING 8
2183+
#define SCE_NIX_NUMBER 9
2184+
#define SCE_NIX_KEY 10
2185+
#define SCE_NIX_PATH 11
2186+
#define SCE_NIX_KEYWORD1 12
2187+
#define SCE_NIX_KEYWORD2 13
2188+
#define SCE_NIX_KEYWORD3 14
2189+
#define SCE_NIX_KEYWORD4 15
21572190
/* --Autogenerated -- end of section automatically generated from Scintilla.iface */
21582191

21592192

NppPlugin/include/Scintilla.h

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -533,6 +533,12 @@ typedef sptr_t (*SciFnDirectStatus)(sptr_t ptr, unsigned int iMessage, uptr_t wP
533533
#define SC_CHANGE_HISTORY_INDICATORS 4
534534
#define SCI_SETCHANGEHISTORY 2780
535535
#define SCI_GETCHANGEHISTORY 2781
536+
#define SC_UNDO_SELECTION_HISTORY_DISABLED 0
537+
#define SC_UNDO_SELECTION_HISTORY_ENABLED 1
538+
#define SCI_SETUNDOSELECTIONHISTORY 2782
539+
#define SCI_GETUNDOSELECTIONHISTORY 2783
540+
#define SCI_SETSELECTIONSERIALIZED 2784
541+
#define SCI_GETSELECTIONSERIALIZED 2785
536542
#define SCI_GETFIRSTVISIBLELINE 2152
537543
#define SCI_GETLINE 2153
538544
#define SCI_GETLINECOUNT 2154
@@ -1122,6 +1128,7 @@ typedef sptr_t (*SciFnDirectStatus)(sptr_t ptr, unsigned int iMessage, uptr_t wP
11221128
#define SC_TECHNOLOGY_DIRECTWRITE 1
11231129
#define SC_TECHNOLOGY_DIRECTWRITERETAIN 2
11241130
#define SC_TECHNOLOGY_DIRECTWRITEDC 3
1131+
#define SC_TECHNOLOGY_DIRECT_WRITE_1 4
11251132
#define SCI_SETTECHNOLOGY 2630
11261133
#define SCI_GETTECHNOLOGY 2631
11271134
#define SCI_CREATELOADER 2632
@@ -1399,7 +1406,7 @@ struct Sci_RangeToFormatFull {
13991406

14001407
#ifndef __cplusplus
14011408
/* For the GTK+ platform, g-ir-scanner needs to have these typedefs. This
1402-
* is not required in C++ code and actually seems to break ScintillaEditPy */
1409+
* is not required in C++ code and has caused problems in the past. */
14031410
typedef struct Sci_NotifyHeader Sci_NotifyHeader;
14041411
typedef struct SCNotification SCNotification;
14051412
#endif

NppPlugin/include/menuCmdID.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -563,6 +563,7 @@
563563
#define IDM_LANG_GOLANG (IDM_LANG + 89)
564564
#define IDM_LANG_RAKU (IDM_LANG + 90)
565565
#define IDM_LANG_TOML (IDM_LANG + 91)
566+
#define IDM_LANG_SAS (IDM_LANG + 92)
566567

567568
#define IDM_LANG_EXTERNAL (IDM_LANG + 165)
568569
#define IDM_LANG_EXTERNAL_LIMIT (IDM_LANG + 179)
@@ -582,7 +583,7 @@
582583
#define IDM_FORUM (IDM_ABOUT + 4)
583584
//#define IDM_PLUGINSHOME (IDM_ABOUT + 5)
584585
#define IDM_UPDATE_NPP (IDM_ABOUT + 6)
585-
#define IDM_WIKIFAQ (IDM_ABOUT + 7)
586+
//#define IDM_WIKIFAQ (IDM_ABOUT + 7)
586587
//#define IDM_HELP (IDM_ABOUT + 8)
587588
#define IDM_CONFUPDATERPROXY (IDM_ABOUT + 9)
588589
#define IDM_CMDLINEARGUMENTS (IDM_ABOUT + 10)

NppPlugin/src/dpiManagerV2.cpp

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,6 @@
1919

2020
#include <commctrl.h>
2121

22-
23-
#if defined(__GNUC__) && __GNUC__ > 8
24-
#define WINAPI_LAMBDA_RETURN(return_t) -> return_t WINAPI
25-
#elif defined(__GNUC__)
26-
#define WINAPI_LAMBDA_RETURN(return_t) WINAPI -> return_t
27-
#else
28-
#define WINAPI_LAMBDA_RETURN(return_t) -> return_t
29-
#endif
30-
3122
template <typename P>
3223
bool ptrFn(HMODULE handle, P& pointer, const char* name)
3324
{

PythonScript/src/CreateWrapper.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@
108108
'Supports' : 'int',
109109
'Element' : 'int',
110110
'ChangeHistoryOption' : 'int',
111+
'UndoSelectionHistoryOption' : 'int',
111112
}
112113

113114
castsL = {

PythonScript/src/Enums.h

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -521,6 +521,12 @@ enum ChangeHistoryOption
521521
PYSCR_SC_CHANGE_HISTORY_INDICATORS = SC_CHANGE_HISTORY_INDICATORS
522522
};
523523

524+
enum UndoSelectionHistoryOption
525+
{
526+
PYSCR_SC_UNDO_SELECTION_HISTORY_DISABLED = SC_UNDO_SELECTION_HISTORY_DISABLED,
527+
PYSCR_SC_UNDO_SELECTION_HISTORY_ENABLED = SC_UNDO_SELECTION_HISTORY_ENABLED
528+
};
529+
524530
enum FoldLevel
525531
{
526532
PYSCR_SC_FOLDLEVELNONE = SC_FOLDLEVELNONE,
@@ -763,7 +769,8 @@ enum Technology
763769
PYSCR_SC_TECHNOLOGY_DEFAULT = SC_TECHNOLOGY_DEFAULT,
764770
PYSCR_SC_TECHNOLOGY_DIRECTWRITE = SC_TECHNOLOGY_DIRECTWRITE,
765771
PYSCR_SC_TECHNOLOGY_DIRECTWRITERETAIN = SC_TECHNOLOGY_DIRECTWRITERETAIN,
766-
PYSCR_SC_TECHNOLOGY_DIRECTWRITEDC = SC_TECHNOLOGY_DIRECTWRITEDC
772+
PYSCR_SC_TECHNOLOGY_DIRECTWRITEDC = SC_TECHNOLOGY_DIRECTWRITEDC,
773+
PYSCR_SC_TECHNOLOGY_DIRECT_WRITE_1 = SC_TECHNOLOGY_DIRECT_WRITE_1
767774
};
768775

769776
enum LineEndType
@@ -1062,6 +1069,7 @@ enum Lexer
10621069
PYSCR_SCLEX_TROFF = SCLEX_TROFF,
10631070
PYSCR_SCLEX_DART = SCLEX_DART,
10641071
PYSCR_SCLEX_ZIG = SCLEX_ZIG,
1072+
PYSCR_SCLEX_NIX = SCLEX_NIX,
10651073
PYSCR_SCLEX_SEARCHRESULT = SCLEX_SEARCHRESULT,
10661074
PYSCR_SCLEX_OBJC = SCLEX_OBJC,
10671075
PYSCR_SCLEX_USER = SCLEX_USER,
@@ -1346,6 +1354,10 @@ enum ScintillaMessage
13461354
PYSCR_SCI_FORMATRANGEFULL = SCI_FORMATRANGEFULL,
13471355
PYSCR_SCI_SETCHANGEHISTORY = SCI_SETCHANGEHISTORY,
13481356
PYSCR_SCI_GETCHANGEHISTORY = SCI_GETCHANGEHISTORY,
1357+
PYSCR_SCI_SETUNDOSELECTIONHISTORY = SCI_SETUNDOSELECTIONHISTORY,
1358+
PYSCR_SCI_GETUNDOSELECTIONHISTORY = SCI_GETUNDOSELECTIONHISTORY,
1359+
PYSCR_SCI_SETSELECTIONSERIALIZED = SCI_SETSELECTIONSERIALIZED,
1360+
PYSCR_SCI_GETSELECTIONSERIALIZED = SCI_GETSELECTIONSERIALIZED,
13491361
PYSCR_SCI_GETFIRSTVISIBLELINE = SCI_GETFIRSTVISIBLELINE,
13501362
PYSCR_SCI_GETLINE = SCI_GETLINE,
13511363
PYSCR_SCI_GETLINECOUNT = SCI_GETLINECOUNT,

PythonScript/src/EnumsWrapper.cpp

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,10 @@ void export_enums()
467467
.value("MARKERS", PYSCR_SC_CHANGE_HISTORY_MARKERS)
468468
.value("INDICATORS", PYSCR_SC_CHANGE_HISTORY_INDICATORS);
469469

470+
boost::python::enum_<UndoSelectionHistoryOption>("UNDOSELECTIONHISTORYOPTION")
471+
.value("DISABLED", PYSCR_SC_UNDO_SELECTION_HISTORY_DISABLED)
472+
.value("ENABLED", PYSCR_SC_UNDO_SELECTION_HISTORY_ENABLED);
473+
470474
boost::python::enum_<FoldLevel>("FOLDLEVEL")
471475
.value("NONE", PYSCR_SC_FOLDLEVELNONE)
472476
.value("BASE", PYSCR_SC_FOLDLEVELBASE)
@@ -646,7 +650,8 @@ void export_enums()
646650
.value("DEFAULT", PYSCR_SC_TECHNOLOGY_DEFAULT)
647651
.value("DIRECTWRITE", PYSCR_SC_TECHNOLOGY_DIRECTWRITE)
648652
.value("DIRECTWRITERETAIN", PYSCR_SC_TECHNOLOGY_DIRECTWRITERETAIN)
649-
.value("DIRECTWRITEDC", PYSCR_SC_TECHNOLOGY_DIRECTWRITEDC);
653+
.value("DIRECTWRITEDC", PYSCR_SC_TECHNOLOGY_DIRECTWRITEDC)
654+
.value("DIRECT_WRITE_1", PYSCR_SC_TECHNOLOGY_DIRECT_WRITE_1);
650655

651656
boost::python::enum_<LineEndType>("LINEENDTYPE")
652657
.value("DEFAULT", PYSCR_SC_LINE_END_TYPE_DEFAULT)
@@ -915,6 +920,7 @@ void export_enums()
915920
.value("TROFF", PYSCR_SCLEX_TROFF)
916921
.value("DART", PYSCR_SCLEX_DART)
917922
.value("ZIG", PYSCR_SCLEX_ZIG)
923+
.value("NIX", PYSCR_SCLEX_NIX)
918924
.value("SEARCHRESULT", PYSCR_SCLEX_SEARCHRESULT)
919925
.value("OBJC", PYSCR_SCLEX_OBJC)
920926
.value("USER", PYSCR_SCLEX_USER)
@@ -1224,6 +1230,10 @@ void export_enums()
12241230
.value("SCI_FORMATRANGEFULL", PYSCR_SCI_FORMATRANGEFULL)
12251231
.value("SCI_SETCHANGEHISTORY", PYSCR_SCI_SETCHANGEHISTORY)
12261232
.value("SCI_GETCHANGEHISTORY", PYSCR_SCI_GETCHANGEHISTORY)
1233+
.value("SCI_SETUNDOSELECTIONHISTORY", PYSCR_SCI_SETUNDOSELECTIONHISTORY)
1234+
.value("SCI_GETUNDOSELECTIONHISTORY", PYSCR_SCI_GETUNDOSELECTIONHISTORY)
1235+
.value("SCI_SETSELECTIONSERIALIZED", PYSCR_SCI_SETSELECTIONSERIALIZED)
1236+
.value("SCI_GETSELECTIONSERIALIZED", PYSCR_SCI_GETSELECTIONSERIALIZED)
12271237
.value("SCI_GETFIRSTVISIBLELINE", PYSCR_SCI_GETFIRSTVISIBLELINE)
12281238
.value("SCI_GETLINE", PYSCR_SCI_GETLINE)
12291239
.value("SCI_GETLINECOUNT", PYSCR_SCI_GETLINECOUNT)

PythonScript/src/LexicalStyles.iface

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,7 @@ val SCLEX_TOML=136
148148
val SCLEX_TROFF=137
149149
val SCLEX_DART=138
150150
val SCLEX_ZIG=139
151+
val SCLEX_NIX=140
151152
# manually added N++ lexer
152153
val SCLEX_SEARCHRESULT=150
153154
val SCLEX_OBJC=151
@@ -182,12 +183,10 @@ val SCE_P_FTRIPLEDOUBLE=19
182183
val SCE_P_ATTRIBUTE=20
183184
# Lexical states for SCLEX_CPP
184185
# Lexical states for SCLEX_BULLANT
185-
# Lexical states for SCLEX_COBOL
186186
# Lexical states for SCLEX_TACL
187187
# Lexical states for SCLEX_TAL
188188
lex Cpp=SCLEX_CPP SCE_C_
189189
lex BullAnt=SCLEX_BULLANT SCE_C_
190-
lex COBOL=SCLEX_COBOL SCE_C_
191190
lex TACL=SCLEX_TACL SCE_C_
192191
lex TAL=SCLEX_TAL SCE_C_
193192
val SCE_C_DEFAULT=0
@@ -218,6 +217,21 @@ val SCE_C_PREPROCESSORCOMMENTDOC=24
218217
val SCE_C_USERLITERAL=25
219218
val SCE_C_TASKMARKER=26
220219
val SCE_C_ESCAPESEQUENCE=27
220+
# Lexical states for SCLEX_COBOL
221+
lex COBOL=SCLEX_COBOL SCE_COBOL_
222+
val SCE_COBOL_DEFAULT=0
223+
val SCE_COBOL_COMMENT=1
224+
val SCE_COBOL_COMMENTLINE=2
225+
val SCE_COBOL_COMMENTDOC=3
226+
val SCE_COBOL_NUMBER=4
227+
val SCE_COBOL_WORD=5
228+
val SCE_COBOL_STRING=6
229+
val SCE_COBOL_CHARACTER=7
230+
val SCE_COBOL_WORD3=8
231+
val SCE_COBOL_PREPROCESSOR=9
232+
val SCE_COBOL_OPERATOR=10
233+
val SCE_COBOL_IDENTIFIER=11
234+
val SCE_COBOL_WORD2=16
221235
# Lexical states for SCLEX_D
222236
lex D=SCLEX_D SCE_D_
223237
val SCE_D_DEFAULT=0
@@ -2013,6 +2027,8 @@ val SCE_RUST_LEXERROR=20
20132027
val SCE_RUST_BYTESTRING=21
20142028
val SCE_RUST_BYTESTRINGR=22
20152029
val SCE_RUST_BYTECHARACTER=23
2030+
val SCE_RUST_CSTRING=24
2031+
val SCE_RUST_CSTRINGR=25
20162032
# Lexical states for SCLEX_DMAP
20172033
lex DMAP=SCLEX_DMAP SCE_DMAP_
20182034
val SCE_DMAP_DEFAULT=0
@@ -2415,3 +2431,22 @@ val SCE_ZIG_KW_PRIMARY=13
24152431
val SCE_ZIG_KW_SECONDARY=14
24162432
val SCE_ZIG_KW_TERTIARY=15
24172433
val SCE_ZIG_KW_TYPE=16
2434+
val SCE_ZIG_IDENTIFIER_STRING=17
2435+
# Lexical states for SCLEX_NIX
2436+
lex Nix=SCLEX_NIX SCE_NIX_
2437+
val SCE_NIX_DEFAULT=0
2438+
val SCE_NIX_COMMENTLINE=1
2439+
val SCE_NIX_COMMENTBLOCK=2
2440+
val SCE_NIX_STRING=3
2441+
val SCE_NIX_STRING_MULTILINE=4
2442+
val SCE_NIX_ESCAPECHAR=5
2443+
val SCE_NIX_IDENTIFIER=6
2444+
val SCE_NIX_OPERATOR=7
2445+
val SCE_NIX_OPERATOR_STRING=8
2446+
val SCE_NIX_NUMBER=9
2447+
val SCE_NIX_KEY=10
2448+
val SCE_NIX_PATH=11
2449+
val SCE_NIX_KEYWORD1=12
2450+
val SCE_NIX_KEYWORD2=13
2451+
val SCE_NIX_KEYWORD3=14
2452+
val SCE_NIX_KEYWORD4=15

0 commit comments

Comments
 (0)