From 59ce465f6d51f1d3b8ae18a3346264006e99aab5 Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Sun, 8 Jun 2025 11:09:30 -0500 Subject: fix the line number detection with tabs If a line includes tabs add the visually added space for each tab stop to the line length in order to detect a wrapped line. --- util_test.lua | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'util_test.lua') diff --git a/util_test.lua b/util_test.lua index fd6570d..a0f4218 100755 --- a/util_test.lua +++ b/util_test.lua @@ -15,4 +15,19 @@ function test_dirname() -- luacheck: ignore 111 lunatest.assert_equal('/', util.dirname('/')) end +function test_visual_chars_in_line() -- luacheck: ignore 111 + local win = {options = {tabwidth = 4}} -- win mock + local s = '\tfo' -- visual chars == 6 + lunatest.assert_equal(util.visual_chars_in_line(win, s, #s), 6) + + s = 'f\tfo' -- visual chars == 6 + lunatest.assert_equal(util.visual_chars_in_line(win, s, #s), 6) + + s = 'fo\tfo' -- visual chars == 6 + lunatest.assert_equal(util.visual_chars_in_line(win, s, #s), 6) + + s = 'foo\tfo' -- visual chars == 6 + lunatest.assert_equal(util.visual_chars_in_line(win, s, #s), 6) +end + lunatest.run() -- cgit v1.2.3