lib/scripts/yxml.pl
changeset 26575 042617a1c86c
child 26593 8375332b3c96
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/scripts/yxml.pl	Tue Apr 08 15:47:05 2008 +0200
@@ -0,0 +1,36 @@
+#
+# $Id$
+# Author: Makarius
+#
+# yxml.pl - simple XML to YXML converter
+#
+
+use strict;
+use XML::Parser;
+
+binmode(STDOUT, ":utf8");
+
+sub handle_start {
+  print chr(5), chr(6), $_[1];
+  for (my $i = 2; $i <= $#_; $i++) {
+    print ($i % 2 == 0 ? chr(6) : "=");
+    print $_[$i];
+  }
+  print chr(5);
+}
+
+sub handle_end {
+  print chr(5), chr(6), chr(5);
+}
+
+sub handle_char {
+  print $_[1];
+}
+
+my $parser = new XML::Parser(Handlers =>
+  {Start => \&handle_start,
+    End => \&handle_end,
+    Char => \&handle_char});
+
+$parser->parse(*STDIN);
+