intl/linux-msg.sed

Thu, 02 Nov 2000 22:29:51 +0000

author
Eric Warmenhoven <warmenhoven@yahoo.com>
date
Thu, 02 Nov 2000 22:29:51 +0000
changeset 1051
d65ac9e2224f
parent 347
20fdc56f4da4
permissions
-rw-r--r--

[gaim-migrate @ 1061]
user_info only in aim_user (saves 2k per connection); mem leak fixes in dialogs.c and multi.c; and proto_opt in aim_user (so prpls can have their own saved information per user). no way to draw protocol option selection window thingy yet, so prpls will either have to do that on their own or something. i don't know. we'll figure it out.

347
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
1 # po2msg.sed - Convert Uniforum style .po file to Linux style .msg file
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
2 # Copyright (C) 1995 Free Software Foundation, Inc.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
3 # Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
4 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
5 # This program is free software; you can redistribute it and/or modify
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
6 # it under the terms of the GNU General Public License as published by
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
7 # the Free Software Foundation; either version 2, or (at your option)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
8 # any later version.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
9 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
10 # This program is distributed in the hope that it will be useful,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
13 # GNU General Public License for more details.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
14 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
15 # You should have received a copy of the GNU General Public License
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
16 # along with this program; if not, write to the Free Software
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
17 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
18 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
19 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
20 # The first directive in the .msg should be the definition of the
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
21 # message set number. We use always set number 1.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
22 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
23 1 {
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
24 i\
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
25 $set 1 # Automatically created by po2msg.sed
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
26 h
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
27 s/.*/0/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
28 x
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
29 }
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
30 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
31 # Mitch's old catalog format does not allow comments.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
32 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
33 # We copy the original message as a comment into the .msg file.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
34 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
35 /^msgid/ {
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
36 s/msgid[ ]*"//
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
37 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
38 # This does not work now with the new format.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
39 # /"$/! {
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
40 # s/\\$//
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
41 # s/$/ ... (more lines following)"/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
42 # }
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
43 x
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
44 # The following nice solution is by
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
45 # Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de>
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
46 td
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
47 # Increment a decimal number in pattern space.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
48 # First hide trailing `9' digits.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
49 :d
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
50 s/9\(_*\)$/_\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
51 td
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
52 # Assure at least one digit is available.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
53 s/^\(_*\)$/0\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
54 # Increment the last digit.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
55 s/8\(_*\)$/9\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
56 s/7\(_*\)$/8\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
57 s/6\(_*\)$/7\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
58 s/5\(_*\)$/6\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
59 s/4\(_*\)$/5\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
60 s/3\(_*\)$/4\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
61 s/2\(_*\)$/3\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
62 s/1\(_*\)$/2\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
63 s/0\(_*\)$/1\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
64 # Convert the hidden `9' digits to `0's.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
65 s/_/0/g
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
66 x
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
67 G
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
68 s/\(.*\)"\n\([0-9]*\)/$ #\2 Original Message:(\1)/p
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
69 }
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
70 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
71 # The .msg file contains, other then the .po file, only the translations
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
72 # but each given a unique ID. Starting from 1 and incrementing by 1 for
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
73 # each message we assign them to the messages.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
74 # It is important that the .po file used to generate the cat-id-tbl.c file
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
75 # (with po-to-tbl) is the same as the one used here. (At least the order
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
76 # of declarations must not be changed.)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
77 #
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
78 /^msgstr/ {
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
79 s/msgstr[ ]*"\(.*\)"/# \1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
80 # Clear substitution flag.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
81 tb
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
82 # Append the next line.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
83 :b
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
84 N
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
85 # Look whether second part is continuation line.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
86 s/\(.*\n\)"\(.*\)"/\1\2/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
87 # Yes, then branch.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
88 ta
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
89 P
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
90 D
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
91 # Note that D includes a jump to the start!!
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
92 # We found a continuation line. But before printing insert '\'.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
93 :a
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
94 s/\(.*\)\(\n.*\)/\1\\\2/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
95 P
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
96 # We cannot use D here.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
97 s/.*\n\(.*\)/\1/
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
98 tb
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
99 }
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
100 d

mercurial