








                      TThhee vvttpprriinntt FFAAQQ

                      _G_a_r_r_e_t_t _D_'_A_m_o_r_e
                _<_g_a_r_r_e_t_t_@_s_c_i_e_n_c_e_s_._s_d_s_u_._e_d_u_>
                 San Diego State University
                        Version 0.9
                       June 19, 1994


                          _A_B_S_T_R_A_C_T


          This document attempts to address some of the
     most common questions relating to the vtprint pro-
     gram.   However,  this document is still very much
     under development, so  there  may  be  significant
     omissions  or  errors.   The author apologizes for
     any such errors or omissions, and kindly  requests
     that   the  reader  pass  on  any  corrections  or
     requests for clarification or more data to him.


































                        19 June 1994





                             -2-


11..   AAbboouutt vvttpprriinntt





1.1. What is vvttpprriinntt?



     vvttpprriinntt is a program that makes it possible  to  obtain
     seamless  printing  from  a remote host to a printer at
     home without  requiring  a  TCP/IP  connection  to  the
     remote  machine  or  root access on the remote machine.
     It will communicate over a serial  line  or  a  regular
     network  connection.   Other  methods of connection may
     also be possible.

     vvttpprriinntt runs on the remote system (currently only UNIX-
     like  systems  are  supported).  Software on your local
     machine may vary considerably.


1.2. Who writes/supports vvttpprriinntt?



     The author of vvttpprriinntt is Garrett D'Amore.   He  can  be
     reached at <garrett@sciences.sdsu.edu>.  He is actively
     supporting vvttpprriinntt users, and is working on new  devel-
     opment with vvttpprriinntt.


1.3. Where do I get vvttpprriinntt?



     The  original  source  archive for vvttpprriinntt is available
     via ftp.  The current version (as of June 19, 1994)  is
     2.0  and  can be found at ftp.sdsu.edu in //ppuubb//vvttpprriinntt//
     as    a    GNU    ggzziipp    compressed    tar     archive
     (vvttpprriinntt--22..00..ttaarr..ggzz).  Currently, only a source distri-
     bution is being made available.   Also,  users  without
     ftp  capabability  should  contact  the  author to make
     author arrangements.


1.4. What do I need to use vvttpprriinntt?



     Well, to compile and install it, you  need  an  ANSI  C
     compiler.   (If your site has it installed already, you
     don't need to worry about this.)



                        19 June 1994





                             -3-


     To use it, you need a terminal (or  terminal  emulator)
     that supports printer control escape sequences.  If you
     have  a  terminal  or  emulator  that  supports  escape
     sequences  other  than  those  already in listed in the
     vvttpprriinnttccaapp file, then you will also need to  know  what
     those sequences are.  (Check your terminal's documenta-
     tion.)

     You also need (obviously) a printer and  some  sort  of
     connection to the remote host.



22..   IInnssttaalllliinngg vvttpprriinntt





2.1. How do I install vvttpprriinntt??



     If  you  are  have administrative powers on your remote
     host, then please read the file IINNSSTTAALLLL included in the
     original  source archive and follow the directions out-
     lined there.


2.2. What if I don't have root access on the remote host?



     If you don't have root access on the remote  host,  you
     can still install vvttpprriinntt.   Instead of using the "make
     install"  and  "make  install.man"  options,  use   the
     options  "make userinstall" and "make userinstall.man".
     This will place the necessary files in a suitable loca-
     tion for a user to use a private copy of vvttpprriinntt.


2.3. How do I set up my account to use vvttpprriinntt?



     If your system administrator installed a master copy of
     vvttpprriinntt, then it should be  immediately  available  for
     use.  However, if you installed a private copy, or your
     system administrator did not install it  in  a  general
     location,  you  will need to change a few environmental
     variables.

     You should verify that vvttpprriinntt is on your PATH and that
     the  man pages are locatable somewhere on your MANPATH.



                        19 June 1994





                             -4-


     If you installed a personal copy, you will also need to
     set  the  environmental variable VTPRINT to contain the
     string "-L _<_f_u_l_l _p_a_t_h _t_o _v_t_p_r_i_n_t_c_a_p_>".  You may wish to
     add  other  options to the VTPRINT variable to set up a
     default operating mode for vvttpprriinntt.   Please  read  the
     man page for details on what options are available.



33..   UUssiinngg vvttpprriinntt





3.1. What help is available for using vvttpprriinntt?



     Besides  the  FFAAQQ that you are reading now, there are a
     number of resources that  can  help  you  use  vvttpprriinntt.
     First,   there   are   the  provided  man  pages  (e.g.
     vvttpprriinntt..11).  Also there is a brief  synopsis  available
     by  typing "vtprint -h".  Finally, you can subscribe to
     the vvttpprriinntt mailing list (where vvttpprriinntt topics are dis-
     cussed,  and official announcements from the author are
     posted) by sending mail  to  "vtprint-request@sdsu.edu"
     with a line "subscribe" in the body of the message.

     Of course, you can still contact the author directly if
     you run into difficulties that  these  resources  can't
     help you solve.


3.2. How do I print text files using vvttpprriinntt?



     Type  "vtprint  _<_f_i_l_e_l_i_s_t_>".   There  are  also several
     options available.  See the man page for details on the
     options.   Alternatively,  you  can  use vvttpprriinntt as the
     receiving end of a pipe.


3.3. How do I print binary files using vvttpprriinntt?



     vvttpprriinntt does not  support  printing  of  binary  files.
     This  is because vvttpprriinntt uses certain escape codes, and
     binary files may contain escape codes which  will  con-
     fuse vvttpprriinntt (and possibly your terminal emulator).





                        19 June 1994





                             -5-


3.4. What about PostScript?



     Because  PostScript  is  just  ASCII  text, vvttpprriinntt can
     print PostScript to your printer. But it DOES NOT  know
     how   to   perform  conversion  from  regular  text  to
     PostScript, which means  that  if  your  printer  is  a
     PostScript only printer, you should set up some sort of
     filter to perform ASCII to PostScript conversion before
     piping  it to vvttpprriinntt. For example, the following shell
     script might be used to send PostScript  to  a  printer
     from a text file:

          #!/bin/sh
          while [ -n $1 ]; do { enscript $1 | vtprint; shift; }


     Some   time   in  the  _f_a_r  future,  vvttpprriinntt  may  have
     PostScript translation added to it if it  is  requested
     by sufficiently many people.



44..   UUssiinngg vvttpprriinntt wwiitthh ootthheerr UUNNIIXX--bbaasseedd pprrooggrraammss..





4.1. How do I use vvttpprriinntt with eellmm?



     In  eellmm,  press "O" (for _O_p_t_i_o_n_s).  Then press "P" (for
     _P_r_i_n_t _m_a_i_l  _u_s_i_n_g).   Now  enter  "vtprint  _[_o_p_t_i_o_n_s_]".
     I've found that the option string "-cdq" works well for
     me.  Finally, save your change by  pressing  ">".   Now
     you  can  press  "I"  to return to the main mail index.
     Pressing "P" on the mail index screen  will  print  the
     currently selected message using vvttpprriinntt.

     This  may  not  work with very old versions of eellmm.  It
     has worked find for me since about version 2.3 or so --
     I haven't tried it with any older versions.


4.2. How do I use vvttpprriinntt with mmaaiill?



     I  am  not sure if this works for all mailers, but with
     the SunOS mmaaiill, if you use  the  command  "|  _[_m_e_s_s_a_g_e_-
     _l_i_s_t_]  vtprint _[_o_p_t_i_o_n_s_]", the message will be piped to



                        19 June 1994





                             -6-


     vvttpprriinntt.  This strategy (using pipe) works for a  great
     many programs besides plain old mmaaiill.


4.3. How do I use vvttpprriinntt with ppiinnee?



     You do not need to use vvttpprriinntt with ppiinnee.  The code for
     vvttpprriinntt is derived from code the author originally  saw
     in  ppiinnee!   To  use ppiinnee, select the "attached-to-ansi"
     printer option, and print away!


4.4. How do I use vvttpprriinntt with ttiinn?



     You need to edit the "~/.tin/.tinrc" file.  There is  a
     line that looks like:

          default_printer=_[_s_o_m_e_t_h_i_n_g_]

     You  need  merely  change  the value of _s_o_m_e_t_h_i_n_g to be
     "vtprint" along with any options you want to use.  I've
     found  that ttiinn is much more finnicky about the options
     used by vvttpprriinntt, so I use the "-cdq" options.

     Incidentally, vvttpprriinntt may not work with versions of ttiinn
     prior  to 1.2pl2.  The problem was a bug in ttiinn, and is
     fixed in more recent versions.


4.5. How do I set up program X to use vvttpprriinntt?



     I have listed above some of the more commonly used pro-
     grams.   If your program isn't listed, and you think it
     should be, tell me!

     The general solution is to  check  out  your  program's
     documentation  to see if the printer program it uses is
     configurable.  If so, set it  to  "vtprint".   You  may
     need  to  use special options -- the options "-cd" will
     solve most problems for many people.

     If the printer program can't be changed,  then  see  if
     you can use a pipe from your program.  If so, just pipe
     the output you wish to print to vvttpprriinntt.







                        19 June 1994





                             -7-


55..   PPrroobblleemmss





5.1. It  just  doesn't  work!   Nothing  is  output  by  the
     printer,  or  the  text appears on my screen but not on
     the printer.



     This is probably a  problem  with  your  communications
     package.   In  all likelihood, your communications pro-
     gram may not support  required  printer  escape  codes.
     Most  MS-DOS  and  Windows  packages  do  support these
     codes, but the author only knows of TWO Macintosh  pro-
     grams  and  ONE  Unix  program that support vvttpprriinntt.  A
     simple thing to  do  is  try  "vtprint  <somefile>"  by
     itself.  If you get output, then your terminal emulator
     will probably work with vvttpprriinntt.

     Read the file CCOOMMPPAATT for  details  about  compatibility
     with various communications programs and terminals.

     Also,  make sure that your printer is set up correctly.
     Try printing from a local program, and make  sure  that
     the  default is printing device is set to your printer.
     (E.g. PRN: must be the same as the port your printer is
     on, under MS-DOS.


5.2. vvttpprriinntt  prints a single line, but additional lines are
     starting at the wrong horizontal  location,  or  aren't
     showing up at all! or Why can't I get anything past the
     first line or two to print correctly?



     You may not have CR/LF mapping set up correctly on your
     printer,  comm  package,  host,  or  vvttpprriinntt.   You can
     change the settings in any of these  locations  to  fix
     it.

     Check  out the "-c" and "-n" switches in the man pages.


5.3. Why aren't page breaks included between documents?



     Some terminal emulators don't  handle  formfeeds  prop-
     erly.   TTeelleemmaattee  44..1122 is known to eat them, and MMiiccrroo--
     pphhoonnee IIII requires a setting change to fix this problem.



                        19 June 1994





                             -8-


5.4. Why does vvttpprriinntt fail on big documents?



     vvttpprriinntt  may  choke  on some large documents if you are
     not using proper flow control settings.  Normally,  you
     should use "hardware" flow control, which is also some-
     times known as CTS/RTS flow control.   The  reason  for
     this  is  that  the  printer may fall behind the serial
     line, and the local  communications  program  needs  to
     able to tell the host "wait for me to catch up with you
     before you give me any more data -- I've  not  got  any
     room  for it at the moment!")  You could use "XON/XOFF"
     flow control, but this is discouraged as it may  inter-
     fere with some other software packages which use CTRL-S
     and CTRL-Q for other functions (such as binary transfer
     protocols).


5.5. Why  does  vvttpprriinntt  echo  text  (or  some  text) to the
     screen?



     Some communications programs or terminals  may  send  a
     copy  of  the printed file to the screen as well as the
     program.  This is legal in many cases, since many  ter-
     minal  standards  don't  define  whether screen echoing
     when printing should be done or not.




























                        19 June 1994





                             -i-


                        TTaabbllee ooff CCoonntteennttss



1.   AAbboouutt vvttpprriinntt


1.1.      What is vvttpprriinntt?


1.2.      Who writes/supports vvttpprriinntt?


1.3.      Where do I get vvttpprriinntt?


1.4.      What do I need to use vvttpprriinntt?



2.   IInnssttaalllliinngg vvttpprriinntt


2.1.      How do I install vvttpprriinntt??


2.2.      What if I don't have root  access  on  the  remote
          host?


2.3.      How do I set up my account to use vvttpprriinntt?



3.   UUssiinngg vvttpprriinntt


3.1.      What help is available for using vvttpprriinntt?


3.2.      How do I print text files using vvttpprriinntt?


3.3.      How do I print binary files using vvttpprriinntt?


3.4.      What about PostScript?



4.   UUssiinngg vvttpprriinntt wwiitthh ootthheerr UUNNIIXX--bbaasseedd pprrooggrraammss..






                        19 June 1994





                            -ii-


4.1.      How do I use vvttpprriinntt with eellmm?


4.2.      How do I use vvttpprriinntt with mmaaiill?


4.3.      How do I use vvttpprriinntt with ppiinnee?


4.4.      How do I use vvttpprriinntt with ttiinn?


4.5.      How do I set up program X to use vvttpprriinntt?



5.   PPrroobblleemmss


5.1.      It  just  doesn't  work!  Nothing is output by the
          printer, or the text appears on my screen but  not
          on the printer.


5.2.      vvttpprriinntt prints a single line, but additional lines
          are starting at the wrong horizontal location,  or
          aren't  showing up at all! or Why can't I get any-
          thing past the first line or  two  to  print  cor-
          rectly?


5.3.      Why aren't page breaks included between documents?


5.4.      Why does vvttpprriinntt fail on big documents?


5.5.      Why does vvttpprriinntt echo text (or some text)  to  the
          screen?


















                        19 June 1994


