From 1f5b86cc1a3b6e0bc733c78a47bb17dbc705fc51 Mon Sep 17 00:00:00 2001 From: Ikor Jefocur Date: Mon, 23 Mar 2026 17:25:37 +0300 Subject: [PATCH] fix: properly threat unescaped semicolon in langmap --- lua/langmapper/utils.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lua/langmapper/utils.lua b/lua/langmapper/utils.lua index 5845845..80e2bb2 100644 --- a/lua/langmapper/utils.lua +++ b/lua/langmapper/utils.lua @@ -223,6 +223,9 @@ local function check_langmap() local rg = '[^\\\\]\\zs,\\ze' local lm = vim.fn.join(vim.opt.langmap:get(), ',') local lm_list = vim.split(vim.fn.substitute(lm, rg, '!!!', 'g'), '!!!') + for index, item in pairs(lm_list) do + lm_list[index] = vim.fn.substitute(item, [[[^\\]\zs;\ze]], '', '') + end return function(char, tr_char) return h.some(lm_list, function(map) return map:find(char, 1, true) and map:find(tr_char, 1, true)