diff --git a/doc/软件工程泛读报告.docx b/doc/软件工程泛读报告.docx
index e69de29..40e8d9d 100644
Binary files a/doc/软件工程泛读报告.docx and b/doc/软件工程泛读报告.docx differ
diff --git a/src/PowerEditor/src/Parameters.h b/src/PowerEditor/src/Parameters.h
index 67a1e1c..f42e86d 100644
--- a/src/PowerEditor/src/Parameters.h
+++ b/src/PowerEditor/src/Parameters.h
@@ -13,6 +13,21 @@
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see .
+//´ËÎļþÊÇ Notepad++ ÏîÄ¿µÄÒ»²¿·Ö
+//°æÈ¨ËùÓÐ £¨C£©2021 Don HO
+
+//¸Ã³ÌÐòÊÇÃâ·ÑÈí¼þ£ºÄú¿ÉÒÔÖØÐ·ַ¢ºÍ / »òÐÞ¸ÄËü
+//Ëü¸ù¾Ý GNU ͨÓù«¹²Ðí¿ÉÖ¤µÄÌõ¿î£¬ÓÉ
+//×ÔÓÉÈí¼þ»ù½ð»á£¨Free Software Foundation£©£¬Ðí¿ÉÖ¤µÄµÚ 3 °æ£¬»ò
+//ÓÉÄúÑ¡ÔñÈκθü¸ß°æ±¾¡£
+//
+//·Ö·¢¸Ã³ÌÐòÊÇÏ£ÍûËüÓÐÓã¬
+//µ«Ã»ÓÐÈκα£Ö¤; ÉõÖÁûÓÐĬʾ±£Ö¤
+//ÊÊÏúÐÔ»òÌØ¶¨ÓÃ;µÄÊÊÓÃÐÔ¡£Çë²ÎÔÄ
+//GNU ͨÓù«¹²Ðí¿ÉÖ¤Á˽â¸ü¶àÏêÇé¡£
+//
+//ÄúÓ¦¸ÃÒѾÊÕµ½ÁË GNU ͨÓù«¹²Ðí¿ÉÖ¤µÄ¸±±¾
+//ÒÔ¼°Õâ¸ö³ÌÐò¡£ Èç¹ûûÓУ¬Çë²ÎÔÄ < https://www.gnu.org/licenses/>¡£
#pragma once
@@ -36,30 +51,33 @@
#ifdef _WIN64
#ifdef _M_ARM64
-#define ARCH_TYPE IMAGE_FILE_MACHINE_ARM64
+#define ARCH_TYPE IMAGE_FILE_MACHINE_ARM64//ͼÏñÎļþ»ú³£Á¿
#else
-#define ARCH_TYPE IMAGE_FILE_MACHINE_AMD64
+#define ARCH_TYPE IMAGE_FILE_MACHINE_AMD64//ͼÏñÎļþ»ú³£Á¿
#endif
#else
-#define ARCH_TYPE IMAGE_FILE_MACHINE_I386
+#define ARCH_TYPE IMAGE_FILE_MACHINE_I386//ͼÏñÎļþ»ú³£Á¿
#endif
-#define CMD_INTERPRETER TEXT("%COMSPEC%")
+#define CMD_INTERPRETER TEXT("%COMSPEC%")//Ö¸ÏòCMDÆô¶¯
class NativeLangSpeaker;
-const bool POS_VERTICAL = true;
-const bool POS_HORIZOTAL = false;
+const bool POS_VERTICAL = true;//´¹Ö±ÏòÁ¿Îª1
+const bool POS_HORIZOTAL = false;//ˮƽÏòÁ¿Îª0
const int UDD_SHOW = 1; // 0000 0001
const int UDD_DOCKED = 2; // 0000 0010
-// 0 : 0000 0000 hide & undocked
-// 1 : 0000 0001 show & undocked
-// 2 : 0000 0010 hide & docked
-// 3 : 0000 0011 show & docked
+//Docker ½«Ó¦ÓóÌÐòÓë¸Ã³ÌÐòµÄÒÀÀµ£¬´ò°üÔÚÒ»¸öÎļþÀïÃæ¡£ÔËÐÐÕâ¸öÎļþ£¬¾Í»áÉú³ÉÒ»¸öÐéÄâÈÝÆ÷¡£
+// ³ÌÐòÔÚÕâ¸öÐéÄâÈÝÆ÷ÀïÔËÐУ¬¾ÍºÃÏñÔÚÕæÊµµÄÎïÀí»úÉÏÔËÐÐÒ»Ñù¡£ÓÐÁË Docker£¬¾Í²»Óõ£ÐÄ»·¾³ÎÊÌâ¡£
+
+// 0 : 0000 0000 hide & undocked Òþ²ØÇÒ·Ç»·¾³»¯ 0
+// 1 : 0000 0001 show & undocked ÏÔʾÇÒ·Ç»·¾³»¯ 1
+// 2 : 0000 0010 hide & docked Òþ²ØÇÒ»·¾³»¯ 2
+// 3 : 0000 0011 show & docked ÏÔʾÇÒ»·¾³»¯ 3
const int TAB_DRAWTOPBAR = 1; //0000 0000 0001
const int TAB_DRAWINACTIVETAB = 2; //0000 0000 0010
@@ -76,7 +94,7 @@ const int TAB_ALTICONS = 1024; //0100 0000 0000
const bool activeText = true;
const bool activeNumeric = false;
-enum class EolType: std::uint8_t
+enum class EolType: std::uint8_t//end of line ÀàÐÍ
{
windows,
macos,
@@ -88,9 +106,9 @@ enum class EolType: std::uint8_t
};
/*!
-** \brief Convert an int into a FormatType
-** \param value An arbitrary int
-** \param defvalue The default value to use if an invalid value is provided
+** \brief Convert an int into a FormatType¼òµ¥µØ½«intת»»Îª¸ñʽÀàÐÍ
+** \param value An arbitrary int²ÎÊýÖµÈÎÒâint
+** \param defvalue The default value to use if an invalid value is providedÈç¹ûÌṩÎÞЧֵ£¬ÒªÊ¹ÓõÄĬÈÏÖµ
*/
EolType convertIntToFormatType(int value, EolType defvalue = EolType::osdefault);
@@ -98,16 +116,16 @@ EolType convertIntToFormatType(int value, EolType defvalue = EolType::osdefault)
enum UniMode {uni8Bit=0, uniUTF8=1, uni16BE=2, uni16LE=3, uniCookie=4, uni7Bit=5, uni16BE_NoBOM=6, uni16LE_NoBOM=7, uniEnd};
-enum ChangeDetect { cdDisabled = 0x0, cdEnabledOld = 0x01, cdEnabledNew = 0x02, cdAutoUpdate = 0x04, cdGo2end = 0x08 };
-enum BackupFeature {bak_none = 0, bak_simple = 1, bak_verbose = 2};
-enum OpenSaveDirSetting {dir_followCurrent = 0, dir_last = 1, dir_userDef = 2};
-enum MultiInstSetting {monoInst = 0, multiInstOnSession = 1, multiInst = 2};
+enum ChangeDetect { cdDisabled = 0x0, cdEnabledOld = 0x01, cdEnabledNew = 0x02, cdAutoUpdate = 0x04, cdGo2end = 0x08 };//¸Ä±ä¼à¿Ø
+enum BackupFeature {bak_none = 0, bak_simple = 1, bak_verbose = 2};//±¸·ÝºÍ»¹Ô
+enum OpenSaveDirSetting {dir_followCurrent = 0, dir_last = 1, dir_userDef = 2};//´ò¿ªÒѱ£´æÉèÖÃ
+enum MultiInstSetting {monoInst = 0, multiInstOnSession = 1, multiInst = 2};//
enum writeTechnologyEngine {defaultTechnology = 0, directWriteTechnology = 1};
enum urlMode {urlDisable = 0, urlNoUnderLineFg, urlUnderLineFg, urlNoUnderLineBg, urlUnderLineBg,
urlMin = urlDisable,
urlMax = urlUnderLineBg};
-const int LANG_INDEX_INSTR = 0;
+const int LANG_INDEX_INSTR = 0;//ÓïÑÔË÷ÒýÖ¸Áî
const int LANG_INDEX_INSTR2 = 1;
const int LANG_INDEX_TYPE = 2;
const int LANG_INDEX_TYPE2 = 3;
@@ -117,7 +135,7 @@ const int LANG_INDEX_TYPE5 = 6;
const int LANG_INDEX_TYPE6 = 7;
const int LANG_INDEX_TYPE7 = 8;
-const int COPYDATA_PARAMS = 0;
+const int COPYDATA_PARAMS = 0;//Êý¾Ý¿½±´²ÎÊý
//const int COPYDATA_FILENAMESA = 1; // obsolete, no more useful
const int COPYDATA_FILENAMESW = 2;
const int COPYDATA_FULL_CMDLINE = 3;
@@ -154,7 +172,7 @@ void cutStringBy(const TCHAR *str2cut, std::vector & patternVect,
// style names
const wchar_t g_npcStyleName[] = L"Non-printing characters custom color";
-struct Position
+struct Position//λÖýṹÌ壬³õʼֵȫ²¿Îª0
{
intptr_t _firstVisibleLine = 0;
intptr_t _startPos = 0;
@@ -167,7 +185,7 @@ struct Position
};
-struct MapPosition
+struct MapPosition//ͼλ
{
private:
intptr_t _maxPeekLenInKB = 512; // 512 KB
@@ -187,10 +205,11 @@ public:
bool _isWrap = false;
bool isValid() const { return (_firstVisibleDisplayLine != -1); };
bool canScroll() const { return (_KByteInDoc < _maxPeekLenInKB); }; // _nbCharInDoc < _maxPeekLen : Don't scroll the document for the performance issue
+ //Õ¹¿ªÎļþ
};
-struct sessionFileInfo : public Position
+struct sessionFileInfo : public Position//»á»°ÎļþÐÅÏ¢½á¹¹Ìå
{
sessionFileInfo(const wchar_t* fn, const TCHAR *ln, int encoding, bool userReadOnly, const Position& pos, const TCHAR *backupFilePath, FILETIME originalFileLastModifTimestamp, const MapPosition & mapPos) :
Position(pos), _encoding(encoding), _isUserReadOnly(userReadOnly), _originalFileLastModifTimestamp(originalFileLastModifTimestamp), _mapPos(mapPos)
@@ -218,7 +237,7 @@ struct sessionFileInfo : public Position
};
-struct Session
+struct Session//»á»°½á¹¹Ìå
{
size_t nbMainFiles() const {return _mainViewFiles.size();};
size_t nbSubFiles() const {return _subViewFiles.size();};
@@ -232,7 +251,7 @@ struct Session
std::vector _fileBrowserRoots;
};
-
+//¶¨ÒåÁËÁ½¸ö½á¹¹Ì壬CmdLineParamsºÍCmdLineParamsDTO£¬·Ö±ðÓÃÀ´±£´æÃüÁîÐвÎÊýºÍͨ¹ýWM_COPYDATAºÍNotepad_plus::loadCommandlineParams·¢ËÍCmdLineParams¡£
struct CmdLineParams
{
bool _isNoPlugin = false;
@@ -277,6 +296,11 @@ struct CmdLineParams
};
// A POD class to send CmdLineParams through WM_COPYDATA and to Notepad_plus::loadCommandlineParams
+//CmdLineParams½á¹¹Ì嶨ÒåÁËһϵÁÐbool¡¢intptr_t¡¢POINT¡¢LangTypeºÍstd::wstringÀàÐ͵ijÉÔ±±äÁ¿£¬ÓÃÓÚ±£´æÃüÁîÐвÎÊýµÄ¸÷¸öÊôÐÔ¡£ÆäÖУ¬isPointValid()º¯ÊýÓÃÓÚ¼ì²é_pointµÄ×ø±êÖµÊÇ·ñÓÐЧ¡£
+//CmdLineParamsDTO½á¹¹ÌåÊÇÒ»¸öPOD£¨ÆÕͨÊý¾ÝÀàÐÍ£©À࣬ÓÃÓÚͨ¹ýWM_COPYDATAºÍNotepad_plus::loadCommandlineParams·¢ËÍCmdLineParams¡£Ëü¶¨ÒåÁËÓëCmdLineParamsÏàͬÀàÐ͵ijÉÔ±±äÁ¿£¬²¢ÌṩÁËÒ»¸ö¾²Ì¬µÄFromCmdLineParamsº¯Êý£¬ÓÃÓÚ½«CmdLineParamsת»»ÎªCmdLineParamsDTO¡£
+//ÔÚFromCmdLineParamsº¯ÊýÖУ¬Í¨¹ý½«CmdLineParamsµÄ³ÉÔ±±äÁ¿¸³Öµ¸øCmdLineParamsDTOµÄ¶ÔÓ¦³ÉÔ±±äÁ¿£¬ÊµÏÖÁ˽«CmdLineParamsת»»ÎªCmdLineParamsDTOµÄ¹¦ÄÜ¡£
+//Õû¸ö´úÂëÖ÷ÒªÊÇΪÁËʵÏÖCmdLineParamsºÍCmdLineParamsDTOÖ®¼äµÄÊý¾Ý´«µÝºÍת»»¡£
+
struct CmdLineParamsDTO
{
bool _isReadOnly = false;
@@ -315,12 +339,12 @@ struct CmdLineParamsDTO
}
};
-struct FloatingWindowInfo
+struct FloatingWindowInfo//¸¡¶¯´°¿ÚÐÅÏ¢½á¹¹Ìå
{
int _cont = 0;
RECT _pos = {};
- FloatingWindowInfo(int cont, int x, int y, int w, int h)
+ FloatingWindowInfo(int cont, int x, int y, int w, int h)//¸¡¶¯´°¿ÚλÖòÎÊý
: _cont(cont)
{
_pos.left = x;
@@ -389,6 +413,53 @@ struct DockingManagerData final
};
+//Õâ¶Î´úÂ붨ÒåÁ˼¸¸öÓÃÓÚÑùʽ´¦ÀíµÄÊý¾Ý½á¹¹ºÍº¯Êý¡£
+//Ê×ÏÈÊÇStyle½á¹¹Ì壬±íʾһ¸öÑùʽ¡£ÆäÖаüÀ¨ÁËÒÔϳÉÔ±£º
+//_styleID: ÑùʽµÄID£¬ÓÃÓÚ±êʶ²»Í¬µÄÑùʽ¡£
+//_styleDesc: ÑùʽµÄÃèÊö¡£
+//_fgColorºÍ_bgColor£ºÇ°¾°É«ºÍ±³¾°É«£¬ÓÃÓÚÉèÖÃÎı¾µÄÑÕÉ«¡£
+//_colorStyle£ºÑÕÉ«Ñùʽ£¬Ö¸¶¨ÁËÊǶÔǰ¾°É«¡¢±³¾°É«»¹ÊǶ¼ÉèÖÃÑÕÉ«¡£
+//_isFontEnabled£ºÊÇ·ñÆôÓÃÁË×ÖÌåÑùʽ¡£
+//_fontName£º×ÖÌåÃû³Æ¡£
+//_fontStyle£º×ÖÌåÑùʽ¡£
+//_fontSize£º×ÖÌå´óС¡£
+//_nesting£ºÇ¶Ì×Ñùʽ£¬ÓÃÓÚ´¦ÀíǶÌ×ÑùʽµÄÇé¿ö¡£
+////_keywords£º¹Ø¼ü×ÖÁÐ±í¡£
+//È»ºóÊÇGlobalOverride½á¹¹Ì壬±íʾȫ¾ÖµÄÑùʽ¸²¸ÇÉèÖá£ÆäÖаüÀ¨ÁËÒÔϳÉÔ±£º
+
+//isEnable()·½·¨£ºÅжÏÊÇ·ñÆôÓÃÁËÑùʽ¸²¸Ç¡£
+//enableFg¡¢enableBg¡¢enableFont¡¢enableFontSize¡¢enableBold¡¢enableItalic¡¢enableUnderLine£ºÃ¿¸ö³ÉÔ±¶¼±íʾÊÇ·ñÆôÓÃÁËÏàÓ¦µÄÑùʽ¸²¸Ç¡£
+//½ÓÏÂÀ´ÊÇStyleArray½á¹¹Ì壬ÓÃÓÚ¹ÜÀí¶à¸öÑùʽ¡£ÆäÖÐÓÐÒÔϳÉÔ±º¯Êý£º
+
+//begin()ºÍend()£º·µ»Øµü´úÆ÷£¬ÓÃÓÚ±éÀúÑùʽÊý×é¡£
+//clear()£ºÇå¿ÕÑùʽÊý×é¡£
+//getStyler(size_t index)£º¸ù¾ÝË÷Òý·µ»ØÑùʽ¡£
+//addStyler(int styleID, TiXmlNode* styleNode)£º¸ù¾Ý¸ø¶¨µÄÑùʽIDºÍXML½Úµã£¬Ìí¼ÓÒ»¸öÑùʽ¡£
+//addStyler(int styleID, const std::wstring& styleName)£º¸ù¾Ý¸ø¶¨µÄÑùʽIDºÍÑùʽÃû³Æ£¬Ìí¼ÓÒ»¸öÑùʽ¡£
+//findByID(int id)£º¸ù¾ÝÑùʽID²éÕÒÑùʽ¡£
+//findByName(const std::wstring& name)£º¸ù¾ÝÑùʽÃû³Æ²éÕÒÑùʽ¡£
+//½ÓÏÂÀ´ÊÇLexerStyler½á¹¹Ì壬±íʾһ¸öÓï·¨·ÖÎöÆ÷µÄÑùʽÆ÷¡£ÆäÖаüÀ¨ÒÔϳÉÔ±£º
+
+//operator=£ºÖØÔظ³ÖµÔËËã·û¡£
+//setLexerName(const TCHAR* lexerName)£ºÉèÖÃÓï·¨·ÖÎöÆ÷Ãû³Æ¡£
+//setLexerDesc(const TCHAR* lexerDesc)£ºÉèÖÃÓï·¨·ÖÎöÆ÷ÃèÊö¡£
+//setLexerUserExt(const TCHAR* lexerUserExt)£ºÉèÖÃÓï·¨·ÖÎöÆ÷µÄÓû§À©Õ¹¡£
+//getLexerName() const¡¢getLexerDesc() const¡¢getLexerUserExt() const£º·Ö±ð·µ»ØÓï·¨·ÖÎöÆ÷Ãû³Æ¡¢ÃèÊöºÍÓû§À©Õ¹¡£
+//_lexerName¡¢_lexerDesc¡¢_lexerUserExt£º·Ö±ð´æ´¢Óï·¨·ÖÎöÆ÷µÄÃû³Æ¡¢ÃèÊöºÍÓû§À©Õ¹¡£
+//È»ºóÊÇSortLexersInAlphabeticalOrder½á¹¹Ì壬ÓÃÓÚ¶ÔLexerStyler½øÐа´×Öĸ˳ÐòÅÅÐò¡£
+
+//×îºóÊÇLexerStylerArray½á¹¹Ì壬ÓÃÓÚ¹ÜÀí¶à¸öÓï·¨·ÖÎöÆ÷µÄÑùʽÆ÷¡£ÆäÖÐÓÐÒÔϳÉÔ±º¯Êý£º
+
+//getNbLexer() const£º·µ»ØÓï·¨·ÖÎöÆ÷µÄÊýÁ¿¡£
+//clear()£ºÇå¿ÕÓï·¨·ÖÎöÆ÷Êý×é¡£
+//getLexerFromIndex(size_t index)£º¸ù¾ÝË÷Òý·µ»ØÓï·¨·ÖÎöÆ÷ÑùʽÆ÷¡£
+//getLexerNameFromIndex(size_t index) const¡¢getLexerDescFromIndex(size_t index) const£º·Ö±ð¸ù¾ÝË÷Òý·µ»ØÓï·¨·ÖÎöÆ÷µÄÃû³ÆºÍÃèÊö¡£
+//getLexerStylerByName(const TCHAR* lexerName)£º¸ù¾ÝÓï·¨·ÖÎöÆ÷Ãû³Æ²éÕÒÓï·¨·ÖÎöÆ÷ÑùʽÆ÷¡£
+//addLexerStyler(const TCHAR* lexerName, const TCHAR* lexerDesc, const TCHAR* lexerUserExt, TiXmlNode* lexerNode)£º¸ù¾ÝÓï·¨·ÖÎöÆ÷µÄÃû³Æ¡¢ÃèÊö¡¢Óû§À©Õ¹ºÍXML½Úµã£¬Ìí¼ÓÒ»¸öÓï·¨·ÖÎöÆ÷ÑùʽÆ÷¡£
+//sort()£º¶ÔÓï·¨·ÖÎöÆ÷ÑùʽÆ÷°´×Öĸ˳ÐòÅÅÐò¡£
+//Õâ¶Î´úÂëµÄ×÷ÓÃÊǶ¨ÒåÁËһЩÊý¾Ý½á¹¹ºÍº¯Êý£¬ÓÃÓÚ¹ÜÀí±à¼Æ÷ÖеÄÑùʽºÍÓï·¨·ÖÎöÆ÷µÄÑùʽ¡£Í¨¹ý¶¨ÒåÕâЩÊý¾Ý½á¹¹ºÍº¯Êý£¬¿ÉÒÔ·½±ãµØ¹ÜÀíºÍÉèÖÃ±à¼Æ÷µÄÑùʽºÍÓï·¨·ÖÎöÆ÷µÄÑùʽ¡£
+//
+//
const int FONTSTYLE_NONE = 0;
const int FONTSTYLE_BOLD = 1;
@@ -403,6 +474,7 @@ const int COLORSTYLE_ALL = COLORSTYLE_FOREGROUND|COLORSTYLE_BACKGROUND;
+
struct Style final
{
int _styleID = STYLE_NOT_USED;
@@ -424,6 +496,14 @@ struct Style final
};
+//
+//
+//
+//
+//
+//
+//
+
struct GlobalOverride final
{
bool isEnable() const {return (enableFg || enableBg || enableFont || enableFontSize || enableBold || enableItalic || enableUnderLine);}
@@ -436,6 +516,14 @@ struct GlobalOverride final
bool enableUnderLine = false;
};
+//
+//
+//
+//
+//
+//
+//
+
struct StyleArray
{
auto begin() { return _styleVect.begin(); };
@@ -482,6 +570,14 @@ protected:
};
+//
+//
+//
+//
+//
+//
+//
+
struct LexerStyler : public StyleArray
{
@@ -522,6 +618,15 @@ private :
std::wstring _lexerUserExt;
};
+
+//
+//
+//
+//
+//
+//
+//
+
struct SortLexersInAlphabeticalOrder {
bool operator() (LexerStyler& l, LexerStyler& r) {
if (!lstrcmp(l.getLexerDesc(), TEXT("Search result")))
@@ -532,6 +637,15 @@ struct SortLexersInAlphabeticalOrder {
}
};
+
+//
+//
+//
+//
+//
+//
+//
+
struct LexerStylerArray
{
size_t getNbLexer() const { return _lexerStylerVect.size(); }
@@ -567,6 +681,23 @@ private :
};
+//
+//
+//
+//
+//
+//NewDocDefaultSettings£º°üº¬ÁËһЩĬÈϵÄÎĵµÉèÖ㬰üÀ¨Îļþ¸ñʽ¡¢Unicodeģʽ¡¢±àÂ뷽ʽµÈ¡£
+
+//LangMenuItem£º¶¨ÒåÁËÒ»¸ö²Ëµ¥Ï°üº¬ÁËÓïÑÔÀàÐÍ¡¢ÃüÁîIDºÍÓïÑÔÃû³Æ¡£
+
+//PrintSettings£º¶¨ÒåÁË´òÓ¡ÉèÖ㬰üÀ¨ÊÇ·ñ´òÓ¡Ðкš¢´òÓ¡Ñ¡Ïҳüҳ½ÅÄÚÈÝ¡¢×ÖÌåÑùʽµÈ¡£
+
+//Date£º¶¨ÒåÁËÈÕÆÚÀ࣬°üº¬Äê¡¢Ô¡¢ÈÕ£¬²¢ÌṩÁËÈÕÆÚµÄ±È½ÏºÍת»»·½·¨¡£
+
+//ÕâЩ½á¹¹ÌåºÍÀàÓÃÓÚÔÚij¸ö±à¼Æ÷ÖйÜÀíÎĵµ¡¢ÓïÑÔ¡¢´òÓ¡¡¢ÈÕÆÚµÈÏà¹ØµÄÉèÖú͹¦ÄÜ¡£
+//
+
+
struct NewDocDefaultSettings final
{
EolType _format = EolType::osdefault;
@@ -578,6 +709,15 @@ struct NewDocDefaultSettings final
};
+//
+//
+//
+//
+//
+//
+//
+
+
struct LangMenuItem final
{
LangType _langType = L_TEXT;
@@ -587,7 +727,13 @@ struct LangMenuItem final
LangMenuItem(LangType lt, int cmdID = 0, const std::wstring& langName = TEXT("")):
_langType(lt), _cmdID(cmdID), _langName(langName){};
};
-
+//
+//
+//
+//
+//
+//
+//
struct PrintSettings final {
bool _printLineNumber = true;
int _printOption = SC_PRINT_COLOURONWHITE;
@@ -624,7 +770,13 @@ struct PrintSettings final {
return ((_marge.left != 0) || (_marge.top != 0) || (_marge.right != 0) || (_marge.bottom != 0));
};
};
-
+//
+//
+//
+//
+//
+//
+//
class Date final
{
@@ -702,7 +854,25 @@ private:
unsigned long _month = 4;
unsigned long _day = 26;
};
-
+//
+//
+//Õâ¶Î´úÂ붨ÒåÁËÒ»¸öÃûΪMatchedPairConfµÄÀ࣬¸ÃÀà°üº¬ÁËһЩ³ÉÔ±±äÁ¿ºÍ³ÉÔ±º¯Êý¡£
+//
+//MatchedPairConfÀàµÄ³ÉÔ±±äÁ¿°üÀ¨£º
+//- _matchedPairs£ºÒ»¸ö°üº¬×Ö·û¶ÔµÄÏòÁ¿£¬ÓÃÓڴ洢ƥÅäµÄ×Ö·û¶Ô¡£
+//- _matchedPairsInit£ºÓÃÓÚÔÚ³õʼ»¯Ê±Ê¹ÓõÄ_matchedPairsµÄ¸±±¾¡£
+//- _doHtmlXmlTag¡¢_doParentheses¡¢_doBrackets¡¢_doCurlyBrackets¡¢_doQuotes¡¢_doDoubleQuotes£º±íʾÊÇ·ñÖ´ÐÐÏàÓ¦ÀàÐ͵ÄÀ¨ºÅÆ¥ÅäµÄ²¼¶û±äÁ¿¡£
+//
+//MatchedPairConfÀàµÄ³ÉÔ±º¯Êý°üÀ¨£º
+//- hasUserDefinedPairs() const£ºÅжÏÊÇ·ñ´æÔÚÓû§¶¨ÒåµÄ×Ö·û¶Ô¡£
+//- hasDefaultPairs() const£ºÅжÏÊÇ·ñ´æÔÚĬÈϵÄ×Ö·û¶Ô£¬°üÀ¨Ô²À¨ºÅ¡¢·½À¨ºÅ¡¢»¨À¨ºÅ¡¢ÒýºÅµÈ¡£
+//- hasAnyPairsPair() const£ºÅжÏÊÇ·ñ´æÔÚÈκÎÀàÐ͵Ä×Ö·û¶Ô¡£
+//
+//¸ÃÀàµÄÄ¿µÄÊǹÜÀíÆ¥ÅäÀ¨ºÅµÄÉèÖ㬰üÀ¨Óû§¶¨ÒåµÄ×Ö·û¶ÔºÍĬÈϵÄ×Ö·û¶Ô¡£
+//
+//
+//
+//
class MatchedPairConf final
{
@@ -721,7 +891,13 @@ public:
bool _doQuotes = false;
bool _doDoubleQuotes = false;
};
-
+//
+//
+//
+//
+//
+//
+//
struct DarkModeConf final
{
bool _isEnabled = false;
@@ -731,7 +907,13 @@ struct DarkModeConf final
NppDarkMode::AdvancedOptions _advOptions{};
};
-
+//
+//
+//
+//
+//
+//
+//
struct LargeFileRestriction final
{
int64_t _largeFileSizeDefInByte = NPP_STYLING_FILESIZE_LIMIT_DEFAULT;
@@ -746,7 +928,13 @@ struct LargeFileRestriction final
bool _suppress2GBWarning = false;
};
-
+//
+//
+//
+//
+//
+//
+//
struct NppGUI final
{
toolBarStatusType _toolBarStatus = TB_STANDARD;
@@ -918,7 +1106,27 @@ struct NppGUI final
LargeFileRestriction _largeFileRestriction;
};
-
+//
+//Õâ¶Î´úÂ붨ÒåÁËÈý¸ö½á¹¹ÌåºÍÒ»¸öÀà¡£
+//
+//1. ½á¹¹ÌåScintillaViewParams:
+//-³ÉÔ±±äÁ¿°üÀ¨Ò»ÏµÁв¼¶û±äÁ¿ºÍö¾ÙÀàÐͱäÁ¿£¬ÓÃÓڼǼScintilla±à¼Æ÷µÄ¸÷ÖÖ²ÎÊýÉèÖá£
+//- ³ÉÔ±º¯Êý°üÀ¨Ò»¸ö¼ÆËã·ÖÐÄģʽÊÓͼµÄÌî³ä³¤¶ÈµÄ·½·¨¡£
+//
+//2. ½á¹¹ÌåLang :
+// -³ÉÔ±±äÁ¿°üÀ¨ÓïÑÔID¡¢ÓïÑÔÃû³Æ¡¢Ä¬ÈÏÎļþÀ©Õ¹Ãû¡¢¹Ø¼ü´ÊÁÐ±í¡¢ÐÐ×¢ÊÍ·ûºÅ¡¢¿é×¢ÊÍ¿ªÊ¼·ûºÅºÍ½áÊø·ûºÅµÈ¡£
+// - ³ÉÔ±º¯Êý°üÀ¨ÉèÖÃĬÈÏÎļþÀ©Õ¹Ãû¡¢ÉèÖÃÐÐ×¢ÊÍ·ûºÅ¡¢ÉèÖÿé×¢ÊÍ¿ªÊ¼·ûºÅ¡¢ÉèÖÿé×¢ÊͽáÊø·ûºÅÒÔ¼°»ñÈ¡ / ÉèÖÃTabÐÅÏ¢µÈ¡£
+//
+// 3. ÀàUserLangContainer :
+// -³ÉÔ±±äÁ¿°üÀ¨ÑùʽÊý×é¡¢ÓïÑÔÃû³Æ¡¢ÎļþÀ©Õ¹Ãû¡¢ÊÇ·ñΪÉîɫģʽ¡¢UDL°æ±¾¡¢¹Ø¼ü´ÊÁÐ±í¡¢ÊÇ·ñΪǰ׺¡¢ÊÇ·ñºöÂÔ´óСд¡¢ÊÇ·ñÔÊÐíÕÛµþ×¢ÊÍ¡¢Ç¿ÖÆ´¿LC¡¢Ð¡Êý·Ö¸ô·ûÒÔ¼°ÊÇ·ñ½ô´ÕÕÛµþµÈ¡£
+// - ³ÉÔ±º¯Êý°üÀ¨»ñÈ¡Ãû³Æ¡¢»ñÈ¡ÎļþÀ©Õ¹Ãû¡¢»ñÈ¡UDL°æ±¾µÈ¡£
+///
+// ÕâЩ½á¹¹ÌåºÍÀà¶¼ÓÃÓڼǼ±à¼Æ÷µÄ¸÷ÖÖÉèÖòÎÊý£¬·½±ã½øÐйÜÀíºÍ·ÃÎÊ¡£
+//
+//
+//
+//
+//
struct ScintillaViewParams
{
bool _lineNumberMarginShow = true;
@@ -974,7 +1182,13 @@ struct ScintillaViewParams
return paddingLen;
};
};
-
+//
+//
+//
+//
+//
+//
+//
const int NB_LIST = 20;
const int NB_MAX_LRF_FILE = 30;
const int NB_MAX_USER_LANG = 30;
@@ -994,7 +1208,13 @@ const int MASK_ReplaceBySpc = 0x80;
const int MASK_TabSize = 0x7F;
-
+//
+//
+//
+//
+//
+//
+//
struct Lang final
{
@@ -1068,7 +1288,13 @@ struct Lang final
}
};
-
+//
+//
+//
+//
+//
+//
+//
class UserLangContainer final
{
@@ -1149,7 +1375,39 @@ private:
#define MAX_EXTERNAL_LEXER_NAME_LEN 128
-
+//
+//Õâ¶Î´úÂ붨ÒåÁËÎå¸ö½á¹¹ÌåºÍÁ½¸öÀà¡£
+//
+//1. ÀàExternalLangContainer:
+//-³ÉÔ±±äÁ¿°üÀ¨×Ö·û´®ÀàÐ͵Ä_name£¬Lexilla::CreateLexerFnÀàÐ͵ÄfnCLÒÔ¼°ExternalLexerAutoIndentModeÀàÐ͵Ä_autoIndentMode¡£
+//- ûÓж¨Òå³ÉÔ±º¯Êý¡£
+//
+//2. ½á¹¹ÌåFindHistory :
+// -³ÉÔ±±äÁ¿°üÀ¨¶à¸ö²¼¶û±äÁ¿ºÍÕûÐͱäÁ¿£¬ÓÃÓڼǼ²éÕÒÀúÊ·¼Ç¼µÄ¸÷ÖÖ²ÎÊýÉèÖá£
+// - ³ÉÔ±º¯Êý°üÀ¨»ñÈ¡²éÕÒÀúÊ·¼Ç¼µÄ·¾¶¡¢»ñÈ¡²éÕÒÀúÊ·¼Ç¼µÄ¹ýÂËÆ÷¡¢»ñÈ¡²éÕÒÀúÊ·¼Ç¼µÄ²éÕÒÄÚÈݵȡ£
+//
+// 3. ½á¹¹ÌåColumnEditorParam :
+// -³ÉÔ±±äÁ¿°üÀ¨leadingChoiceö¾ÙÀàÐ͵Ä_leadingChoice£¬ÕûÐͱäÁ¿_initialNum¡¢_increaseNum¡¢_repeatNumºÍ_formatChoice£¬×Ö·û´®ÀàÐ͵Ä_insertedTextContent¡£
+// - ûÓж¨Òå³ÉÔ±º¯Êý¡£
+//
+// 4. ÀàLocalizationSwitcher :
+// -³ÉÔ±±äÁ¿°üÀ¨LocalizationDefinition½á¹¹ÌåÀàÐ͵Ä_localizationList¡¢wstringÀàÐ͵Ä_nativeLangPathºÍstringÀàÐ͵Ä_fileName¡£
+// - ³ÉÔ±º¯Êý°üÀ¨´ÓxmlÎļþÖÐÌí¼ÓÓïÑÔ¡¢¸ù¾ÝxmlÎļþÃû»ñÈ¡ÓïÑÔÃû³Æ¡¢¸ù¾ÝÓïÑÔÃû³Æ»ñÈ¡xmlÎļþ·¾¶¡¢Çл»µ½Ö¸¶¨ÓïÑÔÒÔ¼°»ñÈ¡_localizationList´óСµÈ¡£
+//
+// 5. ÀàThemeSwitcher :
+// -³ÉÔ±±äÁ¿°üÀ¨std::vectorÀàÐ͵Ä_themeList¡¢std::mapÀàÐ͵Ä_themeStylerSavePath¡¢wstringÀàÐ͵Ä_themeDirPathºÍwstringÀàÐ͵Ä_defaultThemeLabel¡£
+// - ³ÉÔ±º¯Êý°üÀ¨´ÓxmlÎļþÖÐÌí¼ÓÖ÷Ìâ¡¢¸ù¾ÝxmlÎļþÃû»ñÈ¡Ö÷ÌâÃû³Æ¡¢¸ù¾ÝÖ÷ÌâÃû³Æ»ñÈ¡xmlÎļþ·¾¶¡¢¼ì²éÖ÷ÌâÃû³ÆÊÇ·ñ´æÔÚ¡¢»ñÈ¡_themeList´óС¡¢ÉèÖÃÖ÷ÌâÎļþ¼Ð·¾¶¡¢»ñÈ¡Ö÷ÌâÎļþ¼Ð·¾¶¡¢»ñȡĬÈÏÖ÷Ìâ±êÇ©ÒÔ¼°¸ù¾Ý·¾¶»ñÈ¡±£´æÂ·¾¶µÈ¡£
+//
+// 6. ½á¹¹ÌåUdlXmlFileState :
+// -³ÉÔ±±äÁ¿°üÀ¨TiXmlDocumentÖ¸ÕëÀàÐ͵Ä_udlXmlDoc£¬²¼¶ûÀàÐ͵Ä_isDirtyºÍ_isInDefaultSharedContainer£¬ÒÔ¼°pairÀàÐ͵Ä_indexRange¡£
+// - ¹¹Ô캯ÊýÓÃÓÚ³õʼ»¯³ÉÔ±±äÁ¿¡£
+//
+// ÕâЩ½á¹¹ÌåºÍÀàÓÃÓڼǼ¸÷ÖÖÉèÖòÎÊýºÍ״̬ÐÅÏ¢£¬·½±ã½øÐйÜÀíºÍ·ÃÎÊ¡£
+//
+//
+//
+//
+//
class ExternalLangContainer final
{
@@ -1165,6 +1423,14 @@ public:
};
+//
+//
+//
+//
+//
+//
+//
+
struct FindHistory final
{
enum searchMode{normal, extended, regExpr};
@@ -1208,6 +1474,14 @@ struct FindHistory final
bool _regexBackward4PowerUser = false;
};
+//
+//
+//
+//
+//
+//
+//
+
struct ColumnEditorParam final
{
enum leadingChoice : UCHAR { noneLeading, zeroLeading, spaceLeading };
@@ -1223,6 +1497,14 @@ struct ColumnEditorParam final
leadingChoice _leadingChoice = noneLeading;
};
+//
+//
+//
+//
+//
+//
+//
+
class LocalizationSwitcher final
{
friend class NppParameters;
@@ -1269,6 +1551,14 @@ private:
};
+//
+//
+//
+//
+//
+//
+//
+
class ThemeSwitcher final
{
friend class NppParameters;
@@ -1340,6 +1630,14 @@ private:
};
+//
+//
+//
+//
+//
+//
+//
+
struct UdlXmlFileState final {
TiXmlDocument* _udlXmlDoc = nullptr;
bool _isDirty = false;
@@ -1634,6 +1932,48 @@ public:
return _workSpaceFilePathes[i].c_str();
};
+ //
+ //Õâ¶Î´úÂë°üº¬ÁËÁ½¸öÀàºÍһЩ³£Á¿ºÍº¯ÊýµÄ¶¨Ò壺
+ //
+ //³£Á¿ºÍ±äÁ¿µÄ¶¨Ò壺
+ //
+ // NB_LANG£ºÕûÐͳ£Á¿£¬±íʾÓïÑÔµÄÊýÁ¿ÉÏÏÞ¡£
+ // RECENTFILES_SHOWFULLPATHºÍRECENTFILES_SHOWONLYFILENAME£ºÕûÐͳ£Á¿£¬±íʾÔÚ×î½üÎļþÁбíÖÐÏÔʾÍêÕû·¾¶»ò½öÏÔʾÎļþÃû¡£
+ // ÀàDynamicMenu£º
+// ¹«¹²³ÉÔ±º¯Êý°üÀ¨attach·½·¨£¬ÓÃÓÚ½«²Ëµ¥¸½¼Óµ½Ìض¨Î»Öã»createMenu·½·¨£¬ÓÃÓÚ´´½¨²Ëµ¥£»clearMenu·½·¨£¬ÓÃÓÚÇå¿Õ²Ëµ¥£»getTopLevelItemNumber·½·¨£¬ÓÃÓÚ»ñÈ¡¶¥¼¶²Ëµ¥ÏîµÄÊýÁ¿£»push_back·½·¨£¬ÓÃÓÚÏò²Ëµ¥Ìí¼Ó²Ëµ¥ÏgetItemFromIndex·½·¨£¬ÓÃÓÚ¸ù¾ÝË÷Òý»ñÈ¡²Ëµ¥Ïerase·½·¨£¬ÓÃÓÚ¸ù¾ÝË÷Òýɾ³ý²Ëµ¥ÏgetPosBase·½·¨£¬ÓÃÓÚ»ñÈ¡_posBaseµÄÖµ£»getLastCmdLabel·½·¨£¬ÓÃÓÚ»ñÈ¡_lastCmdLabelµÄÖµ¡£
+// ˽ÓгÉÔ±±äÁ¿°üÀ¨_menuItems£¬ÀàÐÍΪMenuItemUnitµÄvector£¬_hMenu£¬ÀàÐÍΪHMENU£¬_posBase£¬ÀàÐÍΪunsigned int£¬_lastCmd£¬ÀàÐÍΪintºÍ_lastCmdLabel£¬ÀàÐÍΪwstring¡£
+// ÀàNppParameters£º
+
+// ˽Óо²Ì¬º¯ÊýgetInstancePointerÓÃÓÚ»ñÈ¡NppParametersµÄʵÀýÖ¸Õë¡£
+// ¾²Ì¬º¯ÊýgetInstanceÓÃÓÚ»ñÈ¡NppParametersµÄʵÀý¡£
+// ¾²Ì¬º¯ÊýgetLangIDFromStrÓÃÓÚ¸ù¾ÝÓïÑÔÃû³Æ»ñÈ¡¶ÔÓ¦µÄLangType¡£
+ // ¾²Ì¬º¯ÊýgetLocPathFromStrÓÃÓÚ¸ù¾Ý±¾µØ»¯´úÂë»ñÈ¡±¾µØ»¯Îļþ·¾¶¡£
+ // ³ÉÔ±º¯ÊýloadÓÃÓÚ¼ÓÔØNppParametersµÄÉèÖòÎÊý¡£
+ // ÆäËû³ÉÔ±º¯ÊýÓÃÓÚ»ñÈ¡ºÍ²Ù×÷NppParametersÖеÄÅäÖòÎÊý¡£
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+
+
+
+
+
+
+
+
+
const std::vector getFileBrowserRoots() const { return _fileBrowserRoot; };
std::wstring getFileBrowserSelectedItemPath() const { return _fileBrowserSelectedItemPath; };
@@ -1886,7 +2226,92 @@ private:
std::wstring _startWithLocFileName;
bool _doFunctionListExport = false;
bool _doPrintAndExit = false;
-
+ //
+ //Õâ¶Î´úÂë¼ÌÐø¶¨ÒåÁËNppParametersÀàµÄһЩ³ÉÔ±º¯ÊýºÍ³ÉÔ±±äÁ¿£º
+
+ //-getFileBrowserRoots·½·¨·µ»Ø_fileBrowserRootµÄÒýÓã¬ÓÃÓÚ»ñÈ¡Îļþä¯ÀÀÆ÷µÄ¸ù·¾¶ÁÐ±í¡£
+ //- getFileBrowserSelectedItemPath·½·¨·µ»Ø_fileBrowserSelectedItemPathµÄÖµ£¬±íʾÎļþä¯ÀÀÆ÷ÖÐÑ¡¶¨µÄ·¾¶¡£
+ //- setWorkSpaceFilePathºÍgetLoadedSessionFilePath·½·¨ÓÃÓÚÉèÖúͻñÈ¡¹¤×÷¿Õ¼äÎļþ·¾¶¡£
+ // - setWorkingDir·½·¨ÓÃÓÚÉèÖõ±Ç°¹¤×÷Ŀ¼¡£
+ // - setStartWithLocFileName·½·¨ÓÃÓÚÉèÖÃÆô¶¯Ê±µÄ±¾µØ»¯ÎļþÃû¡£
+ // - setFunctionListExportBooleanºÍdoFunctionListExport·½·¨ÓÃÓÚÉèÖúͻñÈ¡ÊÇ·ñµ¼³öº¯ÊýÁÐ±í¡£
+ // - setPrintAndExitBooleanºÍdoPrintAndExit·½·¨ÓÃÓÚÉèÖúͻñÈ¡ÊÇ·ñ´òÓ¡²¢Í˳ö¡£
+ // - loadSession·½·¨ÓÃÓÚ¼ÓÔØ»á»°ÅäÖá£
+ // - getFindDlgTabTitiles·½·¨·µ»Ø_findDlgTabTitilesµÄÒýÓã¬ÆäÖд洢Á˲éÕÒ¶Ô»°¿òÑ¡ÏµÄ±êÌâ¡£
+ // - asNotepadStyle·½·¨ÓÃÓÚÅжÏÊÇ·ñʹÓÃÀàËÆ¼Çʱ¾µÄÑùʽ¡£
+ /* - reloadPluginCmds·½·¨ÓÃÓÚÖØÐ¼ÓÔØ²å¼þÃüÁî¡£
+ - getContextMenuFromXmlTreeºÍreloadContextMenuFromXmlTree·½·¨ÓÃÓÚ´ÓXMLÊ÷ÖлñÈ¡ÉÏÏÂÎIJ˵¥£¬²¢Ë¢ÐÂÉÏÏÂÎIJ˵¥¡£
+ - getWinVersion·½·¨·µ»Ø_winVersionµÄÖµ£¬±íʾWindowsµÄ°æ±¾¡£
+ - getFindHistory·½·¨·µ»Ø_findHistoryµÄÒýÓã¬ÓÃÓÚ»ñÈ¡²éÕÒÀúÊ·¼Ç¼¡£
+ - safeWow64EnableWow64FsRedirection·½·¨ÓÃÓÚÔÚ64λϵͳÉÏÆôÓûò½ûÓÃÎļþÏµÍ³ÖØ¶¨Ïò¡£
+ - getLocalizationSwitcherÕâ¶Î´úÂë¼ÌÐø¶¨ÒåÁËNppParametersÀàÖеÄһЩ³ÉÔ±º¯ÊýºÍ³ÉÔ±±äÁ¿£º
+
+ - getFileBrowserRoots£º·µ»ØÎļþä¯ÀÀÆ÷µÄ¸ùĿ¼ÁÐ±í¡£
+ - getFileBrowserSelectedItemPath£º·µ»ØÎļþä¯ÀÀÆ÷Öе±Ç°Ñ¡¶¨µÄÏîĿ·¾¶¡£
+ - setWorkSpaceFilePath£ºÉèÖù¤×÷ÇøÎļþµÄ·¾¶¡£
+ - setWorkingDir£ºÉèÖù¤×÷Ŀ¼µÄ·¾¶¡£
+ - setStartWithLocFileName£ºÉèÖÃÆô¶¯Ê±Ê¹Óõı¾µØ»¯ÎļþÃû¡£
+ - setFunctionListExportBoolean£ºÉèÖÃÊÇ·ñµ¼³öº¯ÊýÁбíµÄ²¼¶ûÖµ¡£
+ - setPrintAndExitBoolean£ºÉèÖÃÊÇ·ñ´òÓ¡²¢Í˳öµÄ²¼¶ûÖµ¡£
+ - loadSession£º¼ÓÔØ»á»°¡£
+ - setLoadedSessionFilePath£ºÉèÖüÓÔØ»á»°ÎļþµÄ·¾¶¡£
+ - getLoadedSessionFilePath£º»ñÈ¡¼ÓÔØ»á»°ÎļþµÄ·¾¶¡£
+ - langTypeToCommandID£º½«ÓïÑÔÀàÐÍת»»ÎªÃüÁîID¡£
+ - getFindDlgTabTitiles£º»ñÈ¡²éÕÒ¶Ô»°¿ò±êÇ©µÄ±êÌâ¡£
+ - asNotepadStyle£ºÅжÏÊÇ·ñΪ¼Çʱ¾Ñùʽ¡£
+ - reloadPluginCmds£ºÖØÐ¼ÓÔØ²å¼þÃüÁî¡£
+ - getContextMenuFromXmlTree£º´ÓXMLÊ÷ÖлñÈ¡ÉÏÏÂÎIJ˵¥¡£
+ - reloadContextMenuFromXmlTree£ºÖØÐ¼ÓÔØÉÏÏÂÎIJ˵¥¡£
+ - getWinVersion£º»ñÈ¡²Ù×÷ϵͳ°æ±¾¡£
+ - getWinVersionStr£º»ñÈ¡²Ù×÷ϵͳ°æ±¾µÄ×Ö·û´®±íʾ¡£
+ - getWinVerBitStr£º»ñÈ¡²Ù×÷ϵͳλÊýµÄ×Ö·û´®±íʾ¡£
+ - getFindHistory£º»ñÈ¡²éÕÒÀúÊ·¼Ç¼¡£
+ - safeWow64EnableWow64FsRedirection£ºÆôÓûò½ûÓÃWOW64ÎļþÏµÍ³ÖØ¶¨Ïò¡£
+ - getLocalizationSwitcher£º»ñÈ¡±¾µØ»¯Çл»Æ÷¡£
+ - getThemeSwitcher£º»ñÈ¡Ö÷ÌâÇл»Æ÷¡£
+ - getBlackList£º»ñÈ¡ºÚÃûµ¥ÁÐ±í¡£
+ - isInBlackList£ºÅжÏÖ¸¶¨ÎļþÊÇ·ñÔÚºÚÃûµ¥ÖС£
+ - importUDLFromFile£º´ÓÎļþµ¼ÈëÓû§¶¨ÒåµÄÓïÑÔ¡£
+ - exportUDLToFile£º½«Óû§¶¨ÒåµÄÓïÑÔµ¼³öµ½Îļþ¡£
+ - getNativeLangSpeaker£º»ñÈ¡±¾µØ»¯ÓïÑԵĽ²½âÆ÷¡£
+ - setNativeLangSpeaker£ºÉèÖñ¾µØ»¯ÓïÑԵĽ²½âÆ÷¡£
+ - isLocal£ºÅжÏÊÇ·ñΪ±¾µØ»·¾³¡£
+ - isCloud£ºÅжÏÊÇ·ñÎªÔÆ»·¾³¡£
+ - saveConfig_xml£º±£´æÅäÖõ½XMLÎļþ¡£
+ - getUserPath£º»ñÈ¡Óû§Â·¾¶¡£
+ - getUserDefineLangFolderPath£º»ñÈ¡Óû§¶¨ÒåÓïÑÔÎļþ¼Ð·¾¶¡£
+ - getUserDefineLangPath£º»ñÈ¡Óû§¶¨ÒåÓïÑÔÎļþµÄ·¾¶¡£
+ - writeSettingsFilesOnCloudForThe1stTime£º½«ÅäÖÃÎļþ±£´æµ½Ôƶˡ£
+ - setCloudChoice£ºÉèÖÃÔÆ¶Ë·¾¶Ñ¡Ôñ¡£
+ - removeCloudChoice£ºÒƳýÔÆ¶Ë·¾¶Ñ¡Ôñ¡£
+ - isCloudPathChanged£ºÅжÏÔÆ¶Ë·¾¶ÊÇ·ñÒѸü¸Ä¡£
+ - archType£º»ñÈ¡Ìåϵ½á¹¹ÀàÐÍ¡£
+ - getCurrentDefaultBgColor£º»ñÈ¡µ±Ç°Ä¬Èϵı³¾°ÑÕÉ«¡£
+ - getCurrentDefaultFgColor£º»ñÈ¡µ±Ç°Ä¬ÈϵÄǰ¾°ÑÕÉ«¡£
+ - setCurrentDefaultBgColor£ºÉèÖõ±Ç°Ä¬Èϵı³¾°ÑÕÉ«¡£
+ - setCurrentDefaultFgColor£ºÉèÖõ±Ç°Ä¬ÈϵÄǰ¾°ÑÕÉ«¡£
+ - setCmdSettingsDir£ºÉèÖÃÃüÁîÉèÖÃĿ¼¡£
+ - setTitleBarAdd£ºÉèÖñêÌâÀ¸¸½¼ÓÄÚÈÝ¡£
+ - getTitleBarAdd£º»ñÈ¡±êÌâÀ¸¸½¼ÓÄÚÈÝ¡£
+ - _dpiManager£ºDPI¹ÜÀíÆ÷¡£
+ - getSpecialFolderLocation£º»ñÈ¡ÌØÊâÎļþ¼ÐµÄ·¾¶¡£
+ - setUdlXmlDirtyFromIndex£ºÉèÖÃUserDefineLang XMLµÄÖ¸¶¨Ë÷ÒýΪÔàÊý¾Ý¡£
+ - setUdlXmlDirtyFromXmlDoc£º¸ù¾ÝXMLÎĵµÉèÖÃUserDefineLang XMLΪÔàÊý¾Ý¡£
+ - removeIndexFromXmlUdls£º´ÓUserDefineLang XMLÁбíÖÐɾ³ýÖ¸¶¨Ë÷Òý¡£
+ - isStylerDocLoaded£ºÅжÏstylers.xmlÎĵµÊÇ·ñÒѼÓÔØ¡£
+ - _columnEditParam£ºColumnEditorParam½á¹¹Ìå¶ÔÏó¡£*/
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
+ //
ThemeSwitcher _themeSwitcher;
std::vector _contextMenuItems;
@@ -2024,3 +2449,29 @@ private:
winVer getWindowsVersion();
};
+//Õâ¶Î´úÂë¼ÌÐø¶¨ÒåÁËNppParametersÀàµÄһЩ³ÉÔ±º¯ÊýºÍ³ÉÔ±±äÁ¿£º
+//
+//- _themeSwitcher£ºÖ÷ÌâÇл»Æ÷¡£
+//- _contextMenuItemsºÍ_tabContextMenuItems£ºÓÃÓÚ´æ´¢×Ô¶¨ÒåÓÒ¼ü²Ëµ¥µÄ²Ëµ¥Ïî¡£
+//- _macroMenuItemsºÍ_runMenuItems£ºÓÃÓÚ´æ´¢ºêºÍÔËÐÐÃüÁîµÄ²Ëµ¥Ïî¡£
+//- _session£º»á»°¶ÔÏó£¬ÓÃÓÚ´æ´¢»á»°ÐÅÏ¢¡£
+//- _shortcutsPath¡¢_contextMenuPath¡¢_tabContextMenuPath¡¢_sessionPath¡¢_nppPath¡¢_userPath¡¢_stylerPath¡¢_appdataNppDir¡¢_pluginRootDir¡¢_pluginConfDir¡¢_userPluginConfDir¡¢_currentDirectory¡¢_workSpaceFilePathes£ºÓÃÓÚ´æ´¢Îļþ·¾¶ºÍĿ¼·¾¶µÄ×Ö·û´®±äÁ¿¡£
+//- _fileBrowserRootºÍ_fileBrowserSelectedItemPath£º´æ´¢Îļþä¯ÀÀÆ÷¸ù·¾¶ºÍÑ¡¶¨ÏîĿ·¾¶µÄ±äÁ¿¡£
+//- _pAcceleratorºÍ_pScintAccelerator£º¼ÓËÙ¼üºÍScintillaµÄ¼ÓËÙ¼ü¡£
+//- _findDlgTabTitiles£º²éÕÒ¶Ô»°¿òÑ¡ÏµÄ±êÌâ¡£
+//- _asNotepadStyle£º±íʾÊÇ·ñ½«½çÃæÑùʽÉèÖÃΪÀàËÆ¼Çʱ¾µÄ·ç¸ñ¡£
+//- _winVersion£ºWindowsµÄ°æ±¾¡£
+//- _platForm£ºÆ½Ì¨µÄÀàÐÍ¡£
+//- _pNativeLangSpeaker£ºÓë±¾µØ»¯ÓïÑÔÏà¹ØµÄ¶ÔÏó¡£
+//- _currentDefaultBgColorºÍ_currentDefaultFgColor£ºµ±Ç°Ä¬Èϵı³¾°ÑÕÉ«ºÍǰ¾°ÑÕÉ«¡£
+//- _initialCloudChoice£º³õʼµÄÔÆ¶Ë·¾¶Ñ¡Ôñ¡£
+//- _wingupFullPath¡¢_wingupParams¡¢_wingupDirºÍ_isElevationRequired£ºÓëÉý¼¶WingupÏà¹ØµÄ±äÁ¿¡£
+//- _doNppLogNetworkDriveIssueºÍ_doNppLogNulContentCorruptionIssue£ºÓÃÓڼǼÊÇ·ñÐèÒª½øÐÐÍøÂçÇý¶¯Æ÷ºÍNULÄÚÈÝËð»µÎÊÌâµÄÈÕÖ¾¼Ç¼¡£
+//- _isEndSessionStartedºÍ_isEndSessionCritical£ºÓÃÓڼǼ»á»°ÊÇ·ñÒÑ¿ªÊ¼ºÍÊÇ·ñÊÇÁÙ½ç»á»°¡£
+//- _isPlaceHolderEnabledºÍ_theWarningHasBeenGiven£ºÓÃÓڼǼÊÇ·ñÆôÓÃÁËռλ·û¹¦Äܺ;¯¸æÊÇ·ñÒѸø³ö¡£
+//- getWingupFullPath¡¢getWingupParams¡¢getWingupDirºÍshouldDoUAC£º»ñÈ¡ÓëÉý¼¶WingupÏà¹ØµÄ²ÎÊý¡£
+//- setWingupFullPath¡¢setWingupParams¡¢setWingupDirºÍsetElevationRequired£ºÉèÖÃÓëÉý¼¶WingupÏà¹ØµÄ²ÎÊý¡£
+//- doNppLogNetworkDriveIssue¡¢doNppLogNulContentCorruptionIssue¡¢endSessionStart¡¢isEndSessionStarted¡¢makeEndSessionCriticalºÍisEndSessionCritical£º»ñÈ¡»òÉèÖÃÓëÈÕÖ¾¼Ç¼ºÍ»á»°×´Ì¬Ïà¹ØµÄ²ÎÊý¡£
+//- setPlaceHolderEnable¡¢isPlaceHolderEnabled¡¢setTheWarningHasBeenGivenºÍtheWarningHasBeenGiven£º»ñÈ¡»òÉèÖÃÓëռλ·û¹¦Äܺ;¯¸æ×´Ì¬Ïà¹ØµÄ²ÎÊý¡£
+//
+//×ÜÌåÀ´Ëµ£¬NppParametersÀàÊÇNotepad++µÄ²ÎÊýÅäÖÃÀ࣬°üº¬Á˸÷ÖÖÏà¹ØµÄÅäÖòÎÊýºÍ²Ù×÷º¯Êý¡£ÕâЩ²ÎÊýºÍº¯ÊýÓÃÓÚ¹ÜÀíºÍ²Ù×÷Notepad++µÄ¸÷ÖÖÅäÖÃÐÅÏ¢£¬ÈçÓïÑÔÉèÖá¢ÑùʽÉèÖᢿì½Ý¼ü¡¢ºêÃüÁî¡¢²å¼þÃüÁîµÈ¡£
\ No newline at end of file