diff --git a/PowerEditor/src/MISC/PluginsManager/Notepad_plus_msgs.h b/PowerEditor/src/MISC/PluginsManager/Notepad_plus_msgs.h index db1792bd8..c5e5a2dd6 100644 --- a/PowerEditor/src/MISC/PluginsManager/Notepad_plus_msgs.h +++ b/PowerEditor/src/MISC/PluginsManager/Notepad_plus_msgs.h @@ -44,7 +44,7 @@ enum LangType {L_TEXT, L_PHP , L_C, L_CPP, L_CS, L_OBJC, L_JAVA, L_RC,\ L_ASN1, L_AVS, L_BLITZBASIC, L_PUREBASIC, L_FREEBASIC, \ L_CSOUND, L_ERLANG, L_ESCRIPT, L_FORTH, L_LATEX, \ L_MMIXAL, L_NIMROD, L_NNCRONTAB, L_OSCRIPT, L_REBOL, \ - L_REGISTRY, L_RUST, L_SPICE, L_TXT2TAGS, \ + L_REGISTRY, L_RUST, L_SPICE, L_TXT2TAGS, L_VISUALPROLOG,\ // Don't use L_JS, use L_JAVASCRIPT instead // The end of enumated language type, so it should be always at the end L_EXTERNAL}; diff --git a/PowerEditor/src/Notepad_plus.cpp b/PowerEditor/src/Notepad_plus.cpp index 9c417913e..55c560ae3 100644 --- a/PowerEditor/src/Notepad_plus.cpp +++ b/PowerEditor/src/Notepad_plus.cpp @@ -2894,7 +2894,8 @@ LangType Notepad_plus::menuID2LangType(int cmdID) return L_SPICE; case IDM_LANG_TXT2TAGS : return L_TXT2TAGS; - + case IDM_LANG_VISUALPROLOG: + return L_VISUALPROLOG; case IDM_LANG_USER : return L_USER; default: { diff --git a/PowerEditor/src/Notepad_plus.rc b/PowerEditor/src/Notepad_plus.rc index a6a81f04c..bdd2611f0 100644 --- a/PowerEditor/src/Notepad_plus.rc +++ b/PowerEditor/src/Notepad_plus.rc @@ -750,6 +750,7 @@ BEGIN MENUITEM "Verilog", IDM_LANG_VERILOG MENUITEM "VHDL", IDM_LANG_VHDL MENUITEM "Visual Basic", IDM_LANG_VB + MENUITEM "Visual Prolog", IDM_LANG_VISUALPROLOG MENUITEM "XML", IDM_LANG_XML MENUITEM "YAML", IDM_LANG_YAML MENUITEM SEPARATOR @@ -889,6 +890,7 @@ BEGIN POPUP "V" BEGIN MENUITEM "Visual Basic", IDM_LANG_VB + MENUITEM "Visual Prolog", IDM_LANG_VISUALPROLOG MENUITEM "VHDL", IDM_LANG_VHDL MENUITEM "Verilog", IDM_LANG_VERILOG END diff --git a/PowerEditor/src/NppCommands.cpp b/PowerEditor/src/NppCommands.cpp index 3af525985..719e69fe8 100644 --- a/PowerEditor/src/NppCommands.cpp +++ b/PowerEditor/src/NppCommands.cpp @@ -2832,6 +2832,7 @@ void Notepad_plus::command(int id) case IDM_LANG_RUST : case IDM_LANG_SPICE : case IDM_LANG_TXT2TAGS : + case IDM_LANG_VISUALPROLOG: case IDM_LANG_USER : { setLanguage(menuID2LangType(id)); diff --git a/PowerEditor/src/Parameters.cpp b/PowerEditor/src/Parameters.cpp index d5c549832..ff2ae0eea 100644 --- a/PowerEditor/src/Parameters.cpp +++ b/PowerEditor/src/Parameters.cpp @@ -6096,6 +6096,9 @@ int NppParameters::langTypeToCommandID(LangType lt) const case L_TXT2TAGS : id = IDM_LANG_TXT2TAGS; break; + case L_VISUALPROLOG: + id = IDM_LANG_VISUALPROLOG; break; + case L_SEARCHRESULT : id = -1; break; diff --git a/PowerEditor/src/ScitillaComponent/ScintillaEditView.cpp b/PowerEditor/src/ScitillaComponent/ScintillaEditView.cpp index 21ba51ae4..b6bd3b5d5 100644 --- a/PowerEditor/src/ScitillaComponent/ScintillaEditView.cpp +++ b/PowerEditor/src/ScitillaComponent/ScintillaEditView.cpp @@ -165,6 +165,7 @@ LanguageName ScintillaEditView::langNames[L_EXTERNAL+1] = { {TEXT("rust"), TEXT("Rust"), TEXT("Rust file"), L_RUST, SCLEX_RUST}, {TEXT("spice"), TEXT("Spice"), TEXT("spice file"), L_SPICE, SCLEX_SPICE}, {TEXT("txt2tags"), TEXT("txt2tags"), TEXT("txt2tags file"), L_TXT2TAGS, SCLEX_TXT2TAGS}, +{TEXT("visualprolog"), TEXT("Visual Prolog"), TEXT("Visual Prolog file"), L_VISUALPROLOG, SCLEX_VISUALPROLOG}, {TEXT("ext"), TEXT("External"), TEXT("External"), L_EXTERNAL, SCLEX_NULL} }; @@ -1684,6 +1685,9 @@ void ScintillaEditView::defineDocType(LangType typeDoc) case L_TXT2TAGS : setTxt2tagsLexer(); break; + case L_VISUALPROLOG: + setVisualPrologLexer(); break; + case L_TEXT : default : if (typeDoc >= L_EXTERNAL && typeDoc < _pParameter->L_END) diff --git a/PowerEditor/src/ScitillaComponent/ScintillaEditView.h b/PowerEditor/src/ScitillaComponent/ScintillaEditView.h index c43441eb4..b397acaaf 100644 --- a/PowerEditor/src/ScitillaComponent/ScintillaEditView.h +++ b/PowerEditor/src/ScitillaComponent/ScintillaEditView.h @@ -979,6 +979,10 @@ protected: setLexer(SCLEX_TXT2TAGS, L_TXT2TAGS, LIST_NONE); }; + void setVisualPrologLexer() { + setLexer(SCLEX_VISUALPROLOG, L_VISUALPROLOG, LIST_0 | LIST_1 | LIST_2 | LIST_3); + } + //-------------------- void setSearchResultLexer() { diff --git a/PowerEditor/src/langs.model.xml b/PowerEditor/src/langs.model.xml index eec004406..d8d5a9f72 100644 --- a/PowerEditor/src/langs.model.xml +++ b/PowerEditor/src/langs.model.xml @@ -371,6 +371,12 @@ std ieee work standard textio std_logic_1164 std_logic_arith std_logic_misc std_logic_signed std_logic_textio std_logic_unsigned numeric_bit numeric_std math_complex math_real vital_primitives vital_timing boolean bit character severity_level integer real time delay_length natural positive string bit_vector file_open_kind file_open_status line text side width std_ulogic std_ulogic_vector std_logic std_logic_vector X01 X01Z UX01 UX01Z unsigned signed + + goal namespace interface class implement open inherits supports resolve delegate monitor constants domains predicates constructors properties clauses facts + guard language stdcall apicall c thiscall prolog digits if then elseif else foreach do try catch finally erroneous failure procedure determ multi nondeterm anyflow and or externally from div mod rem quot in orelse otherwise + include bininclude requires orrequires if then else elseif endif error message export externally options + short detail end exception withdomain + diff --git a/PowerEditor/src/menuCmdID.h b/PowerEditor/src/menuCmdID.h index 44e5327be..58b24173a 100644 --- a/PowerEditor/src/menuCmdID.h +++ b/PowerEditor/src/menuCmdID.h @@ -509,6 +509,7 @@ #define IDM_LANG_RUST (IDM_LANG + 80) #define IDM_LANG_SPICE (IDM_LANG + 81) #define IDM_LANG_TXT2TAGS (IDM_LANG + 82) + #define IDM_LANG_VISUALPROLOG (IDM_LANG + 83) #define IDM_LANG_EXTERNAL (IDM_LANG + 165) #define IDM_LANG_EXTERNAL_LIMIT (IDM_LANG + 179) @@ -517,6 +518,7 @@ #define IDM_LANG_USER_LIMIT (IDM_LANG + 210) //46210: Ajust with IDM_LANG_USER #define IDM_LANG_USER_DLG (IDM_LANG + 250) //46250: Used for translation + #define IDM_ABOUT (IDM + 7000) diff --git a/PowerEditor/src/stylers.model.xml b/PowerEditor/src/stylers.model.xml index e7a75f3a3..931721bbd 100644 --- a/PowerEditor/src/stylers.model.xml +++ b/PowerEditor/src/stylers.model.xml @@ -1241,6 +1241,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + +