summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/lynx/fixtext.sh
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/usr.bin/lynx/fixtext.sh')
-rw-r--r--gnu/usr.bin/lynx/fixtext.sh10
1 files changed, 10 insertions, 0 deletions
diff --git a/gnu/usr.bin/lynx/fixtext.sh b/gnu/usr.bin/lynx/fixtext.sh
new file mode 100644
index 00000000000..1f5c1abd56b
--- /dev/null
+++ b/gnu/usr.bin/lynx/fixtext.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+# xgettext only processes literal strings. Someone with a poor sense of humor
+# decided to ignore strings in preprocessor lines. So we construct a fake
+# ".c" file with the definitions turned into literals.
+
+sed -e 's/")/");/' \
+ -e 's/^#define[ ]*\([^ ]*\)[ ]*gettext/char *\1 = gettext/' \
+ -e 's,^#define[ ]*\([^ ]*\)[ ]*\\,/* #define \1 */char *\1 = \\,' \
+ $*