Fix inconsistent backslash escaping

This commit is contained in:
Y. Wang 2024-03-18 02:02:27 +01:00
parent 047f229177
commit 458c8cff9d
No known key found for this signature in database
GPG Key ID: 54A05DDF18D7A0EB
2 changed files with 5 additions and 5 deletions

View File

@ -13,12 +13,12 @@ do
local function replace_single(pfx, c)
local pl = #pfx
if pl % 2 == 0 then
return pfx .. c
return pfx:sub(1, pl/2) .. c
end
return string.sub(pfx, 1, math.floor(pl/2)) .. (schartbl[c] or c)
end
unescape_string = function(str)
return (string.gsub(str, [[(\+)([abefnrtv'"?])]], replace_single):gsub([[\\]], [[\]]))
return string.gsub(str, [[(\+)([abefnrtv'"?])]], replace_single)
end
end

View File

@ -9,7 +9,7 @@ describe("PO file converter", function()
# textdomain: foo
foo=bar
baz=
#@=wh\at\@n=@=w\as\@n
#@=wh\at\\@n=@=w\as\\@n
multiline@nstrings=
with context?=oder doch nicht]], poconvert.from_string("foo", [[
msgid ""
@ -22,8 +22,8 @@ msgid "baz"
msgstr ""
#, fuzzy
msgid "=wh\\at\\\n"
msgstr "=w\\as\\\n"
msgid "=wh\\at\\\\\n"
msgstr "=w\\as\\\\\n"
msgid "multi"
"line\n"