diff --git a/changelog.md b/changelog.md index eb203747..d6e30519 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,41 @@ This files document the changes done in Lite XL for each release. +### 2.0 + +The 2.0 version of lite contains *breaking changes* to lite, in terms of how plugin settings are structured; +any custom plugins may need to be adjusted accordingly (see note below about plugin namespacing). + +Contains the following new features: + +Full PCRE (regex) support for find and replace, as well as in language syntax definitions. Can be accessed +programatically via the lua `regex` module. + +A full, finalized subprocess API, using libreproc. Subprocess can be started and interacted with using +`Process.new`. + +Support for multi-cursor editing. Cursors can be created by either ctrl+clicking on the screen, or by using +the keyboard shortcuts ctrl+shift+up/down to create an additional cursor on the previous/next line. + +All build systems other than meson removed. + +A more organized directory structure has been implemented; in particular a docs folder which contains C api +documentation, and a resource folder which houses all build resources. + +Plugin config namespacing has been implemented. This means that instead of using `config.myplugin.a`, +to read settings, and `config.myplugin = false` to disable plugins, this has been changed to +`config.plugins.myplugin.a`, and `config.plugins.myplugin = false` repsectively. This may require changes to +your user plugin, or to any custom plugins you have. + +A context menu on right click has been added. + +Changes to how we deal with indentation have been implemented; in particular, hitting home no longer brings you +to the start of a line, it'll bring you to the start of indentation, which is more in line with other editors. + +Lineguide, and scale plugins moved into the core, and removed from `lite-plugins`. This may also require you to +adjust your personal plugin folder to remove these if they're present. + +In addition, there have been many other small fixes and improvements, too numerous to list here. + ### 1.16.11 When opening directories with too many files lite-xl now keep diplaying files and directories in the treeview. diff --git a/data/core/init.lua b/data/core/init.lua index 5c893d88..4af35921 100644 --- a/data/core/init.lua +++ b/data/core/init.lua @@ -661,8 +661,8 @@ local function check_plugin_version(filename) -- Future versions will look only at the mod-version tag. local version = line:match('%-%-%s*lite%-xl%s*(%d+%.%d+)$') if version then - -- we consider the version tag 1.16 equivalent to mod-version:1 - version_match = (version == '1.16' and MOD_VERSION == "1") + -- we consider the version tag 2.0 equivalent to mod-version:2 + version_match = (version == '2.0' and MOD_VERSION == "2") break end end diff --git a/data/plugins/autocomplete.lua b/data/plugins/autocomplete.lua index e5265b7b..c41f233d 100644 --- a/data/plugins/autocomplete.lua +++ b/data/plugins/autocomplete.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local common = require "core.common" local config = require "core.config" diff --git a/data/plugins/autoreload.lua b/data/plugins/autoreload.lua index f84d87d6..e772666f 100644 --- a/data/plugins/autoreload.lua +++ b/data/plugins/autoreload.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local config = require "core.config" local Doc = require "core.doc" diff --git a/data/plugins/contextmenu.lua b/data/plugins/contextmenu.lua index c0fe49fd..b84d114d 100644 --- a/data/plugins/contextmenu.lua +++ b/data/plugins/contextmenu.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local command = require "core.command" local keymap = require "core.keymap" diff --git a/data/plugins/detectindent.lua b/data/plugins/detectindent.lua index 9e7ed93c..45ebaee6 100644 --- a/data/plugins/detectindent.lua +++ b/data/plugins/detectindent.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local command = require "core.command" local common = require "core.common" diff --git a/data/plugins/language_c.lua b/data/plugins/language_c.lua index f55140c9..44c3b895 100644 --- a/data/plugins/language_c.lua +++ b/data/plugins/language_c.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local syntax = require "core.syntax" syntax.add { diff --git a/data/plugins/language_cpp.lua b/data/plugins/language_cpp.lua index cf3d7cd2..499a09db 100644 --- a/data/plugins/language_cpp.lua +++ b/data/plugins/language_cpp.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 pcall(require, "plugins.language_c") local syntax = require "core.syntax" diff --git a/data/plugins/language_css.lua b/data/plugins/language_css.lua index 08a256f9..222e2f94 100644 --- a/data/plugins/language_css.lua +++ b/data/plugins/language_css.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local syntax = require "core.syntax" syntax.add { diff --git a/data/plugins/language_html.lua b/data/plugins/language_html.lua index c45b43a3..cebb3f1a 100644 --- a/data/plugins/language_html.lua +++ b/data/plugins/language_html.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local syntax = require "core.syntax" syntax.add { diff --git a/data/plugins/language_js.lua b/data/plugins/language_js.lua index 671e1bd8..7556b00b 100644 --- a/data/plugins/language_js.lua +++ b/data/plugins/language_js.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local syntax = require "core.syntax" syntax.add { diff --git a/data/plugins/language_lua.lua b/data/plugins/language_lua.lua index 5df3d29f..165633b6 100644 --- a/data/plugins/language_lua.lua +++ b/data/plugins/language_lua.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local syntax = require "core.syntax" syntax.add { diff --git a/data/plugins/language_md.lua b/data/plugins/language_md.lua index ab2a7d8b..6e6e4255 100644 --- a/data/plugins/language_md.lua +++ b/data/plugins/language_md.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local syntax = require "core.syntax" syntax.add { diff --git a/data/plugins/language_python.lua b/data/plugins/language_python.lua index 849bafc1..e19caa63 100644 --- a/data/plugins/language_python.lua +++ b/data/plugins/language_python.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local syntax = require "core.syntax" syntax.add { diff --git a/data/plugins/language_xml.lua b/data/plugins/language_xml.lua index d97fa9a8..95e310bb 100644 --- a/data/plugins/language_xml.lua +++ b/data/plugins/language_xml.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local syntax = require "core.syntax" syntax.add { diff --git a/data/plugins/lineguide.lua b/data/plugins/lineguide.lua index 8ef3ee68..61debbff 100644 --- a/data/plugins/lineguide.lua +++ b/data/plugins/lineguide.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local config = require "core.config" local style = require "core.style" local DocView = require "core.docview" diff --git a/data/plugins/macro.lua b/data/plugins/macro.lua index 15d8a75e..2678363a 100644 --- a/data/plugins/macro.lua +++ b/data/plugins/macro.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local command = require "core.command" local keymap = require "core.keymap" diff --git a/data/plugins/projectsearch.lua b/data/plugins/projectsearch.lua index 45399ed0..3873da3b 100644 --- a/data/plugins/projectsearch.lua +++ b/data/plugins/projectsearch.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local common = require "core.common" local keymap = require "core.keymap" diff --git a/data/plugins/quote.lua b/data/plugins/quote.lua index 85a5874c..c714cbf8 100644 --- a/data/plugins/quote.lua +++ b/data/plugins/quote.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local command = require "core.command" local keymap = require "core.keymap" diff --git a/data/plugins/reflow.lua b/data/plugins/reflow.lua index f0051c12..cbaa31ef 100644 --- a/data/plugins/reflow.lua +++ b/data/plugins/reflow.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local config = require "core.config" local command = require "core.command" diff --git a/data/plugins/scale.lua b/data/plugins/scale.lua index 79152f8b..3e3e1a41 100644 --- a/data/plugins/scale.lua +++ b/data/plugins/scale.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local common = require "core.common" local command = require "core.command" diff --git a/data/plugins/tabularize.lua b/data/plugins/tabularize.lua index 2fa06d69..4cdae6ea 100644 --- a/data/plugins/tabularize.lua +++ b/data/plugins/tabularize.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local command = require "core.command" local translate = require "core.doc.translate" diff --git a/data/plugins/toolbarview.lua b/data/plugins/toolbarview.lua index 93102df2..bfd71138 100644 --- a/data/plugins/toolbarview.lua +++ b/data/plugins/toolbarview.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local common = require "core.common" local command = require "core.command" diff --git a/data/plugins/treeview.lua b/data/plugins/treeview.lua index 14ada70f..f9a67aaf 100644 --- a/data/plugins/treeview.lua +++ b/data/plugins/treeview.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local common = require "core.common" local command = require "core.command" diff --git a/data/plugins/trimwhitespace.lua b/data/plugins/trimwhitespace.lua index a6d3d140..79886c67 100644 --- a/data/plugins/trimwhitespace.lua +++ b/data/plugins/trimwhitespace.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local command = require "core.command" local Doc = require "core.doc" diff --git a/data/plugins/workspace.lua b/data/plugins/workspace.lua index 9c1e20c8..1edfbe1e 100644 --- a/data/plugins/workspace.lua +++ b/data/plugins/workspace.lua @@ -1,4 +1,4 @@ --- mod-version:1 -- lite-xl 1.16 +-- mod-version:2 -- lite-xl 2.0 local core = require "core" local common = require "core.common" local DocView = require "core.docview" diff --git a/resources/macos/Info.plist b/resources/macos/Info.plist index cc369cd0..70d49a02 100644 --- a/resources/macos/Info.plist +++ b/resources/macos/Info.plist @@ -19,7 +19,7 @@ NSDesktopFolderUsageDescriptionTo access, edit and index your projects. NSDownloadsFolderUsageDescriptionTo access, edit and index your projects. CFBundleShortVersionString - 1.16.10 + 2.0 NSHumanReadableCopyright © 2019-2021 Francesco Abbate