diff options
author | XhmikosR <xhmikosr@users.sourceforge.net> | 2012-09-23 11:42:39 +0300 |
---|---|---|
committer | XhmikosR <xhmikosr@users.sourceforge.net> | 2012-09-23 15:11:18 +0300 |
commit | 390832dbbf949a48fc050c76c48e2f4bab52a54f (patch) | |
tree | fc5d4768cae73623bfb0c0fb2139085d56c9ea6a | |
parent | 57ca9656957d6159b76a230019261b8a28fd9ee3 (diff) | |
download | notepad2-mod-390832dbbf949a48fc050c76c48e2f4bab52a54f.zip notepad2-mod-390832dbbf949a48fc050c76c48e2f4bab52a54f.tar.gz notepad2-mod-390832dbbf949a48fc050c76c48e2f4bab52a54f.tar.bz2 |
Add support for Markdown scripts
-rw-r--r-- | Readme-mod.txt | 2 | ||||
-rw-r--r-- | Readme.md | 2 | ||||
-rw-r--r-- | build/makefile.deps.mak | 1 | ||||
-rw-r--r-- | build/makefile.mak | 1 | ||||
-rw-r--r-- | lexlink.js | 1 | ||||
-rw-r--r-- | scintilla/src/Catalogue.cxx | 2 | ||||
-rw-r--r-- | src/Notepad2.c | 8 | ||||
-rw-r--r-- | src/Notepad2.vcxproj | 1 | ||||
-rw-r--r-- | src/Notepad2.vcxproj.filters | 3 | ||||
-rw-r--r-- | src/Notepad2_VS2012.vcxproj | 1 | ||||
-rw-r--r-- | src/Notepad2_VS2012.vcxproj.filters | 3 | ||||
-rw-r--r-- | src/Notepad2_icl12.vcxproj | 1 | ||||
-rw-r--r-- | src/Notepad2_icl12.vcxproj.filters | 3 | ||||
-rw-r--r-- | src/Styles.c | 35 | ||||
-rw-r--r-- | src/Styles.h | 2 |
15 files changed, 59 insertions, 7 deletions
diff --git a/Readme-mod.txt b/Readme-mod.txt index 5475f24..04f44ca 100644 --- a/Readme-mod.txt +++ b/Readme-mod.txt @@ -7,7 +7,7 @@ Notable changes: * Option to mark all occurrences of a word
* Word auto-completion
* Syntax highlighting support for AutoHotkey, AutoIt3, AviSynth, Bash,
- CMake, Inno Setup, LaTeX, Lua, NSIS, Ruby, and Tcl scripts
+ CMake, Inno Setup, LaTeX, Lua, Markdown, NSIS, Ruby, and Tcl scripts
* Improved support for NFO ANSI art
* Support for replacing Windows Notepad using a clean, unintrusive registry-based method
* Other various minor changes and tweaks
@@ -6,7 +6,7 @@ _A modified version (fork) of Notepad2 based on Kai Liu's and other people's pat * Support for bookmarks * Option to mark all occurrences of a word * Word auto-completion -* Syntax highlighting support for AutoHotkey, AutoIt3, AviSynth, Bash, CMake, Inno Setup, LaTeX, Lua, NSIS, Ruby and Tcl scripts +* Syntax highlighting support for AutoHotkey, AutoIt3, AviSynth, Bash, CMake, Inno Setup, LaTeX, Lua, Markdown, NSIS, Ruby, and Tcl scripts * Improved support for NFO ANSI art * Support for replacing Windows Notepad using a clean, unintrusive registry-based method * Other various minor changes and tweaks diff --git a/build/makefile.deps.mak b/build/makefile.deps.mak index 4a32e3a..befcb36 100644 --- a/build/makefile.deps.mak +++ b/build/makefile.deps.mak @@ -41,6 +41,7 @@ $(SCI_LEX_OBJDIR)\LexCSS.obj: $(SCI_LEX)\LexCSS.cxx $(LEX_HEADERS) $(SCI_LEX_OBJDIR)\LexHTML.obj: $(SCI_LEX)\LexHTML.cxx $(LEX_HEADERS)
$(SCI_LEX_OBJDIR)\LexInno.obj: $(SCI_LEX)\LexInno.cxx $(LEX_HEADERS)
$(SCI_LEX_OBJDIR)\LexLua.obj: $(SCI_LEX)\LexLua.cxx $(LEX_HEADERS)
+$(SCI_LEX_OBJDIR)\LexMarkdown.obj: $(SCI_LEX)\LexMarkdown.cxx $(LEX_HEADERS)
$(SCI_LEX_OBJDIR)\LexNsis.obj: $(SCI_LEX)\LexNsis.cxx $(LEX_HEADERS)
$(SCI_LEX_OBJDIR)\LexOthers.obj: $(SCI_LEX)\LexOthers.cxx $(LEX_HEADERS)
$(SCI_LEX_OBJDIR)\LexPascal.obj: $(SCI_LEX)\LexPascal.cxx $(LEX_HEADERS)
diff --git a/build/makefile.mak b/build/makefile.mak index 689b841..68b1a57 100644 --- a/build/makefile.mak +++ b/build/makefile.mak @@ -134,6 +134,7 @@ SCI_LEX_OBJ = \ $(SCI_LEX_OBJDIR)\LexHTML.obj \
$(SCI_LEX_OBJDIR)\LexInno.obj \
$(SCI_LEX_OBJDIR)\LexLua.obj \
+ $(SCI_LEX_OBJDIR)\LexMarkdown.obj \
$(SCI_LEX_OBJDIR)\LexNsis.obj \
$(SCI_LEX_OBJDIR)\LexOthers.obj \
$(SCI_LEX_OBJDIR)\LexPascal.obj \
@@ -20,6 +20,7 @@ "lmLatex",
"lmLua",
"lmMake",
+ "lmMarkdown",
"lmNsis",
"lmNull",
"lmPascal",
diff --git a/scintilla/src/Catalogue.cxx b/scintilla/src/Catalogue.cxx index ea5c600..87ca299 100644 --- a/scintilla/src/Catalogue.cxx +++ b/scintilla/src/Catalogue.cxx @@ -134,7 +134,7 @@ int Scintilla_LinkLexers() { LINK_LEXER(lmLua);
//LINK_LEXER(lmMagikSF);
LINK_LEXER(lmMake);
- //LINK_LEXER(lmMarkdown);
+ LINK_LEXER(lmMarkdown);
//LINK_LEXER(lmMatlab);
//LINK_LEXER(lmMETAPOST);
//LINK_LEXER(lmMMIXAL);
diff --git a/src/Notepad2.c b/src/Notepad2.c index 6a468e4..6e5dc42 100644 --- a/src/Notepad2.c +++ b/src/Notepad2.c @@ -2173,7 +2173,7 @@ void MsgInitMenu(HWND hwnd,WPARAM wParam,LPARAM lParam) !(i == SCLEX_NULL || i == SCLEX_VBSCRIPT || i == SCLEX_MAKEFILE || i == SCLEX_VB || i == SCLEX_ASM ||
i == SCLEX_SQL || i == SCLEX_PERL || i == SCLEX_PYTHON || i == SCLEX_PROPERTIES ||i == SCLEX_CONF ||
i == SCLEX_POWERSHELL || i == SCLEX_BATCH || i == SCLEX_DIFF || i == SCLEX_BASH || i == SCLEX_TCL ||
- i == SCLEX_AU3 || i == SCLEX_LATEX || i == SCLEX_AHK || i == SCLEX_RUBY || i == SCLEX_CMAKE));
+ i == SCLEX_AU3 || i == SCLEX_LATEX || i == SCLEX_AHK || i == SCLEX_RUBY || i == SCLEX_CMAKE || i == SCLEX_MARKDOWN));
EnableCmd(hmenu,IDM_EDIT_INSERT_ENCODING,*mEncoding[iEncoding].pszParseNames);
@@ -3381,6 +3381,7 @@ LRESULT MsgCommand(HWND hwnd,WPARAM wParam,LPARAM lParam) case SCLEX_NULL:
case SCLEX_CSS:
case SCLEX_DIFF:
+ case SCLEX_MARKDOWN:
break;
case SCLEX_HTML:
case SCLEX_XML:
@@ -3462,6 +3463,7 @@ LRESULT MsgCommand(HWND hwnd,WPARAM wParam,LPARAM lParam) case SCLEX_AHK:
case SCLEX_RUBY:
case SCLEX_CMAKE:
+ case SCLEX_MARKDOWN:
break;
case SCLEX_HTML:
case SCLEX_XML:
@@ -6230,7 +6232,7 @@ void ParseCommandLine() LocalFree(lpSchemeArg);
lpSchemeArg = NULL;
}
- iInitialLexer = 32;
+ iInitialLexer = 33;
flagLexerSpecified = 1;
break;
@@ -6239,7 +6241,7 @@ void ParseCommandLine() LocalFree(lpSchemeArg);
lpSchemeArg = NULL;
}
- iInitialLexer = 33;
+ iInitialLexer = 34;
flagLexerSpecified = 1;
break;
diff --git a/src/Notepad2.vcxproj b/src/Notepad2.vcxproj index 78ebe30..c3fcc74 100644 --- a/src/Notepad2.vcxproj +++ b/src/Notepad2.vcxproj @@ -194,6 +194,7 @@ <ClCompile Include="..\scintilla\lexers\LexHTML.cxx" />
<ClCompile Include="..\scintilla\lexers\LexInno.cxx" />
<ClCompile Include="..\scintilla\lexers\LexLua.cxx" />
+ <ClCompile Include="..\scintilla\lexers\LexMarkdown.cxx" />
<ClCompile Include="..\scintilla\lexers\LexNsis.cxx" />
<ClCompile Include="..\scintilla\lexers\LexOthers.cxx" />
<ClCompile Include="..\scintilla\lexers\LexPascal.cxx" />
diff --git a/src/Notepad2.vcxproj.filters b/src/Notepad2.vcxproj.filters index 32363d8..88a593e 100644 --- a/src/Notepad2.vcxproj.filters +++ b/src/Notepad2.vcxproj.filters @@ -87,6 +87,9 @@ <ClCompile Include="..\scintilla\lexers\LexLua.cxx">
<Filter>Scintilla\lexers</Filter>
</ClCompile>
+ <ClCompile Include="..\scintilla\lexers\LexMarkdown.cxx">
+ <Filter>Scintilla\lexers</Filter>
+ </ClCompile>
<ClCompile Include="..\scintilla\lexers\LexNsis.cxx">
<Filter>Scintilla\lexers</Filter>
</ClCompile>
diff --git a/src/Notepad2_VS2012.vcxproj b/src/Notepad2_VS2012.vcxproj index 0799093..e7c8af7 100644 --- a/src/Notepad2_VS2012.vcxproj +++ b/src/Notepad2_VS2012.vcxproj @@ -214,6 +214,7 @@ <ClCompile Include="..\scintilla\lexers\LexHTML.cxx" />
<ClCompile Include="..\scintilla\lexers\LexInno.cxx" />
<ClCompile Include="..\scintilla\lexers\LexLua.cxx" />
+ <ClCompile Include="..\scintilla\lexers\LexMarkdown.cxx" />
<ClCompile Include="..\scintilla\lexers\LexNsis.cxx" />
<ClCompile Include="..\scintilla\lexers\LexOthers.cxx" />
<ClCompile Include="..\scintilla\lexers\LexPascal.cxx" />
diff --git a/src/Notepad2_VS2012.vcxproj.filters b/src/Notepad2_VS2012.vcxproj.filters index 1c7d557..8d4a826 100644 --- a/src/Notepad2_VS2012.vcxproj.filters +++ b/src/Notepad2_VS2012.vcxproj.filters @@ -87,6 +87,9 @@ <ClCompile Include="..\scintilla\lexers\LexLua.cxx">
<Filter>Scintilla\lexers</Filter>
</ClCompile>
+ <ClCompile Include="..\scintilla\lexers\LexMarkdown.cxx">
+ <Filter>Scintilla\lexers</Filter>
+ </ClCompile>
<ClCompile Include="..\scintilla\lexers\LexNsis.cxx">
<Filter>Scintilla\lexers</Filter>
</ClCompile>
diff --git a/src/Notepad2_icl12.vcxproj b/src/Notepad2_icl12.vcxproj index 426a7f3..16f18b1 100644 --- a/src/Notepad2_icl12.vcxproj +++ b/src/Notepad2_icl12.vcxproj @@ -235,6 +235,7 @@ <ClCompile Include="..\scintilla\lexers\LexHTML.cxx" />
<ClCompile Include="..\scintilla\lexers\LexInno.cxx" />
<ClCompile Include="..\scintilla\lexers\LexLua.cxx" />
+ <ClCompile Include="..\scintilla\lexers\LexMarkdown.cxx" />
<ClCompile Include="..\scintilla\lexers\LexNsis.cxx" />
<ClCompile Include="..\scintilla\lexers\LexOthers.cxx" />
<ClCompile Include="..\scintilla\lexers\LexPascal.cxx" />
diff --git a/src/Notepad2_icl12.vcxproj.filters b/src/Notepad2_icl12.vcxproj.filters index 1c7d557..8d4a826 100644 --- a/src/Notepad2_icl12.vcxproj.filters +++ b/src/Notepad2_icl12.vcxproj.filters @@ -87,6 +87,9 @@ <ClCompile Include="..\scintilla\lexers\LexLua.cxx">
<Filter>Scintilla\lexers</Filter>
</ClCompile>
+ <ClCompile Include="..\scintilla\lexers\LexMarkdown.cxx">
+ <Filter>Scintilla\lexers</Filter>
+ </ClCompile>
<ClCompile Include="..\scintilla\lexers\LexNsis.cxx">
<Filter>Scintilla\lexers</Filter>
</ClCompile>
diff --git a/src/Styles.c b/src/Styles.c index c9fa493..60ee4a7 100644 --- a/src/Styles.c +++ b/src/Styles.c @@ -1789,6 +1789,40 @@ EDITLEXER lexAVS = { SCLEX_AVS, 63332, L"AviSynth Script", L"avs; avsi", L"", &K { -1, 00000, L"", L"", L"" } } };
+KEYWORDLIST KeyWords_MARKDOWN = {
+"",
+"",
+"",
+"",
+"",
+"", "", "", "" };
+
+
+EDITLEXER lexMARKDOWN = { SCLEX_MARKDOWN, 63336, L"Markdown", L"md; markdown; mdown; mkdn; mkd", L"", &KeyWords_MARKDOWN, {
+ { STYLE_DEFAULT, 63126, L"Default", L"", L"" },
+ //{ SCE_MARKDOWN_DEFAULT, L"Default", L"", L"" },
+ { SCE_MARKDOWN_LINE_BEGIN, 63337, L"Line Begin", L"", L"" },
+ { MULTI_STYLE(SCE_MARKDOWN_STRONG1,SCE_MARKDOWN_STRONG2,0,0), 63338, L"Strong", L"fore:#007F7F; bold", L"" },
+ { SCE_MARKDOWN_EM1, 63339, L"EM", L"fore:#00007F; bold", L"" },
+ { SCE_MARKDOWN_EM2, 63340, L"EM2", L"fore:#0080C0; bold", L"" },
+ { SCE_MARKDOWN_HEADER1, 63341, L"Header", L"fore:#007F7F", L"" },
+ { SCE_MARKDOWN_HEADER2, 63342, L"Header2", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_HEADER3, 63343, L"Header3", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_HEADER4, 63344, L"Header4", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_HEADER5, 63345, L"Header5", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_HEADER6, 63346, L"Header6", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_PRECHAR, 63347, L"Pre char", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_ULIST_ITEM, 63348, L"Ulist", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_OLIST_ITEM, 63349, L"Olist", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_BLOCKQUOTE, 63350, L"Block quote", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_STRIKEOUT, 63351, L"Strikeout", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_HRULE, 63352, L"HRULE", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_LINK, 63353, L"Link", L"fore:#00007F", L"" },
+ { MULTI_STYLE(SCE_MARKDOWN_CODE,SCE_MARKDOWN_CODE2,0,0), 63354, L"Code", L"fore:#00007F", L"" },
+ { SCE_MARKDOWN_CODEBK, 63355, L"Code Block", L"fore:#00007F", L"" },
+ { -1, 00000, L"", L"", L"" } } };
+
+
// This array holds all the lexers...
// Don't forget to change the number of the lexer for HTML and XML
// in Notepad2.c ParseCommandLine() if you change this array!
@@ -1812,6 +1846,7 @@ PEDITLEXER pLexArray[NUMLEXERS] = &lexJAVA,
&lexJS,
&lexMAK,
+ &lexMARKDOWN,
&lexLATEX,
&lexLUA,
&lexNSIS,
diff --git a/src/Styles.h b/src/Styles.h index e677911..24f9f6e 100644 --- a/src/Styles.h +++ b/src/Styles.h @@ -55,7 +55,7 @@ typedef struct _editlexer // Number of Lexers in pLexArray
-#define NUMLEXERS 34
+#define NUMLEXERS 35
void Style_Load();
|