tgenerate_translatable_strings.sh - tomb - the crypto undertaker
HTML git clone git://parazyd.org/tomb.git
DIR Log
DIR Files
DIR Refs
DIR README
DIR LICENSE
---
tgenerate_translatable_strings.sh (1474B)
---
1 #!/bin/zsh
2
3 cat <<EOF
4 # Tomb - The Crypto Undertaker.
5 # Copyright (C) 2007-2014 Dyne.org Foundation
6 # Denis Roio <jaromil@dyne.org>, 2013.
7 #
8 #, fuzzy
9 msgid ""
10 msgstr ""
11 "Project-Id-Version: Tomb $VERSION\n"
12 "PO-Revision-Date: `LANG=en date`\n"
13 "Last-Translator: Denis Roio <jaromil@dyne.org>\n"
14 "Language: English\n"
15 "Language-Team: Tomb developers <crypto@lists.dyne.org>\n"
16 "MIME-Version: 1.0\n"
17 "Content-Type: text/plain; charset=UTF-8\n"
18 "Content-Transfer-Encoding: 8bit\n"
19
20 EOF
21
22 # This is how we get the strings to be translated:
23 #
24 # 1. sed filters the tomb file and only shows the lines containing a print
25 # function, e.g. warning. It outputs two columns separated by a tab.
26 # The first column contains the function that is called, and the second one
27 # contains the message.
28 #
29 # 2. cat adds the line number as a new first column.
30 #
31 # 3. sort orders the lines using the third column and removes contiguous
32 # duplicate lines. The third column is the string to be translated, removing
33 # duplicates even if they are printed by different functions.
34 #
35 # 4. sort reorders the lines numerically using the first column.
36 #
37 # 5. awk reads the column-formatted input and outputs valid pot lines.
38
39 PRINTFUNC="_\(success\|warning\|failure\|message\|print\)"
40
41 sed -n -e "s/^.*$PRINTFUNC \(\".*\"\).*$/\1\t\2/p" ../../tomb \
42 | cat -n | sort -uk3 | sort -nk1 | cut -f2- | awk \
43 'BEGIN { FS = "\t" }
44 { print "#:", $1;
45 print "msgid", $2;
46 print "msgstr \"\"\n"
47 }'