diff --git a/data/plugins/regex_find_replace.lua b/data/plugins/regex_find_replace.lua deleted file mode 100644 index 65eea074..00000000 --- a/data/plugins/regex_find_replace.lua +++ /dev/null @@ -1,61 +0,0 @@ --- lite-xl 1.16 - -local core = require "core" -local command = require "core.command" -local keymap = require "core.keymap" - --- Takes the following pattern: /pattern/replace/ --- Capture groupings can be replaced using \1 through \9 -local function regex_replace_file(pattern) - local doc = core.active_view.doc - - local start_pattern = 2; - local end_pattern = 2 - repeat - end_pattern = string.find(pattern, "/", end_pattern) - until end_pattern == nil or pattern[end_pattern-1] ~= "\\" - if end_pattern == nil then - core.log("Can't find end to pattern.") - return - end - end_pattern = end_pattern - 1 - local start_replacement = end_pattern+2; - local end_replacement = end_pattern+2; - repeat - end_replacement = string.find(pattern, "/", end_replacement) - until end_replacement == nil or pattern[end_replacement-1] ~= "\\" - if end_replacement == nil then - core.log("Can't find end to replacement.") - return - end - end_replacement = end_replacement - 1 - - local re = regex.compile(pattern:sub(start_pattern, end_pattern)) - local replacement = pattern:sub(start_replacement, end_replacement) - for i=1,#doc.lines do - local old_length = #doc.lines[i] - local old_text = doc:get_text(i, 1, i, old_length) - local new_text = regex.gsub(re, old_text, replacement) - if old_text ~= new_text then - doc:insert(i, old_length, new_text) - doc:remove(i, 1, i, old_length) - end - end -end - -local initial_regex_replace = "/" -command.add("core.docview", { - ["regex:find-replace"] = function() - core.command_view:set_text(initial_regex_replace) - core.command_view:enter( - "Regex Replace (enter pattern as /old/new/)", - function(pattern) - regex_replace_file(pattern) - initial_regex_replace = pattern - end - ) - end -}) - - -keymap.add { ["ctrl+shift+r"] = "regex:find-replace" }