From 98553652a155cf53dc4c9336e0ad282c6776cf5a Mon Sep 17 00:00:00 2001 From: Thomas Schmucker Date: Fri, 6 Mar 2026 14:18:54 +0100 Subject: neovim: kürzere und elegantere Version MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nvim/lua/plugins/ui.lua | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) (limited to 'nvim/lua') diff --git a/nvim/lua/plugins/ui.lua b/nvim/lua/plugins/ui.lua index 70140d8..7b5791e 100644 --- a/nvim/lua/plugins/ui.lua +++ b/nvim/lua/plugins/ui.lua @@ -69,22 +69,14 @@ return { vim.cmd("wincmd q") vim.cmd("wincmd p") + local row, col = unpack(vim.api.nvim_win_get_cursor(0)) local line = vim.api.nvim_get_current_line() - local col = vim.api.nvim_win_get_cursor(0)[2] + 1 - local start = 1 - while true do - local s, e = string.find(line, "%d%d%d%d%-%d%d%-%d%d", start) - if not s then break end - - if col >= s and col <= e then - local new = line:sub(1, s - 1) .. date .. line:sub(e + 1) - vim.api.nvim_set_current_line(new) - vim.api.nvim_win_set_cursor(0, { vim.fn.line("."), s + #date - 1 }) + for s, _, e in line:gmatch("()(%d%d%d%d%-%d%d%-%d%d)()") do + if col + 1 >= s and col + 1 <= e - 1 then + vim.api.nvim_buf_set_text(0, row - 1, s - 1, row - 1, e - 1, { date }) return end - - start = e + 1 end vim.api.nvim_put({ date }, "c", true, true) -- cgit v1.3