lib/scripts/feeder.pl
author wenzelm
Wed, 19 Jan 2011 21:45:50 +0100
changeset 41616 aa002926cbf1
parent 40335 3e4bb6e7c3ca
child 47868 32c03d45fffe
permissions -rw-r--r--
potentially more robust utf8 handling (cf. 3e4bb6e7c3ca);

#
# Author: Markus Wenzel, TU Muenchen
#
# feeder.pl - feed isabelle session
#

# args

($head, $emitpid, $quit, $tail) = @ARGV;


# setup signal handlers

sub hangup { exit(0); }
$SIG{'HUP'} = "hangup";
$SIG{'INT'} = "IGNORE";


# main

#buffer lines
$| = 1;


$emitpid && (print $$, "\n");

if ($head) {
  utf8::upgrade($head);
  $head =~ s/([\x80-\xff])/\\${\(ord($1))}/g;
  print $head, "\n";
}

if (!$quit) {
  while (<STDIN>) {
    print;
  }
}

$tail && (print "$tail", "\n");


# wait forever

close STDOUT;
sleep;