summaryrefslogtreecommitdiff
path: root/packages/pogen
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2023-04-14 16:05:09 +0200
committerFlorian Dold <florian@dold.me>2023-04-14 16:05:09 +0200
commitf18305776167a3838245fd7d42180ba67218bc46 (patch)
tree95b56ef1528270e9d70d1cb9b5d0ebd8cedfa683 /packages/pogen
parent089c15582ed78004ade0855f1e3ee51abd9cdb45 (diff)
downloadwallet-core-f18305776167a3838245fd7d42180ba67218bc46.tar.gz
wallet-core-f18305776167a3838245fd7d42180ba67218bc46.tar.bz2
wallet-core-f18305776167a3838245fd7d42180ba67218bc46.zip
pogen: fix quoting of double quotes
Diffstat (limited to 'packages/pogen')
-rwxr-xr-xpackages/pogen/bin/pogen2
-rw-r--r--packages/pogen/example/proj1/package.json5
-rw-r--r--packages/pogen/example/proj1/src/i18n/test.pot (renamed from packages/pogen/example/messages.po)105
-rw-r--r--packages/pogen/example/proj1/src/test.ts (renamed from packages/pogen/example/test.ts)3
-rw-r--r--packages/pogen/example/proj1/src/test2.tsx (renamed from packages/pogen/example/test2.tsx)2
-rw-r--r--packages/pogen/src/potextract.ts4
6 files changed, 77 insertions, 44 deletions
diff --git a/packages/pogen/bin/pogen b/packages/pogen/bin/pogen
index a7ef879d8..3b17d1df7 100755
--- a/packages/pogen/bin/pogen
+++ b/packages/pogen/bin/pogen
@@ -1,2 +1,2 @@
-#!/usr/bin/env node
+#!/usr/bin/env -S node --trace-deprecation
require('../lib/pogen.js').main();
diff --git a/packages/pogen/example/proj1/package.json b/packages/pogen/example/proj1/package.json
index 954139ecf..97adf0f3a 100644
--- a/packages/pogen/example/proj1/package.json
+++ b/packages/pogen/example/proj1/package.json
@@ -7,5 +7,8 @@
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
- "license": "ISC"
+ "license": "ISC",
+ "pogen": {
+ "domain": "test"
+ }
}
diff --git a/packages/pogen/example/messages.po b/packages/pogen/example/proj1/src/i18n/test.pot
index 1addae3f2..8bc5ef236 100644
--- a/packages/pogen/example/messages.po
+++ b/packages/pogen/example/proj1/src/i18n/test.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-01-27 01:51+0100\n"
+"POT-Creation-Date: 2016-11-23 00:00+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,68 +17,78 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: example/test.ts:3
-#, csharp-format
+#: src/test.ts:4
+#, c-format
msgid "Hello1, World"
msgstr ""
-#: example/test.ts:4
-#, csharp-format
-msgid "Hello2, World"
+#: src/test.ts:8
+#, c-format
+msgid "Hello, quoted \"world\""
msgstr ""
-#: example/test.ts:5
-#, csharp-format
-msgid "Hello3, World"
-msgstr ""
-
-#. This is a comment and should be included
-#: example/test.ts:9
-#, csharp-format
-msgid "Hello4, World"
-msgstr ""
-
-#: example/test.ts:12
-#, csharp-format
+#: src/test.ts:15
+#, c-format
msgid "Hello5, World"
msgstr ""
-#: example/test.ts:13
-#, csharp-format
-msgid "Hello6,{0} World"
+#: src/test.ts:16
+#, c-format
+msgid "Hello6,%1$s World"
msgstr ""
#. This one has a multi line comment.
#. It has multiple lines, and a trailing empty line.
#.
-#: example/test.ts:20
-#, csharp-format
-msgid "Hello7,{0} World{1}"
+#: src/test.ts:23
+#, c-format
+msgid "Hello7,%1$s World%2$s"
msgstr ""
-#: example/test.ts:21
-#, csharp-format
-msgid "{0}Hello8,{1} World{2}"
+#: src/test.ts:23
+#, c-format
+msgid "one %1$s"
+msgid_plural "many %1$s"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/test.ts:26
+#, c-format
+msgid "one bla %1$s"
+msgid_plural "many bla %1$s"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/test.ts:31
+#, c-format
+msgid "I have %1$s apple"
+msgid_plural "I have %1$s apples"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/test.ts:35
+#, c-format
+msgid "%1$sHello8,%2$s World%3$s"
msgstr ""
#.
#. This one has a multi line comment.
#. It has multiple lines, and a leading empty line.
-#: example/test.ts:28
-#, csharp-format
+#: src/test.ts:42
+#, c-format
msgid "Hello9,\" '\" World"
msgstr ""
-#: example/test.ts:32
-#, csharp-format
+#: src/test.ts:46
+#, c-format
msgid ""
"Hello10\n"
" ,\" '\" Wo\n"
" rld"
msgstr ""
-#: example/test.ts:37
-#, csharp-format
+#: src/test.ts:51
+#, c-format
msgid ""
"Hello11 this is a long long string\n"
"it will go over multiple lines and in the pofile\n"
@@ -86,8 +96,8 @@ msgid ""
msgstr ""
#. This is a single line comment
-#: example/test.ts:42
-#, csharp-format
+#: src/test.ts:56
+#, c-format
msgid ""
"Hello12 this is a long long string it will go over multiple lines and in the "
"pofile it should be wrapped and stuff. asdf asdf asdf asdf asdf asdf asdf asdf "
@@ -95,13 +105,26 @@ msgid ""
"asdf"
msgstr ""
-#: example/test.ts:42
-#, csharp-format
+#. First occurrence
+#: src/test.ts:65
+#, c-format
msgid "This message appears twice"
msgstr ""
-#: example/test.ts:45
-#, csharp-format
-msgid "This message appears twice"
+#: src/test2.tsx:1
+#, c-format
+msgid "foo %1$s foo baz"
+msgstr ""
+
+#: src/test2.tsx:5
+#, c-format
+msgid "singular form second line"
+msgid_plural "plural form"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/test2.tsx:17
+#, c-format
+msgid "\"foo\""
msgstr ""
diff --git a/packages/pogen/example/test.ts b/packages/pogen/example/proj1/src/test.ts
index 6577fa314..2e9b4cbdd 100644
--- a/packages/pogen/example/test.ts
+++ b/packages/pogen/example/proj1/src/test.ts
@@ -1,9 +1,12 @@
declare var i18n: any;
+
console.log(i18n`Hello1, World`);
console.log(i18n.foo()`Hello2, World`);
console.log(i18n.foo()`Hello3, World`);
+console.log(i18n`Hello, quoted "world"`);
+
/* This is a comment and should be included */
console.log(i18n().foo()`Hello4, World`);
diff --git a/packages/pogen/example/test2.tsx b/packages/pogen/example/proj1/src/test2.tsx
index 4133f86fb..1c1ab49f2 100644
--- a/packages/pogen/example/test2.tsx
+++ b/packages/pogen/example/proj1/src/test2.tsx
@@ -13,3 +13,5 @@ let y = (
</i18n.TranslatePlural>
</i18n.TranslateSwitch>
);
+
+let z = <i18n.Translate>"foo"</i18n.Translate>;
diff --git a/packages/pogen/src/potextract.ts b/packages/pogen/src/potextract.ts
index e75c17d55..3e9a95ded 100644
--- a/packages/pogen/src/potextract.ts
+++ b/packages/pogen/src/potextract.ts
@@ -154,7 +154,7 @@ function processFile(
path,
line: lc.line,
comment: getComment(tte),
- template: getTemplate(tte.template).replace(/"/g, '\\"'),
+ template: getTemplate(tte.template),
};
return res;
}
@@ -172,6 +172,8 @@ function processFile(
function formatMsgLine(head: string, msg: string) {
// Do escaping, wrap break at newlines
+ console.log("head", JSON.stringify(head));
+ console.log("msg", JSON.stringify(msg));
let parts = msg
.match(/(.*\n|.+$)/g)
.map((x) => x.replace(/\n/g, "\\n").replace(/"/g, '\\"'))