diff --git a/conf/conf.d/eu_accel.lua b/conf/conf.d/eu_accel.lua index eb94fb19..eabe6283 100644 --- a/conf/conf.d/eu_accel.lua +++ b/conf/conf.d/eu_accel.lua @@ -112,6 +112,10 @@ function eu_accel.loadaccel() " {bit.bor(FVIRTKEY,FCONTROL), string.byte(\"G\"), IDM_SEARCH_GOTOLINE},\n", " {bit.bor(FVIRTKEY,FCONTROL), string.byte(\"B\"), IDM_SEARCH_MATCHING_BRACE},\n", " {bit.bor(FVIRTKEY,FCONTROL,FALT), string.byte(\"B\"), IDM_SEARCH_MATCHING_BRACE_SELECT},\n", + " {bit.bor(FVIRTKEY,FALT), VK_UP, IDM_SEARCH_NAVIGATE_PREV_HISTORY},\n", + " {bit.bor(FVIRTKEY,FALT), VK_DOWN, IDM_SEARCH_NAVIGATE_NEXT_HISTORY},\n", + " {bit.bor(FVIRTKEY,FALT), string.byte(\"0\"), IDM_SEARCH_NAVIGATE_CLEAR_HISTORY},\n", + " {bit.bor(FVIRTKEY,FALT), VK_NUMPAD0, IDM_SEARCH_NAVIGATE_CLEAR_HISTORY},\n", " {bit.bor(FVIRTKEY), VK_F9, IDM_SEARCH_TOGGLE_BOOKMARK},\n", " {bit.bor(FVIRTKEY,FCONTROL), VK_F9, IDM_SEARCH_REMOVE_ALL_BOOKMARKS},\n", " {bit.bor(FVIRTKEY,FCONTROL), VK_F2, IDM_SEARCH_GOTO_PREV_BOOKMARK},\n", @@ -202,7 +206,7 @@ function eu_accel.loadaccel() end local m_len = tonumber(#my_code) if (m_len ~= nil) then - if (m_len < 171) then + if (m_len < 174) then eu_core.euapi.eu_reset_accs_mask() end local m_accel = eu_core.ffi.new("ACCEL[?]", m_len, {}) diff --git a/conf/conf.d/eu_conf.lua b/conf/conf.d/eu_conf.lua index 3b55e272..600f5ffc 100644 --- a/conf/conf.d/eu_conf.lua +++ b/conf/conf.d/eu_conf.lua @@ -77,6 +77,7 @@ function eu_conf.loadconf() "window_statusbar_visiable = true\n" .. "line_number_visiable = true\n" .. "last_search_flags = 0x000044\n" .. + "history_mask = 44711\n" .. "white_space_visiable = false\n" .. "white_space_size = 2\n" .. "newline_visiable = false\n" .. @@ -183,6 +184,9 @@ function eu_conf.loadconf() if (process_customized == nil) then process_customized = {} end + if (history_mask == nil) then + history_mask = 44711 + end local m_config = eu_core.ffi.new("struct eu_config", { newfile_eols, newfile_encoding, @@ -194,6 +198,7 @@ function eu_conf.loadconf() window_statusbar_visiable, line_number_visiable, last_search_flags, + history_mask, white_space_visiable, white_space_size, newline_visiable, diff --git a/conf/conf.d/eu_core.lua b/conf/conf.d/eu_core.lua index 982735f6..a8972e2c 100644 --- a/conf/conf.d/eu_core.lua +++ b/conf/conf.d/eu_core.lua @@ -104,6 +104,7 @@ struct eu_config bool m_linenumber; uint32_t last_flags; + uint32_t history_mask; bool ws_visiable; int ws_size; bool newline_visialbe; @@ -201,12 +202,16 @@ struct styletheme struct styleclass cdata; struct styleclass phpsection; struct styleclass aspsection; + struct styleclass xmlsection; struct styleclass activetab; struct styleclass caret; struct styleclass symbolic; struct styleclass hyperlink; struct styleclass results; + struct styleclass bracesection; + struct styleclass nchistory; + struct styleclass dochistory; }; struct eu_theme diff --git a/conf/conf.d/eu_sci.lua b/conf/conf.d/eu_sci.lua index 3ec7a772..37f07114 100644 --- a/conf/conf.d/eu_sci.lua +++ b/conf/conf.d/eu_sci.lua @@ -3406,6 +3406,9 @@ IDM_SEARCH_GOTO_NEXT_BOOKMARK_INALL = 30302 IDM_SEARCH_NAVIGATE_PREV_THIS = 30303 IDM_SEARCH_NAVIGATE_PREV_INALL = 30304 IDM_SEARCH_SELECT_MATCHING_ALL = 44700 +IDM_SEARCH_NAVIGATE_NEXT_HISTORY = 44721 +IDM_SEARCH_NAVIGATE_PREV_HISTORY = 44722 +IDM_SEARCH_NAVIGATE_CLEAR_HISTORY = 44723 -- View IDM_VIEW_FILETREE = 30020 IDM_VIEW_SYMTREE = 30021 diff --git a/conf/conf.d/eu_theme.lua b/conf/conf.d/eu_theme.lua index 23af8709..8cd40bcb 100644 --- a/conf/conf.d/eu_theme.lua +++ b/conf/conf.d/eu_theme.lua @@ -5,7 +5,7 @@ require("eu_core") function eu_theme.get_default(name) local theme = nil if (name == "black") then - theme = -- 暗黑主题配置文件 + theme = -- 默认主题配置文件 "linenumber_font = \"Consolas\"\n" .. "linenumber_fontsize = 9\n" .. "linenumber_color = 0x00A0A0A0\n" .. @@ -126,6 +126,11 @@ function eu_theme.get_default(name) "aspsection_color = 0x00808080\n" .. "aspsection_bgcolor = 0x00000000\n" .. "aspsection_bold = 0\n" .. + "xmlsection_font = \"Consolas\"\n" .. + "xmlsection_fontsize = 11\n" .. + "xmlsection_color = 0x00C972C9\n" .. + "xmlsection_bgcolor = 0x00000000\n" .. + "xmlsection_bold = 1\n" .. "activetab_font = \"DEFAULT_GUI_FONT\"\n" .. "activetab_fontsize = 11\n" .. "activetab_color = 0\n" .. @@ -150,7 +155,22 @@ function eu_theme.get_default(name) "results_fontsize = 11\n" .. "results_color = 0x00FF8000\n" .. "results_bgcolor = 0x00C080FF\n" .. - "results_bold = 0" + "results_bold = 0\n" .. + "bracesection_font = \"Consolas\"\n" .. + "bracesection_fontsize = 11\n" .. + "bracesection_color = 0x000000FF\n" .. + "bracesection_bgcolor = 0x001E1E1E\n" .. + "bracesection_bold = 1\n" .. + "nchistory_font = \"Consolas\"\n" .. + "nchistory_fontsize = 11\n" .. + "nchistory_color = 0x000080FF\n" .. + "nchistory_bgcolor = 0x0000A000\n" .. + "nchistory_bold = 0\n" .. + "dochistory_font = \"Consolas\"\n" .. + "dochistory_fontsize = 11\n" .. + "dochistory_color = 0x000080FF\n" .. + "dochistory_bgcolor = 0x0000A000\n" .. + "dochistory_bold = 0" elseif (name == "white") then theme = -- 经典白主题配置文件 "linenumber_font = \"Consolas\"\n" .. @@ -273,6 +293,11 @@ function eu_theme.get_default(name) "aspsection_color = 0x00C0C0C0\n" .. "aspsection_bgcolor = 0x00000000\n" .. "aspsection_bold = 0\n" .. + "xmlsection_font = \"Consolas\"\n" .. + "xmlsection_fontsize = 11\n" .. + "xmlsection_color = 0x00F651F6\n" .. + "xmlsection_bgcolor = 0x00000000\n" .. + "xmlsection_bold = 1\n" .. "activetab_font = \"DEFAULT_GUI_FONT\"\n" .. "activetab_fontsize = 11\n" .. "activetab_color = 0\n" .. @@ -297,9 +322,24 @@ function eu_theme.get_default(name) "results_fontsize = 11\n" .. "results_color = 0x00FF8000\n" .. "results_bgcolor = 0x00588609\n" .. - "results_bold = 0" + "results_bold = 0\n" .. + "bracesection_font = \"Consolas\"\n" .. + "bracesection_fontsize = 11\n" .. + "bracesection_color = 0x000000FF\n" .. + "bracesection_bgcolor = 0x00FFFFFF\n" .. + "bracesection_bold = 1\n" .. + "nchistory_font = \"Consolas\"\n" .. + "nchistory_fontsize = 11\n" .. + "nchistory_color = 0x000080FF\n" .. + "nchistory_bgcolor = 0x0000A000\n" .. + "nchistory_bold = 0\n" .. + "dochistory_font = \"Consolas\"\n" .. + "dochistory_fontsize = 11\n" .. + "dochistory_color = 0x000080FF\n" .. + "dochistory_bgcolor = 0x0000A000\n" .. + "dochistory_bold = 0" else - theme = -- 默认主题配置文件 + theme = -- dark主题配置文件 "linenumber_font = \"Consolas\"\n" .. "linenumber_fontsize = 9\n" .. "linenumber_color = 0x00FFFFFF\n" .. @@ -422,6 +462,11 @@ function eu_theme.get_default(name) "aspsection_color = 0x00808080\n" .. "aspsection_bgcolor = 0x00000000\n" .. "aspsection_bold = 0\n" .. + "xmlsection_font = \"Consolas\"\n" .. + "xmlsection_fontsize = 11\n" .. + "xmlsection_color = 0x00C972C9\n" .. + "xmlsection_bgcolor = 0x00000000\n" .. + "xmlsection_bold = 1\n" .. "activetab_font = \"DEFAULT_GUI_FONT\"\n" .. "activetab_fontsize = 11\n" .. "activetab_color = 0\n" .. @@ -446,7 +491,22 @@ function eu_theme.get_default(name) "results_fontsize = 11\n" .. "results_color = 0x000000B050\n" .. "results_bgcolor = 0x00A8CE93\n" .. - "results_bold = 0" + "results_bold = 0\n" .. + "bracesection_font = \"Consolas\"\n" .. + "bracesection_fontsize = 11\n" .. + "bracesection_color = 0x000000FF\n" .. + "bracesection_bgcolor = 0x00444444\n" .. + "bracesection_bold = 1\n" .. + "nchistory_font = \"Consolas\"\n" .. + "nchistory_fontsize = 11\n" .. + "nchistory_color = 0x000080FF\n" .. + "nchistory_bgcolor = 0x0000A000\n" .. + "nchistory_bold = 0\n" .. + "dochistory_font = \"Consolas\"\n" .. + "dochistory_fontsize = 11\n" .. + "dochistory_color = 0x000080FF\n" .. + "dochistory_bgcolor = 0x0000A000\n" .. + "dochistory_bold = 0" end return theme end @@ -493,6 +553,13 @@ function eu_theme.load_default(name) dofile(file) tname = name end + if (xmlsection_font == nil) then + xmlsection_font = "Consola" + xmlsection_fontsize = 11 + xmlsection_color = 0xC972C9 + xmlsection_bgcolor = 0x00000000 + xmlsection_bold = 1 + end if (results_font == nil) then results_font = "Consola" results_fontsize = 11 @@ -500,6 +567,27 @@ function eu_theme.load_default(name) results_bgcolor = number_color results_bold = 0 end + if (bracesection_font == nil) then + bracesection_font = "Consola" + bracesection_fontsize = 11 + bracesection_color = 0x000000FF + bracesection_bgcolor = text_bgcolor + bracesection_bold = 1 + end + if (nchistory_font == nil) then + nchistory_font = "Consola" + nchistory_fontsize = 11 + nchistory_color = 0x0080FF + nchistory_bgcolor = 0x00A000 + nchistory_bold = 0 + end + if (dochistory_font == nil) then + dochistory_font = "Consola" + dochistory_fontsize = 11 + dochistory_color = 0x0080FF + dochistory_bgcolor = 0x00A000 + dochistory_bold = 0 + end local m_file = eu_core.ffi.new('char[260]') eu_core.ffi.C._fullpath(m_file, file, 260) local m_theme = eu_core.ffi.new("struct eu_theme", {m_file, tname, @@ -528,11 +616,15 @@ function eu_theme.load_default(name) {cdata_font,cdata_fontsize,cdata_color,cdata_bgcolor,cdata_bold}, {phpsection_font,phpsection_fontsize,phpsection_color,phpsection_bgcolor,phpsection_bold}, {aspsection_font,aspsection_fontsize,aspsection_color,aspsection_bgcolor,aspsection_bold}, + {xmlsection_font,xmlsection_fontsize,xmlsection_color,xmlsection_bgcolor,xmlsection_bold}, {activetab_font,activetab_fontsize,activetab_color,activetab_bgcolor,activetab_bold}, {caret_font,caret_fontsize,caret_color,caret_bgcolor,caret_bold}, {symbolic_font,symbolic_fontsize,symbolic_color,symbolic_bgcolor,symbolic_bold}, {hyperlink_font,hyperlink_fontsize,hyperlink_color,hyperlink_bgcolor,hyperlink_bold}, - {results_font,results_fontsize,results_color,results_bgcolor,results_bold} + {results_font,results_fontsize,results_color,results_bgcolor,results_bold}, + {bracesection_font,bracesection_fontsize,bracesection_color,bracesection_bgcolor,bracesection_bold}, + {nchistory_font,nchistory_fontsize,nchistory_color,nchistory_bgcolor,nchistory_bold}, + {dochistory_font,dochistory_fontsize,dochistory_color,dochistory_bgcolor,dochistory_bold} } }) return eu_core.euapi.eu_theme_ptr(m_theme, true) diff --git a/locales/src/en-us.rc b/locales/src/en-us.rc index d9224bdb..08ca9647 100644 --- a/locales/src/en-us.rc +++ b/locales/src/en-us.rc @@ -211,6 +211,12 @@ BEGIN MENUITEM "Go To Matching Brace", IDM_SEARCH_MATCHING_BRACE MENUITEM "Select Chars Between &Matching Braces", IDM_SEARCH_MATCHING_BRACE_SELECT MENUITEM MF_SEPARATOR + POPUP "Change History", IDM_SEARCH_HISTORY_PLACEHOLDE + BEGIN + MENUITEM "Goto Next Change", IDM_SEARCH_NAVIGATE_NEXT_HISTORY + MENUITEM "Goto Previous Change", IDM_SEARCH_NAVIGATE_PREV_HISTORY + MENUITEM "&Clear Change History", IDM_SEARCH_NAVIGATE_CLEAR_HISTORY + END POPUP "Bookmark", IDM_EDIT_PLACEHOLDE13 BEGIN MENUITEM "Add/Delete Bookmark ", IDM_SEARCH_TOGGLE_BOOKMARK @@ -263,6 +269,13 @@ BEGIN MENUITEM "Line &Numbers", IDM_VIEW_LINENUMBER_VISIABLE MENUITEM "Show Bookmark", IDM_VIEW_BOOKMARK_VISIABLE MENUITEM "Show Fold Lines", IDM_SOURCE_BLOCKFOLD_VISIABLE + POPUP "Change History Marker", IDM_VIEW_HISTORY_PLACEHOLDE + BEGIN + MENUITEM "Do Not Show", IDM_VIEW_HISTORY_NONE + MENUITEM "Show In Margin Only", IDM_VIEW_HISTORY_MARGIN + MENUITEM "Show In Document Only", IDM_VIEW_HISTORY_DOCS + MENUITEM "Show In Both Above", IDM_VIEW_HISTORY_ALL + END MENUITEM MF_SEPARATOR MENUITEM "Show White Space", IDM_VIEW_WHITESPACE_VISIABLE MENUITEM "Show Wrap Symbol", IDM_VIEW_NEWLINE_VISIABLE @@ -641,7 +654,7 @@ FONT 9, "Microsoft Sans Serif", 400, 0, 0 PUSHBUTTON "Cancel", IDCANCEL, 195, 163, 50, 14, WS_TABSTOP, WS_EX_LEFT } -IDD_STYLETHEME_DIALOG DIALOGEX 0, 0, 543, 357 +IDD_STYLETHEME_DIALOG DIALOGEX 0, 0, 543, 395 STYLE DS_MODALFRAME | DS_SHELLFONT | WS_CAPTION | WS_POPUP | WS_SYSMENU CAPTION "Style Theme" FONT 8, "MS Shell Dlg", 400, 0, 1 @@ -680,7 +693,7 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 PUSHBUTTON "Font", IDC_SETFONT_COMMENTDOC_BTN, 113, 181, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_COMMENTDOC_BTN, 167, 181, 50, 14, 0, WS_EX_LEFT GROUPBOX "Mark Language", IDC_THEME_MARKUP_STATIC, 244, 5, 227, 201, 0, WS_EX_LEFT - CTEXT "tag", IDC_TAGS_STATIC, 255, 21, 94, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "tag", IDC_TAGS_STATIC, 255, 21, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "unknow_tag", IDC_UNKNOWTAGS_STATIC, 255, 39, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "property", IDC_ATTRIBUTES_STATIC, 255, 57, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "unknow_property", IDC_UNKNOWATTRIBUTES_STATIC, 255, 75, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT @@ -689,7 +702,7 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 CTEXT "CData", IDC_CDATA_STATIC, 255, 129, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "", IDC_PHPSECTION_STATIC, 255, 147, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "<% ...asp... %>", IDC_ASPSECTION_STATIC, 255, 165, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT - CTEXT "hyperlink", IDC_HYPERLINKSECTION_STATIC, 255, 182, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "", IDC_XMLSECTION_STATIC, 255, 182, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "Font", IDC_SETFONT_TAGS_BTN, 351, 19, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_TAGS_BTN, 405, 19, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "Font", IDC_SETFONT_UNKNOWTAGS_BTN, 351, 37, 50, 14, 0, WS_EX_LEFT @@ -708,9 +721,9 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_PHPSECTION_BTN, 405, 145, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "Font", IDC_SETFONT_ASPSECTION_BTN, 351, 163, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_ASPSECTION_BTN, 405, 163, 50, 14, 0, WS_EX_LEFT - PUSHBUTTON "Font", IDC_SETFONT_HYPERLINKSECTION_BTN, 351, 181, 50, 14, WS_DISABLED, WS_EX_LEFT - PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_HYPERLINKSECTION_BTN, 405, 181, 50, 14, 0, WS_EX_LEFT - GROUPBOX "Edit Area", IDC_THEME_EDIT_STATIC, 244, 211, 281, 128, 0, WS_EX_LEFT + PUSHBUTTON "Font", IDC_SETFONT_XMLSECTION_BTN, 351, 181, 50, 14, 0, WS_EX_LEFT + PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_XMLSECTION_BTN, 405, 181, 50, 14, 0, WS_EX_LEFT + GROUPBOX "Edit Area", IDC_THEME_EDIT_STATIC, 244, 211, 280, 167, 0, WS_EX_LEFT CTEXT "Text", IDC_TEXT_STATIC, 254, 226, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "All Fonts", IDC_SETFONT_TEXT_BTN, 350, 224, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_TEXT_BTN, 404, 224, 50, 14, 0, WS_EX_LEFT @@ -724,12 +737,12 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 CTEXT "Line Number", IDC_LINENUMBER_STATIC, 18, 226, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_LINENUMBER_BTN, 112, 224, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "BG Color", IDC_SETBGCOLOR_LINENUMBER_BTN, 167, 224, 50, 14, 0, WS_EX_LEFT - GROUPBOX "Margins", IDC_THEME_MARGIN_STATIC, 7, 211, 228, 128, 0, WS_EX_LEFT + GROUPBOX "Margins", IDC_THEME_MARGIN_STATIC, 7, 211, 228, 167, 0, WS_EX_LEFT CTEXT "Block Collapse", IDC_FOLDMARGIN_STATIC, 18, 245, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "BG Color", IDC_SETBGCOLOR_FOLDMARGIN_BTN, 167, 242, 50, 14, 0, WS_EX_LEFT CTEXT "Activate Tab", IDC_THEME_TAB_STATIC, 18, 264, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "BG Color", IDC_SETBGCOLOR_TAB_BTN, 167, 261, 50, 14, 0, WS_EX_LEFT - CTEXT "Symbolic Window", IDC_THEME_SYMBOLIC_STATIC, 18, 283, 91, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "Symbolic Window", IDC_THEME_SYMBOLIC_STATIC, 18, 283, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "Font", IDC_SETFONT_SYMBOLIC_BTN, 112, 281, 50, 14, 0, WS_EX_LEFT EDITTEXT IDC_THEME_CARTETLINE_EDT, 405, 244, 33, 12, NOT WS_BORDER, WS_EX_CLIENTEDGE CONTROL "", IDC_THEME_CARTETLINE_UDN, UPDOWN_CLASS, UDS_ALIGNRIGHT | UDS_ARROWKEYS | UDS_AUTOBUDDY | UDS_HOTTRACK | UDS_SETBUDDYINT, 427, 244, 12, 13, WS_EX_LEFT @@ -738,11 +751,23 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 EDITTEXT IDC_THEME_CARET_EDT, 405, 282, 33, 12, NOT WS_BORDER, WS_EX_CLIENTEDGE CONTROL "", IDC_THEME_CARET_UDN, UPDOWN_CLASS, UDS_ALIGNRIGHT | UDS_ARROWKEYS | UDS_AUTOBUDDY | UDS_HOTTRACK | UDS_SETBUDDYINT, 427, 282, 12, 13, WS_EX_LEFT PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_SYMBOLIC_BTN, 167, 281, 50, 14, 0, WS_EX_LEFT - CTEXT "Resulting Window Line", IDC_THEME_LINENO_STATIC, 18, 302, 91, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "Resulting Window Line", IDC_THEME_LINENO_STATIC, 18, 302, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_LINENO_BTN, 167, 300, 50, 14, 0, WS_EX_LEFT - CTEXT "Resulting Window Key", IDC_THEME_LINEKEY_STATIC, 18, 321, 91, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "Resulting Window Key", IDC_THEME_LINEKEY_STATIC, 18, 321, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_LINEKEY_BTN, 167, 319, 50, 14, 0, WS_EX_LEFT - LTEXT "Tips: More professional syntax highlighting can be completed by user script", IDC_THEME_TIPS_STC, 10, 343, 441, 10, SS_LEFT, WS_EX_LEFT + LTEXT "Tips: More professional syntax highlighting can be completed by user script", IDC_THEME_TIPS_STC, 4, 384, 441, 10, SS_LEFT, WS_EX_LEFT + CTEXT "hyperlink", IDC_HYPERLINKSECTION_STATIC, 254, 302, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_HYPERLINKSECTION_BTN, 459, 300, 50, 14, 0, WS_EX_LEFT + CTEXT "Change History Modify", IDC_THEME_HISTORY_STATIC, 18, 340, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_HISTORY_BTN, 167, 338, 50, 14, 0, WS_EX_LEFT + CTEXT "Change History Save", IDC_THEME_HISTORY2_STATIC, 18, 359, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_HISTORY2_BTN, 167, 357, 50, 14, 0, WS_EX_LEFT + CTEXT "Change History Modify", IDC_THEME_HISTORYDOC_STATIC, 254, 340, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_HISTORYDOC_BTN, 459, 338, 50, 14, 0, WS_EX_LEFT + CTEXT "Change History Save", IDC_THEME_HISTORYDOC2_STATIC, 254, 359, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "Colour", IDC_SETTEXTCOLOR_HISTORYDOC2_BTN, 459, 357, 50, 14, 0, WS_EX_LEFT + CTEXT "Matching Braces", IDC_BRACESECTION_STATIC, 254, 321, 95, 9, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "Colour", IDC_SETTEXTCOLORBRACESECTION_BTN, 459, 319, 50, 14, 0, WS_EX_LEFT } IDR_LBREAK_MENU MENUEX DISCARDABLE @@ -1334,7 +1359,8 @@ STRINGTABLE DISCARDABLE IDS_INDENT_TAB_SPACE "[%s] %zd line(s) are indented with space + tab characters\n" IDS_INDENT_PROPOSE "We recommend formatting the document using clang-format or the 'Edit->Convert' function" IDS_FAVORITE_ADD_TIPS "It's hard to tell when files in your favorites have the same alias, Are you sure you want to continue?" - IDS_UNDO_UNCLOSE_TIPS "The file has been converted to encoding or line breaks, you should save the file as soon as possible to avoid 'undo/redo' operations affecting the file state." + IDS_UNDO_UNCLOSE_TIPS "The file has been converted to encoding or line breaks, You should save the file as soon as possible to avoid 'undo/redo' operations affecting the file state." + IDS_HISTORY_CLEAR_UNDO "This operation will clear the undo history, Affecting 'Undo/Redo', Continue?" } ///////////////////////////////////////////////////////////////////////////// diff --git a/locales/src/zh-cn.rc b/locales/src/zh-cn.rc index 4508d6af..fd6b9573 100644 --- a/locales/src/zh-cn.rc +++ b/locales/src/zh-cn.rc @@ -211,6 +211,12 @@ BEGIN MENUITEM "转到匹配的括号", IDM_SEARCH_MATCHING_BRACE MENUITEM "选中匹配括号间的字符(&M)", IDM_SEARCH_MATCHING_BRACE_SELECT MENUITEM MF_SEPARATOR + POPUP "变更历史", IDM_SEARCH_HISTORY_PLACEHOLDE + BEGIN + MENUITEM "跳转到下一处变更标记", IDM_SEARCH_NAVIGATE_NEXT_HISTORY + MENUITEM "跳转到上一处变更标记", IDM_SEARCH_NAVIGATE_PREV_HISTORY + MENUITEM "清除本页面所有变更标记", IDM_SEARCH_NAVIGATE_CLEAR_HISTORY + END POPUP "书签", IDM_EDIT_PLACEHOLDE13 BEGIN MENUITEM "增加/删除书签", IDM_SEARCH_TOGGLE_BOOKMARK @@ -263,6 +269,13 @@ BEGIN MENUITEM "显示行号", IDM_VIEW_LINENUMBER_VISIABLE MENUITEM "显示书签", IDM_VIEW_BOOKMARK_VISIABLE MENUITEM "显示折叠线", IDM_SOURCE_BLOCKFOLD_VISIABLE + POPUP "变更记录标记", IDM_VIEW_HISTORY_PLACEHOLDE + BEGIN + MENUITEM "不显示", IDM_VIEW_HISTORY_NONE + MENUITEM "显示在页边区", IDM_VIEW_HISTORY_MARGIN + MENUITEM "显示在文档中", IDM_VIEW_HISTORY_DOCS + MENUITEM "在以上两者中显示", IDM_VIEW_HISTORY_ALL + END MENUITEM MF_SEPARATOR MENUITEM "显示白字符", IDM_VIEW_WHITESPACE_VISIABLE MENUITEM "显示换行符", IDM_VIEW_NEWLINE_VISIABLE @@ -641,7 +654,7 @@ FONT 9, "Microsoft Sans Serif", 400, 0, 0 PUSHBUTTON "取消", IDCANCEL, 195, 163, 50, 14, WS_TABSTOP, WS_EX_LEFT } -IDD_STYLETHEME_DIALOG DIALOGEX 0, 0, 543, 357 +IDD_STYLETHEME_DIALOG DIALOGEX 0, 0, 543, 395 STYLE DS_MODALFRAME | DS_SHELLFONT | WS_CAPTION | WS_POPUP | WS_SYSMENU CAPTION "风格主题" FONT 8, "MS Shell Dlg", 400, 0, 1 @@ -680,7 +693,7 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 PUSHBUTTON "字体", IDC_SETFONT_COMMENTDOC_BTN, 113, 181, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_COMMENTDOC_BTN, 167, 181, 50, 14, 0, WS_EX_LEFT GROUPBOX "标记语言", IDC_THEME_MARKUP_STATIC, 244, 5, 227, 201, 0, WS_EX_LEFT - CTEXT "tag", IDC_TAGS_STATIC, 255, 21, 94, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "tag", IDC_TAGS_STATIC, 255, 21, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "unknow_tag", IDC_UNKNOWTAGS_STATIC, 255, 39, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "property", IDC_ATTRIBUTES_STATIC, 255, 57, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "unknow_property", IDC_UNKNOWATTRIBUTES_STATIC, 255, 75, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT @@ -689,7 +702,7 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 CTEXT "CData", IDC_CDATA_STATIC, 255, 129, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "", IDC_PHPSECTION_STATIC, 255, 147, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT CTEXT "<% ...asp... %>", IDC_ASPSECTION_STATIC, 255, 165, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT - CTEXT "hyperlink", IDC_HYPERLINKSECTION_STATIC, 255, 182, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "", IDC_XMLSECTION_STATIC, 255, 182, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "字体", IDC_SETFONT_TAGS_BTN, 351, 19, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_TAGS_BTN, 405, 19, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "字体", IDC_SETFONT_UNKNOWTAGS_BTN, 351, 37, 50, 14, 0, WS_EX_LEFT @@ -708,9 +721,9 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_PHPSECTION_BTN, 405, 145, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "字体", IDC_SETFONT_ASPSECTION_BTN, 351, 163, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_ASPSECTION_BTN, 405, 163, 50, 14, 0, WS_EX_LEFT - PUSHBUTTON "字体", IDC_SETFONT_HYPERLINKSECTION_BTN, 351, 181, 50, 14, WS_DISABLED, WS_EX_LEFT - PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_HYPERLINKSECTION_BTN, 405, 181, 50, 14, 0, WS_EX_LEFT - GROUPBOX "编辑区", IDC_THEME_EDIT_STATIC, 244, 211, 281, 128, 0, WS_EX_LEFT + PUSHBUTTON "字体", IDC_SETFONT_XMLSECTION_BTN, 351, 181, 50, 14, 0, WS_EX_LEFT + PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_XMLSECTION_BTN, 405, 181, 50, 14, 0, WS_EX_LEFT + GROUPBOX "编辑区", IDC_THEME_EDIT_STATIC, 244, 211, 280, 167, 0, WS_EX_LEFT CTEXT "文本", IDC_TEXT_STATIC, 254, 226, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "所有字体", IDC_SETFONT_TEXT_BTN, 350, 224, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_TEXT_BTN, 404, 224, 50, 14, 0, WS_EX_LEFT @@ -724,12 +737,12 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 CTEXT "行号", IDC_LINENUMBER_STATIC, 18, 226, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_LINENUMBER_BTN, 112, 224, 50, 14, 0, WS_EX_LEFT PUSHBUTTON "背景色", IDC_SETBGCOLOR_LINENUMBER_BTN, 167, 224, 50, 14, 0, WS_EX_LEFT - GROUPBOX "页边区", IDC_THEME_MARGIN_STATIC, 7, 211, 228, 128, 0, WS_EX_LEFT + GROUPBOX "页边区", IDC_THEME_MARGIN_STATIC, 7, 211, 228, 167, 0, WS_EX_LEFT CTEXT "语句块折叠", IDC_FOLDMARGIN_STATIC, 18, 245, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "背景色", IDC_SETBGCOLOR_FOLDMARGIN_BTN, 167, 242, 50, 14, 0, WS_EX_LEFT CTEXT "激活标签页", IDC_THEME_TAB_STATIC, 18, 264, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "背景色", IDC_SETBGCOLOR_TAB_BTN, 167, 261, 50, 14, 0, WS_EX_LEFT - CTEXT "符号连接窗口", IDC_THEME_SYMBOLIC_STATIC, 18, 283, 91, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "符号连接窗口", IDC_THEME_SYMBOLIC_STATIC, 18, 283, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "字体", IDC_SETFONT_SYMBOLIC_BTN, 112, 281, 50, 14, 0, WS_EX_LEFT EDITTEXT IDC_THEME_CARTETLINE_EDT, 405, 244, 33, 12, NOT WS_BORDER, WS_EX_CLIENTEDGE CONTROL "", IDC_THEME_CARTETLINE_UDN, UPDOWN_CLASS, UDS_ALIGNRIGHT | UDS_ARROWKEYS | UDS_AUTOBUDDY | UDS_HOTTRACK | UDS_SETBUDDYINT, 427, 244, 12, 13, WS_EX_LEFT @@ -738,11 +751,23 @@ FONT 8, "MS Shell Dlg", 400, 0, 1 EDITTEXT IDC_THEME_CARET_EDT, 405, 282, 33, 12, NOT WS_BORDER, WS_EX_CLIENTEDGE CONTROL "", IDC_THEME_CARET_UDN, UPDOWN_CLASS, UDS_ALIGNRIGHT | UDS_ARROWKEYS | UDS_AUTOBUDDY | UDS_HOTTRACK | UDS_SETBUDDYINT, 427, 282, 12, 13, WS_EX_LEFT PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_SYMBOLIC_BTN, 167, 281, 50, 14, 0, WS_EX_LEFT - CTEXT "结果窗口行号", IDC_THEME_LINENO_STATIC, 18, 302, 91, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "结果窗口行号", IDC_THEME_LINENO_STATIC, 18, 302, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_LINENO_BTN, 167, 300, 50, 14, 0, WS_EX_LEFT - CTEXT "结果窗口关键字", IDC_THEME_LINEKEY_STATIC, 18, 321, 91, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + CTEXT "结果窗口关键字", IDC_THEME_LINEKEY_STATIC, 18, 321, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_LINEKEY_BTN, 167, 319, 50, 14, 0, WS_EX_LEFT - LTEXT "提示: 更专业的语法高亮设置可由用户脚本完成", IDC_THEME_TIPS_STC, 10, 343, 441, 10, SS_LEFT, WS_EX_LEFT + LTEXT "提示: 更专业的语法高亮设置可由用户脚本完成", IDC_THEME_TIPS_STC, 4, 384, 441, 10, SS_LEFT, WS_EX_LEFT + CTEXT "超链接", IDC_HYPERLINKSECTION_STATIC, 254, 302, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_HYPERLINKSECTION_BTN, 459, 300, 50, 14, 0, WS_EX_LEFT + CTEXT "变更历史修改标记", IDC_THEME_HISTORY_STATIC, 18, 340, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_HISTORY_BTN, 167, 338, 50, 14, 0, WS_EX_LEFT + CTEXT "变更历史保存标记", IDC_THEME_HISTORY2_STATIC, 18, 359, 93, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_HISTORY2_BTN, 167, 357, 50, 14, 0, WS_EX_LEFT + CTEXT "变更历史修改标记", IDC_THEME_HISTORYDOC_STATIC, 254, 340, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_HISTORYDOC_BTN, 459, 338, 50, 14, 0, WS_EX_LEFT + CTEXT "变更历史保存标记", IDC_THEME_HISTORYDOC2_STATIC, 254, 359, 95, 10, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "颜色", IDC_SETTEXTCOLOR_HISTORYDOC2_BTN, 459, 357, 50, 14, 0, WS_EX_LEFT + CTEXT "匹配的括号", IDC_BRACESECTION_STATIC, 254, 321, 95, 9, SS_CENTER | SS_CENTERIMAGE, WS_EX_LEFT + PUSHBUTTON "颜色", IDC_SETTEXTCOLORBRACESECTION_BTN, 459, 319, 50, 14, 0, WS_EX_LEFT } IDR_LBREAK_MENU MENUEX DISCARDABLE @@ -1333,6 +1358,7 @@ STRINGTABLE DISCARDABLE IDS_INDENT_PROPOSE "我们建议使用clang-format或者 '编辑->转换' 功能格式化文档" IDS_FAVORITE_ADD_TIPS "收藏夹内的文件具有相同的别名, 会难以分辨, 你确认继续吗?" IDS_UNDO_UNCLOSE_TIPS "文件曾执行过编码转换或换行符转换, 你应该尽快保存文件以免'撤销/重做'操作影响到文件状态" + IDS_HISTORY_CLEAR_UNDO "该操作将会清空撤销历史, 影响'撤销/重做', 是否继续?" } ///////////////////////////////////////////////////////////////////////////// diff --git a/plugins/pdfview/np_pdfviewer.c b/plugins/pdfview/np_pdfviewer.c index ed10fea5..4795af26 100644 --- a/plugins/pdfview/np_pdfviewer.c +++ b/plugins/pdfview/np_pdfviewer.c @@ -599,7 +599,7 @@ pdf_destroy(const NPP instance, nppsave **save) return NP_NO_ERROR; } -static void +static int pdf_savefile(const NPP instance) { if (instance) @@ -612,14 +612,17 @@ pdf_savefile(const NPP instance) if (hchild) { SendMessage(hchild, WM_COMMAND, IDM_SAVE_PLUGIN, 0); + return NP_NO_ERROR; } } } + return NP_NO_DATA; } -static void +static int pdf_savefileas(const NPP instance, const wchar_t *path) { + int ret = NP_NO_DATA; if (instance) { instance_data *data = (instance_data *)instance->pdata; @@ -638,6 +641,7 @@ pdf_savefileas(const NPP instance, const wchar_t *path) if (w) { SendMessage(hchild, WM_COMMAND, IDM_SAVEAS_PLUGIN, (LPARAM)remote_ptr); + ret = NP_NO_ERROR; } } if (remote_ptr) @@ -648,9 +652,11 @@ pdf_savefileas(const NPP instance, const wchar_t *path) else if (hchild) { PostMessage(hchild, WM_COMMAND, IDM_SAVEAS_PLUGIN, 0); + ret = NP_NO_ERROR; } } } + return ret; } static int diff --git a/share/changelog b/share/changelog index d23d27a9..c2d9720b 100644 --- a/share/changelog +++ b/share/changelog @@ -1,3 +1,11 @@ +4.0.4 2023-08-26 adonais + * 新增: 显示变更历史标记菜单选项 + * 新增: 搜索变更历史功能 + * 新增: 主题设置增加几种自定义颜色 + * 变更: Undo/Redo 容器污染时提示 + * 修复: Hex/Text切换时缩放不同步的问题(回归bug) + * 修复: SFTP 16进制下的状态问题 + 4.0.3 2023-08-21 adonais * 新增: 自定义运行菜单项 * 新增: 自定义运行命令支持表达式求值 diff --git a/src/3rdparty/luajit/COPYRIGHT b/src/3rdparty/luajit/COPYRIGHT index c74216c3..d7620314 100644 --- a/src/3rdparty/luajit/COPYRIGHT +++ b/src/3rdparty/luajit/COPYRIGHT @@ -1,7 +1,7 @@ =============================================================================== LuaJIT -- a Just-In-Time Compiler for Lua. https://luajit.org/ -Copyright (C) 2005-2022 Mike Pall. All rights reserved. +Copyright (C) 2005-2023 Mike Pall. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/src/3rdparty/luajit/Makefile b/src/3rdparty/luajit/Makefile index 87b805df..28fc7ebe 100644 --- a/src/3rdparty/luajit/Makefile +++ b/src/3rdparty/luajit/Makefile @@ -126,7 +126,15 @@ dirs: @if not exist "$(DIR_O)" mkdir "$(DIR_O)" && echo. Created $(DIR_O) @if not exist "$(DIR_O)\host" mkdir "$(DIR_O)\host" && echo. Created $(DIR_O)\host @if not exist "$(BIN_O)" mkdir "$(BIN_O)" && echo. Created $(BIN_O) - + +$(SRC)\luajit.h: $(MINILUA) $(SRC)\luajit_rolling.h + @if exist "$(SRC)\luajit.h" del /q "$(SRC)\luajit.h" + @if exist "$(SRC)\luajit_relver.txt" del /q "$(SRC)\luajit_relver.txt" + @git show -s --format=%%ct >$(SRC)\luajit_relver.txt + @cd src + ..\$(MINILUA) host\genversion.lua + @cd .. + $(MINILUA): $(MIN_OBJS) $(LD) $(LDFLAGS) -out:$@ $(MIN_OBJS) !IF "$(BITS)" == "64" @@ -135,7 +143,7 @@ $(MINILUA): $(MIN_OBJS) $(MINILUA) dynasm\dynasm.lua -LN -D WIN -D JIT -D FFI -o $(SRC)\host\buildvm_arch.h $(SRC)\vm_x86.dasc !ENDIF -$(BUILDVM): $(BUILDVM_OBJS) $(MINILUA) +$(BUILDVM): $(MINILUA) $(SRC)\luajit.h $(BUILDVM_OBJS) $(LD) $(LDFLAGS) -out:$@ $(BUILDVM_OBJS) $(BUILDVM) -m peobj -o $(DIR_O)\lj_vm.obj $(BUILDVM) -m bcdef -o $(SRC)\lj_bcdef.h $(ALL_LIB) @@ -157,9 +165,10 @@ clean: -del /q $(STATICLIB) 2>nul 1>nul -del /q $(OBJS) 2>nul 1>nul -del /q $(SRC)\host\buildvm_arch.h $(SRC)\lj_vm.obj $(SRC)\lj_bcdef.h $(SRC)\lj_ffdef.h $(SRC)\lj_libdef.h \ - $(SRC)\lj_recdef.h $(SRC)\lj_recdef.h $(SRC)\jit\vmdef.lua $(SRC)\lj_folddef.h - -rd /s/q $(DIR_O) 2>nul 1>nul - -rd /s/q $(BIN_O) 2>nul 1>nul + $(SRC)\lj_recdef.h $(SRC)\lj_recdef.h $(SRC)\jit\vmdef.lua $(SRC)\lj_folddef.h $(SRC)\luajit_relver.txt $(SRC)\luajit.h 2>nul 1>nul + -rd /s/q "$(DIR_O)" 2>nul 1>nul + -rd /s/q "$(BIN_O)" 2>nul 1>nul + -rd /s/q "$(BIND)\\lua" $(MIN_OBJS) : $(SRC)\host\minilua.c $(CC) $(CFLAGS) -Fd$(BIN_O)\minilua.pdb -Fo$(DIR_O)\ -c $(SRC)\host\minilua.c diff --git a/src/3rdparty/luajit/dynasm/dasm_arm.h b/src/3rdparty/luajit/dynasm/dasm_arm.h index 4570cd12..eaa94d9c 100644 --- a/src/3rdparty/luajit/dynasm/dasm_arm.h +++ b/src/3rdparty/luajit/dynasm/dasm_arm.h @@ -1,6 +1,6 @@ /* ** DynASM ARM encoding engine. -** Copyright (C) 2005-2022 Mike Pall. All rights reserved. +** Copyright (C) 2005-2023 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/src/3rdparty/luajit/dynasm/dasm_arm.lua b/src/3rdparty/luajit/dynasm/dasm_arm.lua index 3b4db86e..edb57536 100644 --- a/src/3rdparty/luajit/dynasm/dasm_arm.lua +++ b/src/3rdparty/luajit/dynasm/dasm_arm.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM ARM module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ diff --git a/src/3rdparty/luajit/dynasm/dasm_arm64.h b/src/3rdparty/luajit/dynasm/dasm_arm64.h index dffd64e8..1c541e5d 100644 --- a/src/3rdparty/luajit/dynasm/dasm_arm64.h +++ b/src/3rdparty/luajit/dynasm/dasm_arm64.h @@ -1,6 +1,6 @@ /* ** DynASM ARM64 encoding engine. -** Copyright (C) 2005-2022 Mike Pall. All rights reserved. +** Copyright (C) 2005-2023 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/src/3rdparty/luajit/dynasm/dasm_arm64.lua b/src/3rdparty/luajit/dynasm/dasm_arm64.lua index fee902d5..e69f8ef3 100644 --- a/src/3rdparty/luajit/dynasm/dasm_arm64.lua +++ b/src/3rdparty/luajit/dynasm/dasm_arm64.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM ARM64 module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ diff --git a/src/3rdparty/luajit/dynasm/dasm_mips.h b/src/3rdparty/luajit/dynasm/dasm_mips.h index 2273dba2..7800e933 100644 --- a/src/3rdparty/luajit/dynasm/dasm_mips.h +++ b/src/3rdparty/luajit/dynasm/dasm_mips.h @@ -1,6 +1,6 @@ /* ** DynASM MIPS encoding engine. -** Copyright (C) 2005-2022 Mike Pall. All rights reserved. +** Copyright (C) 2005-2023 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/src/3rdparty/luajit/dynasm/dasm_mips.lua b/src/3rdparty/luajit/dynasm/dasm_mips.lua index 6f893fe0..1c605b68 100644 --- a/src/3rdparty/luajit/dynasm/dasm_mips.lua +++ b/src/3rdparty/luajit/dynasm/dasm_mips.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM MIPS32/MIPS64 module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ diff --git a/src/3rdparty/luajit/dynasm/dasm_mips64.lua b/src/3rdparty/luajit/dynasm/dasm_mips64.lua index b4f8707d..c97d666b 100644 --- a/src/3rdparty/luajit/dynasm/dasm_mips64.lua +++ b/src/3rdparty/luajit/dynasm/dasm_mips64.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM MIPS64 module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ -- This module just sets 64 bit mode for the combined MIPS/MIPS64 module. diff --git a/src/3rdparty/luajit/dynasm/dasm_ppc.h b/src/3rdparty/luajit/dynasm/dasm_ppc.h index 14db019d..4c7d7289 100644 --- a/src/3rdparty/luajit/dynasm/dasm_ppc.h +++ b/src/3rdparty/luajit/dynasm/dasm_ppc.h @@ -1,6 +1,6 @@ /* ** DynASM PPC/PPC64 encoding engine. -** Copyright (C) 2005-2022 Mike Pall. All rights reserved. +** Copyright (C) 2005-2023 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/src/3rdparty/luajit/dynasm/dasm_ppc.lua b/src/3rdparty/luajit/dynasm/dasm_ppc.lua index 3624e882..d66ae4a0 100644 --- a/src/3rdparty/luajit/dynasm/dasm_ppc.lua +++ b/src/3rdparty/luajit/dynasm/dasm_ppc.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM PPC/PPC64 module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. -- -- Support for various extensions contributed by Caio Souza Oliveira. diff --git a/src/3rdparty/luajit/dynasm/dasm_proto.h b/src/3rdparty/luajit/dynasm/dasm_proto.h index d798554b..3f50f502 100644 --- a/src/3rdparty/luajit/dynasm/dasm_proto.h +++ b/src/3rdparty/luajit/dynasm/dasm_proto.h @@ -1,6 +1,6 @@ /* ** DynASM encoding engine prototypes. -** Copyright (C) 2005-2022 Mike Pall. All rights reserved. +** Copyright (C) 2005-2023 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/src/3rdparty/luajit/dynasm/dasm_x64.lua b/src/3rdparty/luajit/dynasm/dasm_x64.lua index 1779c5bf..72d9bb87 100644 --- a/src/3rdparty/luajit/dynasm/dasm_x64.lua +++ b/src/3rdparty/luajit/dynasm/dasm_x64.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM x64 module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ -- This module just sets 64 bit mode for the combined x86/x64 module. diff --git a/src/3rdparty/luajit/dynasm/dasm_x86.h b/src/3rdparty/luajit/dynasm/dasm_x86.h index ae5cb429..aded9990 100644 --- a/src/3rdparty/luajit/dynasm/dasm_x86.h +++ b/src/3rdparty/luajit/dynasm/dasm_x86.h @@ -1,6 +1,6 @@ /* ** DynASM x86 encoding engine. -** Copyright (C) 2005-2022 Mike Pall. All rights reserved. +** Copyright (C) 2005-2023 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/src/3rdparty/luajit/dynasm/dasm_x86.lua b/src/3rdparty/luajit/dynasm/dasm_x86.lua index b442cd0d..787163c0 100644 --- a/src/3rdparty/luajit/dynasm/dasm_x86.lua +++ b/src/3rdparty/luajit/dynasm/dasm_x86.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM x86/x64 module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ diff --git a/src/3rdparty/luajit/dynasm/dynasm.lua b/src/3rdparty/luajit/dynasm/dynasm.lua index 95251b93..5be75f7f 100644 --- a/src/3rdparty/luajit/dynasm/dynasm.lua +++ b/src/3rdparty/luajit/dynasm/dynasm.lua @@ -2,7 +2,7 @@ -- DynASM. A dynamic assembler for code generation engines. -- Originally designed and implemented for LuaJIT. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- See below for full copyright notice. ------------------------------------------------------------------------------ @@ -17,7 +17,7 @@ local _info = { url = "https://luajit.org/dynasm.html", license = "MIT", copyright = [[ -Copyright (C) 2005-2022 Mike Pall. All rights reserved. +Copyright (C) 2005-2023 Mike Pall. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the diff --git a/src/3rdparty/luajit/src/Makefile b/src/3rdparty/luajit/src/Makefile index f6d093bb..8c47a16b 100644 --- a/src/3rdparty/luajit/src/Makefile +++ b/src/3rdparty/luajit/src/Makefile @@ -7,12 +7,11 @@ # Also works with MinGW and Cygwin on Windows. # Please check msvcbuild.bat for building with MSVC on Windows. # -# Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +# Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ############################################################################## MAJVER= 2 MINVER= 1 -RELVER= 0 ABIVER= 5.1 NODOTABIVER= 51 @@ -323,13 +322,13 @@ ifeq (Darwin,$(TARGET_SYS)) TARGET_XCFLAGS+= -DLUAJIT_UNWIND_EXTERNAL TARGET_XSHLDFLAGS= -dynamiclib -single_module -undefined dynamic_lookup -fPIC TARGET_DYNXLDOPTS= - TARGET_XSHLDFLAGS+= -install_name $(TARGET_DYLIBPATH) -compatibility_version $(MAJVER).$(MINVER) -current_version $(MAJVER).$(MINVER).$(RELVER) + TARGET_XSHLDFLAGS+= -install_name $(TARGET_DYLIBPATH) -compatibility_version $(MAJVER).$(MINVER) -current_version $(MAJVER).$(MINVER).255 else ifeq (iOS,$(TARGET_SYS)) TARGET_STRIP+= -x TARGET_XSHLDFLAGS= -dynamiclib -single_module -undefined dynamic_lookup -fPIC TARGET_DYNXLDOPTS= - TARGET_XSHLDFLAGS+= -install_name $(TARGET_DYLIBPATH) -compatibility_version $(MAJVER).$(MINVER) -current_version $(MAJVER).$(MINVER).$(RELVER) + TARGET_XSHLDFLAGS+= -install_name $(TARGET_DYLIBPATH) -compatibility_version $(MAJVER).$(MINVER) -current_version $(MAJVER).$(MINVER).255 ifeq (arm64,$(TARGET_LJARCH)) TARGET_XCFLAGS+= -fno-omit-frame-pointer endif @@ -388,10 +387,11 @@ MINILUA_O= host/minilua.o MINILUA_LIBS= -lm MINILUA_T= host/minilua MINILUA_X= $(MINILUA_T) +MINILUA_DEP= ifeq (,$(HOST_LUA)) HOST_LUA= $(MINILUA_X) - DASM_DEP= $(MINILUA_T) + MINILUA_DEP= $(MINILUA_T) endif DASM_DIR= ../dynasm @@ -474,6 +474,10 @@ endif DASM_FLAGS= $(DASM_XFLAGS) $(DASM_AFLAGS) DASM_DASC= vm_$(DASM_ARCH).dasc +GIT= git +GIT_RELVER= [ -e ../.git ] && $(GIT) show -s --format=%ct >luajit_relver.txt 2>/dev/null || cat ../.relver >luajit_relver.txt 2>/dev/null || : +GIT_DEP= $(wildcard ../.git/HEAD ../.git/refs/heads/*) + BUILDVM_O= host/buildvm.o host/buildvm_asm.o host/buildvm_peobj.o \ host/buildvm_lib.o host/buildvm_fold.o BUILDVM_T= host/buildvm @@ -520,8 +524,8 @@ LUAJIT_T= luajit ALL_T= $(LUAJIT_T) $(LUAJIT_A) $(LUAJIT_SO) $(HOST_T) ALL_HDRGEN= lj_bcdef.h lj_ffdef.h lj_libdef.h lj_recdef.h lj_folddef.h \ - host/buildvm_arch.h -ALL_GEN= $(LJVM_S) $(ALL_HDRGEN) $(LIB_VMDEFP) + host/buildvm_arch.h luajit.h +ALL_GEN= $(LJVM_S) $(ALL_HDRGEN) luajit_relver.txt $(LIB_VMDEFP) WIN_RM= *.obj *.lib *.exp *.dll *.exe *.manifest *.pdb *.ilk ALL_RM= $(ALL_T) $(ALL_GEN) *.o host/*.o $(WIN_RM) @@ -645,7 +649,12 @@ $(MINILUA_T): $(MINILUA_O) $(E) "HOSTLINK $@" $(Q)$(HOST_CC) $(HOST_ALDFLAGS) -o $@ $(MINILUA_O) $(MINILUA_LIBS) $(HOST_ALIBS) -host/buildvm_arch.h: $(DASM_DASC) $(DASM_DEP) $(DASM_DIR)/*.lua lj_arch.h lua.h luaconf.h +luajit.h: $(MINILUA_DEP) $(GIT_DEP) luajit_rolling.h + $(E) "VERSION $@" + $(Q)$(GIT_RELVER) + $(Q)$(HOST_LUA) host/genversion.lua + +host/buildvm_arch.h: $(DASM_DASC) $(MINILUA_DEP) lj_arch.h lua.h luaconf.h $(E) "DYNASM $@" $(Q)$(DASM) $(DASM_FLAGS) -o $@ $(DASM_DASC) diff --git a/src/3rdparty/luajit/src/host/buildvm.c b/src/3rdparty/luajit/src/host/buildvm.c index 9ee47ada..ec99e501 100644 --- a/src/3rdparty/luajit/src/host/buildvm.c +++ b/src/3rdparty/luajit/src/host/buildvm.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** This is a tool to build the hand-tuned assembler code required for ** LuaJIT's bytecode interpreter. It supports a variety of output formats @@ -329,6 +329,7 @@ static void emit_vmdef(BuildCtx *ctx) #endif int i; fprintf(ctx->fp, "-- This is a generated file. DO NOT EDIT!\n\n"); + fprintf(ctx->fp, "assert(require(\"jit\").version == \"%s\", \"LuaJIT core/library version mismatch\")\n\n", LUAJIT_VERSION); fprintf(ctx->fp, "return {\n\n"); fprintf(ctx->fp, "bcnames = \""); diff --git a/src/3rdparty/luajit/src/host/buildvm.h b/src/3rdparty/luajit/src/host/buildvm.h index 18cd8848..add8ee15 100644 --- a/src/3rdparty/luajit/src/host/buildvm.h +++ b/src/3rdparty/luajit/src/host/buildvm.h @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _BUILDVM_H diff --git a/src/3rdparty/luajit/src/host/buildvm_asm.c b/src/3rdparty/luajit/src/host/buildvm_asm.c index 54e92cab..e7c5de70 100644 --- a/src/3rdparty/luajit/src/host/buildvm_asm.c +++ b/src/3rdparty/luajit/src/host/buildvm_asm.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder: Assembler source code emitter. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "buildvm.h" diff --git a/src/3rdparty/luajit/src/host/buildvm_fold.c b/src/3rdparty/luajit/src/host/buildvm_fold.c index edb55768..cc392e93 100644 --- a/src/3rdparty/luajit/src/host/buildvm_fold.c +++ b/src/3rdparty/luajit/src/host/buildvm_fold.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder: IR folding hash table generator. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "buildvm.h" diff --git a/src/3rdparty/luajit/src/host/buildvm_lib.c b/src/3rdparty/luajit/src/host/buildvm_lib.c index ffc1b2ca..99d12a27 100644 --- a/src/3rdparty/luajit/src/host/buildvm_lib.c +++ b/src/3rdparty/luajit/src/host/buildvm_lib.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder: library definition compiler. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "buildvm.h" diff --git a/src/3rdparty/luajit/src/host/buildvm_peobj.c b/src/3rdparty/luajit/src/host/buildvm_peobj.c index b030f234..5bca6df8 100644 --- a/src/3rdparty/luajit/src/host/buildvm_peobj.c +++ b/src/3rdparty/luajit/src/host/buildvm_peobj.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder: PE object emitter. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Only used for building on Windows, since we cannot assume the presence ** of a suitable assembler. The host and target byte order must match. diff --git a/src/3rdparty/luajit/src/host/genlibbc.lua b/src/3rdparty/luajit/src/host/genlibbc.lua index ba18812c..3621c3f5 100644 --- a/src/3rdparty/luajit/src/host/genlibbc.lua +++ b/src/3rdparty/luajit/src/host/genlibbc.lua @@ -2,7 +2,7 @@ -- Lua script to dump the bytecode of the library functions written in Lua. -- The resulting 'buildvm_libbc.h' is used for the build process of LuaJIT. ---------------------------------------------------------------------------- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- diff --git a/src/3rdparty/luajit/src/host/genminilua.lua b/src/3rdparty/luajit/src/host/genminilua.lua index e8e86c53..9a6414b8 100644 --- a/src/3rdparty/luajit/src/host/genminilua.lua +++ b/src/3rdparty/luajit/src/host/genminilua.lua @@ -2,7 +2,7 @@ -- Lua script to generate a customized, minified version of Lua. -- The resulting 'minilua' is used for the build process of LuaJIT. ---------------------------------------------------------------------------- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- diff --git a/src/3rdparty/luajit/src/host/genversion.lua b/src/3rdparty/luajit/src/host/genversion.lua new file mode 100644 index 00000000..a38cec56 --- /dev/null +++ b/src/3rdparty/luajit/src/host/genversion.lua @@ -0,0 +1,43 @@ +---------------------------------------------------------------------------- +-- Lua script to embed the rolling release version in luajit.h. +---------------------------------------------------------------------------- +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. +-- Released under the MIT license. See Copyright Notice in luajit.h +---------------------------------------------------------------------------- + +local FILE_INPUT_H = "luajit_rolling.h" +local FILE_INPUT_R = "luajit_relver.txt" +local FILE_OUTPUT_H = "luajit.h" + +local function file_read(file) + local fp = assert(io.open(file, "rb"), "run from the wrong directory") + local data = assert(fp:read("*a")) + fp:close() + return data +end + +local function file_write_mod(file, data) + local fp = io.open(file, "rb") + if fp then + local odata = assert(fp:read("*a")) + fp:close() + if odata == data then return end + end + fp = assert(io.open(file, "wb")) + assert(fp:write(data)) + assert(fp:close()) +end + +local text = file_read(FILE_INPUT_H) +local relver = file_read(FILE_INPUT_R):match("(%d+)") + +if relver then + text = text:gsub("ROLLING", relver) +else + io.stderr:write([[ +**** WARNING Cannot determine rolling release version from git log. +**** WARNING The 'git' command must be available during the build. +]]) +end + +file_write_mod(FILE_OUTPUT_H, text) diff --git a/src/3rdparty/luajit/src/jit/bc.lua b/src/3rdparty/luajit/src/jit/bc.lua index 8d0844c0..f1a63b9c 100644 --- a/src/3rdparty/luajit/src/jit/bc.lua +++ b/src/3rdparty/luajit/src/jit/bc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT bytecode listing module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -41,7 +41,6 @@ -- Cache some library functions and objects. local jit = require("jit") -assert(jit.version_num == 20100, "LuaJIT core/library version mismatch") local jutil = require("jit.util") local vmdef = require("jit.vmdef") local bit = require("bit") diff --git a/src/3rdparty/luajit/src/jit/bcsave.lua b/src/3rdparty/luajit/src/jit/bcsave.lua index 90fe9daf..74699f3d 100644 --- a/src/3rdparty/luajit/src/jit/bcsave.lua +++ b/src/3rdparty/luajit/src/jit/bcsave.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT module to save/list bytecode. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -11,7 +11,7 @@ ------------------------------------------------------------------------------ local jit = require("jit") -assert(jit.version_num == 20100, "LuaJIT core/library version mismatch") +assert(jit.version_num == 20199, "LuaJIT core/library version mismatch") local bit = require("bit") -- Symbol name prefix for LuaJIT bytecode. diff --git a/src/3rdparty/luajit/src/jit/dis_arm.lua b/src/3rdparty/luajit/src/jit/dis_arm.lua index 18ab68df..a7546a45 100644 --- a/src/3rdparty/luajit/src/jit/dis_arm.lua +++ b/src/3rdparty/luajit/src/jit/dis_arm.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM disassembler module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/src/3rdparty/luajit/src/jit/dis_arm64.lua b/src/3rdparty/luajit/src/jit/dis_arm64.lua index 531584a1..b10e2fb1 100644 --- a/src/3rdparty/luajit/src/jit/dis_arm64.lua +++ b/src/3rdparty/luajit/src/jit/dis_arm64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64 disassembler module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h -- -- Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com. diff --git a/src/3rdparty/luajit/src/jit/dis_arm64be.lua b/src/3rdparty/luajit/src/jit/dis_arm64be.lua index 7337f5b7..f7a56352 100644 --- a/src/3rdparty/luajit/src/jit/dis_arm64be.lua +++ b/src/3rdparty/luajit/src/jit/dis_arm64be.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64BE disassembler wrapper module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- ARM64 instructions are always little-endian. So just forward to the diff --git a/src/3rdparty/luajit/src/jit/dis_mips.lua b/src/3rdparty/luajit/src/jit/dis_mips.lua index 05dc30fd..b0e99df4 100644 --- a/src/3rdparty/luajit/src/jit/dis_mips.lua +++ b/src/3rdparty/luajit/src/jit/dis_mips.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS disassembler module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/src/3rdparty/luajit/src/jit/dis_mips64.lua b/src/3rdparty/luajit/src/jit/dis_mips64.lua index 1236e524..5f3a4dab 100644 --- a/src/3rdparty/luajit/src/jit/dis_mips64.lua +++ b/src/3rdparty/luajit/src/jit/dis_mips64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64 disassembler wrapper module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the big-endian functions from the diff --git a/src/3rdparty/luajit/src/jit/dis_mips64el.lua b/src/3rdparty/luajit/src/jit/dis_mips64el.lua index 7c478d2d..ea513649 100644 --- a/src/3rdparty/luajit/src/jit/dis_mips64el.lua +++ b/src/3rdparty/luajit/src/jit/dis_mips64el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64EL disassembler wrapper module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/src/3rdparty/luajit/src/jit/dis_mips64r6.lua b/src/3rdparty/luajit/src/jit/dis_mips64r6.lua index c5789ce4..1d948411 100644 --- a/src/3rdparty/luajit/src/jit/dis_mips64r6.lua +++ b/src/3rdparty/luajit/src/jit/dis_mips64r6.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6 disassembler wrapper module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 big-endian functions from the diff --git a/src/3rdparty/luajit/src/jit/dis_mips64r6el.lua b/src/3rdparty/luajit/src/jit/dis_mips64r6el.lua index f67f6240..26592e17 100644 --- a/src/3rdparty/luajit/src/jit/dis_mips64r6el.lua +++ b/src/3rdparty/luajit/src/jit/dis_mips64r6el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6EL disassembler wrapper module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 little-endian functions from the diff --git a/src/3rdparty/luajit/src/jit/dis_mipsel.lua b/src/3rdparty/luajit/src/jit/dis_mipsel.lua index a4fa6c60..6906a779 100644 --- a/src/3rdparty/luajit/src/jit/dis_mipsel.lua +++ b/src/3rdparty/luajit/src/jit/dis_mipsel.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPSEL disassembler wrapper module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/src/3rdparty/luajit/src/jit/dis_ppc.lua b/src/3rdparty/luajit/src/jit/dis_ppc.lua index 8f65f25a..95c3da84 100644 --- a/src/3rdparty/luajit/src/jit/dis_ppc.lua +++ b/src/3rdparty/luajit/src/jit/dis_ppc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT PPC disassembler module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/src/3rdparty/luajit/src/jit/dis_x64.lua b/src/3rdparty/luajit/src/jit/dis_x64.lua index d076c6ae..eb21f044 100644 --- a/src/3rdparty/luajit/src/jit/dis_x64.lua +++ b/src/3rdparty/luajit/src/jit/dis_x64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x64 disassembler wrapper module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the 64 bit functions from the combined diff --git a/src/3rdparty/luajit/src/jit/dis_x86.lua b/src/3rdparty/luajit/src/jit/dis_x86.lua index 84492fff..40b8218e 100644 --- a/src/3rdparty/luajit/src/jit/dis_x86.lua +++ b/src/3rdparty/luajit/src/jit/dis_x86.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x86/x64 disassembler module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/src/3rdparty/luajit/src/jit/dump.lua b/src/3rdparty/luajit/src/jit/dump.lua index 18e7a4b7..746732f9 100644 --- a/src/3rdparty/luajit/src/jit/dump.lua +++ b/src/3rdparty/luajit/src/jit/dump.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT compiler dump module. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -55,7 +55,6 @@ -- Cache some library functions and objects. local jit = require("jit") -assert(jit.version_num == 20100, "LuaJIT core/library version mismatch") local jutil = require("jit.util") local vmdef = require("jit.vmdef") local funcinfo, funcbc = jutil.funcinfo, jutil.funcbc diff --git a/src/3rdparty/luajit/src/jit/p.lua b/src/3rdparty/luajit/src/jit/p.lua index f225c312..36f836c5 100644 --- a/src/3rdparty/luajit/src/jit/p.lua +++ b/src/3rdparty/luajit/src/jit/p.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -41,7 +41,6 @@ -- Cache some library functions and objects. local jit = require("jit") -assert(jit.version_num == 20100, "LuaJIT core/library version mismatch") local profile = require("jit.profile") local vmdef = require("jit.vmdef") local math = math diff --git a/src/3rdparty/luajit/src/jit/v.lua b/src/3rdparty/luajit/src/jit/v.lua index ac8b19db..8e91f494 100644 --- a/src/3rdparty/luajit/src/jit/v.lua +++ b/src/3rdparty/luajit/src/jit/v.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- Verbose mode of the LuaJIT compiler. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -59,7 +59,6 @@ -- Cache some library functions and objects. local jit = require("jit") -assert(jit.version_num == 20100, "LuaJIT core/library version mismatch") local jutil = require("jit.util") local vmdef = require("jit.vmdef") local funcinfo, traceinfo = jutil.funcinfo, jutil.traceinfo diff --git a/src/3rdparty/luajit/src/jit/zone.lua b/src/3rdparty/luajit/src/jit/zone.lua index 1308cb74..55dc76d3 100644 --- a/src/3rdparty/luajit/src/jit/zone.lua +++ b/src/3rdparty/luajit/src/jit/zone.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler zones. -- --- Copyright (C) 2005-2022 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2023 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/src/3rdparty/luajit/src/lib_aux.c b/src/3rdparty/luajit/src/lib_aux.c index 4222367d..7e81ac30 100644 --- a/src/3rdparty/luajit/src/lib_aux.c +++ b/src/3rdparty/luajit/src/lib_aux.c @@ -1,6 +1,6 @@ /* ** Auxiliary library for the Lua/C API. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major parts taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lib_base.c b/src/3rdparty/luajit/src/lib_base.c index c59d54a2..dd54b9f9 100644 --- a/src/3rdparty/luajit/src/lib_base.c +++ b/src/3rdparty/luajit/src/lib_base.c @@ -1,6 +1,6 @@ /* ** Base and coroutine library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2011 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lib_bit.c b/src/3rdparty/luajit/src/lib_bit.c index e08cd883..ce40e298 100644 --- a/src/3rdparty/luajit/src/lib_bit.c +++ b/src/3rdparty/luajit/src/lib_bit.c @@ -1,6 +1,6 @@ /* ** Bit manipulation library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lib_bit_c diff --git a/src/3rdparty/luajit/src/lib_buffer.c b/src/3rdparty/luajit/src/lib_buffer.c index d6ff1346..e4ec9d9d 100644 --- a/src/3rdparty/luajit/src/lib_buffer.c +++ b/src/3rdparty/luajit/src/lib_buffer.c @@ -1,6 +1,6 @@ /* ** Buffer library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lib_buffer_c diff --git a/src/3rdparty/luajit/src/lib_debug.c b/src/3rdparty/luajit/src/lib_debug.c index 3af7a353..2ad51a74 100644 --- a/src/3rdparty/luajit/src/lib_debug.c +++ b/src/3rdparty/luajit/src/lib_debug.c @@ -1,6 +1,6 @@ /* ** Debug library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lib_ffi.c b/src/3rdparty/luajit/src/lib_ffi.c index 3133cab2..6dee2e74 100644 --- a/src/3rdparty/luajit/src/lib_ffi.c +++ b/src/3rdparty/luajit/src/lib_ffi.c @@ -1,6 +1,6 @@ /* ** FFI library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lib_ffi_c diff --git a/src/3rdparty/luajit/src/lib_init.c b/src/3rdparty/luajit/src/lib_init.c index 35e06fe2..41299f55 100644 --- a/src/3rdparty/luajit/src/lib_init.c +++ b/src/3rdparty/luajit/src/lib_init.c @@ -1,6 +1,6 @@ /* ** Library initialization. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major parts taken verbatim from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lib_io.c b/src/3rdparty/luajit/src/lib_io.c index 6deb7c3c..2c7e4186 100644 --- a/src/3rdparty/luajit/src/lib_io.c +++ b/src/3rdparty/luajit/src/lib_io.c @@ -1,6 +1,6 @@ /* ** I/O library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2011 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lib_jit.c b/src/3rdparty/luajit/src/lib_jit.c index 2300f1da..c0294927 100644 --- a/src/3rdparty/luajit/src/lib_jit.c +++ b/src/3rdparty/luajit/src/lib_jit.c @@ -1,6 +1,6 @@ /* ** JIT library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lib_jit_c @@ -743,7 +743,7 @@ LUALIB_API int luaopen_jit(lua_State *L) #endif lua_pushliteral(L, LJ_OS_NAME); lua_pushliteral(L, LJ_ARCH_NAME); - lua_pushinteger(L, LUAJIT_VERSION_NUM); + lua_pushinteger(L, LUAJIT_VERSION_NUM); /* Deprecated. */ lua_pushliteral(L, LUAJIT_VERSION); LJ_LIB_REG(L, LUA_JITLIBNAME, jit); #if LJ_HASPROFILE diff --git a/src/3rdparty/luajit/src/lib_math.c b/src/3rdparty/luajit/src/lib_math.c index b677bbcd..4539f804 100644 --- a/src/3rdparty/luajit/src/lib_math.c +++ b/src/3rdparty/luajit/src/lib_math.c @@ -1,6 +1,6 @@ /* ** Math library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include diff --git a/src/3rdparty/luajit/src/lib_os.c b/src/3rdparty/luajit/src/lib_os.c index 9b9f7387..55f46304 100644 --- a/src/3rdparty/luajit/src/lib_os.c +++ b/src/3rdparty/luajit/src/lib_os.c @@ -1,6 +1,6 @@ /* ** OS library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lib_package.c b/src/3rdparty/luajit/src/lib_package.c index 773dba6b..49658498 100644 --- a/src/3rdparty/luajit/src/lib_package.c +++ b/src/3rdparty/luajit/src/lib_package.c @@ -1,6 +1,6 @@ /* ** Package library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2012 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lib_string.c b/src/3rdparty/luajit/src/lib_string.c index 79aeddfc..29bcb8fe 100644 --- a/src/3rdparty/luajit/src/lib_string.c +++ b/src/3rdparty/luajit/src/lib_string.c @@ -1,6 +1,6 @@ /* ** String library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lib_table.c b/src/3rdparty/luajit/src/lib_table.c index a723326a..97ba2847 100644 --- a/src/3rdparty/luajit/src/lib_table.c +++ b/src/3rdparty/luajit/src/lib_table.c @@ -1,6 +1,6 @@ /* ** Table library. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_api.c b/src/3rdparty/luajit/src/lj_api.c index e6b67478..386bcada 100644 --- a/src/3rdparty/luajit/src/lj_api.c +++ b/src/3rdparty/luajit/src/lj_api.c @@ -1,6 +1,6 @@ /* ** Public Lua/C API. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_arch.h b/src/3rdparty/luajit/src/lj_arch.h index 351ec524..915fd769 100644 --- a/src/3rdparty/luajit/src/lj_arch.h +++ b/src/3rdparty/luajit/src/lj_arch.h @@ -1,6 +1,6 @@ /* ** Target architecture selection. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_ARCH_H diff --git a/src/3rdparty/luajit/src/lj_asm.c b/src/3rdparty/luajit/src/lj_asm.c index 7ce2e5d2..71079b30 100644 --- a/src/3rdparty/luajit/src/lj_asm.c +++ b/src/3rdparty/luajit/src/lj_asm.c @@ -1,6 +1,6 @@ /* ** IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_asm_c diff --git a/src/3rdparty/luajit/src/lj_asm.h b/src/3rdparty/luajit/src/lj_asm.h index f0a4f2d0..5eb396b1 100644 --- a/src/3rdparty/luajit/src/lj_asm.h +++ b/src/3rdparty/luajit/src/lj_asm.h @@ -1,6 +1,6 @@ /* ** IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_ASM_H diff --git a/src/3rdparty/luajit/src/lj_asm_arm.h b/src/3rdparty/luajit/src/lj_asm_arm.h index a5ec9971..b3b1f096 100644 --- a/src/3rdparty/luajit/src/lj_asm_arm.h +++ b/src/3rdparty/luajit/src/lj_asm_arm.h @@ -1,6 +1,6 @@ /* ** ARM IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ /* -- Register allocator extensions --------------------------------------- */ diff --git a/src/3rdparty/luajit/src/lj_asm_arm64.h b/src/3rdparty/luajit/src/lj_asm_arm64.h index c537c514..34960d7c 100644 --- a/src/3rdparty/luajit/src/lj_asm_arm64.h +++ b/src/3rdparty/luajit/src/lj_asm_arm64.h @@ -1,6 +1,6 @@ /* ** ARM64 IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com. ** Sponsored by Cisco Systems, Inc. diff --git a/src/3rdparty/luajit/src/lj_asm_mips.h b/src/3rdparty/luajit/src/lj_asm_mips.h index 8824081e..b02da663 100644 --- a/src/3rdparty/luajit/src/lj_asm_mips.h +++ b/src/3rdparty/luajit/src/lj_asm_mips.h @@ -1,6 +1,6 @@ /* ** MIPS IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ /* -- Register allocator extensions --------------------------------------- */ diff --git a/src/3rdparty/luajit/src/lj_asm_ppc.h b/src/3rdparty/luajit/src/lj_asm_ppc.h index ccc3979c..6555312d 100644 --- a/src/3rdparty/luajit/src/lj_asm_ppc.h +++ b/src/3rdparty/luajit/src/lj_asm_ppc.h @@ -1,6 +1,6 @@ /* ** PPC IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ /* -- Register allocator extensions --------------------------------------- */ diff --git a/src/3rdparty/luajit/src/lj_asm_x86.h b/src/3rdparty/luajit/src/lj_asm_x86.h index 368811fd..9f779bf5 100644 --- a/src/3rdparty/luajit/src/lj_asm_x86.h +++ b/src/3rdparty/luajit/src/lj_asm_x86.h @@ -1,6 +1,6 @@ /* ** x86/x64 IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ /* -- Guard handling ------------------------------------------------------ */ diff --git a/src/3rdparty/luajit/src/lj_assert.c b/src/3rdparty/luajit/src/lj_assert.c index 4b713b2b..5c948b41 100644 --- a/src/3rdparty/luajit/src/lj_assert.c +++ b/src/3rdparty/luajit/src/lj_assert.c @@ -1,6 +1,6 @@ /* ** Internal assertions. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_assert_c diff --git a/src/3rdparty/luajit/src/lj_bc.c b/src/3rdparty/luajit/src/lj_bc.c index b692cb54..23ac76bc 100644 --- a/src/3rdparty/luajit/src/lj_bc.c +++ b/src/3rdparty/luajit/src/lj_bc.c @@ -1,6 +1,6 @@ /* ** Bytecode instruction modes. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_bc_c diff --git a/src/3rdparty/luajit/src/lj_bc.h b/src/3rdparty/luajit/src/lj_bc.h index 02356e5b..97e19a1b 100644 --- a/src/3rdparty/luajit/src/lj_bc.h +++ b/src/3rdparty/luajit/src/lj_bc.h @@ -1,6 +1,6 @@ /* ** Bytecode instruction format. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_BC_H diff --git a/src/3rdparty/luajit/src/lj_bcdump.h b/src/3rdparty/luajit/src/lj_bcdump.h index 69da16e9..6ba71e25 100644 --- a/src/3rdparty/luajit/src/lj_bcdump.h +++ b/src/3rdparty/luajit/src/lj_bcdump.h @@ -1,6 +1,6 @@ /* ** Bytecode dump definitions. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_BCDUMP_H diff --git a/src/3rdparty/luajit/src/lj_bcread.c b/src/3rdparty/luajit/src/lj_bcread.c index 2ce05707..c98c0d42 100644 --- a/src/3rdparty/luajit/src/lj_bcread.c +++ b/src/3rdparty/luajit/src/lj_bcread.c @@ -1,6 +1,6 @@ /* ** Bytecode reader. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_bcread_c diff --git a/src/3rdparty/luajit/src/lj_bcwrite.c b/src/3rdparty/luajit/src/lj_bcwrite.c index d3986ea4..dd969413 100644 --- a/src/3rdparty/luajit/src/lj_bcwrite.c +++ b/src/3rdparty/luajit/src/lj_bcwrite.c @@ -1,6 +1,6 @@ /* ** Bytecode writer. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_bcwrite_c diff --git a/src/3rdparty/luajit/src/lj_buf.c b/src/3rdparty/luajit/src/lj_buf.c index cf268af2..ae2ccd82 100644 --- a/src/3rdparty/luajit/src/lj_buf.c +++ b/src/3rdparty/luajit/src/lj_buf.c @@ -1,6 +1,6 @@ /* ** Buffer handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_buf_c diff --git a/src/3rdparty/luajit/src/lj_buf.h b/src/3rdparty/luajit/src/lj_buf.h index 76114201..744e5747 100644 --- a/src/3rdparty/luajit/src/lj_buf.h +++ b/src/3rdparty/luajit/src/lj_buf.h @@ -1,6 +1,6 @@ /* ** Buffer handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_BUF_H diff --git a/src/3rdparty/luajit/src/lj_carith.c b/src/3rdparty/luajit/src/lj_carith.c index 2e8504a9..df5f801e 100644 --- a/src/3rdparty/luajit/src/lj_carith.c +++ b/src/3rdparty/luajit/src/lj_carith.c @@ -1,6 +1,6 @@ /* ** C data arithmetic. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/src/3rdparty/luajit/src/lj_carith.h b/src/3rdparty/luajit/src/lj_carith.h index 9d6b1dc9..f124c27c 100644 --- a/src/3rdparty/luajit/src/lj_carith.h +++ b/src/3rdparty/luajit/src/lj_carith.h @@ -1,6 +1,6 @@ /* ** C data arithmetic. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CARITH_H diff --git a/src/3rdparty/luajit/src/lj_ccall.c b/src/3rdparty/luajit/src/lj_ccall.c index 25f54dee..04e306eb 100644 --- a/src/3rdparty/luajit/src/lj_ccall.c +++ b/src/3rdparty/luajit/src/lj_ccall.c @@ -1,6 +1,6 @@ /* ** FFI C call handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/src/3rdparty/luajit/src/lj_ccall.h b/src/3rdparty/luajit/src/lj_ccall.h index 0b3c5244..547415f7 100644 --- a/src/3rdparty/luajit/src/lj_ccall.h +++ b/src/3rdparty/luajit/src/lj_ccall.h @@ -1,6 +1,6 @@ /* ** FFI C call handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CCALL_H diff --git a/src/3rdparty/luajit/src/lj_ccallback.c b/src/3rdparty/luajit/src/lj_ccallback.c index 98e9e02b..17d26b52 100644 --- a/src/3rdparty/luajit/src/lj_ccallback.c +++ b/src/3rdparty/luajit/src/lj_ccallback.c @@ -1,6 +1,6 @@ /* ** FFI C callback handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/src/3rdparty/luajit/src/lj_ccallback.h b/src/3rdparty/luajit/src/lj_ccallback.h index 8a2c31df..ea7f67a8 100644 --- a/src/3rdparty/luajit/src/lj_ccallback.h +++ b/src/3rdparty/luajit/src/lj_ccallback.h @@ -1,6 +1,6 @@ /* ** FFI C callback handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CCALLBACK_H diff --git a/src/3rdparty/luajit/src/lj_cconv.c b/src/3rdparty/luajit/src/lj_cconv.c index 3bbfd3f1..419a8f45 100644 --- a/src/3rdparty/luajit/src/lj_cconv.c +++ b/src/3rdparty/luajit/src/lj_cconv.c @@ -1,6 +1,6 @@ /* ** C type conversions. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/src/3rdparty/luajit/src/lj_cconv.h b/src/3rdparty/luajit/src/lj_cconv.h index 45b0ca1e..9da2c33c 100644 --- a/src/3rdparty/luajit/src/lj_cconv.h +++ b/src/3rdparty/luajit/src/lj_cconv.h @@ -1,6 +1,6 @@ /* ** C type conversions. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CCONV_H diff --git a/src/3rdparty/luajit/src/lj_cdata.c b/src/3rdparty/luajit/src/lj_cdata.c index 01a74f5d..77d9730f 100644 --- a/src/3rdparty/luajit/src/lj_cdata.c +++ b/src/3rdparty/luajit/src/lj_cdata.c @@ -1,6 +1,6 @@ /* ** C data management. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/src/3rdparty/luajit/src/lj_cdata.h b/src/3rdparty/luajit/src/lj_cdata.h index de52e8aa..e6ab48ca 100644 --- a/src/3rdparty/luajit/src/lj_cdata.h +++ b/src/3rdparty/luajit/src/lj_cdata.h @@ -1,6 +1,6 @@ /* ** C data management. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CDATA_H diff --git a/src/3rdparty/luajit/src/lj_clib.c b/src/3rdparty/luajit/src/lj_clib.c index 9bfec272..8fd54e5b 100644 --- a/src/3rdparty/luajit/src/lj_clib.c +++ b/src/3rdparty/luajit/src/lj_clib.c @@ -1,6 +1,6 @@ /* ** FFI C library loader. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/src/3rdparty/luajit/src/lj_clib.h b/src/3rdparty/luajit/src/lj_clib.h index 4429486e..3a41a4d9 100644 --- a/src/3rdparty/luajit/src/lj_clib.h +++ b/src/3rdparty/luajit/src/lj_clib.h @@ -1,6 +1,6 @@ /* ** FFI C library loader. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CLIB_H diff --git a/src/3rdparty/luajit/src/lj_cparse.c b/src/3rdparty/luajit/src/lj_cparse.c index 126032d5..6c3bb2f9 100644 --- a/src/3rdparty/luajit/src/lj_cparse.c +++ b/src/3rdparty/luajit/src/lj_cparse.c @@ -1,6 +1,6 @@ /* ** C declaration parser. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/src/3rdparty/luajit/src/lj_cparse.h b/src/3rdparty/luajit/src/lj_cparse.h index c0f61edc..42f827a0 100644 --- a/src/3rdparty/luajit/src/lj_cparse.h +++ b/src/3rdparty/luajit/src/lj_cparse.h @@ -1,6 +1,6 @@ /* ** C declaration parser. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CPARSE_H diff --git a/src/3rdparty/luajit/src/lj_crecord.c b/src/3rdparty/luajit/src/lj_crecord.c index 9c9b6ccb..04bc895d 100644 --- a/src/3rdparty/luajit/src/lj_crecord.c +++ b/src/3rdparty/luajit/src/lj_crecord.c @@ -1,6 +1,6 @@ /* ** Trace recorder for C data operations. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_ffrecord_c diff --git a/src/3rdparty/luajit/src/lj_crecord.h b/src/3rdparty/luajit/src/lj_crecord.h index 2c8cf05c..32973cf4 100644 --- a/src/3rdparty/luajit/src/lj_crecord.h +++ b/src/3rdparty/luajit/src/lj_crecord.h @@ -1,6 +1,6 @@ /* ** Trace recorder for C data operations. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CRECORD_H diff --git a/src/3rdparty/luajit/src/lj_ctype.c b/src/3rdparty/luajit/src/lj_ctype.c index 73481e63..8a4a55f8 100644 --- a/src/3rdparty/luajit/src/lj_ctype.c +++ b/src/3rdparty/luajit/src/lj_ctype.c @@ -1,6 +1,6 @@ /* ** C type management. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/src/3rdparty/luajit/src/lj_ctype.h b/src/3rdparty/luajit/src/lj_ctype.h index 3dbcdbfb..45e7234e 100644 --- a/src/3rdparty/luajit/src/lj_ctype.h +++ b/src/3rdparty/luajit/src/lj_ctype.h @@ -1,6 +1,6 @@ /* ** C type management. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CTYPE_H diff --git a/src/3rdparty/luajit/src/lj_debug.c b/src/3rdparty/luajit/src/lj_debug.c index ca893153..fa189b6e 100644 --- a/src/3rdparty/luajit/src/lj_debug.c +++ b/src/3rdparty/luajit/src/lj_debug.c @@ -1,6 +1,6 @@ /* ** Debugging and introspection. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_debug_c diff --git a/src/3rdparty/luajit/src/lj_debug.h b/src/3rdparty/luajit/src/lj_debug.h index 28127ae9..33ac29bc 100644 --- a/src/3rdparty/luajit/src/lj_debug.h +++ b/src/3rdparty/luajit/src/lj_debug.h @@ -1,6 +1,6 @@ /* ** Debugging and introspection. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_DEBUG_H diff --git a/src/3rdparty/luajit/src/lj_def.h b/src/3rdparty/luajit/src/lj_def.h index b61297aa..88bc6336 100644 --- a/src/3rdparty/luajit/src/lj_def.h +++ b/src/3rdparty/luajit/src/lj_def.h @@ -1,6 +1,6 @@ /* ** LuaJIT common internal definitions. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_DEF_H diff --git a/src/3rdparty/luajit/src/lj_dispatch.c b/src/3rdparty/luajit/src/lj_dispatch.c index ded382aa..7b66be7e 100644 --- a/src/3rdparty/luajit/src/lj_dispatch.c +++ b/src/3rdparty/luajit/src/lj_dispatch.c @@ -1,6 +1,6 @@ /* ** Instruction dispatch handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_dispatch_c diff --git a/src/3rdparty/luajit/src/lj_dispatch.h b/src/3rdparty/luajit/src/lj_dispatch.h index 52762eea..774bc4dc 100644 --- a/src/3rdparty/luajit/src/lj_dispatch.h +++ b/src/3rdparty/luajit/src/lj_dispatch.h @@ -1,6 +1,6 @@ /* ** Instruction dispatch handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_DISPATCH_H diff --git a/src/3rdparty/luajit/src/lj_emit_arm.h b/src/3rdparty/luajit/src/lj_emit_arm.h index 0fd2aa05..5dcea839 100644 --- a/src/3rdparty/luajit/src/lj_emit_arm.h +++ b/src/3rdparty/luajit/src/lj_emit_arm.h @@ -1,6 +1,6 @@ /* ** ARM instruction emitter. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ /* -- Constant encoding --------------------------------------------------- */ diff --git a/src/3rdparty/luajit/src/lj_emit_arm64.h b/src/3rdparty/luajit/src/lj_emit_arm64.h index 65463a5e..52d010b8 100644 --- a/src/3rdparty/luajit/src/lj_emit_arm64.h +++ b/src/3rdparty/luajit/src/lj_emit_arm64.h @@ -1,6 +1,6 @@ /* ** ARM64 instruction emitter. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com. ** Sponsored by Cisco Systems, Inc. diff --git a/src/3rdparty/luajit/src/lj_emit_mips.h b/src/3rdparty/luajit/src/lj_emit_mips.h index 0cea5479..dda9092d 100644 --- a/src/3rdparty/luajit/src/lj_emit_mips.h +++ b/src/3rdparty/luajit/src/lj_emit_mips.h @@ -1,6 +1,6 @@ /* ** MIPS instruction emitter. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #if LJ_64 diff --git a/src/3rdparty/luajit/src/lj_emit_ppc.h b/src/3rdparty/luajit/src/lj_emit_ppc.h index 86760e78..c34dcbe2 100644 --- a/src/3rdparty/luajit/src/lj_emit_ppc.h +++ b/src/3rdparty/luajit/src/lj_emit_ppc.h @@ -1,6 +1,6 @@ /* ** PPC instruction emitter. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ /* -- Emit basic instructions --------------------------------------------- */ diff --git a/src/3rdparty/luajit/src/lj_emit_x86.h b/src/3rdparty/luajit/src/lj_emit_x86.h index 3d3beda3..d215402c 100644 --- a/src/3rdparty/luajit/src/lj_emit_x86.h +++ b/src/3rdparty/luajit/src/lj_emit_x86.h @@ -1,6 +1,6 @@ /* ** x86/x64 instruction emitter. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ /* -- Emit basic instructions --------------------------------------------- */ diff --git a/src/3rdparty/luajit/src/lj_err.c b/src/3rdparty/luajit/src/lj_err.c index a0a28692..6e50cbee 100644 --- a/src/3rdparty/luajit/src/lj_err.c +++ b/src/3rdparty/luajit/src/lj_err.c @@ -1,6 +1,6 @@ /* ** Error handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_err_c diff --git a/src/3rdparty/luajit/src/lj_err.h b/src/3rdparty/luajit/src/lj_err.h index bd4de9ae..8768fefd 100644 --- a/src/3rdparty/luajit/src/lj_err.h +++ b/src/3rdparty/luajit/src/lj_err.h @@ -1,6 +1,6 @@ /* ** Error handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_ERR_H diff --git a/src/3rdparty/luajit/src/lj_errmsg.h b/src/3rdparty/luajit/src/lj_errmsg.h index 2e5c776a..127c06da 100644 --- a/src/3rdparty/luajit/src/lj_errmsg.h +++ b/src/3rdparty/luajit/src/lj_errmsg.h @@ -1,6 +1,6 @@ /* ** VM error messages. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ /* This file may be included multiple times with different ERRDEF macros. */ diff --git a/src/3rdparty/luajit/src/lj_ff.h b/src/3rdparty/luajit/src/lj_ff.h index d00c32fc..34fb7437 100644 --- a/src/3rdparty/luajit/src/lj_ff.h +++ b/src/3rdparty/luajit/src/lj_ff.h @@ -1,6 +1,6 @@ /* ** Fast function IDs. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_FF_H diff --git a/src/3rdparty/luajit/src/lj_ffrecord.c b/src/3rdparty/luajit/src/lj_ffrecord.c index 022de1aa..8ebf4165 100644 --- a/src/3rdparty/luajit/src/lj_ffrecord.c +++ b/src/3rdparty/luajit/src/lj_ffrecord.c @@ -1,6 +1,6 @@ /* ** Fast function call recorder. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_ffrecord_c diff --git a/src/3rdparty/luajit/src/lj_ffrecord.h b/src/3rdparty/luajit/src/lj_ffrecord.h index 0acb8ed5..24e1d7ca 100644 --- a/src/3rdparty/luajit/src/lj_ffrecord.h +++ b/src/3rdparty/luajit/src/lj_ffrecord.h @@ -1,6 +1,6 @@ /* ** Fast function call recorder. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_FFRECORD_H diff --git a/src/3rdparty/luajit/src/lj_frame.h b/src/3rdparty/luajit/src/lj_frame.h index aa1dc11a..bb7dda63 100644 --- a/src/3rdparty/luajit/src/lj_frame.h +++ b/src/3rdparty/luajit/src/lj_frame.h @@ -1,6 +1,6 @@ /* ** Stack frames. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_FRAME_H diff --git a/src/3rdparty/luajit/src/lj_func.c b/src/3rdparty/luajit/src/lj_func.c index 9795a771..6a537649 100644 --- a/src/3rdparty/luajit/src/lj_func.c +++ b/src/3rdparty/luajit/src/lj_func.c @@ -1,6 +1,6 @@ /* ** Function handling (prototypes, functions and upvalues). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_func.h b/src/3rdparty/luajit/src/lj_func.h index 44df4deb..96994ebf 100644 --- a/src/3rdparty/luajit/src/lj_func.h +++ b/src/3rdparty/luajit/src/lj_func.h @@ -1,6 +1,6 @@ /* ** Function handling (prototypes, functions and upvalues). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_FUNC_H diff --git a/src/3rdparty/luajit/src/lj_gc.c b/src/3rdparty/luajit/src/lj_gc.c index 6c3187c3..c3a0c258 100644 --- a/src/3rdparty/luajit/src/lj_gc.c +++ b/src/3rdparty/luajit/src/lj_gc.c @@ -1,6 +1,6 @@ /* ** Garbage collector. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_gc.h b/src/3rdparty/luajit/src/lj_gc.h index 0df7dee6..3ed790ca 100644 --- a/src/3rdparty/luajit/src/lj_gc.h +++ b/src/3rdparty/luajit/src/lj_gc.h @@ -1,6 +1,6 @@ /* ** Garbage collector. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_GC_H diff --git a/src/3rdparty/luajit/src/lj_gdbjit.c b/src/3rdparty/luajit/src/lj_gdbjit.c index c50d0d4c..e8a66635 100644 --- a/src/3rdparty/luajit/src/lj_gdbjit.c +++ b/src/3rdparty/luajit/src/lj_gdbjit.c @@ -1,6 +1,6 @@ /* ** Client for the GDB JIT API. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_gdbjit_c diff --git a/src/3rdparty/luajit/src/lj_gdbjit.h b/src/3rdparty/luajit/src/lj_gdbjit.h index f531be61..3962a665 100644 --- a/src/3rdparty/luajit/src/lj_gdbjit.h +++ b/src/3rdparty/luajit/src/lj_gdbjit.h @@ -1,6 +1,6 @@ /* ** Client for the GDB JIT API. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_GDBJIT_H diff --git a/src/3rdparty/luajit/src/lj_ir.c b/src/3rdparty/luajit/src/lj_ir.c index 65901510..631b7cbc 100644 --- a/src/3rdparty/luajit/src/lj_ir.c +++ b/src/3rdparty/luajit/src/lj_ir.c @@ -1,6 +1,6 @@ /* ** SSA IR (Intermediate Representation) emitter. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_ir_c diff --git a/src/3rdparty/luajit/src/lj_ir.h b/src/3rdparty/luajit/src/lj_ir.h index ed492e93..b32bd095 100644 --- a/src/3rdparty/luajit/src/lj_ir.h +++ b/src/3rdparty/luajit/src/lj_ir.h @@ -1,6 +1,6 @@ /* ** SSA IR (Intermediate Representation) format. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_IR_H diff --git a/src/3rdparty/luajit/src/lj_ircall.h b/src/3rdparty/luajit/src/lj_ircall.h index 67fb58ae..569134e9 100644 --- a/src/3rdparty/luajit/src/lj_ircall.h +++ b/src/3rdparty/luajit/src/lj_ircall.h @@ -1,6 +1,6 @@ /* ** IR CALL* instruction definitions. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_IRCALL_H diff --git a/src/3rdparty/luajit/src/lj_iropt.h b/src/3rdparty/luajit/src/lj_iropt.h index d239f173..458a5511 100644 --- a/src/3rdparty/luajit/src/lj_iropt.h +++ b/src/3rdparty/luajit/src/lj_iropt.h @@ -1,6 +1,6 @@ /* ** Common header for IR emitter and optimizations. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_IROPT_H diff --git a/src/3rdparty/luajit/src/lj_jit.h b/src/3rdparty/luajit/src/lj_jit.h index 0fae60ad..19810639 100644 --- a/src/3rdparty/luajit/src/lj_jit.h +++ b/src/3rdparty/luajit/src/lj_jit.h @@ -1,6 +1,6 @@ /* ** Common definitions for the JIT compiler. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_JIT_H diff --git a/src/3rdparty/luajit/src/lj_lex.c b/src/3rdparty/luajit/src/lj_lex.c index 463a87ce..61b04c4b 100644 --- a/src/3rdparty/luajit/src/lj_lex.c +++ b/src/3rdparty/luajit/src/lj_lex.c @@ -1,6 +1,6 @@ /* ** Lexical analyzer. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_lex.h b/src/3rdparty/luajit/src/lj_lex.h index cb5b5769..e46fbd89 100644 --- a/src/3rdparty/luajit/src/lj_lex.h +++ b/src/3rdparty/luajit/src/lj_lex.h @@ -1,6 +1,6 @@ /* ** Lexical analyzer. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_LEX_H diff --git a/src/3rdparty/luajit/src/lj_lib.c b/src/3rdparty/luajit/src/lj_lib.c index 82a9e256..ebe0dc78 100644 --- a/src/3rdparty/luajit/src/lj_lib.c +++ b/src/3rdparty/luajit/src/lj_lib.c @@ -1,6 +1,6 @@ /* ** Library function support. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_lib_c diff --git a/src/3rdparty/luajit/src/lj_lib.h b/src/3rdparty/luajit/src/lj_lib.h index a18f52bf..6c3a1c83 100644 --- a/src/3rdparty/luajit/src/lj_lib.h +++ b/src/3rdparty/luajit/src/lj_lib.h @@ -1,6 +1,6 @@ /* ** Library function support. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_LIB_H diff --git a/src/3rdparty/luajit/src/lj_load.c b/src/3rdparty/luajit/src/lj_load.c index 2c2c5ecb..84a5cd6e 100644 --- a/src/3rdparty/luajit/src/lj_load.c +++ b/src/3rdparty/luajit/src/lj_load.c @@ -1,6 +1,6 @@ /* ** Load and dump code. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include diff --git a/src/3rdparty/luajit/src/lj_mcode.c b/src/3rdparty/luajit/src/lj_mcode.c index 163aada4..94767937 100644 --- a/src/3rdparty/luajit/src/lj_mcode.c +++ b/src/3rdparty/luajit/src/lj_mcode.c @@ -1,6 +1,6 @@ /* ** Machine code management. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_mcode_c diff --git a/src/3rdparty/luajit/src/lj_mcode.h b/src/3rdparty/luajit/src/lj_mcode.h index be35925f..b88be93e 100644 --- a/src/3rdparty/luajit/src/lj_mcode.h +++ b/src/3rdparty/luajit/src/lj_mcode.h @@ -1,6 +1,6 @@ /* ** Machine code management. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_MCODE_H diff --git a/src/3rdparty/luajit/src/lj_meta.c b/src/3rdparty/luajit/src/lj_meta.c index 5324c666..5940097e 100644 --- a/src/3rdparty/luajit/src/lj_meta.c +++ b/src/3rdparty/luajit/src/lj_meta.c @@ -1,6 +1,6 @@ /* ** Metamethod handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_meta.h b/src/3rdparty/luajit/src/lj_meta.h index 3a6eaac2..f067cf59 100644 --- a/src/3rdparty/luajit/src/lj_meta.h +++ b/src/3rdparty/luajit/src/lj_meta.h @@ -1,6 +1,6 @@ /* ** Metamethod handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_META_H diff --git a/src/3rdparty/luajit/src/lj_obj.c b/src/3rdparty/luajit/src/lj_obj.c index 65cbe1a1..cd4ca50a 100644 --- a/src/3rdparty/luajit/src/lj_obj.c +++ b/src/3rdparty/luajit/src/lj_obj.c @@ -1,6 +1,6 @@ /* ** Miscellaneous object handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_obj_c diff --git a/src/3rdparty/luajit/src/lj_obj.h b/src/3rdparty/luajit/src/lj_obj.h index 52c7bc03..2d4386e1 100644 --- a/src/3rdparty/luajit/src/lj_obj.h +++ b/src/3rdparty/luajit/src/lj_obj.h @@ -1,6 +1,6 @@ /* ** LuaJIT VM tags, values and objects. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_opt_dce.c b/src/3rdparty/luajit/src/lj_opt_dce.c index cff54a8b..c6c3e1bc 100644 --- a/src/3rdparty/luajit/src/lj_opt_dce.c +++ b/src/3rdparty/luajit/src/lj_opt_dce.c @@ -1,6 +1,6 @@ /* ** DCE: Dead Code Elimination. Pre-LOOP only -- ASM already performs DCE. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_dce_c diff --git a/src/3rdparty/luajit/src/lj_opt_fold.c b/src/3rdparty/luajit/src/lj_opt_fold.c index c8f5397d..48effb8a 100644 --- a/src/3rdparty/luajit/src/lj_opt_fold.c +++ b/src/3rdparty/luajit/src/lj_opt_fold.c @@ -2,7 +2,7 @@ ** FOLD: Constant Folding, Algebraic Simplifications and Reassociation. ** ABCelim: Array Bounds Check Elimination. ** CSE: Common-Subexpression Elimination. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_fold_c diff --git a/src/3rdparty/luajit/src/lj_opt_loop.c b/src/3rdparty/luajit/src/lj_opt_loop.c index ee3ee049..01c2b306 100644 --- a/src/3rdparty/luajit/src/lj_opt_loop.c +++ b/src/3rdparty/luajit/src/lj_opt_loop.c @@ -1,6 +1,6 @@ /* ** LOOP: Loop Optimizations. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_loop_c diff --git a/src/3rdparty/luajit/src/lj_opt_mem.c b/src/3rdparty/luajit/src/lj_opt_mem.c index 07dab0d9..351d958c 100644 --- a/src/3rdparty/luajit/src/lj_opt_mem.c +++ b/src/3rdparty/luajit/src/lj_opt_mem.c @@ -3,7 +3,7 @@ ** AA: Alias Analysis using high-level semantic disambiguation. ** FWD: Load Forwarding (L2L) + Store Forwarding (S2L). ** DSE: Dead-Store Elimination. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_mem_c diff --git a/src/3rdparty/luajit/src/lj_opt_narrow.c b/src/3rdparty/luajit/src/lj_opt_narrow.c index 586f1bc7..1172df2b 100644 --- a/src/3rdparty/luajit/src/lj_opt_narrow.c +++ b/src/3rdparty/luajit/src/lj_opt_narrow.c @@ -1,7 +1,7 @@ /* ** NARROW: Narrowing of numbers to integers (double to int32_t). ** STRIPOV: Stripping of overflow checks. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_narrow_c diff --git a/src/3rdparty/luajit/src/lj_opt_sink.c b/src/3rdparty/luajit/src/lj_opt_sink.c index 4b9008be..642ed750 100644 --- a/src/3rdparty/luajit/src/lj_opt_sink.c +++ b/src/3rdparty/luajit/src/lj_opt_sink.c @@ -1,6 +1,6 @@ /* ** SINK: Allocation Sinking and Store Sinking. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_sink_c diff --git a/src/3rdparty/luajit/src/lj_opt_split.c b/src/3rdparty/luajit/src/lj_opt_split.c index 506b9814..338a61a2 100644 --- a/src/3rdparty/luajit/src/lj_opt_split.c +++ b/src/3rdparty/luajit/src/lj_opt_split.c @@ -1,6 +1,6 @@ /* ** SPLIT: Split 64 bit IR instructions into 32 bit IR instructions. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_split_c diff --git a/src/3rdparty/luajit/src/lj_parse.c b/src/3rdparty/luajit/src/lj_parse.c index 6663dc6f..6319c272 100644 --- a/src/3rdparty/luajit/src/lj_parse.c +++ b/src/3rdparty/luajit/src/lj_parse.c @@ -1,6 +1,6 @@ /* ** Lua parser (source code -> bytecode). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_parse.h b/src/3rdparty/luajit/src/lj_parse.h index 4206f00e..503dba08 100644 --- a/src/3rdparty/luajit/src/lj_parse.h +++ b/src/3rdparty/luajit/src/lj_parse.h @@ -1,6 +1,6 @@ /* ** Lua parser (source code -> bytecode). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_PARSE_H diff --git a/src/3rdparty/luajit/src/lj_prng.c b/src/3rdparty/luajit/src/lj_prng.c index 01935e57..326b41e6 100644 --- a/src/3rdparty/luajit/src/lj_prng.c +++ b/src/3rdparty/luajit/src/lj_prng.c @@ -1,6 +1,6 @@ /* ** Pseudo-random number generation. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_prng_c diff --git a/src/3rdparty/luajit/src/lj_prng.h b/src/3rdparty/luajit/src/lj_prng.h index bdc958ab..3dd9dbc0 100644 --- a/src/3rdparty/luajit/src/lj_prng.h +++ b/src/3rdparty/luajit/src/lj_prng.h @@ -1,6 +1,6 @@ /* ** Pseudo-random number generation. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_PRNG_H diff --git a/src/3rdparty/luajit/src/lj_profile.c b/src/3rdparty/luajit/src/lj_profile.c index 4a13537d..8cefd5fb 100644 --- a/src/3rdparty/luajit/src/lj_profile.c +++ b/src/3rdparty/luajit/src/lj_profile.c @@ -1,6 +1,6 @@ /* ** Low-overhead profiling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_profile_c diff --git a/src/3rdparty/luajit/src/lj_profile.h b/src/3rdparty/luajit/src/lj_profile.h index 3969f8e8..68bb9a1f 100644 --- a/src/3rdparty/luajit/src/lj_profile.h +++ b/src/3rdparty/luajit/src/lj_profile.h @@ -1,6 +1,6 @@ /* ** Low-overhead profiling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_PROFILE_H diff --git a/src/3rdparty/luajit/src/lj_record.c b/src/3rdparty/luajit/src/lj_record.c index 3542e451..9d0021a6 100644 --- a/src/3rdparty/luajit/src/lj_record.c +++ b/src/3rdparty/luajit/src/lj_record.c @@ -1,6 +1,6 @@ /* ** Trace recorder (bytecode -> SSA IR). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_record_c diff --git a/src/3rdparty/luajit/src/lj_record.h b/src/3rdparty/luajit/src/lj_record.h index ab2f4c8d..61ccb395 100644 --- a/src/3rdparty/luajit/src/lj_record.h +++ b/src/3rdparty/luajit/src/lj_record.h @@ -1,6 +1,6 @@ /* ** Trace recorder (bytecode -> SSA IR). -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_RECORD_H diff --git a/src/3rdparty/luajit/src/lj_serialize.c b/src/3rdparty/luajit/src/lj_serialize.c index f7e51828..83881766 100644 --- a/src/3rdparty/luajit/src/lj_serialize.c +++ b/src/3rdparty/luajit/src/lj_serialize.c @@ -1,6 +1,6 @@ /* ** Object de/serialization. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_serialize_c diff --git a/src/3rdparty/luajit/src/lj_serialize.h b/src/3rdparty/luajit/src/lj_serialize.h index d3f4275a..da823573 100644 --- a/src/3rdparty/luajit/src/lj_serialize.h +++ b/src/3rdparty/luajit/src/lj_serialize.h @@ -1,6 +1,6 @@ /* ** Object de/serialization. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_SERIALIZE_H diff --git a/src/3rdparty/luajit/src/lj_snap.c b/src/3rdparty/luajit/src/lj_snap.c index 4140fdb7..877ce099 100644 --- a/src/3rdparty/luajit/src/lj_snap.c +++ b/src/3rdparty/luajit/src/lj_snap.c @@ -1,6 +1,6 @@ /* ** Snapshot handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_snap_c diff --git a/src/3rdparty/luajit/src/lj_snap.h b/src/3rdparty/luajit/src/lj_snap.h index b7dabed8..089d86bb 100644 --- a/src/3rdparty/luajit/src/lj_snap.h +++ b/src/3rdparty/luajit/src/lj_snap.h @@ -1,6 +1,6 @@ /* ** Snapshot handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_SNAP_H diff --git a/src/3rdparty/luajit/src/lj_state.c b/src/3rdparty/luajit/src/lj_state.c index 10f0fe12..b45a2043 100644 --- a/src/3rdparty/luajit/src/lj_state.c +++ b/src/3rdparty/luajit/src/lj_state.c @@ -1,6 +1,6 @@ /* ** State and stack handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_state.h b/src/3rdparty/luajit/src/lj_state.h index d22b7a6f..db67f03b 100644 --- a/src/3rdparty/luajit/src/lj_state.h +++ b/src/3rdparty/luajit/src/lj_state.h @@ -1,6 +1,6 @@ /* ** State and stack handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_STATE_H diff --git a/src/3rdparty/luajit/src/lj_str.c b/src/3rdparty/luajit/src/lj_str.c index a5282da6..cfdaec6f 100644 --- a/src/3rdparty/luajit/src/lj_str.c +++ b/src/3rdparty/luajit/src/lj_str.c @@ -1,6 +1,6 @@ /* ** String handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_str_c diff --git a/src/3rdparty/luajit/src/lj_str.h b/src/3rdparty/luajit/src/lj_str.h index 28edb5a5..2a5a8190 100644 --- a/src/3rdparty/luajit/src/lj_str.h +++ b/src/3rdparty/luajit/src/lj_str.h @@ -1,6 +1,6 @@ /* ** String handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_STR_H diff --git a/src/3rdparty/luajit/src/lj_strfmt.c b/src/3rdparty/luajit/src/lj_strfmt.c index 71ee9f62..909255db 100644 --- a/src/3rdparty/luajit/src/lj_strfmt.c +++ b/src/3rdparty/luajit/src/lj_strfmt.c @@ -1,6 +1,6 @@ /* ** String formatting. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include diff --git a/src/3rdparty/luajit/src/lj_strfmt.h b/src/3rdparty/luajit/src/lj_strfmt.h index a4529604..bd17896e 100644 --- a/src/3rdparty/luajit/src/lj_strfmt.h +++ b/src/3rdparty/luajit/src/lj_strfmt.h @@ -1,6 +1,6 @@ /* ** String formatting. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_STRFMT_H diff --git a/src/3rdparty/luajit/src/lj_strfmt_num.c b/src/3rdparty/luajit/src/lj_strfmt_num.c index 3c60695c..79ec0263 100644 --- a/src/3rdparty/luajit/src/lj_strfmt_num.c +++ b/src/3rdparty/luajit/src/lj_strfmt_num.c @@ -1,6 +1,6 @@ /* ** String formatting for floating-point numbers. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** Contributed by Peter Cawley. */ diff --git a/src/3rdparty/luajit/src/lj_strscan.c b/src/3rdparty/luajit/src/lj_strscan.c index 4ca848ec..9dbf477a 100644 --- a/src/3rdparty/luajit/src/lj_strscan.c +++ b/src/3rdparty/luajit/src/lj_strscan.c @@ -1,6 +1,6 @@ /* ** String scanning. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include diff --git a/src/3rdparty/luajit/src/lj_strscan.h b/src/3rdparty/luajit/src/lj_strscan.h index 8ed31542..a6047cf2 100644 --- a/src/3rdparty/luajit/src/lj_strscan.h +++ b/src/3rdparty/luajit/src/lj_strscan.h @@ -1,6 +1,6 @@ /* ** String scanning. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_STRSCAN_H diff --git a/src/3rdparty/luajit/src/lj_tab.c b/src/3rdparty/luajit/src/lj_tab.c index c3609b38..a9b02dcc 100644 --- a/src/3rdparty/luajit/src/lj_tab.c +++ b/src/3rdparty/luajit/src/lj_tab.c @@ -1,6 +1,6 @@ /* ** Table handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/lj_tab.h b/src/3rdparty/luajit/src/lj_tab.h index 2a3f76bf..cddc4765 100644 --- a/src/3rdparty/luajit/src/lj_tab.h +++ b/src/3rdparty/luajit/src/lj_tab.h @@ -1,6 +1,6 @@ /* ** Table handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TAB_H diff --git a/src/3rdparty/luajit/src/lj_target.h b/src/3rdparty/luajit/src/lj_target.h index 19716928..2f4d21c1 100644 --- a/src/3rdparty/luajit/src/lj_target.h +++ b/src/3rdparty/luajit/src/lj_target.h @@ -1,6 +1,6 @@ /* ** Definitions for target CPU. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_H diff --git a/src/3rdparty/luajit/src/lj_target_arm.h b/src/3rdparty/luajit/src/lj_target_arm.h index 48f487a5..7170fcab 100644 --- a/src/3rdparty/luajit/src/lj_target_arm.h +++ b/src/3rdparty/luajit/src/lj_target_arm.h @@ -1,6 +1,6 @@ /* ** Definitions for ARM CPUs. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_ARM_H diff --git a/src/3rdparty/luajit/src/lj_target_arm64.h b/src/3rdparty/luajit/src/lj_target_arm64.h index c9c6b80f..65a14307 100644 --- a/src/3rdparty/luajit/src/lj_target_arm64.h +++ b/src/3rdparty/luajit/src/lj_target_arm64.h @@ -1,6 +1,6 @@ /* ** Definitions for ARM64 CPUs. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_ARM64_H diff --git a/src/3rdparty/luajit/src/lj_target_mips.h b/src/3rdparty/luajit/src/lj_target_mips.h index da72d61a..a3353884 100644 --- a/src/3rdparty/luajit/src/lj_target_mips.h +++ b/src/3rdparty/luajit/src/lj_target_mips.h @@ -1,6 +1,6 @@ /* ** Definitions for MIPS CPUs. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_MIPS_H diff --git a/src/3rdparty/luajit/src/lj_target_ppc.h b/src/3rdparty/luajit/src/lj_target_ppc.h index bc9802a4..50620c50 100644 --- a/src/3rdparty/luajit/src/lj_target_ppc.h +++ b/src/3rdparty/luajit/src/lj_target_ppc.h @@ -1,6 +1,6 @@ /* ** Definitions for PPC CPUs. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_PPC_H diff --git a/src/3rdparty/luajit/src/lj_target_x86.h b/src/3rdparty/luajit/src/lj_target_x86.h index 69cb8ca5..7b8d62ad 100644 --- a/src/3rdparty/luajit/src/lj_target_x86.h +++ b/src/3rdparty/luajit/src/lj_target_x86.h @@ -1,6 +1,6 @@ /* ** Definitions for x86 and x64 CPUs. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_X86_H diff --git a/src/3rdparty/luajit/src/lj_trace.c b/src/3rdparty/luajit/src/lj_trace.c index e019a79f..f311d54b 100644 --- a/src/3rdparty/luajit/src/lj_trace.c +++ b/src/3rdparty/luajit/src/lj_trace.c @@ -1,6 +1,6 @@ /* ** Trace management. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_trace_c diff --git a/src/3rdparty/luajit/src/lj_trace.h b/src/3rdparty/luajit/src/lj_trace.h index 3d7f76f0..5dcd365e 100644 --- a/src/3rdparty/luajit/src/lj_trace.h +++ b/src/3rdparty/luajit/src/lj_trace.h @@ -1,6 +1,6 @@ /* ** Trace management. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TRACE_H diff --git a/src/3rdparty/luajit/src/lj_traceerr.h b/src/3rdparty/luajit/src/lj_traceerr.h index 8ed8ac82..19ce30ad 100644 --- a/src/3rdparty/luajit/src/lj_traceerr.h +++ b/src/3rdparty/luajit/src/lj_traceerr.h @@ -1,6 +1,6 @@ /* ** Trace compiler error messages. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ /* This file may be included multiple times with different TREDEF macros. */ diff --git a/src/3rdparty/luajit/src/lj_udata.c b/src/3rdparty/luajit/src/lj_udata.c index ee4a145d..7acd9e32 100644 --- a/src/3rdparty/luajit/src/lj_udata.c +++ b/src/3rdparty/luajit/src/lj_udata.c @@ -1,6 +1,6 @@ /* ** Userdata handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_udata_c diff --git a/src/3rdparty/luajit/src/lj_udata.h b/src/3rdparty/luajit/src/lj_udata.h index 503c9e30..143bf81d 100644 --- a/src/3rdparty/luajit/src/lj_udata.h +++ b/src/3rdparty/luajit/src/lj_udata.h @@ -1,6 +1,6 @@ /* ** Userdata handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_UDATA_H diff --git a/src/3rdparty/luajit/src/lj_vm.h b/src/3rdparty/luajit/src/lj_vm.h index c7095941..63d09439 100644 --- a/src/3rdparty/luajit/src/lj_vm.h +++ b/src/3rdparty/luajit/src/lj_vm.h @@ -1,6 +1,6 @@ /* ** Assembler VM interface definitions. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_VM_H diff --git a/src/3rdparty/luajit/src/lj_vmevent.c b/src/3rdparty/luajit/src/lj_vmevent.c index c8491d82..477ee79b 100644 --- a/src/3rdparty/luajit/src/lj_vmevent.c +++ b/src/3rdparty/luajit/src/lj_vmevent.c @@ -1,6 +1,6 @@ /* ** VM event handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #include diff --git a/src/3rdparty/luajit/src/lj_vmevent.h b/src/3rdparty/luajit/src/lj_vmevent.h index c08a26dc..d757a8b5 100644 --- a/src/3rdparty/luajit/src/lj_vmevent.h +++ b/src/3rdparty/luajit/src/lj_vmevent.h @@ -1,6 +1,6 @@ /* ** VM event handling. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_VMEVENT_H diff --git a/src/3rdparty/luajit/src/lj_vmmath.c b/src/3rdparty/luajit/src/lj_vmmath.c index 4fa79ae4..3351e72b 100644 --- a/src/3rdparty/luajit/src/lj_vmmath.c +++ b/src/3rdparty/luajit/src/lj_vmmath.c @@ -1,6 +1,6 @@ /* ** Math helper functions for assembler VM. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define lj_vmmath_c diff --git a/src/3rdparty/luajit/src/ljamalg.c b/src/3rdparty/luajit/src/ljamalg.c index cae8356c..f1dce6a3 100644 --- a/src/3rdparty/luajit/src/ljamalg.c +++ b/src/3rdparty/luajit/src/ljamalg.c @@ -1,6 +1,6 @@ /* ** LuaJIT core and libraries amalgamation. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #define ljamalg_c diff --git a/src/3rdparty/luajit/src/luaconf.h b/src/3rdparty/luajit/src/luaconf.h index e8790c1d..f47f0680 100644 --- a/src/3rdparty/luajit/src/luaconf.h +++ b/src/3rdparty/luajit/src/luaconf.h @@ -1,6 +1,6 @@ /* ** Configuration header. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef luaconf_h @@ -37,7 +37,7 @@ #endif #define LUA_LROOT "/usr/local" #define LUA_LUADIR "/lua/5.1/" -#define LUA_LJDIR "/luajit-2.1.0-beta3/" +#define LUA_LJDIR "/luajit-2.1/" #ifdef LUA_ROOT #define LUA_JROOT LUA_ROOT diff --git a/src/3rdparty/luajit/src/luajit.c b/src/3rdparty/luajit/src/luajit.c index 6dd64026..73e29d44 100644 --- a/src/3rdparty/luajit/src/luajit.c +++ b/src/3rdparty/luajit/src/luajit.c @@ -1,6 +1,6 @@ /* ** LuaJIT frontend. Runs commands, scripts, read-eval-print (REPL) etc. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/src/3rdparty/luajit/src/luajit.h b/src/3rdparty/luajit/src/luajit_rolling.h similarity index 90% rename from src/3rdparty/luajit/src/luajit.h rename to src/3rdparty/luajit/src/luajit_rolling.h index 31f1eb1f..e564477a 100644 --- a/src/3rdparty/luajit/src/luajit.h +++ b/src/3rdparty/luajit/src/luajit_rolling.h @@ -1,7 +1,7 @@ /* ** LuaJIT -- a Just-In-Time Compiler for Lua. https://luajit.org/ ** -** Copyright (C) 2005-2022 Mike Pall. All rights reserved. +** Copyright (C) 2005-2023 Mike Pall. All rights reserved. ** ** Permission is hereby granted, free of charge, to any person obtaining ** a copy of this software and associated documentation files (the @@ -30,10 +30,10 @@ #include "lua.h" -#define LUAJIT_VERSION "LuaJIT 2.1.0-beta3" -#define LUAJIT_VERSION_NUM 20100 /* Version 2.1.0 = 02.01.00. */ -#define LUAJIT_VERSION_SYM luaJIT_version_2_1_0_beta3 -#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2022 Mike Pall" +#define LUAJIT_VERSION "LuaJIT 2.1.ROLLING" +#define LUAJIT_VERSION_NUM 20199 /* Deprecated. */ +#define LUAJIT_VERSION_SYM luaJIT_version_2_1_ROLLING +#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2023 Mike Pall" #define LUAJIT_URL "https://luajit.org/" /* Modes for luaJIT_setmode. */ diff --git a/src/3rdparty/luajit/src/lualib.h b/src/3rdparty/luajit/src/lualib.h index 87748456..ea116eb1 100644 --- a/src/3rdparty/luajit/src/lualib.h +++ b/src/3rdparty/luajit/src/lualib.h @@ -1,6 +1,6 @@ /* ** Standard library header. -** Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LUALIB_H diff --git a/src/3rdparty/luajit/src/msvcbuild.bat b/src/3rdparty/luajit/src/msvcbuild.bat index d323d8d4..44d9e48b 100644 --- a/src/3rdparty/luajit/src/msvcbuild.bat +++ b/src/3rdparty/luajit/src/msvcbuild.bat @@ -1,5 +1,5 @@ @rem Script to build LuaJIT with MSVC. -@rem Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +@rem Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h @rem @rem Open a "Visual Studio Command Prompt" (either x86 or x64). @rem Then cd to this directory and run this script. Use the following @@ -51,6 +51,9 @@ if exist minilua.exe.manifest^ minilua %DASM% -LN %DASMFLAGS% -o host\buildvm_arch.h %DASC% @if errorlevel 1 goto :BAD +git show -s --format=%%ct >luajit_relver.txt +minilua host\genversion.lua + %LJCOMPILE% /I "." /I %DASMDIR% host\buildvm*.c @if errorlevel 1 goto :BAD %LJLINK% /out:buildvm.exe buildvm*.obj diff --git a/src/3rdparty/luajit/src/ps4build.bat b/src/3rdparty/luajit/src/ps4build.bat index 034e2c87..52a9e7d7 100644 --- a/src/3rdparty/luajit/src/ps4build.bat +++ b/src/3rdparty/luajit/src/ps4build.bat @@ -51,7 +51,11 @@ if exist minilua.exe.manifest^ minilua %DASM% -LN %DASMFLAGS% -o host\buildvm_arch.h %DASC% @if errorlevel 1 goto :BAD +git show -s --format=%%ct >luajit_relver.txt +minilua host\genversion.lua + %LJCOMPILE% /I "." /I %DASMDIR% %GC64% -DLUAJIT_TARGET=LUAJIT_ARCH_X64 -DLUAJIT_OS=LUAJIT_OS_OTHER -DLUAJIT_DISABLE_JIT -DLUAJIT_DISABLE_FFI -DLUAJIT_USE_SYSMALLOC -DLUAJIT_NO_UNWIND host\buildvm*.c + @if errorlevel 1 goto :BAD %LJLINK% /out:buildvm.exe buildvm*.obj @if errorlevel 1 goto :BAD diff --git a/src/3rdparty/luajit/src/psvitabuild.bat b/src/3rdparty/luajit/src/psvitabuild.bat index 2980e157..770dd80e 100644 --- a/src/3rdparty/luajit/src/psvitabuild.bat +++ b/src/3rdparty/luajit/src/psvitabuild.bat @@ -31,6 +31,9 @@ if exist minilua.exe.manifest^ minilua %DASM% -LN %DASMFLAGS% -o host\buildvm_arch.h vm_arm.dasc @if errorlevel 1 goto :BAD +git show -s --format=%%ct >luajit_relver.txt +minilua host\genversion.lua + %LJCOMPILE% /I "." /I %DASMDIR% -DLUAJIT_TARGET=LUAJIT_ARCH_ARM -DLUAJIT_OS=LUAJIT_OS_OTHER -DLUAJIT_DISABLE_JIT -DLUAJIT_DISABLE_FFI -DLJ_TARGET_PSVITA=1 host\buildvm*.c @if errorlevel 1 goto :BAD %LJLINK% /out:buildvm.exe buildvm*.obj diff --git a/src/3rdparty/luajit/src/vm_arm.dasc b/src/3rdparty/luajit/src/vm_arm.dasc index 4df4b488..4f0798e0 100644 --- a/src/3rdparty/luajit/src/vm_arm.dasc +++ b/src/3rdparty/luajit/src/vm_arm.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for ARM CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h | |.arch arm |.section code_op, code_sub diff --git a/src/3rdparty/luajit/src/vm_arm64.dasc b/src/3rdparty/luajit/src/vm_arm64.dasc index effb8d91..a7a9392c 100644 --- a/src/3rdparty/luajit/src/vm_arm64.dasc +++ b/src/3rdparty/luajit/src/vm_arm64.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for ARM64 CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h | |.arch arm64 |.section code_op, code_sub diff --git a/src/3rdparty/luajit/src/vm_mips.dasc b/src/3rdparty/luajit/src/vm_mips.dasc index bfdcfc1e..94a878b9 100644 --- a/src/3rdparty/luajit/src/vm_mips.dasc +++ b/src/3rdparty/luajit/src/vm_mips.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for MIPS CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h |// |// MIPS soft-float support contributed by Djordje Kovacevic and |// Stefan Pejic from RT-RK.com, sponsored by Cisco Systems, Inc. diff --git a/src/3rdparty/luajit/src/vm_mips64.dasc b/src/3rdparty/luajit/src/vm_mips64.dasc index 801087b3..f8e181ee 100644 --- a/src/3rdparty/luajit/src/vm_mips64.dasc +++ b/src/3rdparty/luajit/src/vm_mips64.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for MIPS64 CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h |// |// Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com. |// Sponsored by Cisco Systems, Inc. diff --git a/src/3rdparty/luajit/src/vm_ppc.dasc b/src/3rdparty/luajit/src/vm_ppc.dasc index 73d60ae4..73a70a00 100644 --- a/src/3rdparty/luajit/src/vm_ppc.dasc +++ b/src/3rdparty/luajit/src/vm_ppc.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for PowerPC 32 bit or 32on64 bit mode. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h | |.arch ppc |.section code_op, code_sub diff --git a/src/3rdparty/luajit/src/vm_x64.dasc b/src/3rdparty/luajit/src/vm_x64.dasc index 5983eeed..a8649b4e 100644 --- a/src/3rdparty/luajit/src/vm_x64.dasc +++ b/src/3rdparty/luajit/src/vm_x64.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for x64 CPUs in LJ_GC64 mode. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h | |.arch x64 |.section code_op, code_sub diff --git a/src/3rdparty/luajit/src/vm_x86.dasc b/src/3rdparty/luajit/src/vm_x86.dasc index f7847762..bda9d7d7 100644 --- a/src/3rdparty/luajit/src/vm_x86.dasc +++ b/src/3rdparty/luajit/src/vm_x86.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for x86 CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2022 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2023 Mike Pall. See Copyright Notice in luajit.h | |.if P64 |.arch x64 diff --git a/src/3rdparty/luajit/src/xb1build.bat b/src/3rdparty/luajit/src/xb1build.bat index 2eb68171..250138ad 100644 --- a/src/3rdparty/luajit/src/xb1build.bat +++ b/src/3rdparty/luajit/src/xb1build.bat @@ -31,6 +31,9 @@ if exist minilua.exe.manifest^ minilua %DASM% -LN %DASMFLAGS% -o host\buildvm_arch.h vm_x64.dasc @if errorlevel 1 goto :BAD +git show -s --format=%%ct >luajit_relver.txt +minilua host\genversion.lua + %LJCOMPILE% /I "." /I %DASMDIR% /D_DURANGO host\buildvm*.c @if errorlevel 1 goto :BAD %LJLINK% /out:buildvm.exe buildvm*.obj diff --git a/src/3rdparty/luajit/src/xedkbuild.bat b/src/3rdparty/luajit/src/xedkbuild.bat index 37322d03..b8fd0461 100644 --- a/src/3rdparty/luajit/src/xedkbuild.bat +++ b/src/3rdparty/luajit/src/xedkbuild.bat @@ -31,6 +31,9 @@ if exist minilua.exe.manifest^ minilua %DASM% -LN %DASMFLAGS% -o host\buildvm_arch.h vm_ppc.dasc @if errorlevel 1 goto :BAD +git show -s --format=%%ct >luajit_relver.txt +minilua host\genversion.lua + %LJCOMPILE% /I "." /I %DASMDIR% /D_XBOX_VER=200 /DLUAJIT_TARGET=LUAJIT_ARCH_PPC host\buildvm*.c @if errorlevel 1 goto :BAD %LJLINK% /out:buildvm.exe buildvm*.obj diff --git a/src/3rdparty/scintilla/src/lexers/LexBash.cxx b/src/3rdparty/scintilla/src/lexers/LexBash.cxx index 65daebef..7f99d0af 100644 --- a/src/3rdparty/scintilla/src/lexers/LexBash.cxx +++ b/src/3rdparty/scintilla/src/lexers/LexBash.cxx @@ -81,7 +81,7 @@ enum class QuoteStyle { String, // "" LString, // $"" HereDoc, // here document - Backtick, // ``, $`` + Backtick, // `` Parameter, // ${} Command, // $() CommandInside, // $() with styling inside @@ -184,6 +184,7 @@ struct OptionsBash { bool stylingInsideBackticks = false; bool stylingInsideParameter = false; bool stylingInsideHeredoc = false; + bool nestedBackticks = true; int commandSubstitution = static_cast(CommandSubstitution::Backtick); std::string specialParameter = BASH_SPECIAL_PARAMETER; @@ -234,6 +235,9 @@ struct OptionSetBash : public OptionSet { "1 highlighted inside. " "2 highlighted inside with extra scope tracking."); + DefineProperty("lexer.bash.nested.backticks", &OptionsBash::nestedBackticks, + "Set this property to 0 to disable nested backquoted command substitution."); + DefineProperty("lexer.bash.special.parameter", &OptionsBash::specialParameter, "Set shell (default is Bash) special parameters."); @@ -272,8 +276,10 @@ class QuoteStackCls { // Class to manage quote pairs that nest int Depth = 0; int State = SCE_SH_DEFAULT; bool lineContinuation = false; + bool nestedBackticks = false; CommandSubstitution commandSubstitution = CommandSubstitution::Backtick; int insideCommand = 0; + unsigned backtickLevel = 0; QuoteCls Current; QuoteCls Stack[BASH_QUOTE_STACK_MAX]; const CharacterSet &setParamStart; @@ -284,6 +290,9 @@ class QuoteStackCls { // Class to manage quote pairs that nest void Start(int u, QuoteStyle s, int outer, CmdState state) noexcept { if (Empty()) { Current.Start(u, s, outer, state); + if (s == QuoteStyle::Backtick) { + ++backtickLevel; + } } else { Push(u, s, outer, state); } @@ -295,13 +304,19 @@ class QuoteStackCls { // Class to manage quote pairs that nest Stack[Depth] = Current; Depth++; Current.Start(u, s, outer, state); + if (s == QuoteStyle::Backtick) { + ++backtickLevel; + } } void Pop() noexcept { if (Depth == 0) { Clear(); return; } - if (insideCommand != 0) { + if (backtickLevel != 0 && Current.Style == QuoteStyle::Backtick) { + --backtickLevel; + } + if (insideCommand != 0 && Current.Style == QuoteStyle::CommandInside) { insideCommand = 0; for (int i = 0; i < Depth; i++) { if (Stack[i].Style == QuoteStyle::CommandInside) { @@ -317,6 +332,7 @@ class QuoteStackCls { // Class to manage quote pairs that nest Depth = 0; State = SCE_SH_DEFAULT; insideCommand = 0; + backtickLevel = 0; Current.Clear(); } bool CountDown(StyleContext &sc, CmdState &cmdState) { @@ -372,9 +388,6 @@ class QuoteStackCls { // Class to manage quote pairs that nest // optimized to avoid track nested delimiter pairs style = QuoteStyle::Literal; } - } else if (sc.ch == '`') { // $` seen in a configure script, valid? - style = QuoteStyle::Backtick; - sc.ChangeState(SCE_SH_BACKTICKS); } else { // scalar has no delimiter pair if (!setParamStart.Contains(sc.ch)) { @@ -392,12 +405,12 @@ class QuoteStackCls { // Class to manage quote pairs that nest } } void Escape(StyleContext &sc) { - int count = 1; + unsigned count = 1; while (sc.chNext == '\\') { ++count; sc.Forward(); } - bool escaped = count & 1; // odd backslash escape next character + bool escaped = count & 1U; // odd backslash escape next character if (escaped && (sc.chNext == '\r' || sc.chNext == '\n')) { lineContinuation = true; if (sc.state == SCE_SH_IDENTIFIER) { @@ -405,6 +418,39 @@ class QuoteStackCls { // Class to manage quote pairs that nest } return; } + if (backtickLevel > 0 && nestedBackticks) { + /* + for $k$ level substitution with $N$ backslashes: + * when $N/2^k$ is odd, following dollar is escaped. + * when $(N - 1)/2^k$ is even, following quote is escaped. + * when $N = n\times 2^{k + 1} - 1$, following backtick is escaped. + * when $N = n\times 2^{k + 1} + 2^k - 1$, following backtick starts inner substitution. + * when $N = m\times 2^k + 2^{k - 1} - 1$ and $k > 1$, following backtick ends current substitution. + */ + if (sc.chNext == '$') { + escaped = (count >> backtickLevel) & 1U; + } else if (sc.chNext == '\"' || sc.chNext == '\'') { + escaped = (((count - 1) >> backtickLevel) & 1U) == 0; + } else if (sc.chNext == '`' && escaped) { + unsigned mask = 1U << (backtickLevel + 1); + count += 1; + escaped = (count & (mask - 1)) == 0; + if (!escaped) { + unsigned remain = count - (mask >> 1U); + if (static_cast(remain) >= 0 && (remain & (mask - 1)) == 0) { + escaped = true; + ++backtickLevel; + } else if (backtickLevel > 1) { + mask >>= 1U; + remain = count - (mask >> 1U); + if (static_cast(remain) >= 0 && (remain & (mask - 1)) == 0) { + escaped = true; + --backtickLevel; + } + } + } + } + } if (escaped) { sc.Forward(); } @@ -583,6 +629,7 @@ void SCI_METHOD LexerBash::Lex(Sci_PositionU startPos, Sci_Position length, int HereDocCls HereDoc; QuoteStackCls QuoteStack(setParamStart); + QuoteStack.nestedBackticks = options.nestedBackticks; QuoteStack.commandSubstitution = static_cast(options.commandSubstitution); const WordClassifier &classifierIdentifiers = subStyles.Classifier(SCE_SH_IDENTIFIER); diff --git a/src/3rdparty/scintilla/src/lexers/LexFSharp.cxx b/src/3rdparty/scintilla/src/lexers/LexFSharp.cxx index dfac0286..25d53f6c 100644 --- a/src/3rdparty/scintilla/src/lexers/LexFSharp.cxx +++ b/src/3rdparty/scintilla/src/lexers/LexFSharp.cxx @@ -672,25 +672,23 @@ void SCI_METHOD LexerFSharp::Fold(Sci_PositionU start, Sci_Position length, int const int stylePrev = style; const char ch = chNext; const bool inLineComment = (stylePrev == SCE_FSHARP_COMMENTLINE); - const bool inOpenStatement = LineContains(styler, "open ", lineCurrent, SCE_FSHARP_KEYWORD); style = styleNext; styleNext = styler.StyleAt(currentPos + 1); chNext = styler.SafeGetCharAt(currentPos + 1); if (options.foldComment) { - if (options.foldCommentMultiLine && inLineComment && atEOL && - (lineCurrent > 0 || LineContains(styler, "//", lineNext, SCE_FSHARP_COMMENTLINE))) { + if (options.foldCommentMultiLine && inLineComment && atEOL) { FoldLexicalGroup(styler, levelNext, lineCurrent, "//", SCE_FSHARP_COMMENTLINE); } if (options.foldCommentStream && style == SCE_FSHARP_COMMENT && !inLineComment) { if (stylePrev != SCE_FSHARP_COMMENT || (styler.Match(currentPos, "(*") && - !LineContains(styler, "*)", lineCurrent, SCE_FSHARP_COMMENT))) { + !LineContains(styler, "*)", currentPos + 2, SCE_FSHARP_COMMENT))) { levelNext++; } else if ((styleNext != SCE_FSHARP_COMMENT || ((styler.Match(currentPos, "*)") && - !LineContains(styler, "(*", lineCurrent, SCE_FSHARP_COMMENT)) && + !LineContains(styler, "(*", styler.LineStart(lineCurrent), SCE_FSHARP_COMMENT)) && styler.GetLineState(lineCurrent - 1) > 0)) && !atEOL) { levelNext--; @@ -706,7 +704,7 @@ void SCI_METHOD LexerFSharp::Fold(Sci_PositionU start, Sci_Position length, int } } - if (options.foldImports && inOpenStatement && atEOL) { + if (options.foldImports && styler.Match(currentPos, "open ") && styleNext == SCE_FSHARP_KEYWORD) { FoldLexicalGroup(styler, levelNext, lineCurrent, "open ", SCE_FSHARP_KEYWORD); } @@ -744,7 +742,7 @@ void SCI_METHOD LexerFSharp::Fold(Sci_PositionU start, Sci_Position length, int bool LineContains(LexAccessor &styler, const char *word, const Sci_Position start, const int chAttr) { bool found = false; bool requireStyle = (chAttr > SCE_FSHARP_DEFAULT); - for (Sci_Position i = styler.LineStart(start); i < styler.LineStart(start + 1) - 1; i++) { + for (Sci_Position i = start; i < styler.LineStart(styler.GetLine(start) + 1) - 1; i++) { if (styler.Match(i, word)) { found = requireStyle ? styler.StyleAt(i) == chAttr : true; break; @@ -755,9 +753,9 @@ bool LineContains(LexAccessor &styler, const char *word, const Sci_Position star void FoldLexicalGroup(LexAccessor &styler, int &levelNext, const Sci_Position lineCurrent, const char *word, const int chAttr) { - const Sci_Position linePrev = lineCurrent - 1; - const Sci_Position lineNext = lineCurrent + 1; - const bool follows = LineContains(styler, word, linePrev, chAttr); + const Sci_Position linePrev = styler.LineStart(lineCurrent - 1); + const Sci_Position lineNext = styler.LineStart(lineCurrent + 1); + const bool follows = (lineCurrent > 0) && LineContains(styler, word, linePrev, chAttr); const bool isFollowed = LineContains(styler, word, lineNext, chAttr); if (isFollowed && !follows) { diff --git a/src/eu_api.c b/src/eu_api.c index dadda462..fba46a57 100644 --- a/src/eu_api.c +++ b/src/eu_api.c @@ -1913,6 +1913,7 @@ eu_save_config(void) "window_statusbar_visiable = %s\n" "line_number_visiable = %s\n" "last_search_flags = 0x%08X\n" + "history_mask = %u\n" "white_space_visiable = %s\n" "white_space_size = %d\n" "newline_visiable = %s\n" @@ -2044,6 +2045,7 @@ eu_save_config(void) g_config->m_statusbar?"true":"false", g_config->m_linenumber?"true":"false", g_config->last_flags, + g_config->history_mask, g_config->ws_visiable?"true":"false", g_config->ws_size, g_config->newline_visialbe?"true":"false", @@ -2255,6 +2257,11 @@ eu_save_theme(void) "aspsection_color = 0x%08X\n" "aspsection_bgcolor = 0x%08X\n" "aspsection_bold = %d\n" + "xmlsection_font = \"%s\"\n" + "xmlsection_fontsize = %d\n" + "xmlsection_color = 0x%08X\n" + "xmlsection_bgcolor = 0x%08X\n" + "xmlsection_bold = %d\n" "activetab_font = \"%s\"\n" "activetab_fontsize = %d\n" "activetab_color = 0x%08X\n" @@ -2279,7 +2286,22 @@ eu_save_theme(void) "results_fontsize = %d\n" "results_color = 0x%08X\n" "results_bgcolor = 0x%08X\n" - "results_bold = %d"; + "results_bold = %d\n" + "bracesection_font = \"%s\"\n" + "bracesection_fontsize = %d\n" + "bracesection_color = 0x%08X\n" + "bracesection_bgcolor = 0x%08X\n" + "bracesection_bold = %d\n" + "nchistory_font = \"%s\"\n" + "nchistory_fontsize = %d\n" + "nchistory_color = 0x%08X\n" + "nchistory_bgcolor = 0x%08X\n" + "nchistory_bold = %d\n" + "dochistory_font = \"%s\"\n" + "dochistory_fontsize = %d\n" + "dochistory_color = 0x%08X\n" + "dochistory_bgcolor = 0x%08X\n" + "dochistory_bold = %d"; if (!g_theme) { return; @@ -2317,11 +2339,15 @@ eu_save_theme(void) EXPAND_STYLETHEME(cdata), EXPAND_STYLETHEME(phpsection), EXPAND_STYLETHEME(aspsection), + EXPAND_STYLETHEME(xmlsection), EXPAND_STYLETHEME(activetab), EXPAND_STYLETHEME(caret), EXPAND_STYLETHEME(symbolic), EXPAND_STYLETHEME(hyperlink), - EXPAND_STYLETHEME(results)); + EXPAND_STYLETHEME(results), + EXPAND_STYLETHEME(bracesection), + EXPAND_STYLETHEME(nchistory), + EXPAND_STYLETHEME(dochistory)); if ((path = eu_utf8_utf16(g_theme->pathfile, NULL)) != NULL) { if ((fp = _wfopen(path , L"wb")) != NULL) diff --git a/src/eu_api.h b/src/eu_api.h index 68cc4d0b..eacc4500 100644 --- a/src/eu_api.h +++ b/src/eu_api.h @@ -417,6 +417,7 @@ struct eu_config bool m_linenumber; uint32_t last_flags; + uint32_t history_mask; bool ws_visiable; int ws_size; bool newline_visialbe; diff --git a/src/eu_changes.c b/src/eu_changes.c index 83849962..674061ae 100644 --- a/src/eu_changes.c +++ b/src/eu_changes.c @@ -130,7 +130,7 @@ on_changes_delete_proc(HWND hdlg, uint32_t message, WPARAM wParam, LPARAM lParam case IDC_NOEXIST_BTN3: if ((p = (eu_tabpage *) GetWindowLongPtr(hdlg, GWLP_USERDATA)) != NULL) { - on_tabpage_reload_file(p, 0); + on_tabpage_reload_file(p, 0, NULL); p->st_mtime = 0; _InterlockedExchange(&keep_mask, FILE_KEEP_YES); SendMessage(hdlg, WM_CLOSE, 0, 0); @@ -139,7 +139,7 @@ on_changes_delete_proc(HWND hdlg, uint32_t message, WPARAM wParam, LPARAM lParam case IDC_NOEXIST_BTN4: if ((p = (eu_tabpage *) GetWindowLongPtr(hdlg, GWLP_USERDATA)) != NULL) { - on_tabpage_reload_file(p, 1); + on_tabpage_reload_file(p, 1, NULL); _InterlockedExchange(&keep_mask, FILE_KEEP_NO); SendMessage(hdlg, WM_CLOSE, 0, 0); } @@ -229,14 +229,14 @@ on_changes_time_proc(HWND hdlg, uint32_t message, WPARAM wParam, LPARAM lParam) case IDC_FC_BTN1: if ((p = (eu_tabpage *) GetWindowLongPtr(hdlg, GWLP_USERDATA)) != NULL) { - on_tabpage_reload_file(p, 2); + on_tabpage_reload_file(p, 2, NULL); SendMessage(hdlg, WM_CLOSE, 0, 0); } break; case IDC_FC_BTN2: if ((p = (eu_tabpage *) GetWindowLongPtr(hdlg, GWLP_USERDATA)) != NULL) { - on_tabpage_reload_file(p, 0); + on_tabpage_reload_file(p, 0, NULL); p->st_mtime = util_last_time(p->pathfile); SendMessage(hdlg, WM_CLOSE, 0, 0); } @@ -244,7 +244,7 @@ on_changes_time_proc(HWND hdlg, uint32_t message, WPARAM wParam, LPARAM lParam) case IDC_FC_BTN3: if ((p = (eu_tabpage *) GetWindowLongPtr(hdlg, GWLP_USERDATA)) != NULL) { - on_tabpage_reload_file(p, 2); + on_tabpage_reload_file(p, 2, NULL); if (eu_get_config()->m_upfile != FILE_CHANGE_SEC_YES) { eu_get_config()->m_upfile = FILE_CHANGE_ALL_YES; @@ -255,7 +255,7 @@ on_changes_time_proc(HWND hdlg, uint32_t message, WPARAM wParam, LPARAM lParam) case IDC_FC_BTN4: if ((p = (eu_tabpage *) GetWindowLongPtr(hdlg, GWLP_USERDATA)) != NULL) { - on_tabpage_reload_file(p, 0); + on_tabpage_reload_file(p, 0, NULL); p->st_mtime = util_last_time(p->pathfile); if (eu_get_config()->m_upfile != FILE_CHANGE_SEC_NO) { @@ -313,13 +313,13 @@ on_changes_delete_event(eu_tabpage *p) } case FILE_KEEP_ALL_YES: { - on_tabpage_reload_file(p, 0); + on_tabpage_reload_file(p, 0, NULL); p->st_mtime = 0; break; } case FILE_KEEP_ALL_NO: { - on_tabpage_reload_file(p, 1); + on_tabpage_reload_file(p, 1, NULL); break; } default: @@ -344,13 +344,13 @@ on_changes_time_event(eu_tabpage *p) case FILE_CHANGE_ALL_YES: case FILE_CHANGE_SEC_YES: { - on_tabpage_reload_file(p, 2); + on_tabpage_reload_file(p, 2, NULL); break; } case FILE_CHANGE_ALL_NO: case FILE_CHANGE_SEC_NO: { - on_tabpage_reload_file(p, 0); + on_tabpage_reload_file(p, 0, NULL); p->st_mtime = util_last_time(p->pathfile); break; } diff --git a/src/eu_doctype.c b/src/eu_doctype.c index 7376670a..61c9e3aa 100644 --- a/src/eu_doctype.c +++ b/src/eu_doctype.c @@ -424,12 +424,18 @@ on_doc_keyword_light(eu_tabpage *pnode, int lex, int index, intptr_t rgb) eu_sci_call(pnode, SCI_STYLESETFORE, lex, (sptr_t)(eu_get_theme()->item.unknowtags.color)); eu_sci_call(pnode, SCI_STYLESETBOLD, lex, (sptr_t)(eu_get_theme()->item.unknowtags.bold)); break; - case 9: + case 9: // asp color eu_sci_call(pnode, SCI_STYLESETFONT, lex, (sptr_t)(eu_get_theme()->item.aspsection.font)); eu_sci_call(pnode, SCI_STYLESETSIZE, lex, eu_get_theme()->item.aspsection.fontsize); eu_sci_call(pnode, SCI_STYLESETFORE, lex, (sptr_t)(eu_get_theme()->item.aspsection.color)); eu_sci_call(pnode, SCI_STYLESETBOLD, lex, (sptr_t)(eu_get_theme()->item.aspsection.bold)); break; + case 10: + eu_sci_call(pnode, SCI_STYLESETFONT, lex, (sptr_t)(eu_get_theme()->item.xmlsection.font)); + eu_sci_call(pnode, SCI_STYLESETSIZE, lex, eu_get_theme()->item.xmlsection.fontsize); + eu_sci_call(pnode, SCI_STYLESETFORE, lex, (sptr_t)(eu_get_theme()->item.xmlsection.color)); + eu_sci_call(pnode, SCI_STYLESETBOLD, lex, (sptr_t)(eu_get_theme()->item.xmlsection.bold)); + break; default: break; } @@ -1169,6 +1175,8 @@ int on_doc_init_after_xml(eu_tabpage *pnode) { on_doc_key_scilexer(pnode, "xml"); + on_doc_keyword_light(pnode, SCE_H_XMLSTART, 10, 0); + on_doc_keyword_light(pnode, SCE_H_XMLEND, 10, 0); on_doc_tags_light(pnode, SCE_H_TAG, 0); on_doc_keyword_light(pnode, SCE_H_TAGUNKNOWN, 8, 0); on_doc_keyword_light(pnode, SCE_H_ATTRIBUTE, 4, 0); @@ -1744,17 +1752,11 @@ on_doc_brace_light(eu_tabpage *pnode, bool keyup) { // 当键盘输入时, 相邻的括号不要高亮 if (!(keyup && (current_pos == match_pos + 1 || current_pos == match_pos - 1))) { - eu_sci_call(pnode, SCI_STYLESETFORE, STYLE_BRACELIGHT, - eu_get_config()->eu_brace.rgb != (uint32_t)-1 ? eu_get_config()->eu_brace.rgb : eu_get_theme()->item.text.color); - eu_sci_call(pnode, SCI_STYLESETBACK, STYLE_BRACELIGHT, eu_get_theme()->item.text.bgcolor); - eu_sci_call(pnode, SCI_STYLESETBOLD, STYLE_BRACELIGHT, true); eu_sci_call(pnode, SCI_BRACEHIGHLIGHT, current_pos, match_pos); } } else { - eu_sci_call(pnode, SCI_STYLESETITALIC, STYLE_BRACEBAD, true); - eu_sci_call(pnode, SCI_STYLESETUNDERLINE, STYLE_BRACEBAD, true); eu_sci_call(pnode, SCI_BRACEBADLIGHT, current_pos, 0); } } diff --git a/src/eu_edit.c b/src/eu_edit.c index 5cd34d0d..bd84ae9b 100644 --- a/src/eu_edit.c +++ b/src/eu_edit.c @@ -38,7 +38,7 @@ void on_edit_undo(eu_tabpage *pnode) { cvector_vector_type(int) v = NULL; - if ((on_tabpage_sel_number(&v, false)) > 0) + if (g_tabpages && (on_tabpage_sel_number(&v, false)) > 0) { int count = eu_int_cast(cvector_size(v)); for (int i = 0; i < count; ++i) @@ -50,6 +50,7 @@ on_edit_undo(eu_tabpage *pnode) } } on_toolbar_update_button(); + util_redraw(g_tabpages, false); } cvector_freep(&v); } @@ -58,7 +59,7 @@ void on_edit_redo(eu_tabpage *pnode) { cvector_vector_type(int) v = NULL; - if ((on_tabpage_sel_number(&v, false)) > 0) + if (g_tabpages && (on_tabpage_sel_number(&v, false)) > 0) { int count = eu_int_cast(cvector_size(v)); for (int i = 0; i < count; ++i) @@ -70,6 +71,7 @@ on_edit_redo(eu_tabpage *pnode) } } on_toolbar_update_button(); + util_redraw(g_tabpages, false); } cvector_freep(&v); } @@ -2059,7 +2061,6 @@ on_edit_convert_eols(eu_tabpage *pnode, int eol_mode) eu_sci_call(pnode, SCI_ENDUNDOACTION, 0, 0); _snprintf(pnode->eols_undo_str, QW_SIZE-1, "%s=%d=%d", EOLS_UNDO_DESC, pnode->eol, eol_mode); pnode->eol = eol_mode; - pnode->undo_id = 1; return 0; } return 1; @@ -2072,7 +2073,6 @@ on_edit_convert_coding(eu_tabpage *pnode, int new_code) { _snprintf(pnode->icon_undo_str, QW_SIZE-1, "%s=%d=%d", ICON_UNDO_DESC, pnode->codepage, new_code); pnode->codepage = new_code; - pnode->undo_id = 1; eu_sci_call(pnode, SCI_BEGINUNDOACTION, 0, 0); eu_sci_call(pnode, SCI_INSERTTEXT, 0, (sptr_t) pnode->icon_undo_str); eu_sci_call(pnode, SCI_DELETERANGE, 0, strlen(pnode->icon_undo_str)); diff --git a/src/eu_file.c b/src/eu_file.c index 90dbf387..a683b4e6 100644 --- a/src/eu_file.c +++ b/src/eu_file.c @@ -439,7 +439,7 @@ on_file_new(void) } else { - on_sci_before_file(pnode); + on_sci_before_file(pnode, true); eu_sci_call(pnode, SCI_CLEARALL, 0, 0); pnode->eol = eu_get_config()->new_file_eol; pnode->codepage = eu_get_config()->new_file_enc; @@ -465,7 +465,7 @@ on_file_new(void) if (true) { on_file_update_time(pnode, time(NULL)); - on_sci_after_file(pnode); + on_sci_after_file(pnode, true); on_tabpage_selection(pnode, -1); } return SKYLARK_OK; @@ -1035,7 +1035,7 @@ on_file_before_open(eu_tabpage *pnode) { if (!pnode->hex_mode && !pnode->pmod) { - on_sci_before_file(pnode); + on_sci_before_file(pnode, true); eu_sci_call(pnode, SCI_CLEARALL, 0, 0); // 把工作目录设置在进程所在地 util_set_working_dir(eu_module_path, NULL); @@ -1046,7 +1046,7 @@ static int on_file_after_open(eu_tabpage *pnode, file_backup *pbak) { int mtab = 0; - on_sci_after_file(pnode); + on_sci_after_file(pnode, true); on_file_update_focus(pnode, pbak); if (!pnode->plugin) { @@ -1074,7 +1074,7 @@ on_file_after_open(eu_tabpage *pnode, file_backup *pbak) } if (pnode->be_modify) { - on_tabpage_editor_modify(pnode, "X"); + pnode->fn_modify = true; } if (!pnode->is_blank) { @@ -1415,6 +1415,7 @@ on_file_redirect(HWND hwnd, file_backup *pbak) if (err != SKYLARK_OK && TabCtrl_GetItemCount(g_tabpages) < 1) { // 打开文件失败且标签小于1,则建立一个空白标签页 err = on_file_new(); + } return err; } @@ -1607,6 +1608,11 @@ on_file_open_remote(remotefs *premote, file_backup *pbak, const bool selection) result = EUE_CURL_NETWORK_ERR; break; } + if (pnode->be_modify && (!pbak || !pbak->status)) + { // add_text导致了SCN_SAVEPOINTLEFT消息 + // 重新修改回状态 + pnode->be_modify = false; + } result = on_file_after_open(pnode, pbak); } while(0); util_unlock(&pnode->busy_id); @@ -1933,8 +1939,8 @@ on_file_save(eu_tabpage *pnode, const bool save_as) on_file_update_time(pnode, 0); util_set_title(pnode); pnode->doc_ptr = on_doc_get_type(pnode->filename); - on_sci_before_file(pnode); - on_sci_after_file(pnode); + on_sci_before_file(pnode, false); + on_sci_after_file(pnode, false); if (pnode->is_blank) { pnode->is_blank = false; @@ -2033,6 +2039,8 @@ on_file_save(eu_tabpage *pnode, const bool save_as) { if (!pnode->pmod) { // 发送SCI_SETSAVEPOINT消息 + pnode->fn_modify = false; + on_sci_point_reached(pnode); eu_sci_call(pnode, SCI_SETSAVEPOINT, 0, 0); if (!(pnode->is_blank || save_as)) { @@ -2210,13 +2218,13 @@ on_file_cache_protect(eu_tabpage *pnode) static void on_file_save_backup(eu_tabpage *pnode, const CLOSE_MODE mode) { - file_backup filebak = {0}; - filebak.cp = pnode->codepage; - filebak.bakcp = !TAB_NOT_BIN(pnode) ? IDM_OTHER_BIN : IDM_UNI_UTF8; if (!file_click_close(mode) && !on_file_cache_protect(pnode)) { if (!pnode->is_blank || TAB_NOT_NUL(pnode)) { + file_backup filebak = {0}; + filebak.cp = pnode->codepage; + filebak.bakcp = !TAB_NOT_BIN(pnode) ? IDM_OTHER_BIN : IDM_UNI_UTF8; if (pnode->be_modify) { TCHAR buf[QW_SIZE] = {0}; @@ -2259,7 +2267,7 @@ on_file_save_backup(eu_tabpage *pnode, const CLOSE_MODE mode) filebak.blank = pnode->is_blank; filebak.hex = !(pnode->pmod && pnode->plugin) ? pnode->hex_mode : 0; filebak.focus = pnode->last_focus; - filebak.zoom = pnode->zoom_level > SELECTION_ZOOM_LEVEEL ? pnode->zoom_level : 0; + filebak.zoom = pnode->zoom_level != SELECTION_ZOOM_LEVEEL ? pnode->zoom_level : 0; on_search_page_mark(pnode, filebak.mark_id, MAX_BUFFER-1); on_search_fold_kept(pnode, filebak.fold_id, MAX_BUFFER-1); filebak.postion = eu_sci_call(pnode, SCI_GETCURRENTPOS, 0, 0); @@ -2527,7 +2535,7 @@ on_file_check_save(void *lp) if (pnode) { pnode->tab_id = index; - pnode->zoom_level = pnode->zoom_level > SELECTION_ZOOM_LEVEEL ? (int) eu_sci_call(pnode, SCI_GETZOOM, 0, 0) : 0; + pnode->zoom_level = pnode->zoom_level != SELECTION_ZOOM_LEVEEL ? (int) eu_sci_call(pnode, SCI_GETZOOM, 0, 0) : 0; if (at_focus >= 0) { pnode->last_focus = pnode->tab_id == at_focus; @@ -2718,7 +2726,7 @@ on_file_restore_recent(void) void on_file_reload_current(eu_tabpage *pnode) { - if (pnode && !url_has_remote(pnode->pathfile)) + if (pnode && !pnode->hex_mode && !url_has_remote(pnode->pathfile)) { bool reload = true; bool modified = pnode->be_modify; @@ -2742,23 +2750,7 @@ on_file_reload_current(eu_tabpage *pnode) } if (reload) { - eu_sci_call(pnode, SCI_CLEARALL, 0, 0); - if (on_file_load(pnode, NULL, true) == SKYLARK_OK) - { - sptr_t max_line = eu_sci_call(pnode, SCI_GETLINECOUNT, 0, 0); - if (current_line > max_line - 1) - { - current_line = max_line - 1; - } - eu_sci_call(pnode, SCI_SETUNDOCOLLECTION, 1, 0); - eu_sci_call(pnode, SCI_EMPTYUNDOBUFFER, 0, 0); - eu_sci_call(pnode, SCI_SETSAVEPOINT, 0, 0); - if (!pnode->is_blank) - { - on_search_jmp_line(pnode, current_line, 0); - pnode->st_mtime = util_last_time(pnode->pathfile); - } - } + on_tabpage_reload_file(pnode, 2, ¤t_line); } } } diff --git a/src/eu_hex.c b/src/eu_hex.c index b935b031..16ea8baa 100644 --- a/src/eu_hex.c +++ b/src/eu_hex.c @@ -26,8 +26,8 @@ #define HEXEDIT_MODE_FIRST64LINE2 _T(" Offset(H) | 0 1 2 3 4 5 6 7 8 9 A B C D E F | ANSI ASCII \0") #define HEXEDIT_MODE_SECOND64LINE _T("-----------------+------------------------------------------------+----------------\0") -static volatile long hex_zoom; -static int hex_area; +static int hex_area = 0; +static volatile long affected_switch = 0; /******************************************* * 计算utf8编码字节数 @@ -500,7 +500,7 @@ hexview_vscroll_visible(HWND hwnd) } static bool -hexview_create_font(HWND hwnd, PHEXVIEW hexview) +hexview_create_font(HWND hwnd, PHEXVIEW hexview, const int zoom) { LOGFONT logfont; TCHAR font[LF_FACESIZE] = {0}; @@ -517,7 +517,7 @@ hexview_create_font(HWND hwnd, PHEXVIEW hexview) { quality = NONANTIALIASED_QUALITY; } - int font_size = eu_get_theme()->item.text.fontsize + hex_zoom + 1; + int font_size = eu_get_theme()->item.text.fontsize + zoom + 1; logfont.lfHeight = -MulDiv(font_size, eu_get_dpi(NULL), 72); logfont.lfWidth = 0; logfont.lfEscapement = 0; @@ -1046,9 +1046,9 @@ hexview_proc(HWND hwnd, uint32_t message, WPARAM wParam, LPARAM lParam) hexview->ct_flags &= ~HVF_FONTCREATED; } hexview->hfont = (HFONT) wParam; - if (!hexview->hfont) + if (!hexview->hfont && pnode) { - hexview_create_font(hwnd, hexview); + hexview_create_font(hwnd, hexview, pnode->zoom_level); } hdc = GetDC(hwnd); hold_font = SelectObject(hdc, hexview->hfont); @@ -1744,28 +1744,37 @@ hexview_proc(HWND hwnd, uint32_t message, WPARAM wParam, LPARAM lParam) // 兼容scintilla控件 case SCI_ZOOMIN: { - _InterlockedExchangeAdd(&hex_zoom, 1); - SendMessage(hwnd, WM_SETFONT, 0, 0); - InvalidateRect(hwnd, NULL, false); + if (pnode && pnode->zoom_level !=SELECTION_ZOOM_LEVEEL) + { + ++pnode->zoom_level; + SendMessage(hwnd, WM_SETFONT, 0, 0); + InvalidateRect(hwnd, NULL, false); + } break; } case SCI_ZOOMOUT: { - _InterlockedExchangeAdd(&hex_zoom, -1); - SendMessage(hwnd, WM_SETFONT, 0, 0); - InvalidateRect(hwnd, NULL, false); + if (pnode && pnode->zoom_level != SELECTION_ZOOM_LEVEEL) + { + --pnode->zoom_level; + SendMessage(hwnd, WM_SETFONT, 0, 0); + InvalidateRect(hwnd, NULL, false); + } break; } case SCI_SETZOOM: { - _InterlockedExchange(&hex_zoom, (long)wParam); - SendMessage(hwnd, WM_SETFONT, 0, 0); - InvalidateRect(hwnd, NULL, false); + if (pnode && pnode->zoom_level != SELECTION_ZOOM_LEVEEL) + { + pnode->zoom_level = 0; + SendMessage(hwnd, WM_SETFONT, 0, 0); + InvalidateRect(hwnd, NULL, false); + } break; } case SCI_GETZOOM: { - return hex_zoom; + return (pnode && pnode->zoom_level ? pnode->zoom_level : 0); } case SCI_GOTOPOS: { @@ -1832,18 +1841,10 @@ hexview_proc(HWND hwnd, uint32_t message, WPARAM wParam, LPARAM lParam) } return 0; } - case SCI_SETSAVEPOINT: - { - return on_sci_point_reached(pnode); - } case SCI_GETCURRENTPOS: { return hexview->number_items; } - case SCN_SAVEPOINTLEFT: - { - return on_sci_point_left(pnode); - } case SCI_GETSELTEXT: { size_t select_start = min(hexview->select_start, hexview->select_end); @@ -2161,10 +2162,11 @@ hexview_switch_mode(eu_tabpage *pnode) if (!pnode->hex_mode) { pnode->nc_pos = eu_sci_call(pnode, SCI_GETCURRENTPOS, 0, 0); + pnode->zoom_level = (pnode->zoom_level == SELECTION_ZOOM_LEVEEL) ? 0 : (int)eu_sci_call(pnode, SCI_GETZOOM, 0, 0); + eu_logmsg("To hex, pnode->zoom_level = %d\n", pnode->zoom_level); if (!pnode->phex) { pnode->phex = (PHEXVIEW) calloc(1, sizeof(HEXVIEW)); - hex_zoom = pnode->zoom_level > SELECTION_ZOOM_LEVEEL ? (int) eu_sci_call(pnode, SCI_GETZOOM, 0, 0) : 0; if (!pnode->phex) { err = EUE_POINT_NULL; @@ -2202,7 +2204,9 @@ hexview_switch_mode(eu_tabpage *pnode) pnode->tab_id = on_tabpage_get_index(pnode); pnode->doc_ptr = on_doc_get_type(pnode->filename); pnode->nc_pos = pnode->phex ? pnode->phex->number_items : -1; - pnode->zoom_level = hex_zoom > SELECTION_ZOOM_LEVEEL ? hex_zoom : 0; + pnode->zoom_level = (int)eu_sci_call(pnode, SCI_GETZOOM, 0, 0); + pnode->zoom_level == SELECTION_ZOOM_LEVEEL ? (pnode->zoom_level = 0) : (void)0; + eu_logmsg("To text, pnode->zoom_level = %d\n", pnode->zoom_level); pnode->needpre = pnode->pre_len > 0; if (pnode->phex && pnode->phex->hex_ascii) { @@ -2258,11 +2262,11 @@ hexview_switch_mode(eu_tabpage *pnode) err = EUE_UNKOWN_ERR; goto HEX_ERROR; } - on_sci_before_file(pnode); + on_sci_before_file(pnode, true); eu_sci_call(pnode, SCI_CLEARALL, 0, 0); eu_sci_call(pnode, SCI_ADDTEXT, dst_len - offset, (LPARAM)(pdst + offset)); eu_sci_call(pnode, SCI_SETOVERTYPE, false, 0); - on_sci_after_file(pnode); + on_sci_after_file(pnode, true); on_search_add_navigate_list(pnode, 0); if ((err = on_tabpage_selection(pnode, pnode->tab_id)) >= 0) { @@ -2275,10 +2279,6 @@ hexview_switch_mode(eu_tabpage *pnode) pnode->file_attr &= ~FILE_READONLY_COLOR; on_statusbar_btn_colour(pnode, true); } - if (pnode->be_modify && pnode->undo_id) - { - MSG_BOX(IDS_UNDO_UNCLOSE_TIPS, IDC_MSG_WARN, MB_ICONWARNING | MB_OK); - } eu_logmsg("%s: pnode->eol = %d\n", __FUNCTION__, pnode->eol); PostMessage(pnode->hwnd_sc, WM_SETFOCUS, 0, 0); } @@ -2295,18 +2295,30 @@ hexview_switch_item(eu_tabpage *pnode) { if (g_tabpages && pnode) { - eu_tabpage *p = NULL; - cvector_vector_type(int) v = NULL; - int num = on_tabpage_sel_number(&v, false); - for (int i = 0; i < num; ++i) + int result = IDOK; + if ((eu_sci_call(pnode, SCI_CANUNDO, 0, 0) || eu_sci_call(pnode, SCI_CANREDO, 0, 0)) && !_InterlockedCompareExchange(&affected_switch, 1, 0)) { - eu_tabpage *p = on_tabpage_get_ptr(v[i]); - if (p && p != pnode && p->hex_mode == pnode->hex_mode && TAB_NOT_NUL(p) && TAB_NOT_BIN(p)) + MSG_BOX_SEL(IDS_HISTORY_CLEAR_UNDO, IDC_MSG_TIPS, MB_ICONSTOP | MB_OKCANCEL, result); + } + if (result == IDOK) + { + eu_tabpage *p = NULL; + cvector_vector_type(int) v = NULL; + int num = on_tabpage_sel_number(&v, false); + for (int i = 0; i < num; ++i) { - hexview_switch_mode(p); + eu_tabpage *p = on_tabpage_get_ptr(v[i]); + if (p && p != pnode && p->hex_mode == pnode->hex_mode && TAB_NOT_NUL(p) && TAB_NOT_BIN(p)) + { + hexview_switch_mode(p); + } } + hexview_switch_mode(pnode); + cvector_freep(&v); + } + else + { + _InterlockedExchange(&affected_switch, 0); } - hexview_switch_mode(pnode); - cvector_freep(&v); } } diff --git a/src/eu_hyperlink.c b/src/eu_hyperlink.c index 48811557..763ccb8d 100644 --- a/src/eu_hyperlink.c +++ b/src/eu_hyperlink.c @@ -193,8 +193,6 @@ on_hyper_menu(eu_tabpage *pnode) { eu_get_config()->m_hyperlink ^= true; // Make it generate SCN_UPDATEUI message - const sptr_t pos = eu_sci_call(pnode, SCI_GETANCHOR, 0, 0); - eu_sci_call(pnode, SCI_SETANCHOR, pos ? -1 : pos + 1, 0); - eu_sci_call(pnode, SCI_SETANCHOR, pos, 0); + util_updateui_msg(pnode); } } diff --git a/src/eu_menu.c b/src/eu_menu.c index 873b4bcd..7d1f577d 100644 --- a/src/eu_menu.c +++ b/src/eu_menu.c @@ -210,6 +210,8 @@ menu_update_hexview(const HMENU root_menu, const bool hex_mode, const bool init) util_enable_menu_item(root_menu, IDM_SOURCE_ENABLE_CTSHOW, init || !hex_mode); util_enable_menu_item(root_menu, IDM_SETTING_FONTQUALITY, init || !hex_mode); util_enable_menu_item(root_menu, IDM_SETTING_RENDER, init || !hex_mode); + util_enable_menu_item(root_menu, IDM_VIEW_HISTORY_PLACEHOLDE, init || !hex_mode); + util_enable_menu_item(root_menu, IDM_SEARCH_HISTORY_PLACEHOLDE, init || !hex_mode); } } @@ -438,7 +440,7 @@ menu_update_item(const HMENU menu, const bool init) util_set_menu_item(menu, IDM_FILE_NEWFILE_ENCODING_ANSI, (eu_get_config()->new_file_enc == IDM_OTHER_ANSI)); break; case IDM_FILE_RELOAD_CURRENT: - util_enable_menu_item(menu, IDM_FILE_RELOAD_CURRENT, pnode && !url_has_remote(pnode->pathfile)); + util_enable_menu_item(menu, IDM_FILE_RELOAD_CURRENT, pnode && !pnode->hex_mode && !url_has_remote(pnode->pathfile)); break; case IDM_FILE_ADD_FAVORITES: util_enable_menu_item(menu, IDM_FILE_ADD_FAVORITES, init || !pnode->is_blank); @@ -539,6 +541,7 @@ menu_update_item(const HMENU menu, const bool init) util_set_menu_item(menu, IDM_TAB_CONVERT_SPACES, eu_get_config()->tab2spaces); } util_set_menu_item(menu, IDM_VIEW_TIPS_ONTAB, eu_get_config()->m_tab_tip); + util_switch_menu_group(menu, TAB_HISTORY_SUB, IDM_VIEW_HISTORY_NONE, IDM_VIEW_HISTORY_ALL, eu_get_config()->history_mask); util_switch_menu_group(menu, TAB_MENU_TOOLBAR_SUB, IDB_SIZE_0, IDB_SIZE_128, eu_get_config()->m_toolbar); util_switch_menu_group(menu, TAB_MENU_ACTIVE_SUB, IDM_VIEW_LEFT_TAB, IDM_VIEW_FAR_RIGHT_TAB, eu_get_config()->m_tab_active); util_switch_menu_group(menu, TAB_MENU_CLOSE_SUB, IDM_VIEW_TAB_RIGHT_CLICK, IDM_VIEW_TAB_LEFT_DBCLICK, eu_get_config()->m_close_way); diff --git a/src/eu_menu.h b/src/eu_menu.h index acfc7e3d..f817437d 100644 --- a/src/eu_menu.h +++ b/src/eu_menu.h @@ -20,7 +20,6 @@ #define _EU_MENU_H_ /* 子菜单所在位置 */ -#define VIEW_MENU 3 #define THEME_MENU 6 #define THEME_MENU_SUB 7 #define LOCALE_MENU 6 @@ -28,11 +27,12 @@ /* 子菜单弹出菜单位置 */ #define TAB_MENU_TOOLBAR_SUB 7 -#define TAB_MENU_ACTIVE_SUB 28 -#define TAB_MENU_CLOSE_SUB 29 -#define TAB_MENU_NEW_SUB 30 -#define TAB_MENU_CBUTTON_SUB 31 -#define TAB_MENU_SCROLLCURSOR 33 +#define TAB_HISTORY_SUB 22 +#define TAB_MENU_ACTIVE_SUB 29 +#define TAB_MENU_CLOSE_SUB 30 +#define TAB_MENU_NEW_SUB 31 +#define TAB_MENU_CBUTTON_SUB 32 +#define TAB_MENU_SCROLLCURSOR 34 #define TAB_MENU_SNIPPET_SUB 15 #define CUSTOMIZED_CMD_SUB 14 diff --git a/src/eu_nphost.c b/src/eu_nphost.c index c3e81a51..a66413b1 100644 --- a/src/eu_nphost.c +++ b/src/eu_nphost.c @@ -38,22 +38,24 @@ np_load_plugin_library(const TCHAR *filename, const bool sys) return mod; } -void +int np_plugins_savefile(const npp_funcs *pfunc, const NPP instance) { if (pfunc && pfunc->savefile && instance) { - pfunc->savefile(instance); + return pfunc->savefile(instance); } + return NP_NO_DATA; } -void +int np_plugins_savefileas(const npp_funcs *pfunc, const NPP instance, const wchar_t *path) { if (pfunc && pfunc->savefileas && instance) { - pfunc->savefileas(instance, path); + return pfunc->savefileas(instance, path); } + return NP_NO_DATA; } bool diff --git a/src/eu_nphost.h b/src/eu_nphost.h index cf909a5a..8ff81a7a 100644 --- a/src/eu_nphost.h +++ b/src/eu_nphost.h @@ -50,9 +50,9 @@ int np_plugins_initialize(const NMM hmod, npdata **pdata); int np_plugins_destroy(const npp_funcs *pfunc, const NPP instance, nppsave **data); int np_plugins_getvalue(const npp_funcs *pfunc, const NPP instance, npp_variable v, void **value); int np_plugins_setvalue(const npp_funcs *pfunc, const NPP instance, npp_variable v, void *value); +int np_plugins_savefile(const npp_funcs *pfunc, const NPP instance); +int np_plugins_savefileas(const npp_funcs *pfunc, const NPP instance, const wchar_t *path); void np_plugins_shutdown(HMODULE *hmod, npdata **plugin); -void np_plugins_savefile(const npp_funcs *pfunc, const NPP instance); -void np_plugins_savefileas(const npp_funcs *pfunc, const NPP instance, const wchar_t *path); void np_plugins_print(const npp_funcs *pfunc, const NPP instance, npprint *platform); HMODULE np_load_plugin_library(const TCHAR *filename, const bool sys); diff --git a/src/eu_npruntime.h b/src/eu_npruntime.h index 07166f56..de9ca874 100644 --- a/src/eu_npruntime.h +++ b/src/eu_npruntime.h @@ -203,12 +203,16 @@ struct styletheme struct styleclass cdata; struct styleclass phpsection; struct styleclass aspsection; + struct styleclass xmlsection; struct styleclass activetab; struct styleclass caret; struct styleclass symbolic; struct styleclass hyperlink; struct styleclass results; + struct styleclass bracesection; + struct styleclass nchistory; + struct styleclass dochistory; }; typedef struct _npn_rect @@ -262,8 +266,8 @@ typedef int (*npp_getvalue_ptr)(NPP instance, npp_variable v, void **value); typedef int (*npp_setvalue_ptr)(NPP instance, npp_variable v, void *value); typedef int (*npp_stream2file_ptr)(NPP instance, npstream* stream); typedef void (*npp_print_ptr)(NPP instance, npprint *platform); -typedef void (*npp_savefile_ptr)(const NPP instance); -typedef void (*npp_savefileas_ptr)(const NPP instance, const wchar_t *fname); +typedef int (*npp_savefile_ptr)(const NPP instance); +typedef int (*npp_savefileas_ptr)(const NPP instance, const wchar_t *fname); typedef uint32_t (*npp_writeready_ptr)(NPP instance, npstream* stream); typedef uint32_t (*npp_write_ptr)(NPP instance, npstream* stream, uint32_t offset, uint32_t len, void* buffer); diff --git a/src/eu_proc.c b/src/eu_proc.c index e92d8db1..7982082a 100644 --- a/src/eu_proc.c +++ b/src/eu_proc.c @@ -596,15 +596,15 @@ on_proc_save_status(WPARAM flags, npn_nmhdr *lpnmhdr) pnode->be_modify = true; on_toolbar_update_button(); InvalidateRect(g_tabpages, NULL, false); - eu_logmsg("skylark: doc has been modified\n"); + eu_logmsg("%s: iniit doc has been modified\n", __FUNCTION__); } } if (flags && !lpnmhdr->modified && pnode->plugin) { bool remote = false; bool backup = false; + int err = EUE_UNKOWN_ERR; wchar_t *full_path = NULL; - pnode->be_modify = false; eu_logmsg("skylark: doc has been saved\n"); if (!np_plugins_getvalue(&pnode->plugin->funcs, &pnode->plugin->npp, NV_TABTITLE, (void **)&full_path) && STR_NOT_NUL(full_path)) { @@ -620,17 +620,21 @@ on_proc_save_status(WPARAM flags, npn_nmhdr *lpnmhdr) { if (remote) { - on_proc_save_remote(pnode); + err = np_plugins_savefile(&pnode->plugin->funcs, &pnode->plugin->npp); + if (!err) + { + err = on_proc_save_remote(pnode); + } } else if (backup) { - np_plugins_savefileas(&pnode->plugin->funcs, &pnode->plugin->npp, pnode->pathfile); + err = np_plugins_savefileas(&pnode->plugin->funcs, &pnode->plugin->npp, pnode->pathfile); util_delete_file(pnode->bakpath); pnode->bakpath[0] = 0; } else { - np_plugins_savefile(&pnode->plugin->funcs, &pnode->plugin->npp); + err = np_plugins_savefile(&pnode->plugin->funcs, &pnode->plugin->npp); } on_file_update_time(pnode, 0); } @@ -654,9 +658,15 @@ on_proc_save_status(WPARAM flags, npn_nmhdr *lpnmhdr) } on_file_update_time(pnode, 0); util_set_title(pnode); - np_plugins_setvalue(&pnode->plugin->funcs, &pnode->plugin->npp, NV_PATH_CHANGE, pnode->pathfile); + err = np_plugins_setvalue(&pnode->plugin->funcs, &pnode->plugin->npp, NV_PATH_CHANGE, pnode->pathfile); + } + if (err == SKYLARK_OK) + { + pnode->be_modify = false; + pnode->fn_modify = false; } InvalidateRect(g_tabpages, NULL, false); + on_toolbar_update_button(); eu_safe_free(full_path); } } @@ -1404,6 +1414,15 @@ eu_main_proc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) case IDM_SEARCH_MOVEBOTTOM_FIRSTLINE: on_search_move_to_bottom_block(pnode); break; + case IDM_SEARCH_NAVIGATE_NEXT_HISTORY: + on_search_jmp_next_history(pnode); + break; + case IDM_SEARCH_NAVIGATE_PREV_HISTORY: + on_search_jmp_previous_history(pnode); + break; + case IDM_SEARCH_NAVIGATE_CLEAR_HISTORY: + on_sci_clear_history(pnode, true); + break; case IDM_SEARCH_TOGGLE_BOOKMARK: on_search_toggle_mark(pnode, -1); break; @@ -1411,10 +1430,10 @@ eu_main_proc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) on_search_remove_marks_all(pnode); break; case IDM_SEARCH_GOTO_PREV_BOOKMARK: - on_search_jmp_premark_this(pnode); + on_search_jmp_premark_this(pnode, MARGIN_BOOKMARK_MASKN); break; case IDM_SEARCH_GOTO_NEXT_BOOKMARK: - on_search_jmp_next_mark_this(pnode); + on_search_jmp_next_mark_this(pnode, MARGIN_BOOKMARK_MASKN); break; case IDM_SEARCH_GOTO_PREV_BOOKMARK_INALL: on_search_jmp_premark_all(pnode); @@ -1466,10 +1485,10 @@ eu_main_proc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) hexview_switch_item(pnode); break; case IDM_VIEW_HIGHLIGHT_BRACE: - on_view_light_brace(); + on_view_light_brace(pnode); break; case IDM_VIEW_HIGHLIGHT_STR: - on_view_light_str(); + on_view_light_str(pnode); break; case IDM_VIEW_HIGHLIGHT_FOLD: on_view_light_fold(); @@ -1567,6 +1586,12 @@ eu_main_proc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) case IDM_VIEW_INDENTGUIDES_VISIABLE: on_view_indent_visiable(); break; + case IDM_VIEW_HISTORY_NONE: + case IDM_VIEW_HISTORY_MARGIN: + case IDM_VIEW_HISTORY_DOCS: + case IDM_VIEW_HISTORY_ALL: + on_view_history_visiable(pnode, wm_id); + break; case IDM_VIEW_TIPS_ONTAB: eu_get_config()->m_tab_tip ^= true; break; @@ -1942,9 +1967,11 @@ eu_main_proc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) break; case SCN_SAVEPOINTREACHED: on_sci_point_reached(on_tabpage_get_handle(lpnotify->nmhdr.hwndFrom)); + eu_logmsg("%s: on_sci_point_reached caller\n", __FUNCTION__); break; case SCN_SAVEPOINTLEFT: on_sci_point_left(on_tabpage_get_handle(lpnotify->nmhdr.hwndFrom)); + eu_logmsg("%s: on_sci_point_left caller\n", __FUNCTION__); break; case SCN_MARGINCLICK: { diff --git a/src/eu_scintilla.c b/src/eu_scintilla.c index 64288903..f99b86eb 100644 --- a/src/eu_scintilla.c +++ b/src/eu_scintilla.c @@ -18,6 +18,8 @@ #include "framework.h" +#define SKYLARK_CURSORHAND 0x8 + volatile sptr_t eu_edit_wnd = 0; static volatile sptr_t ptr_scintilla = 0; static volatile sptr_t last_sci_eusc = 0; @@ -46,6 +48,44 @@ static const char *auto_xpm[] = { " " }; +void +on_sci_clear_history(eu_tabpage *pnode, const bool refresh) +{ + if (pnode) + { + eu_sci_call(pnode, SCI_EMPTYUNDOBUFFER, 0, 0); + eu_sci_call(pnode, SCI_SETCHANGEHISTORY, SC_CHANGE_HISTORY_DISABLED, 0); + if (refresh) + { + const int maskn = eu_get_config()->history_mask - IDM_VIEW_HISTORY_PLACEHOLDE; + if (maskn > 1) + { + eu_sci_call(pnode, SCI_SETCHANGEHISTORY, maskn, 0); + util_redraw(pnode->hwnd_sc, false); + } + } + } +} + +void +on_sci_update_history_margin(eu_tabpage *pnode) +{ + const int maskn = eu_get_config()->history_mask - IDM_VIEW_HISTORY_PLACEHOLDE; + if (pnode && maskn > 0) + { + const bool margin_enable = maskn > 1 && maskn & SC_CHANGE_HISTORY_MARKERS; + eu_sci_call(pnode, SCI_SETMARGINWIDTHN, MARGIN_HISTORY_INDEX, margin_enable ? MARGIN_HISTORY_WIDTH : 0); + eu_sci_call(pnode, SCI_SETCHANGEHISTORY, maskn == 1 ? SC_CHANGE_HISTORY_DISABLED : maskn, 0); + } +} + +const int +on_sci_bitmask_get(const uint32_t pos, const uint32_t len) +{ + const unsigned long long _zone = 0; + return (const int)(~(~((int)_zone) << (len)) << (pos)); +} + void on_sci_init_default(eu_tabpage *pnode, intptr_t bgcolor) { @@ -65,21 +105,14 @@ on_sci_init_default(eu_tabpage *pnode, intptr_t bgcolor) eu_sci_call(pnode, SCI_SUPPORTSFEATURE, SC_SUPPORTS_THREAD_SAFE_MEASURE_WIDTHS, 0); eu_sci_call(pnode, SCI_SETLAYOUTTHREADS, (sptr_t)util_num_cores(), 0); // 页边区设置 - eu_sci_call(pnode, SCI_SETMARGINS, 3, 0); + eu_sci_call(pnode, SCI_SETMARGINS, MARGIN_NUMBER_OF, 0); // 行号显示以及样式设置 eu_sci_call(pnode, SCI_SETMARGINTYPEN, MARGIN_LINENUMBER_INDEX, SC_MARGIN_NUMBER); eu_sci_call(pnode, SCI_STYLESETFONT, STYLE_LINENUMBER, (sptr_t)(eu_get_theme()->item.linenumber.font)); eu_sci_call(pnode, SCI_STYLESETSIZE, STYLE_LINENUMBER, eu_get_theme()->item.linenumber.fontsize); eu_sci_call(pnode, SCI_STYLESETFORE, STYLE_LINENUMBER, eu_get_theme()->item.linenumber.color); eu_sci_call(pnode, SCI_STYLESETBACK, STYLE_LINENUMBER, eu_get_theme()->item.linenumber.bgcolor); - if (eu_get_config()->m_linenumber) - { - eu_sci_call(pnode, SCI_SETMARGINWIDTHN, MARGIN_LINENUMBER_INDEX, MARGIN_LINENUMBER_WIDTH); - } - else - { - eu_sci_call(pnode, SCI_SETMARGINWIDTHN, MARGIN_LINENUMBER_INDEX, 0); - } + eu_sci_call(pnode, SCI_SETMARGINWIDTHN, MARGIN_LINENUMBER_INDEX, eu_get_config()->m_linenumber ? MARGIN_LINENUMBER_WIDTH : 0); sptr_t bgra = eu_get_theme()->item.indicator.bgcolor; // 自动补全窗口颜色 eu_sci_call(pnode, SCI_SETELEMENTCOLOUR, SC_ELEMENT_LIST, eu_get_theme()->item.text.color); @@ -92,10 +125,22 @@ on_sci_init_default(eu_tabpage *pnode, intptr_t bgcolor) eu_sci_call(pnode, SCI_STYLESETCHECKMONOSPACED, STYLE_DEFAULT, true); // 书签栏样式 eu_sci_call(pnode, SCI_SETMARGINSENSITIVEN, MARGIN_BOOKMARK_INDEX, TRUE); + eu_sci_call(pnode, SCI_SETMARGINMASKN, MARGIN_BOOKMARK_INDEX, MARGIN_BOOKMARK_MASKN); eu_sci_call(pnode, SCI_SETMARGINWIDTHN, MARGIN_BOOKMARK_INDEX, (eu_get_config()->eu_bookmark.visable ? MARGIN_BOOKMARK_WIDTH : 0)); eu_sci_call(pnode, SCI_MARKERDEFINE, MARGIN_BOOKMARK_VALUE, eu_get_config()->eu_bookmark.shape); eu_sci_call(pnode, SCI_MARKERSETBACKTRANSLUCENT, MARGIN_BOOKMARK_VALUE, eu_get_config()->eu_bookmark.argb); eu_sci_call(pnode, SCI_MARKERSETFORETRANSLUCENT, MARGIN_BOOKMARK_VALUE, eu_get_config()->eu_bookmark.argb); + eu_sci_call(pnode, SCI_SETMARGINCURSORN, MARGIN_BOOKMARK_INDEX, SKYLARK_CURSORHAND); + // 修改文本历史记录样式 + eu_sci_call(pnode, SCI_SETMARGINSENSITIVEN, MARGIN_HISTORY_INDEX, TRUE); + eu_sci_call(pnode, SCI_SETMARGINTYPEN, MARGIN_HISTORY_INDEX, SC_MARGIN_SYMBOL); + eu_sci_call(pnode, SCI_SETMARGINMASKN, MARGIN_HISTORY_INDEX, MARGIN_HISTORY_MASKN); + eu_sci_call(pnode, SCI_MARKERSETFORE, SC_MARKNUM_HISTORY_MODIFIED, eu_get_theme()->item.nchistory.color); + eu_sci_call(pnode, SCI_MARKERSETBACK, SC_MARKNUM_HISTORY_MODIFIED, eu_get_theme()->item.nchistory.color); + eu_sci_call(pnode, SCI_MARKERSETFORE, SC_MARKNUM_HISTORY_SAVED, eu_get_theme()->item.nchistory.bgcolor); + eu_sci_call(pnode, SCI_MARKERSETBACK, SC_MARKNUM_HISTORY_MODIFIED, eu_get_theme()->item.nchistory.bgcolor); + eu_sci_call(pnode, SCI_INDICSETFORE, INDICATOR_HISTORY_MODIFIED_INSERTION, eu_get_theme()->item.dochistory.color); + eu_sci_call(pnode, SCI_INDICSETFORE, INDICATOR_HISTORY_SAVED_INSERTION, eu_get_theme()->item.dochistory.bgcolor); // 代码折叠栏颜色与亮量颜色, 这里与背景色相同 eu_sci_call(pnode, SCI_SETFOLDMARGINCOLOUR, true, eu_get_theme()->item.foldmargin.bgcolor); eu_sci_call(pnode, SCI_SETFOLDMARGINHICOLOUR, true, eu_get_theme()->item.foldmargin.bgcolor); @@ -184,7 +229,12 @@ on_sci_init_default(eu_tabpage *pnode, intptr_t bgcolor) eu_sci_call(pnode, SCI_SETMODEVENTMASK, SC_MOD_INSERTTEXT|SC_MOD_DELETETEXT|SC_PERFORMED_UNDO|SC_PERFORMED_REDO, 0); // 支持多列粘贴 eu_sci_call(pnode, SCI_SETMULTIPASTE, SC_MULTIPASTE_EACH, 0); - // 指示出不匹配的大括号 + // 设置括号匹配高亮色以及指示出不匹配的大括号 + eu_sci_call(pnode, SCI_STYLESETFORE, STYLE_BRACELIGHT, eu_get_theme()->item.bracesection.color); + eu_sci_call(pnode, SCI_STYLESETBACK, STYLE_BRACELIGHT, eu_get_theme()->item.bracesection.bgcolor); + eu_sci_call(pnode, SCI_STYLESETBOLD, STYLE_BRACELIGHT, eu_get_theme()->item.bracesection.bold); + eu_sci_call(pnode, SCI_STYLESETITALIC, STYLE_BRACEBAD, true); + eu_sci_call(pnode, SCI_STYLESETUNDERLINE, STYLE_BRACEBAD, true); eu_sci_call(pnode, SCI_BRACEBADLIGHTINDICATOR, true, INDIC_STRIKE); // 不产生鼠标悬浮消息(SCN_DWELLSTART, SCN_DWELLEND, 设置SC_TIME_FOREVER>0则产生 eu_sci_call(pnode, SCI_SETMOUSEDWELLTIME, SC_TIME_FOREVER, 0); @@ -200,23 +250,6 @@ on_sci_init_style(eu_tabpage *pnode) on_hyper_set_style(pnode); } -void -on_sci_before_file(eu_tabpage *pnode) -{ - if (pnode) - { - on_sci_init_style(pnode); - eu_sci_call(pnode, SCI_CANCEL, 0, 0); - eu_sci_call(pnode, SCI_SETUNDOCOLLECTION, 0, 0); - eu_sci_call(pnode, SCI_EMPTYUNDOBUFFER, 0, 0); - eu_sci_call(pnode, SCI_SETREADONLY, 0, 0); - if (pnode->doc_ptr && pnode->doc_ptr->fn_init_before) - { // 初始化侧边栏控件 - pnode->doc_ptr->fn_init_before(pnode); - } - } -} - static void on_sci_reset_zoom(eu_tabpage *pnode) { @@ -227,29 +260,49 @@ on_sci_reset_zoom(eu_tabpage *pnode) { while (zoom--) { - on_view_zoom_out(pnode); + on_view_zoom_in(pnode); } } else if (pnode->zoom_level < 0) { while (zoom++) { - on_view_zoom_in(pnode); + on_view_zoom_out(pnode); } } - pnode->zoom_level = 0; } } void -on_sci_after_file(eu_tabpage *pnode) +on_sci_before_file(eu_tabpage *pnode, const bool init) +{ + if (pnode) + { + on_sci_init_style(pnode); + eu_sci_call(pnode, SCI_CANCEL, 0, 0); + eu_sci_call(pnode, SCI_SETREADONLY, 0, 0); + init ? eu_sci_call(pnode, SCI_SETUNDOCOLLECTION, 0, 0) : (void)0; + if (pnode->doc_ptr && pnode->doc_ptr->fn_init_before) + { // 初始化侧边栏控件 + pnode->doc_ptr->fn_init_before(pnode); + } + } +} + +void +on_sci_after_file(eu_tabpage *pnode, const bool init) { if (pnode) { if (!pnode->hex_mode && !pnode->pmod) { - eu_sci_call(pnode, SCI_SETUNDOCOLLECTION, 1, 0); eu_sci_call(pnode, SCI_SETEOLMODE, pnode->eol, 0); + if (init) + { + eu_sci_call(pnode, SCI_SETUNDOCOLLECTION, 1, 0); + on_sci_clear_history(pnode, false); + on_sci_update_history_margin(pnode); + } on_sci_reset_zoom(pnode); if (!pnode->raw_size) { @@ -259,7 +312,7 @@ on_sci_after_file(eu_tabpage *pnode) { // 设置此标签页的语法解析 pnode->doc_ptr->fn_init_after(pnode); } - on_sci_update_margin(pnode); + on_sci_update_line_margin(pnode); } else if (!pnode->plugin) { @@ -275,7 +328,8 @@ on_sci_refresh_ui(eu_tabpage *pnode) { on_toolbar_update_button(); on_statusbar_update(); - on_sci_update_margin(pnode); + on_sci_update_line_margin(pnode); + util_redraw(g_tabpages, true); } } @@ -483,35 +537,34 @@ on_sci_doc_modified(eu_tabpage *pnode) return (pnode ? pnode->be_modify : false); } -static int -on_sci_status_setup(eu_tabpage *pnode, bool revise) +int +on_sci_point_reached(eu_tabpage *pnode) { - int index = EUE_TAB_NULL; - if (!(pnode && *pnode->filename)) - { - return EUE_POINT_NULL; - } - if ((index = on_tabpage_get_index(pnode)) < SKYLARK_OK) + if (pnode && g_tabpages) { - return index; + if (!pnode->fn_modify) + { + pnode->be_modify = false; + } + on_toolbar_update_button(); + util_redraw(g_tabpages, false); } - on_tabpage_set_title(index, pnode->filename); - util_set_title(pnode); - pnode->be_modify = revise; - on_toolbar_update_button(); return SKYLARK_OK; } -int -on_sci_point_reached(eu_tabpage *pnode) -{ - return on_sci_status_setup(pnode, false); -} - int on_sci_point_left(eu_tabpage *pnode) { - return on_sci_status_setup(pnode, true); + if (pnode && g_tabpages) + { + if (!pnode->be_modify) + { + pnode->be_modify = true; + } + on_toolbar_update_button(); + util_redraw(g_tabpages, false); + } + return SKYLARK_OK; } void @@ -524,7 +577,7 @@ on_sci_character(eu_tabpage *pnode, ptr_notify lpnotify) } void -on_sci_update_margin(eu_tabpage *pnode) +on_sci_update_line_margin(eu_tabpage *pnode) { EU_VERIFY(pnode != NULL); sptr_t m_width = eu_sci_call(pnode, SCI_GETMARGINWIDTHN, MARGIN_LINENUMBER_INDEX, 0); @@ -680,7 +733,7 @@ sc_edit_proc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) if ((pnode = on_tabpage_get_handle(hwnd)) != NULL) { eu_logmsg("scintilla WM_DPICHANGED_AFTERPARENT\n"); - on_sci_update_margin(pnode); + on_sci_update_line_margin(pnode); } break; } diff --git a/src/eu_scintilla.h b/src/eu_scintilla.h index cdc6d4e2..6771f09e 100644 --- a/src/eu_scintilla.h +++ b/src/eu_scintilla.h @@ -19,6 +19,16 @@ #ifndef _EU_SCINTILLA_H_ #define _EU_SCINTILLA_H_ +#define MARGIN_HISTORY_MASKN ( \ + (1 << SC_MARKNUM_HISTORY_REVERTED_TO_ORIGIN) | \ + (1 << SC_MARKNUM_HISTORY_SAVED) | \ + (1 << SC_MARKNUM_HISTORY_MODIFIED) | \ + (1 << SC_MARKNUM_HISTORY_REVERTED_TO_MODIFIED) \ +) + +#define MARGIN_BOOKMARK_VALUE 0x9 +#define MARGIN_BOOKMARK_MASKN (~SC_MASK_FOLDERS & ~MARGIN_HISTORY_MASKN) + #ifdef __cplusplus extern "C" { @@ -31,11 +41,13 @@ int on_sci_point_left(eu_tabpage *pnode); int on_sci_create(eu_tabpage *pnode, HWND parent, int flags, WNDPROC sc_callback); void on_sci_init_default(eu_tabpage *pnode, intptr_t bgcolor); void on_sci_init_style(eu_tabpage *pnode); -void on_sci_before_file(eu_tabpage *pnode); -void on_sci_after_file(eu_tabpage *pnode); +void on_sci_before_file(eu_tabpage *pnode, const bool init); +void on_sci_after_file(eu_tabpage *pnode, const bool init); void on_sci_character(eu_tabpage *pnode, ptr_notify lpnotify); void on_sci_send_extra(void *pdata, uint32_t code, LPNMHDR phdr); -void on_sci_update_margin(eu_tabpage *pnode); +void on_sci_update_line_margin(eu_tabpage *pnode); +void on_sci_clear_history(eu_tabpage *pnode, const bool refresh); +void on_sci_update_history_margin(eu_tabpage *pnode); void on_sci_resever_tab(eu_tabpage *pnode); void on_sci_free_tab(eu_tabpage **ppnod); void on_sci_insert_egg(eu_tabpage *pnode); @@ -45,6 +57,7 @@ bool on_sci_doc_modified(eu_tabpage *pnode); bool on_sci_line_text(eu_tabpage *pnode, size_t lineno, char *buf, size_t len); void on_sci_destroy_control(eu_tabpage *pnode); char *on_sci_range_text(eu_tabpage *pnode, sptr_t start, sptr_t end); +const int on_sci_bitmask_get(const uint32_t pos, const uint32_t len); #ifdef __cplusplus } diff --git a/src/eu_search.c b/src/eu_search.c index f6320049..dc7ebe38 100644 --- a/src/eu_search.c +++ b/src/eu_search.c @@ -18,8 +18,14 @@ #include "framework.h" #include +#define LINE_NOT_FOUND ((sptr_t)-1) #define MAX_TRACE_COUNT 8192 #define RESULAT_MAX_MATCH (UINT16_MAX * 2 + 1) +#define INVISIBLE_BITMASK() on_sci_bitmask_get(0, 1) +#define MARKERS_BITMASK() on_sci_bitmask_get(0, MARGIN_BOOKMARK_VALUE + 1) +#define BOOKMARK_BITMASK() on_sci_bitmask_get(MARGIN_BOOKMARK_VALUE, 1) +#define CHANGE_HISTORY_BITMASK() on_sci_bitmask_get(SC_MARKNUM_HISTORY_REVERTED_TO_ORIGIN, \ + (SC_MARKNUM_HISTORY_REVERTED_TO_MODIFIED - SC_MARKNUM_HISTORY_REVERTED_TO_ORIGIN + 1)) static int max_nav_count; static int result_line_width; @@ -738,9 +744,10 @@ on_search_set_rectangle(eu_tabpage *pnode) { if (eu_sci_call(pnode, SCI_GETZOOM, 0, 0) == 0) { - on_view_zoom_in(pnode); - on_view_zoom_in(pnode); + on_view_zoom_out(pnode); + on_view_zoom_out(pnode); pnode->zoom_level = SELECTION_ZOOM_LEVEEL; + eu_logmsg("%s: pnode->zoom_level = %d\n", __FUNCTION__, pnode->zoom_level); } eu_sci_call(pnode, SCI_SETSELECTIONMODE, SC_SEL_RECTANGLE, 0); } @@ -997,10 +1004,13 @@ on_search_jmp_specified_line(eu_tabpage *pnode) void on_search_toggle_mark(eu_tabpage *pnode, sptr_t lineno) { - sptr_t mark_num; - sptr_t current_line; if (pnode && !pnode->hex_mode && !pnode->pmod) { + int bitmask = 0; + bool bookmark = false; + sptr_t mark_num; + sptr_t current_line; + const int all = MARKERS_BITMASK(); if (lineno < 0) { sptr_t pos = eu_sci_call(pnode, SCI_GETCURRENTPOS, 0, 0); @@ -1010,15 +1020,20 @@ on_search_toggle_mark(eu_tabpage *pnode, sptr_t lineno) { current_line = lineno; } - mark_num = eu_sci_call(pnode, SCI_MARKERGET, current_line, 0); - if (mark_num == MARGIN_BOOKMARK_VALUE) + if (true) { - eu_sci_call(pnode, SCI_MARKERADD, current_line, MARGIN_BOOKMARK_VALUE); + mark_num = eu_sci_call(pnode, SCI_MARKERGET, current_line, 0); + bitmask = (int)mark_num & all; + bookmark = (bool)(bitmask & BOOKMARK_BITMASK()); } - else + if (bookmark) { eu_sci_call(pnode, SCI_MARKERDELETE, current_line, MARGIN_BOOKMARK_VALUE); } + if (!bitmask || (bitmask == INVISIBLE_BITMASK())) + { + eu_sci_call(pnode, SCI_MARKERADD, current_line, MARGIN_BOOKMARK_VALUE); + } } } @@ -1061,15 +1076,50 @@ on_search_remove_marks_all(eu_tabpage *pnode) } } +static inline sptr_t +on_search_mrker_next(eu_tabpage *pnode, const sptr_t line, const int bitmask) +{ + if (bitmask & CHANGE_HISTORY_BITMASK()) + { + const sptr_t last = eu_sci_call(pnode, SCI_GETLINECOUNT, 0, 0); + for (sptr_t i = line; i <= last; ++i) + { + if (eu_sci_call(pnode, SCI_MARKERGET, i, 0) & bitmask) + { + return i; + } + } + return LINE_NOT_FOUND; + } + return eu_sci_call(pnode, SCI_MARKERNEXT, line, bitmask); +} + +static inline sptr_t +on_search_marker_previous(eu_tabpage *pnode, const sptr_t line, const int bitmask) +{ + if (bitmask & CHANGE_HISTORY_BITMASK()) + { + for (sptr_t i = line; i >= 0; --i) + { + if (eu_sci_call(pnode, SCI_MARKERGET, i, 0) & bitmask) + { + return i; + } + } + return LINE_NOT_FOUND; + } + return eu_sci_call(pnode, SCI_MARKERPREVIOUS, line, bitmask); +} + void -on_search_jmp_premark_this(eu_tabpage *pnode) +on_search_jmp_premark_this(eu_tabpage *pnode, const int mask) { if (pnode && !pnode->hex_mode && !pnode->pmod) { sptr_t pos = eu_sci_call(pnode, SCI_GETCURRENTPOS, 0, 0); sptr_t current_line = eu_sci_call(pnode, SCI_LINEFROMPOSITION, pos, 0); - sptr_t find_line = eu_sci_call(pnode, SCI_MARKERPREVIOUS, current_line - 1, MARGIN_BOOKMARK_MASKN); - if (find_line != -1) + sptr_t find_line = on_search_marker_previous(pnode, current_line - 1, mask); + if (find_line != LINE_NOT_FOUND) { on_search_jmp_line(pnode, find_line, current_line); } @@ -1077,20 +1127,64 @@ on_search_jmp_premark_this(eu_tabpage *pnode) } void -on_search_jmp_next_mark_this(eu_tabpage *pnode) +on_search_jmp_next_mark_this(eu_tabpage *pnode, const int mask) { if (pnode && !pnode->hex_mode && !pnode->pmod) { sptr_t pos = eu_sci_call(pnode, SCI_GETCURRENTPOS, 0, 0); sptr_t current_line = eu_sci_call(pnode, SCI_LINEFROMPOSITION, pos, 0); - sptr_t find_line = eu_sci_call(pnode, SCI_MARKERNEXT, current_line + 1, MARGIN_BOOKMARK_MASKN); - if (find_line != -1) + sptr_t find_line = on_search_mrker_next(pnode, current_line + 1, mask); + if (find_line != LINE_NOT_FOUND) { on_search_jmp_line(pnode, find_line, current_line); } } } +void +on_search_jmp_previous_history(eu_tabpage *pnode) +{ + if (pnode && !pnode->hex_mode && !pnode->pmod) + { + const int maskn = eu_get_config()->history_mask - IDM_VIEW_HISTORY_PLACEHOLDE; + if (maskn > 1) + { + const bool non_mark = !(maskn & SC_CHANGE_HISTORY_MARKERS); + if (non_mark) + { + eu_sci_call(pnode, SCI_SETCHANGEHISTORY, SC_CHANGE_HISTORY_MARKERS | eu_sci_call(pnode, SCI_GETCHANGEHISTORY, 0, 0), 0); + } + on_search_jmp_premark_this(pnode, MARGIN_HISTORY_MASKN); + if (non_mark) + { + eu_sci_call(pnode, SCI_SETCHANGEHISTORY, maskn, 0); + } + } + } +} + +void +on_search_jmp_next_history(eu_tabpage *pnode) +{ + if (pnode && !pnode->hex_mode && !pnode->pmod) + { + const int maskn = eu_get_config()->history_mask - IDM_VIEW_HISTORY_PLACEHOLDE; + if (maskn > 1) + { + const bool non_mark = !(maskn & SC_CHANGE_HISTORY_MARKERS); + if (non_mark) + { + eu_sci_call(pnode, SCI_SETCHANGEHISTORY, SC_CHANGE_HISTORY_MARKERS | eu_sci_call(pnode, SCI_GETCHANGEHISTORY, 0, 0), 0); + } + on_search_jmp_next_mark_this(pnode, MARGIN_HISTORY_MASKN); + if (non_mark) + { + eu_sci_call(pnode, SCI_SETCHANGEHISTORY, maskn, 0); + } + } + } +} + int on_search_jmp_premark_all(eu_tabpage *pnode) { @@ -1106,7 +1200,7 @@ on_search_jmp_premark_all(eu_tabpage *pnode) pos = eu_sci_call(p, SCI_GETCURRENTPOS, 0, 0); current_line = eu_sci_call(p, SCI_LINEFROMPOSITION, pos, 0); find_line = eu_sci_call(p, SCI_MARKERPREVIOUS, current_line - 1, MARGIN_BOOKMARK_MASKN); - if (find_line != -1) + if (find_line != LINE_NOT_FOUND) { on_search_jmp_line(p, find_line, current_line); break; @@ -1119,7 +1213,7 @@ on_search_jmp_premark_all(eu_tabpage *pnode) { max_line = eu_sci_call(p, SCI_GETLINECOUNT, 0, 0); find_line = eu_sci_call(p, SCI_MARKERPREVIOUS, max_line - 1, MARGIN_BOOKMARK_MASKN); - if (find_line != -1) + if (find_line != LINE_NOT_FOUND) { on_tabpage_select_index(index); on_search_jmp_line(p, find_line, max_line); @@ -1148,7 +1242,7 @@ on_search_jmp_next_mark_all(eu_tabpage *pnode) pos = eu_sci_call(p, SCI_GETCURRENTPOS, 0, 0); current_line = eu_sci_call(p, SCI_LINEFROMPOSITION, pos, 0); find_line = eu_sci_call(p, SCI_MARKERNEXT, current_line + 1, MARGIN_BOOKMARK_MASKN); - if (find_line != -1) + if (find_line != LINE_NOT_FOUND) { on_search_jmp_line(p, find_line, current_line); break; @@ -1160,7 +1254,7 @@ on_search_jmp_next_mark_all(eu_tabpage *pnode) if ((p = on_tabpage_get_ptr(index)) && !p->hex_mode && !p->pmod) { find_line = eu_sci_call(p, SCI_MARKERNEXT, 0, MARGIN_BOOKMARK_MASKN); - if (find_line != -1) + if (find_line != LINE_NOT_FOUND) { on_tabpage_select_index(index); on_search_jmp_line(p, find_line, 0); @@ -1185,7 +1279,7 @@ on_search_page_mark(eu_tabpage *pnode, char *szmark, int size) { const sptr_t line = eu_sci_call(pnode, SCI_GETLINECOUNT, 0, 0); *szmark = 0; - while (find_line != -1 && find_line <= line) + while (find_line != LINE_NOT_FOUND && find_line <= line) { find_line = eu_sci_call(pnode, SCI_MARKERNEXT, current_line, MARGIN_BOOKMARK_MASKN); if (find_line >= 0) @@ -1227,7 +1321,7 @@ on_search_fold_kept(eu_tabpage *pnode, char *szfold, int size) do { header_line = eu_sci_call(pnode, SCI_CONTRACTEDFOLDNEXT, header_line, 0); - if (header_line != -1) + if (header_line != LINE_NOT_FOUND) { offset = eu_int_cast(strlen(szfold)); if (offset >= size) @@ -1237,7 +1331,7 @@ on_search_fold_kept(eu_tabpage *pnode, char *szfold, int size) _snprintf(szfold+offset, size-offset, "%zd;", header_line); ++header_line; } - } while (header_line != -1); + } while (header_line != LINE_NOT_FOUND); } } diff --git a/src/eu_search.h b/src/eu_search.h index c318504b..8e63d994 100644 --- a/src/eu_search.h +++ b/src/eu_search.h @@ -19,7 +19,7 @@ #ifndef _H_SKYLARK_SEARCH_ #define _H_SKYLARK_SEARCH_ -#define SELECTION_ZOOM_LEVEEL -11 +#define SELECTION_ZOOM_LEVEEL -99 #define ON_LOOP_FLAGS 0x00000010 #define ON_HEX_STRINGS 0x00000020 @@ -92,8 +92,10 @@ bool on_search_create_box(void); void on_search_toggle_mark(eu_tabpage *pnode, sptr_t lineno); void on_search_remove_marks_all(eu_tabpage *pnode); -void on_search_jmp_premark_this(eu_tabpage *pnode); -void on_search_jmp_next_mark_this(eu_tabpage *pnode); +void on_search_jmp_premark_this(eu_tabpage *pnode, const int mask); +void on_search_jmp_next_mark_this(eu_tabpage *pnode, const int mask); +void on_search_jmp_previous_history(eu_tabpage *pnode); +void on_search_jmp_next_history(eu_tabpage *pnode); void on_search_jmp_specified_line(eu_tabpage *pnode); void on_search_move_to_lgroup(eu_tabpage *pnode); void on_search_move_to_rgroup(eu_tabpage *pnode); @@ -129,6 +131,8 @@ void on_search_repalce_event(eu_tabpage *p, replace_event docase); void on_search_jmp_matching_brace(eu_tabpage *pnode, int *pres); void on_search_turn_select(eu_tabpage *pnode); void on_search_regxp_error(void); +void +on_search_jmp_next_history(eu_tabpage *pnode); #ifdef __cplusplus } diff --git a/src/eu_statusbar.c b/src/eu_statusbar.c index ee753014..f7afa322 100644 --- a/src/eu_statusbar.c +++ b/src/eu_statusbar.c @@ -59,7 +59,7 @@ on_statusbar_btn_colour(eu_tabpage *pnode, bool only_read) else { on_sci_init_style(pnode); - on_sci_after_file(pnode); + on_sci_after_file(pnode, false); } eu_sci_call(pnode, SCI_SETREADONLY, 0, 0); pnode->file_attr &= ~FILE_ATTRIBUTE_READONLY; @@ -81,7 +81,7 @@ on_statusbar_btn_colour(eu_tabpage *pnode, bool only_read) else { on_sci_init_default(pnode, STATUS_STATIC_FOCUS); - on_sci_after_file(pnode); + on_sci_after_file(pnode, false); } eu_sci_call(pnode, SCI_SETREADONLY, 1, 0); pnode->file_attr &= ~FILE_ATTRIBUTE_READONLY; diff --git a/src/eu_tabpage.c b/src/eu_tabpage.c index f3e8c48c..d0afb528 100644 --- a/src/eu_tabpage.c +++ b/src/eu_tabpage.c @@ -143,7 +143,6 @@ on_tabpage_changing(int index) eu_tabpage *p = NULL; if((p = on_tabpage_get_ptr(index)) != NULL) { - util_set_undo(p); util_set_title(p); on_toolbar_update_button(); SendMessage(eu_module_hwnd(), WM_TAB_CLICK, (WPARAM)p, 0); @@ -344,7 +343,7 @@ on_tabpage_paint_draw(HWND hwnd, HDC hdc) { ImageList_Draw(himg, 1, hdc, rc.left + 6, rc.top + (rc.bottom - rc.top - CY_ICON)/2, ILD_TRANSPARENT); } - else if (p->be_modify) + else if (p->be_modify || p->fn_modify) { ImageList_Draw(himg, 0, hdc, rc.left + 6, rc.top + (rc.bottom - rc.top - CY_ICON)/2, ILD_TRANSPARENT); } @@ -1362,25 +1361,7 @@ on_tabpage_set_title(int ontab, TCHAR *title) } int -on_tabpage_editor_modify(eu_tabpage *pnode, const char *str) -{ - EU_VERIFY(pnode != NULL); - if (pnode->hex_mode) - { - return (int)eu_sci_call(pnode, SCN_SAVEPOINTLEFT, 0, 0); - } - if (!pnode->plugin) - { - eu_sci_call(pnode, SCI_BEGINUNDOACTION, 0, 0); - eu_sci_call(pnode, SCI_INSERTTEXT, 0, (sptr_t) str); - eu_sci_call(pnode, SCI_DELETERANGE, 0, strlen(str)); - eu_sci_call(pnode, SCI_ENDUNDOACTION, 0, 0); - } - return 0; -} - -int -on_tabpage_reload_file(eu_tabpage *pnode, int flags) +on_tabpage_reload_file(eu_tabpage *pnode, int flags, sptr_t *pline) { EU_VERIFY(pnode != NULL); if (pnode->hex_mode || pnode->plugin) @@ -1390,30 +1371,45 @@ on_tabpage_reload_file(eu_tabpage *pnode, int flags) switch (flags) { case 0: // 保留 - on_tabpage_editor_modify(pnode, "X"); + pnode->fn_modify = true; + on_sci_point_left(pnode); break; case 1: // 丢弃 - eu_sci_call(pnode, SCI_SETSAVEPOINT, 0, 0); + pnode->be_modify = false; + pnode->fn_modify = false; on_file_close(pnode, FILE_ONLY_CLOSE); break; case 2: // 重载, 滚动到末尾行 { - if (url_has_remote(pnode->pathfile)) - { - break; - } - eu_sci_call(pnode, SCI_CLEARALL, 0, 0); - if (on_file_load(pnode, NULL, true)) - { - return 1; - } - eu_sci_call(pnode, SCI_SETUNDOCOLLECTION, 1, 0); - eu_sci_call(pnode, SCI_EMPTYUNDOBUFFER, 0, 0); - eu_sci_call(pnode, SCI_SETSAVEPOINT, 0, 0); - if (!pnode->is_blank) + if (!url_has_remote(pnode->pathfile)) { - pnode->st_mtime = util_last_time(pnode->pathfile); - SendMessage(pnode->hwnd_sc, WM_KEYDOWN, VK_END, 0); + on_sci_clear_history(pnode, false); + eu_sci_call(pnode, SCI_CLEARALL, 0, 0); + if (on_file_load(pnode, NULL, true) == SKYLARK_OK) + { + sptr_t max_line = eu_sci_call(pnode, SCI_GETLINECOUNT, 0, 0); + if (pline && *pline > max_line - 1) + { + *pline = max_line - 1; + } + on_sci_clear_history(pnode, true); + pnode->be_modify = false; + pnode->fn_modify = false; + if (!pnode->is_blank) + { + pnode->st_mtime = util_last_time(pnode->pathfile); + if (pline) + { + on_search_jmp_line(pnode, *pline, 0); + } + else + { + on_search_jmp_line(pnode, max_line, 0); + } + } + on_toolbar_update_button(); + util_redraw(g_tabpages, false); + } } break; } diff --git a/src/eu_tabpage.h b/src/eu_tabpage.h index 11c50fd2..57daed7f 100644 --- a/src/eu_tabpage.h +++ b/src/eu_tabpage.h @@ -57,6 +57,7 @@ struct _tabpage bool at_close; // 是否绘制了关闭按钮 bool hex_mode; // 是否处于16禁止编辑状态 bool be_modify; // 文档是否修改, 同步hex模式 + bool fn_modify; // 文档打开时的初始状态 bool last_focus; // 保存前台焦点 TCHAR pathfile[MAX_BUFFER]; // 文件带路径名 TCHAR pathname[MAX_BUFFER]; // 文件所在路径名 @@ -80,7 +81,6 @@ struct _tabpage volatile long json_id; // 解析json线程id volatile long busy_id; // 标签是否空闲状态 volatile long lock_id; // 自动保存时使用的锁 - int undo_id; // eols或编码转换后, 16进制相互转换时, 用于提示 int tab_id; // tab编号,用于保存会话 int codepage; // 文件编码 int eol; // 换行符 @@ -106,8 +106,7 @@ extern HWND g_tabpages; int on_tabpage_create_dlg(HWND hwnd); int on_tabpage_add(eu_tabpage *pnode); int on_tabpage_remove(eu_tabpage **ppnode); -int on_tabpage_reload_file(eu_tabpage *pnode, int flags); -int on_tabpage_editor_modify(eu_tabpage *pnode, const char *); +int on_tabpage_reload_file(eu_tabpage *pnode, int flags, sptr_t *pline); int on_tabpage_theme_changed(eu_tabpage *p); int on_tabpage_get_height(void); int on_tabpage_get_index(eu_tabpage *pnode); diff --git a/src/eu_theme.c b/src/eu_theme.c index f7c3ce59..12c8cec6 100644 --- a/src/eu_theme.c +++ b/src/eu_theme.c @@ -106,6 +106,9 @@ static HFONT font_phpsection_static; static HWND hwnd_aspsection_static; static HFONT font_aspsection_static; +static HWND hwnd_xmlsection_static; +static HFONT font_xmlsection_static; + static HWND hwnd_hyperlink_static; static HFONT font_hyperlink_static; @@ -120,6 +123,19 @@ static HWND hwnd_result_key_static; static HFONT font_result_lineno_static; static HFONT font_result_key_static; +static HWND hwnd_bracesection_static; +static HFONT font_bracesection_static; + +static HWND hwnd_nchistory_static; +static HWND hwnd_nchistory_static2; +static HFONT font_nchistory_static; +static HFONT font_nchistory_static2; + +static HWND hwnd_dochistory_static; +static HWND hwnd_dochistory_static2; +static HFONT font_dochistory_static; +static HFONT font_dochistory_static2; + static theme_query pm_query[] = { {IDS_THEME_DESC_DEFAULT, {0}, _T("default")} , @@ -596,10 +612,15 @@ theme_release_handle(void) DeleteObject(font_cdata_static); DeleteObject(font_phpsection_static); DeleteObject(font_aspsection_static); + DeleteObject(font_xmlsection_static); DeleteObject(font_hyperlink_static); DeleteObject(font_result_lineno_static); DeleteObject(font_result_key_static); - + DeleteObject(font_bracesection_static); + DeleteObject(font_nchistory_static); + DeleteObject(font_nchistory_static2); + DeleteObject(font_dochistory_static); + DeleteObject(font_dochistory_static2); DeleteObject(brush_language); brush_language = NULL; DeleteObject(brush_linenumber); @@ -694,11 +715,17 @@ theme_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam) CREATE_STYLETHEME_FONT(cdata, IDC_CDATA_STATIC, hwnd_cdata_static, font_cdata_static) CREATE_STYLETHEME_FONT(phpsection, IDC_PHPSECTION_STATIC, hwnd_phpsection_static, font_phpsection_static) CREATE_STYLETHEME_FONT(aspsection, IDC_ASPSECTION_STATIC, hwnd_aspsection_static, font_aspsection_static) + CREATE_STYLETHEME_FONT(xmlsection, IDC_XMLSECTION_STATIC, hwnd_xmlsection_static, font_xmlsection_static) CREATE_STYLETHEME_FONT(hyperlink, IDC_HYPERLINKSECTION_STATIC, hwnd_hyperlink_static, font_hyperlink_static) CREATE_STYLETHEME_FONT(activetab, IDC_THEME_TAB_STATIC, hwnd_activetab_static, font_activetab_static) CREATE_STYLETHEME_FONT(symbolic, IDC_THEME_SYMBOLIC_STATIC, hwnd_symbolic_static, font_symbolic_static) CREATE_STYLETHEME_FONT(results, IDC_THEME_LINENO_STATIC, hwnd_result_lineno_static, font_result_lineno_static) CREATE_STYLETHEME_FONT(results, IDC_THEME_LINEKEY_STATIC, hwnd_result_key_static, font_result_key_static) + CREATE_STYLETHEME_FONT(bracesection, IDC_BRACESECTION_STATIC, hwnd_bracesection_static, font_bracesection_static) + CREATE_STYLETHEME_FONT(nchistory, IDC_THEME_HISTORY_STATIC, hwnd_nchistory_static, font_nchistory_static) + CREATE_STYLETHEME_FONT(nchistory, IDC_THEME_HISTORY2_STATIC, hwnd_nchistory_static2, font_nchistory_static2) + CREATE_STYLETHEME_FONT(dochistory, IDC_THEME_HISTORYDOC_STATIC, hwnd_dochistory_static, font_dochistory_static) + CREATE_STYLETHEME_FONT(dochistory, IDC_THEME_HISTORYDOC2_STATIC, hwnd_dochistory_static2, font_dochistory_static2) HWND hwnd_caretline_edt = GetDlgItem(hdlg, IDC_THEME_CARTETLINE_EDT); HWND hwnd_caretline_udn = GetDlgItem(hdlg, IDC_THEME_CARTETLINE_UDN); HWND hwnd_indicator_edt = GetDlgItem(hdlg, IDC_THEME_INDICATOR_EDT); @@ -788,6 +815,8 @@ theme_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam) IDC_SETTEXTCOLOR_PHPSECTION_BTN, IDC_SETFONT_ASPSECTION_BTN, IDC_SETTEXTCOLOR_ASPSECTION_BTN, + IDC_SETFONT_XMLSECTION_BTN, + IDC_SETTEXTCOLOR_XMLSECTION_BTN, IDC_SETFONT_HYPERLINKSECTION_BTN, IDC_SETTEXTCOLOR_HYPERLINKSECTION_BTN, IDC_SETFONT_TAGS_BTN, @@ -805,7 +834,12 @@ theme_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam) IDC_SETFONT_SYMBOLIC_BTN, IDC_SETTEXTCOLOR_SYMBOLIC_BTN, IDC_SETTEXTCOLOR_LINENO_BTN, - IDC_SETTEXTCOLOR_LINEKEY_BTN + IDC_SETTEXTCOLOR_LINEKEY_BTN, + IDC_SETTEXTCOLORBRACESECTION_BTN, + IDC_SETTEXTCOLOR_HISTORY_BTN, + IDC_SETTEXTCOLOR_HISTORY2_BTN, + IDC_SETTEXTCOLOR_HISTORYDOC_BTN, + IDC_SETTEXTCOLOR_HISTORYDOC2_BTN, }; for (int id = 0; id < _countof(buttons); ++id) { @@ -917,6 +951,26 @@ theme_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam) SetTextColor((HDC) wParam, dlg_style.results.bgcolor); SetBkColor((HDC) wParam, dlg_style.text.bgcolor); } + else if ((HWND) lParam == hwnd_nchistory_static) + { + SetTextColor((HDC) wParam, dlg_style.nchistory.color); + SetBkColor((HDC) wParam, dlg_style.text.bgcolor); + } + else if ((HWND) lParam == hwnd_nchistory_static2) + { + SetTextColor((HDC) wParam, dlg_style.nchistory.bgcolor); + SetBkColor((HDC) wParam, dlg_style.text.bgcolor); + } + else if ((HWND) lParam == hwnd_dochistory_static) + { + SetTextColor((HDC) wParam, dlg_style.dochistory.color); + SetBkColor((HDC) wParam, dlg_style.text.bgcolor); + } + else if ((HWND) lParam == hwnd_dochistory_static2) + { + SetTextColor((HDC) wParam, dlg_style.dochistory.bgcolor); + SetBkColor((HDC) wParam, dlg_style.text.bgcolor); + } else SET_STATIC_TEXTCOLOR(hwnd_keyword_static, keywords0) else SET_STATIC_TEXTCOLOR(hwnd_keyword2_static, keywords1) else SET_STATIC_TEXTCOLOR(hwnd_string_static, string) @@ -936,7 +990,9 @@ theme_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam) else SET_STATIC_TEXTCOLOR(hwnd_cdata_static, cdata) else SET_STATIC_TEXTCOLOR(hwnd_phpsection_static, phpsection) else SET_STATIC_TEXTCOLOR(hwnd_aspsection_static, aspsection) + else SET_STATIC_TEXTCOLOR(hwnd_xmlsection_static, xmlsection) else SET_STATIC_TEXTCOLOR(hwnd_hyperlink_static, hyperlink) + else SET_STATIC_TEXTCOLOR(hwnd_bracesection_static, bracesection) else SET_STATIC_TEXTCOLOR(hwnd_caret_static, caret) else SET_STATIC_TEXTCOLOR(hwnd_symbolic_static, symbolic) return (LRESULT) brush_language; @@ -1024,6 +1080,7 @@ theme_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam) SYNC_FONT(cdata, hwnd_cdata_static, font_cdata_static) SYNC_FONT(phpsection, hwnd_phpsection_static, font_phpsection_static) SYNC_FONT(aspsection, hwnd_aspsection_static, font_aspsection_static) + SYNC_FONT(xmlsection, hwnd_xmlsection_static, font_xmlsection_static) SYNC_FONT(hyperlink, hwnd_hyperlink_static, font_hyperlink_static) break; } @@ -1069,6 +1126,36 @@ theme_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam) InvalidateRect(hwnd_result_key_static, NULL, FALSE); break; } + case IDC_SETTEXTCOLORBRACESECTION_BTN: + { + choose_text_color(hdlg, &dlg_style.bracesection.color); + InvalidateRect(hwnd_bracesection_static, NULL, FALSE); + break; + } + case IDC_SETTEXTCOLOR_HISTORY_BTN: + { + choose_text_color(hdlg, &dlg_style.nchistory.color); + InvalidateRect(hwnd_nchistory_static, NULL, FALSE); + break; + } + case IDC_SETTEXTCOLOR_HISTORY2_BTN: + { + choose_text_color(hdlg, &(dlg_style.nchistory.bgcolor)); + InvalidateRect(hwnd_nchistory_static2, NULL, FALSE); + break; + } + case IDC_SETTEXTCOLOR_HISTORYDOC_BTN: + { + choose_text_color(hdlg, &dlg_style.dochistory.color); + InvalidateRect(hwnd_dochistory_static, NULL, FALSE); + break; + } + case IDC_SETTEXTCOLOR_HISTORYDOC2_BTN: + { + choose_text_color(hdlg, &(dlg_style.dochistory.bgcolor)); + InvalidateRect(hwnd_dochistory_static2, NULL, FALSE); + break; + } } STYLE_MSG(keywords0,hwnd_keyword_static,font_keyword_static,IDC_SETFONT_KEYWORDS_BUTTON,IDC_SETTEXTCOLOR_KEYWORDS_BTN) else STYLE_MSG(keywords1,hwnd_keyword2_static,font_keyword2_static,IDC_SETFONT_KEYWORDS2_BTN,IDC_SETTEXTCOLOR_KEYWORDS2_BTN) @@ -1089,6 +1176,7 @@ theme_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam) else STYLE_MSG(cdata,hwnd_cdata_static,font_cdata_static,IDC_SETFONT_CDATA_BTN,IDC_SETTEXTCOLOR_CDATA_BTN) else STYLE_MSG(phpsection,hwnd_phpsection_static,font_phpsection_static,IDC_SETFONT_PHPSECTION_BTN,IDC_SETTEXTCOLOR_PHPSECTION_BTN) else STYLE_MSG(aspsection,hwnd_aspsection_static,font_aspsection_static,IDC_SETFONT_ASPSECTION_BTN,IDC_SETTEXTCOLOR_ASPSECTION_BTN) + else STYLE_MSG(xmlsection,hwnd_xmlsection_static,font_xmlsection_static,IDC_SETFONT_XMLSECTION_BTN,IDC_SETTEXTCOLOR_XMLSECTION_BTN) else STYLE_MSG(hyperlink,hwnd_hyperlink_static,font_hyperlink_static,IDC_SETFONT_HYPERLINKSECTION_BTN,IDC_SETTEXTCOLOR_HYPERLINKSECTION_BTN) else STYLE_MSG(symbolic,hwnd_symbolic_static,font_symbolic_static,IDC_SETFONT_SYMBOLIC_BTN,IDC_SETTEXTCOLOR_SYMBOLIC_BTN) break; diff --git a/src/eu_util.c b/src/eu_util.c index 6033710d..6deb82f3 100644 --- a/src/eu_util.c +++ b/src/eu_util.c @@ -2016,15 +2016,6 @@ util_open_file(LPCTSTR path, pf_stream pstream) return ret; } -void -util_set_undo(eu_tabpage *p) -{ - if (p && !eu_sci_call(p, SCI_GETUNDOCOLLECTION, 0 , 0)) - { - eu_sci_call(p, SCI_SETUNDOCOLLECTION, 1 , 0); - } -} - void util_setforce_eol(eu_tabpage *p) { @@ -3121,6 +3112,14 @@ util_shield_icon(HINSTANCE hinst, LPCTSTR name) return hmap; } +void +util_updateui_msg(const eu_tabpage *pnode) +{ + const sptr_t pos = eu_sci_call((eu_tabpage *)pnode, SCI_GETANCHOR, 0, 0); + eu_sci_call((eu_tabpage *)pnode, SCI_SETANCHOR, pos ? -1 : pos + 1, 0); + eu_sci_call((eu_tabpage *)pnode, SCI_SETANCHOR, pos, 0); +} + void util_update_env(eu_tabpage *pnode) { diff --git a/src/eu_util.h b/src/eu_util.h index f3d742fd..791c5d36 100644 --- a/src/eu_util.h +++ b/src/eu_util.h @@ -96,7 +96,6 @@ char* util_unix_newline(const char *in, const size_t in_size); char* util_strdup_select(eu_tabpage *pnode, size_t *text_len, size_t multiple); char* util_strdup_line(eu_tabpage *pnode, const sptr_t line_number, size_t *plen); char* util_strdup_content(eu_tabpage *pnode, size_t *plen); -void util_set_undo(eu_tabpage *p); void util_push_text_dlg(eu_tabpage *pnode, HWND hwnd); void util_enable_menu_item(const HMENU hmenu, const uint32_t m_id, const bool enable); void util_set_menu_item(const HMENU hmenu, const uint32_t m_id, const bool checked); @@ -162,6 +161,7 @@ void util_postion_xy(eu_tabpage *pnode, sptr_t pos, sptr_t *px, sptr_t *py); void util_explorer_open(eu_tabpage *pnode); void util_redraw(const HWND hwnd, const bool force); void util_symlink_destroy(eu_tabpage *pnode); +void util_updateui_msg(const eu_tabpage *pnode); void util_update_env(eu_tabpage *pnode); bool util_product_name(LPCWSTR filepath, LPWSTR out_string, size_t len); bool util_file_access(LPCTSTR filename, uint32_t *pgranted); diff --git a/src/eu_view.c b/src/eu_view.c index 67a6d682..072d85d4 100644 --- a/src/eu_view.c +++ b/src/eu_view.c @@ -84,12 +84,8 @@ on_view_switch_type(int m_type) { pnode->doc_ptr = eu_doc_get_ptr() + m_type; } - on_sci_before_file(pnode); - on_sci_after_file(pnode); - if (pnode->be_modify) - { - on_tabpage_editor_modify(pnode, "X"); - } + on_sci_before_file(pnode, false); + on_sci_after_file(pnode, false); eu_window_resize(eu_hwnd_self()); return 0; } @@ -150,7 +146,7 @@ on_view_refresh_theme(HWND hwnd) else { on_sci_init_style(p); - on_sci_after_file(p); + on_sci_after_file(p, false); } if (p->hwnd_symlist) { @@ -166,10 +162,6 @@ on_view_refresh_theme(HWND hwnd) { on_table_update_theme(p); } - if (p->be_modify) - { - on_tabpage_editor_modify(p, "X"); - } if (p->pmod) { np_plugins_setvalue(&p->plugin->funcs, &p->plugin->npp, NV_THEME_CHANGE, NULL); @@ -371,15 +363,29 @@ on_view_space_converter(HWND hwnd, eu_tabpage *pnode) } void -on_view_light_brace(void) +on_view_light_brace(eu_tabpage *p) { - eu_get_config()->eu_brace.matching ^= true; + if (p) + { + eu_get_config()->eu_brace.matching ^= true; + if (!eu_get_config()->eu_brace.matching) + { // 取消括号匹配 + eu_sci_call(p, SCI_BRACEBADLIGHT, INVALID_POSITION, INVALID_POSITION); + } + } } void -on_view_light_str(void) +on_view_light_str(eu_tabpage *p) { - eu_get_config()->m_light_str ^= true; + if (p) + { + eu_get_config()->m_light_str ^= true; + if (!eu_get_config()->m_light_str) + { // 取消指示器高亮 + eu_sci_call(p, SCI_INDICATORCLEARRANGE, 0, eu_sci_call(p, SCI_GETLENGTH, 0, 0)); + } + } } void @@ -507,6 +513,53 @@ on_view_indent_visiable(void) } } +void +on_view_history_visiable(eu_tabpage *pnode, const int wm_id) +{ + const int history_mask = (const int)eu_get_config()->history_mask; + if (pnode && wm_id > 0 && wm_id != history_mask) + { + int index = 0; + int result = IDOK; + bool affected = false; + eu_tabpage *p = NULL; + const int count = TabCtrl_GetItemCount(g_tabpages); + const uint32_t maskn = wm_id - IDM_VIEW_HISTORY_PLACEHOLDE; + for (index = 0; index < count; ++index) + { + if ((p = on_tabpage_get_ptr(index)) && !p->hex_mode && !p->pmod) + { // 先给出提示 + if (maskn > 1 && history_mask - IDM_VIEW_HISTORY_PLACEHOLDE == 1 && + (eu_sci_call(p, SCI_CANUNDO, 0, 0) || eu_sci_call(p, SCI_CANREDO, 0, 0))) + { + if (!affected) + { + MSG_BOX_SEL(IDS_HISTORY_CLEAR_UNDO, IDC_MSG_TIPS, MB_ICONSTOP | MB_OKCANCEL, result); + affected = true; + } + if (result == IDOK) + { + eu_sci_call(p, SCI_EMPTYUNDOBUFFER, 0, 0); + p == pnode ? on_toolbar_update_button() : (void)0; + } + } + } + } + if (result == IDOK) + { // 然后再显示 + eu_get_config()->history_mask = (uint32_t)wm_id; + for (index = 0; index < count; ++index) + { + if ((p = on_tabpage_get_ptr(index)) && !p->hex_mode && !p->pmod) + { + on_sci_update_history_margin(p); + } + } + util_redraw(pnode->hwnd_sc, false); + } + } +} + void on_view_zoom_out(eu_tabpage *pnode) { @@ -519,7 +572,7 @@ on_view_zoom_out(eu_tabpage *pnode) else { eu_sci_call(pnode, SCI_ZOOMOUT, 0, 0); - on_sci_update_margin(pnode); + on_sci_update_line_margin(pnode); } } } @@ -536,7 +589,7 @@ on_view_zoom_in(eu_tabpage *pnode) else { eu_sci_call(pnode, SCI_ZOOMIN, 0, 0); - on_sci_update_margin(pnode); + on_sci_update_line_margin(pnode); } } } @@ -553,7 +606,7 @@ on_view_zoom_reset(eu_tabpage *pnode) else { eu_sci_call(pnode, SCI_SETZOOM, 0, 0); - on_sci_update_margin(pnode); + on_sci_update_line_margin(pnode); pnode->zoom_level = 0; } } @@ -727,7 +780,7 @@ on_view_font_quality(HWND hwnd, int res_id) if (p) { on_sci_init_style(p); - on_sci_after_file(p); + on_sci_after_file(p, false); } } eu_window_resize(hwnd); @@ -746,7 +799,7 @@ on_view_enable_rendering(HWND hwnd, int res_id) if (p) { on_sci_init_style(p); - on_sci_after_file(p); + on_sci_after_file(p, false); } } eu_window_resize(hwnd); diff --git a/src/eu_view.h b/src/eu_view.h index 0960ea29..912a0891 100644 --- a/src/eu_view.h +++ b/src/eu_view.h @@ -40,8 +40,9 @@ void on_view_bookmark(void); void on_view_white_space(void); void on_view_line_visiable(void); void on_view_indent_visiable(void); -void on_view_light_str(void); -void on_view_light_brace(void); +void on_view_history_visiable(eu_tabpage *p, const int wm_id); +void on_view_light_str(eu_tabpage *p); +void on_view_light_brace(eu_tabpage *p); void on_view_light_fold(void); void on_view_identation(void); void on_view_result_show(eu_tabpage *pnode, int key); diff --git a/src/framework.h b/src/framework.h index a4e0d03c..029669d2 100644 --- a/src/framework.h +++ b/src/framework.h @@ -55,15 +55,15 @@ #define SCINTILLA_MARGIN_BOTTOM 0 #define MARGIN_LINENUMBER_INDEX 0 -#define MARGIN_LINENUMBER_WIDTH 40 - #define MARGIN_BOOKMARK_INDEX 1 -#define MARGIN_BOOKMARK_WIDTH 16 -#define MARGIN_BOOKMARK_MASKN 1 -#define MARGIN_BOOKMARK_VALUE 0 - #define MARGIN_FOLD_INDEX 2 +#define MARGIN_HISTORY_INDEX 3 +#define MARGIN_NUMBER_OF 4 + +#define MARGIN_LINENUMBER_WIDTH 40 +#define MARGIN_BOOKMARK_WIDTH 16 #define MARGIN_FOLD_WIDTH 14 +#define MARGIN_HISTORY_WIDTH 9 #define SYMBOLLIST_MARGIN_LEFT 2 #define SYMBOLLIST_MARGIN_RIGHT 2 diff --git a/src/targetver.h b/src/targetver.h index 0f9f5112..a695d6eb 100644 --- a/src/targetver.h +++ b/src/targetver.h @@ -30,7 +30,7 @@ // 定义版本信息 #define __EU_INFO_VERSION 4 #define __EU_INFO_VERSION_MINOR 0 -#define __EU_INFO_VERSION_PATCHLEVEL 3 +#define __EU_INFO_VERSION_PATCHLEVEL 4 #define __ORIGINAL_NAME TEXT("skylark.exe") #if !__EU_INFO_VERSION_PATCHLEVEL @@ -424,6 +424,19 @@ #define IDC_SETTEXTCOLOR_LINEKEY_BTN 21136 #define IDC_THEME_LINENO_STATIC 21137 #define IDC_THEME_LINEKEY_STATIC 21138 +#define IDC_XMLSECTION_STATIC 21139 +#define IDC_SETFONT_XMLSECTION_BTN 21140 +#define IDC_SETTEXTCOLOR_XMLSECTION_BTN 21141 +#define IDC_THEME_HISTORY_STATIC 21142 +#define IDC_SETTEXTCOLOR_HISTORY_BTN 21143 +#define IDC_THEME_HISTORY2_STATIC 21144 +#define IDC_SETTEXTCOLOR_HISTORY2_BTN 21145 +#define IDC_THEME_HISTORYDOC_STATIC 21146 +#define IDC_SETTEXTCOLOR_HISTORYDOC_BTN 21147 +#define IDC_THEME_HISTORYDOC2_STATIC 21148 +#define IDC_SETTEXTCOLOR_HISTORYDOC2_BTN 21149 +#define IDC_BRACESECTION_STATIC 21150 +#define IDC_SETTEXTCOLORBRACESECTION_BTN 21151 #define IDD_ABOUTBOX 21200 #define IDM_ABOUT 21201 @@ -1204,6 +1217,7 @@ #define IDS_LUAJIT_EVALUATION 44500 #define IDS_WIN32CALC_DESC 44501 #define IDS_UNDO_UNCLOSE_TIPS 44502 +#define IDS_HISTORY_CLEAR_UNDO 44503 #define IDD_SETTING_DIALOG 44600 #define IDC_SETTING_NAME_EDIT 44601 @@ -1214,6 +1228,17 @@ #define IDM_SEARCH_SELECT_MATCHING_ALL 44700 +#define IDM_VIEW_HISTORY_PLACEHOLDE 44710 +#define IDM_VIEW_HISTORY_NONE 44711 +#define IDM_VIEW_HISTORY_MARGIN 44713 +#define IDM_VIEW_HISTORY_DOCS 44715 +#define IDM_VIEW_HISTORY_ALL 44717 + +#define IDM_SEARCH_HISTORY_PLACEHOLDE 44720 +#define IDM_SEARCH_NAVIGATE_NEXT_HISTORY 44721 +#define IDM_SEARCH_NAVIGATE_PREV_HISTORY 44722 +#define IDM_SEARCH_NAVIGATE_CLEAR_HISTORY 44723 + // For MessageBox #define IDALWAYS 12 #define MB_YESNOALWAYS 0x0007 diff --git a/src/version_display.txt b/src/version_display.txt index c4e41f94..c5106e6d 100644 --- a/src/version_display.txt +++ b/src/version_display.txt @@ -1 +1 @@ -4.0.3 +4.0.4