home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / unix / volume26 / ltroff / patch01 < prev    next >
Encoding:
Text File  |  1993-07-15  |  3.2 KB  |  147 lines

  1. Newsgroups: comp.sources.unix
  2. From: ado@elsie.nci.nih.gov (Arthur David Olson)
  3. Subject: v26i297: ltroff - troff-classic to laserjet 4 filter (incl scalable fonts), Patch01
  4. Sender: unix-sources-moderator@gw.home.vix.com
  5. Approved: vixie@gw.home.vix.com
  6.  
  7. Submitted-By: ado@elsie.nci.nih.gov (Arthur David Olson)
  8. Posting-Number: Volume 26, Issue 297
  9. Archive-Name: ltroff/patch01
  10.  
  11. [ I changed the diffs a bit to make it apply using "patch". --vix ]
  12.  
  13. Am I abashed!  Of all the files to be missing from the distribution,
  14. it was "ltroff.sh", the driver script.  The right stuff, along with
  15. an updated Makefile, is attached.
  16.  
  17. My apologies.
  18.  
  19.                 --ado
  20.  
  21. SCCS/s.Makefile: 4.1 vs. 4.2
  22. *** Makefile    Fri Jul 16 12:27:39 1993
  23. --- Makefile    Fri Jul 16 12:27:39 1993
  24. ***************
  25. *** 1,4 ****
  26. ! # @(#)Makefile    4.1
  27.   
  28.   #    XXX--correct "or" character
  29.   #    XXX--better width tables
  30. --- 1,4 ----
  31. ! # @(#)Makefile    4.2
  32.   
  33.   #    XXX--correct "or" character
  34.   #    XXX--better width tables
  35. ***************
  36. *** 106,111 ****
  37. --- 106,112 ----
  38.               $(MANS) \
  39.               testfile \
  40.               Makefile \
  41. +             ltroff.sh \
  42.               $(HEADERS) \
  43.               $(SOURCES) \
  44.               $(COMMON) \
  45. SCCS/s.ltroff.sh: 4.1 vs. 4.2
  46. *** /dev/null    Fri Jul 16 12:27:40 1993
  47. --- ltroff.sh    Fri Jul 16 12:27:40 1993
  48. ***************
  49. *** 0 ****
  50. --- 1,96 ----
  51. + #! /bin/sh
  52. + : '@(#)ltroff.sh    4.2'
  53. + : To match the behavior of old troff, we must not use getopt.
  54. + libdir=LIBDIR
  55. + datadir=DATADIR
  56. + cart=default
  57. + tflag=0
  58. + mx=
  59. + if [ -r $libdir/troffflags ]
  60. + then
  61. +     troffflags=`cat $libdir/troffflags`" $troffflags"
  62. + else
  63. +     troffflags=
  64. + fi
  65. + while :
  66. + do
  67. +     case $# in
  68. +         0)    break ;;
  69. +     esac
  70. +     case $1 in
  71. +         --)    shift ; break ;;
  72. +         -)    break ;;
  73. +         -t)    tflag=1 ; shift ;;
  74. +         -c?*)    cart=`expr "$1" : '..\(.*\)'` ; shift ;;
  75. +         -c)    O=`basename $0`
  76. +             echo "$O: wild cartridgeless -c option" >&2
  77. +             exit 1 ;;
  78. +         -m*)    maybe=$libdir/tmac/tmac.`expr "$1" : '..\(.*\)'`
  79. +             if [ -f "$maybe" ]
  80. +             then
  81. +                 mx="$maybe"
  82. +             else
  83. +                 troffflags="$troffflags $1"
  84. +             fi
  85. +             shift ;;
  86. +         -*)    troffflags="$troffflags $1" ; shift ;;
  87. +         *)    break ;;
  88. +     esac
  89. + done
  90. + case $#$1 in
  91. +     0)  set x - ; shift ;;
  92. +     1=) O=`basename $0`
  93. +         echo "$O: usage is $O [-ccartridge] [troff flag...] [file...]" >&2
  94. +         exit 1 ;;
  95. + esac
  96. + case $cart in
  97. +     /*)    ;;
  98. +     *)    cart=$datadir/$cart ;;
  99. + esac
  100. + : The ftXX is a workaround for a 4.3BSD troff bug;
  101. + : the -rv1 avoids cut marks being spit out when using -ms.
  102. + front='/usr/bin/troff -f -t -rv1 -F$cart/ftXX $troffflags $mx $datadir/tmac "$@"'
  103. + case $tflag in
  104. +     1)    eval $front ;;        # So "lpr -t" will work later.
  105. +     0)    if [ ! -f $libdir/lj4kermhosts ]
  106. +         then
  107. +             eval $front |
  108. +                 lpr -t -1 $cart/R -2 $cart/I \
  109. +                     -3 $cart/B -4 $cart/S
  110. +             break
  111. +         fi
  112. +         case $REMOTE in
  113. +             "")    REMOTE=`who am i |
  114. +                     sed -n 's/.*(\([^.)]*\).*/\1/p'` ;;
  115. +         esac
  116. +         if fgrep -s -x -e "$REMOTE" $libdir/lj4kermhosts
  117. +         then
  118. +             eval $front | (
  119. +                 awk 'BEGIN {
  120. +                     printf "%cE%c[5i",27,27
  121. +                     exit
  122. +                 }'
  123. +                 tlc $cart
  124. +                 awk 'BEGIN {
  125. +                     printf "%cE%c[4i",27,27
  126. +                     exit
  127. +                 }'
  128. +             )
  129. +         else
  130. +             eval $front |
  131. +                 lpr -t -1 $cart/R -2 $cart/I \
  132. +                     -3 $cart/B -4 $cart/S
  133. +         fi
  134. +         ;;
  135. + esac
  136.