Mercurial > pidgin.yaz
view po/update.pl @ 6840:b67670ac5584
[gaim-migrate @ 7385]
Tim Ringenbach (marv_sf) writes:
" This fixes the following bugs:
Deleting a buddy didn't make the prpl realize he was no
longer on the server list (until signoff/signon), so
adding his back yet failing didn't seem to fail.
Adding a buddy that was offline showed him as not on
server list until signoff/signon or he came online.
Adding a buddy to a 2nd group actually added him a 2nd
time to his first group on the server list (which isn't
allowed, so generated an error)
This also adds an error when adding to the server list
fails for any reason except already being on the list.
This also makes the error when a buddy rejects us a
little nicer looking."
committer: Tailor Script <tailor@pidgin.im>
author | Luke Schierer <lschiere@pidgin.im> |
---|---|
date | Sun, 14 Sep 2003 21:21:32 +0000 |
parents | ea261ce36f0b |
children | 06fe6ed7f63a |
line wrap: on
line source
#!/usr/bin/perl -w # GNOME po update utility. # (C) 2000 The Free Software Foundation # # Author(s): Kenneth Christiansen $VERSION = "1.2.5 beta 2"; $LANG = $ARGV[0]; $PACKAGE = "gaim"; if (! $LANG){ print "update.pl: missing file arguments\n"; print "Try `update.pl --help' for more information.\n"; exit; } if ($LANG=~/^-(.)*/){ if ("$LANG" eq "--version" || "$LANG" eq "-V"){ print "GNOME PO Updater $VERSION\n"; print "Written by Kenneth Christiansen <kenneth\@gnome.org>, 2000.\n\n"; print "Copyright (C) 2000 Free Software Foundation, Inc.\n"; print "This is free software; see the source for copying conditions. There is NO\n"; print "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"; exit; } elsif ($LANG eq "--help" || "$LANG" eq "-H"){ print "Usage: ./update.pl [OPTIONS] ...LANGCODE\n"; print "Updates pot files and merge them with the translations.\n\n"; print " -V, --version shows the version\n"; print " -H, --help shows this help page\n"; print " -P, --pot only generates the potfile\n"; print " -M, --maintain search for missing files in POTFILES.in\n"; print "\nExamples of use:\n"; print "update.sh --pot just creates a new pot file from the source\n"; print "update.sh da created new pot file and updated the da.po file\n\n"; print "Report bugs to <kenneth\@gnome.org>.\n"; exit; } elsif($LANG eq "--pot" || "$LANG" eq "-P"){ print "Building the $PACKAGE.pot ..."; $b="xgettext --default-domain\=$PACKAGE --directory\=\.\." ." --add-comments --keyword\=\_ --keyword\=N\_" ." --files-from\=\.\/POTFILES\.in "; $b1="test \! -f $PACKAGE\.po \|\| \( rm -f \.\/$PACKAGE\.pot " ."&& mv $PACKAGE\.po \.\/$PACKAGE\.pot \)"; `$b`; `$b1`; print "...done\n"; exit; } elsif ($LANG eq "--maintain" || "$LANG" eq "-M"){ $a="find ../ -print | egrep '.*\\.(c|y|cc|c++|h|gob)' "; open(BUF2, "POTFILES.in") || die "update.pl: there's not POTFILES.in!!!\n"; print "Searching for missing _(\" \") entries...\n"; open(BUF1, "$a|"); @buf2 = <BUF2>; @buf1 = <BUF1>; if (-s "POTFILES.ignore"){ open FILE, "POTFILES.ignore"; while (<FILE>) { if ($_=~/^[^#]/o){ push @bup, $_; } } print "POTFILES.ignore found! Ignoring files...\n"; @buf2 = (@bup, @buf2); } foreach my $file (@buf1){ open FILE, "<$file"; while (<FILE>) { if ($_=~/_\(\"/o){ $file = unpack("x3 A*",$file) . "\n"; push @buff1, $file; last; } } } @bufff1 = sort (@buff1); @bufff2 = sort (@buf2); my %in2; foreach (@bufff2) { $in2{$_} = 1; } foreach (@bufff1){ if (!exists($in2{$_})){ push @result, $_ } } if(@result){ open OUT, ">POTFILES.in.missing"; print OUT @result; print "\nHere are the results:\n\n", @result, "\n"; print "File POTFILES.in.missing is being placed in directory...\n"; print "Please add the files that should be ignored in POTFILES.ignore\n"; } else{ print "\nWell, it's all perfect! Congratulation!\n"; } } else{ print "update.pl: invalid option -- $LANG\n"; print "Try `update.pl --help' for more information.\n"; } exit; } elsif(-s "$LANG.po"){ print "Building the $PACKAGE.pot ..."; $c="xgettext --default-domain\=$PACKAGE --directory\=\.\." ." --add-comments --keyword\=\_ --keyword\=N\_" ." --files-from\=\.\/POTFILES\.in "; $c1="test \! -f $PACKAGE\.po \|\| \( rm -f \.\/$PACKAGE\.pot " ."&& mv $PACKAGE\.po \.\/$PACKAGE\.pot \)"; `$c`; `$c1`; print "...done"; print "\nNow merging $LANG.po with $PACKAGE.pot, and creating an updated $LANG.po ...\n"; $d="mv $LANG.po $LANG.po.old && msgmerge $LANG.po.old $PACKAGE.pot -o $LANG.po"; $f="msgfmt --statistics $LANG.po"; `$d`; `$f`; unlink "messages"; unlink "$LANG.po.old"; exit; } else{ print "update.pl: sorry $LANG.po does not exist!\n"; print "Try `update.pl --help' for more information.\n"; exit; }