annotate buddytrans2 @ 936:311b3f72e7b9

[gaim-migrate @ 946] Sha la la la la la la, mmm, uh huh Was down at the linux expo, starin' at this blue octane, Mr. Flynn strikes up a conversation, with a black haired CS Major. She codes in C while her father hacks, oh, she's suddenly geeky. We all want something geeky, man I wish I was geeky. So come hack in silence down through the morning, sha la la la la la la la, yeah, uhh huh, yeah. Cut up Mark Spencer, show me some of that free software, and pass me a laptop, Mr. Flynn! Believe in me! Help me believe in anything, cuz, I wanna be someone geeky! Mr. Flynn and Me, tell each other linux tales, and we stare at the beautiful penguins, it's lookin' at you, oh no no, it's looking at me. Smiling in the CRT, Mp3's on the stero, when everyone's geeky, you can never be lonely. Well I'm gonna hack a program, syntax highlighting in blue and red and black and grey. All of the beautiful colours are very very meaningingful. Well you know C is my favorite language, I felt so symbolic yesterday. If I knew R. Stallman, I'd buy myself a grey keyboard and hack! Mr. Flynn and me look into the future! We stare at the beautiful Penguins, it's lookin at me, I dont think so, It's looking at me. Hacking in the CRT, I bought myself a grey keyboard, When everbody's geeky, I will never be lonely. I will never be lonely. I'm never gonna be .. loonely. I wanna be a penguin. Eeh -- everybody wanna pass as birds, they all wanna be big big birds, but we got different reasons for that. Believe in me, cuz I don't believe in anything. And I, wanna be someone, geeky, geeky, geeky, yeaaaah! Mr. Flynn and me, storming through the expo, and we stare at the beautiful penguin! It's coming for you, man there's got to be one for me! I wanna be L. Torvalds, Mr. Flynn wishes he was someone just a little more geeky, when everybody loves you, oh son! It's just about as geeky as you can be! Mr. Flynn and me .. starin' at the penguins, when I look at slashdot I wanna see me, staring right back at me. We all wanna be big geeks, but we dont know why and we don't know how .. when everybody loves me I'll be just about as geeky as I can be ... Mr. Flynn and me.. gonna be big geeks. **bows and cheers** Thank You, Thank You. committer: Tailor Script <tailor@pidgin.im>
author Rob Flynn <gaim@robflynn.com>
date Sun, 24 Sep 2000 22:48:54 +0000
parents 9ec08f6bb944
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
524
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
1 #!/usr/bin/perl -w
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
2 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
3 # gaim
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
4 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
5 # Copyright (C) 1998 - 2000, Mark Spencer <markster@marko.net>
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
6 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
7 # This program is free software; you can redistribute it and/or modify
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
8 # it under the terms of the GNU General Public License as published by
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
9 # the Free Software Foundation; either version 2 of the License, or
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
10 # (at your option) any later version.
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
11 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
12 # This program is distributed in the hope that it will be useful,
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
15 # GNU General Public License for more details.
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
16 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
17 # You should have received a copy of the GNU General Public License
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
18 # along with this program; if not, write to the Free Software
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
20 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
21 # ---
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
22 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
23 # Buddy List Conversion Script Written By: John Assalone <assalonej@kpe.com>
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
24 # Modifications by: Rob Flynn <IM: Rob Flynn> <rflynn@blueridge.net>
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
25 # Obfuscated by: Schuyler Erle <IM: sderle> <schuyler@tridity.org>
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
26 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
27 # Use this script to convert the new WinAIM buddy list format to gaim's format.
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
28 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
29 # Syntax: ./buddytrans buddy.list gaimlist
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
30 #
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
31
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
32 use strict;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
33 use 5.003;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
34
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
35 sub translate_lst
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
36 {
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
37 my $src = shift;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
38 my ($line, $field, $name, $out);
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
39
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
40 $out = "m 1\n";
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
41
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
42 for $line (grep(/\w/o, split(/[\r\n]+/o, $src))) {
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
43 ($field, $name) = ($line =~ /^\s*(\w)\w*\s+(.+)$/go);
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
44 $name =~ y/"//d;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
45 $out .= "$field $name\n" if $field and $name;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
46 }
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
47
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
48 $out
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
49 }
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
50
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
51 sub translate_blt
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
52 {
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
53 my $src = shift;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
54 my $out = "m 1\n";
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
55 my $grp;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
56
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
57 $src =~ s/^.*?Buddy\s+{.*?list\s+{//gos;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
58
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
59 while ( $src =~ / } |
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
60 (?: "([^"]+)" | (\S+) ) \s*
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
61 (?: {(.+?)} | ([^\n]+) ) \s*/gosx ) {
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
62
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
63 last unless defined( $grp = $1 || $2 );
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
64
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
65 $out .= join( "\n", "g $grp",
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
66 map { "b $_" }
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
67 grep { defined($_) and /\S/o }
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
68 split ( /"([^"]+)"|\s+/, ($3 || $4) ) )
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
69 . "\n"
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
70 }
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
71
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
72 $out;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
73 }
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
74
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
75 sub buddy_trans
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
76 {
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
77 my ($src_file, $dest_file) = @_;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
78
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
79 die "Syntax: $0 buddy.lst gaimlist\n"
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
80 unless ($src_file and $dest_file);
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
81
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
82
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
83 open SOURCE, "<$src_file" or die "$!: $src_file\n";
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
84 my $src = do { local $/ = undef; <SOURCE> };
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
85 close SOURCE;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
86
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
87 if (-e $dest_file) {
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
88 print STDERR "$dest_file already exists! Continue? ";
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
89 unless (-t and <STDIN> =~ /^y/io) {
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
90 print STDERR "Aborted.\n";
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
91 exit -1
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
92 }
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
93 }
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
94
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
95 open DEST, ">$dest_file" or die "$!: $dest_file\n";
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
96 print DEST ($src =~ /{/os) ? translate_blt($src) : translate_lst($src);
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
97 close DEST;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
98
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
99 0;
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
100 }
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
101
9ec08f6bb944 [gaim-migrate @ 534]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
102 buddy_trans( @ARGV );