int	my_pid;
static void charToPrinter(chr)	int chr;{	static int initialized;	if (!initialized) {		FILE	*input;		int	my_pipe[2];		int	my_pid;		int	c;		register TScreen *screen = &term->screen;	    	if (pipe(my_pipe))			SysError (ERROR_FORK);		if ((my_pid = fork()) < 0)			SysError (ERROR_FORK);		if (my_pid == 0) {			close(my_pipe[1]);	/* printer is silent */			setgid (screen->gid);			setuid (screen->uid);			Printer = popen(screen->printer_command, "w");			input = fdopen(my_pipe[0], "r");			while ((c = fgetc(input)) != EOF) {				fputc(c, Printer);				if (isForm(c))					fflush(Printer);			}			exit(0);		} else {			close(my_pipe[0]);	/* won't read from printer */			Printer = fdopen(my_pipe[1], "w");		}		initialized++;	}	if (Printer != 0) {		fputc(chr, Printer);		if (isForm(chr))			fflush(Printer);	}}