home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 3 / Meeting_Pearls_III.iso / Pearls / texmf / Install.HD < prev    next >
Text File  |  1995-08-28  |  30KB  |  1,106 lines

  1. ; $VER: PasTeX 1.4 (28.8.95)
  2. ; Script to install PasTeX from CD-ROM
  3.  
  4. (complete 0)
  5. (set old_level @user-level)
  6.  
  7.  
  8.  
  9. ;
  10. ; strings
  11. ;
  12.  
  13. (set #ask-installdir
  14. (cat "Please choose a directory, where PasTeX should be installed."
  15.      "(Note: I will create a directory 'texmf' in your directory.)"
  16. ))
  17.  
  18. (set #ask-installdir-help
  19. (cat "You have to choose a directory, where the software will be copied."
  20.      "This directory must exist, please create one, if necessary. "
  21.      "E.g. if you choose Work: I will install TeX into Work:texmf"
  22. ))
  23.  
  24.  
  25. (set #ask-instmask
  26. (cat "Which parts of the CD TeX installation should be installed"
  27.      " on your harddisk?"
  28. ))
  29.  
  30. (set #ask-instmask-help
  31. (cat "Choose which parts of the TeX installation you need.\n\n"
  32.      "PasTeX programs:\n  Main TeX programs (initex, virtex, ShowDVI, DVIprint, SpecialHost, flib, lsfont)\n\n"
  33.      "TeX utilities:\n  Various usefull programs\n\n"
  34.      "TeX format files:\n  plain.fmt, lplain.fmt ...\n\n"
  35.      "TeX inputs:\n  LaTeX, style files, ...\n\n"
  36.      "pk fonts:\n  Fonts for different resolutions/printer\n\n"
  37.      "Metafont programs:\n  programs to generate pk-fonts\n\n"
  38.      "Metafont font sources:\n  sources of the pk-files"
  39. ))
  40.  
  41. (set #copy-pt-progs
  42. (cat "Copy the core programs of PasTeX:"
  43. ))
  44.  
  45. (set #copy-pt-ger-locale
  46. (cat "Copy the german locale file for DVIprint and ShowDVI:"
  47. ))
  48.  
  49. (set #copy-pt-ita-locale
  50. (cat "Copy the italian locale file for DVIprint and ShowDVI:"
  51. ))
  52.  
  53. (set #copy-tfm
  54. (cat "Copy TFM-font files:"
  55. ))
  56.  
  57. (set #copy-rexx
  58. (cat "Copy ARexx scripts:"
  59. ))
  60.  
  61. (set #copy-rexx-namestruc
  62. (cat "Copy ARexx script 'namestruc' to REXX:"
  63. ))
  64.  
  65. (set #copy-config
  66. (cat "Copy config-files:"
  67. ))
  68.  
  69. (set #copy-icons
  70. (cat "Copy default-icons:"
  71. ))
  72.  
  73. (set #copy-ps
  74. (cat "Copy PostScript support files:"
  75. ))
  76.  
  77. (set #ask-texprgmask
  78. (cat "Which version of IniTeX/VirTeX would you like to install?"
  79. ))
  80.  
  81. (set #ask-texprgmask-help @askchoice-help
  82. )
  83.  
  84. (set #copy-req-lib
  85. (cat "Copy req.library:"
  86. ))
  87.  
  88. (set #copy-iff-lib
  89. (cat "Copy iff.library:"
  90. ))
  91.  
  92. (set #copy-post-lib
  93. (cat "Copy post.library:"
  94. ))
  95.  
  96. (set #help-req-lib
  97. (cat "ShowDVI needs the req.library for the file and color requester."
  98. ))
  99.  
  100. (set #help-iff-lib
  101. (cat "This library is needed for reading and writing IFF files."
  102. ))
  103.  
  104. (set #help-post-lib
  105. (cat "This library is needed for viewing Postscript pictures."
  106. ))
  107.  
  108.  
  109. (set #copy-tex-pool
  110. (cat "Copy TeX.pool file:"
  111. ))
  112.  
  113. (set #copy-tex-norm-progs
  114. (cat "Copy IniTeX/Virtex (small/68000):"
  115. ))
  116.  
  117. (set #copy-tex-big-progs
  118. (cat "Copy IniTeX/Virtex (big/68000):\n"
  119.      "(You have to rename the programs)"
  120. ))
  121.  
  122. (set #copy-tex-20-progs
  123. (cat "Copy IniTeX/Virtex (small/68020):\n"
  124.      "(You have to rename the programs)"
  125. ))
  126.  
  127. (set #copy-tex-big-20-progs
  128. (cat "Copy IniTeX/Virtex (big/68020):\n"
  129.      "(You have to rename the programs)"
  130. ))
  131.  
  132. (set #ask-texutil
  133. (cat "Which TeX utilities do you want to install:"
  134. ))
  135.  
  136. (set #ask-texutil-help @askoptions-help
  137. )
  138.  
  139. (set #ask-formats
  140. (cat "Which TeX format files do you want to install:"
  141. ))
  142.  
  143. (set #ask-formats-help @askoptions-help
  144. )
  145.  
  146. (set #ask-inputs
  147. (cat "Which TeX macros (additional to plainTeX and LaTeX) do you want to install:"
  148. ))
  149.  
  150. (set #ask-inputs-help @askoptions-help
  151. )
  152.  
  153. (set #ask-resolutions
  154. (cat "Which TeX pk-fonts do you want to install:"
  155. ))
  156.  
  157. (set #ask-resolutions-help @askoptions-help
  158. )
  159.  
  160. (set #ask-preview
  161. (cat "What set of preview-fonts do you want to install:"
  162. ))
  163.  
  164. (set #ask-preview-help @askchoice-help
  165. )
  166.  
  167. (set #ask-180
  168. (cat "What set of 180x180dpi fonts do you want to install:"
  169. ))
  170.  
  171. (set #ask-180-help @askchoice-help
  172. )
  173.  
  174. (set #ask-300
  175. (cat "What set of 300x300dpi fonts do you want to install:"
  176. ))
  177.  
  178. (set #ask-300-help @askchoice-help
  179. )
  180.  
  181. (set #ask-360
  182. (cat "What set of 360x360dpi fonts do you want to install:"
  183. ))
  184.  
  185. (set #ask-360-help @askchoice-help
  186. )
  187.  
  188. (set #ask-600
  189. (cat "What set of 600x600dpi fonts do you want to install:"
  190. ))
  191.  
  192. (set #ask-600-help @askchoice-help
  193. )
  194.  
  195. (set #ask-pkfax
  196. (cat "What set of 204x196dpi fax-fonts do you want to install:"
  197. ))
  198.  
  199. (set #ask-pkfax-help @askchoice-help
  200. )
  201.  
  202. (set #ask-callmf
  203. (cat "How would you like to have the automatical font generation:"
  204. ))
  205.  
  206. (set #ask-callmf-help 
  207. (cat "The PasTeX DVI-drivers supports a possibility to automatical call Metafont for"
  208.      "missing fonts. The ENV: variable CALLMF decide how Metafont will be called.\n\n"
  209.      "If there is no ENV:CALLMF, no fontcreation will be done.\n\n"
  210.      "If CALLMF points to MF:rexx/MakeBatch.rexx, a script will be created with an"
  211.      "entry for each missing font. If you call the script, all fonts which are missed"
  212.      "will be created.\n\n"
  213.      "If CALLMF points to MF:rexx/MakeTeXFont.rexx, each missing font will be created"
  214.      "immediatly. But this can take some time."
  215. ))
  216.  
  217. (set #startup-prompt
  218. (cat "I have to add some commands to your S:User-Startup."
  219. ))
  220.  
  221. (set #startup-help
  222. (cat "I have to add some commands to your S:User-Startup.\n\n"
  223.      "PasTeX needs some assigns to work:\n"
  224.      "TeX:   root directory of the TeX installation.\n"
  225.      "MF:    root directory of Metafont.\n"
  226.      "PKVol: assignment to the pk-font directories of the\n"
  227.      "       CD-ROM. Needed for font-caching\n\n"
  228.      "Two path components are added too:\n"
  229.      "TeX:bin for the normal TeX programs/utilities\n"
  230.      "MF:bin  for the Metafont programs."
  231. ))
  232.  
  233. ;--------------------------------------------------------
  234.  
  235. ;
  236. ; copyfonts procedure
  237. ;
  238.  
  239. (procedure copyfonts
  240.   (makedir pkdestdir)
  241.   (set fntlst "(cmbx10|cmbx5|cmbx7|cmcsc10|cmex10|cmmi10|cmmi5|cmmi7|cmr10|cmr5|cmr7|cmsl10|cmss10|cmssbx10|cmssi10|cmsy10|cmsy5|cmsy7|cmti10|cmtt10)")
  242.  
  243.   (if (= pkcopyopt 1)
  244.    ( ; then
  245.      ; small subset
  246.      (set fntpat (cat fntlst ".#?"))
  247.    )
  248.    ( ; else
  249.      ; all fonts (or no fonts at all!)
  250.      (set fntpat "#?")
  251.    )
  252.   )
  253.      
  254.   (if (<> pkcopyopt 0)
  255.    ( ; then 
  256.      ; there are fonts to copy
  257.      (foreach pksourcedir pkpat 
  258.        (if (= @each-type 2)
  259.         ( ; then directory
  260.           (copyfiles (source  (tackon pksourcedir @each-name))
  261.                      (dest    (tackon pkdestdir @each-name))
  262.                      (pattern fntpat))
  263.         )
  264.        )
  265.      )
  266.    )
  267.   )
  268. )
  269.  
  270.  
  271.  
  272.  
  273. ;--------------------------------------------------------
  274. ;--------------------------------------------------------
  275. ;--------------------------------------------------------
  276.  
  277.  
  278.  
  279. (set sourcedir (pathonly @icon))
  280.  
  281. (set target (askdir (prompt #ask-installdir)
  282.                     (help   #ask-installdir-help)
  283.                     (default "Work:")
  284.             )
  285. )
  286.  
  287. (set @default-dest (tackon target "texmf"))
  288. (set texbindir  (tackon @default-dest "bin"))
  289. (set formatdir  (tackon @default-dest "formats"))
  290. (set bigfmtdir  (tackon @default-dest "formats.big"))
  291. (set macdir     (tackon @default-dest "inputs"))
  292. (set fontsdir   (tackon @default-dest "fonts"))
  293. (set pkdir      (tackon fontsdir      "pk"))
  294. (set mfdir      (tackon @default-dest "metafont"))
  295. (set mfbindir   (tackon mfdir         "bin"))
  296.  
  297. (makedir @default-dest (infos))
  298.  
  299.  
  300. ;
  301. ; ---------------------------------------------------------------------------
  302. ;
  303. ; Welche Pakete sollen installiert werden?
  304. ;
  305. ; ---------------------------------------------------------------------------
  306. ;
  307.  
  308. (if (>= @user-level 1)
  309.  (set instmask (askoptions (choices "PasTeX programs"
  310.                                     "TeX utilities"
  311.                                     "TeX format files"
  312.                                     "TeX macros"
  313.                                     "pk-fonts"
  314.                                     "Metafont programs"
  315.                                     "Metafont font sources"
  316.                            )
  317.                            (prompt #ask-instmask)
  318.                            (help   #ask-instmask-help)
  319.                            (default 31)
  320.                )
  321.  )
  322.  (set instmask 31)
  323. )
  324.  
  325.  
  326.  
  327. ;
  328. ; ---------------------------------------------------------------------------
  329. ;
  330. ; Nun fuer alle zu installierenden Pakete diverse Fragen stellen
  331. ;
  332. ; ---------------------------------------------------------------------------
  333. ;
  334.  
  335.  
  336.  
  337. ;------PasTeX prg install----------
  338.  
  339. (if (IN instmask 0)
  340.       (     (if (>= @user-level 1)
  341.                   (     (set texprgmask (askoptions (choices "initex/virtex"
  342.                                                              "initex/virtex big-version"
  343.                                                              "initex/virtex 020-version"
  344.                                                              "initex/virtex big-020-version"
  345.                                                     )
  346.                                                     (prompt #ask-texprgmask)
  347.                                                     (help   #ask-texprgmask-help)
  348.                                                     (default 1)
  349.                                         )
  350.                         )
  351.                   )
  352.                   (set texprgmask 1)
  353.             )
  354.             (set installbigfmt 0)
  355.             (if (OR (IN texprgmask 1) (IN texprgmask 3))
  356.                   (     (set installbigfmt 1)
  357.                         (message "You have choosen a big version of initex and virtex.\n\n"
  358.                                  "So I will install the big-format files, too!"
  359.                         )
  360.                   )
  361.             )
  362.  
  363.       )
  364.       (    (set texprgmask 0)
  365.            (set installbigfmt 0)
  366.       )
  367.  
  368. )
  369.   
  370.  
  371.  
  372. ;------Utilities-------------------
  373. (if (IN instmask 1)
  374.  ( ; then
  375.    (user 2)
  376.    (set texutilmask (askoptions (prompt #ask-texutil)
  377.                                 (help #ask-texutil-help)
  378.                                 (choices        "bibtex"
  379.                                                 "bm2font"
  380.                                                 "c++2latex"
  381.                                                 "dvi2tty"
  382.                                                 "dvidvi"
  383.                                                 "dvilj2p"
  384.                                                 "dvips"
  385.                                                 "dvips (68040 version)"
  386.                                                 "dvitype"
  387.                                                 "lacheck (LaTeX check)"
  388.                                                 "fig / fig2dev / transfig"
  389.                                                 "makeindex"
  390.                                                 "pbmtopk / pktopbm"
  391.                                 )
  392.                                 (default 0)
  393.                     )
  394.    )
  395.    (user old_level)
  396.  )
  397.  ( ; else
  398.    (set texutilmask 0)
  399.  )
  400. )
  401.  
  402.  
  403. ;------TeX formats------------------
  404. (if (IN instmask 2)
  405.  ( ; then
  406.    (user 2)
  407.    (set formatmask (askoptions  (prompt #ask-formats)
  408.                                 (help   #ask-formats-help)
  409.                                 (choices "plain   (plain, English)"
  410.                                          "gplain  (plain, German)"
  411.                                          "lplain  (LaTeX 2.09, English)"
  412.                                          "glplain (LaTeX 2.09, German)"
  413.                                          "latex   (LaTeX2e, English+German)"
  414.                                 )
  415.                                 (default 5)
  416.                )
  417.    )
  418.  
  419.   (if (IN formatmask 4)
  420.    (message "You have choosen the LaTeX2e format files.\n\n" 
  421.             "In order to use these files, you also have to install the LaTeX2e macros!"
  422.    )
  423.   )
  424.  
  425.    (user old_level)
  426.  )
  427.  ( ; else
  428.    (set formatmask 0)
  429.  )
  430. )
  431.  
  432.  
  433. ;------TeX macros------------------
  434. (if (IN instmask 3)
  435.  ( ; then
  436.    (user 2)
  437.  
  438.    (set macdef 0)
  439.    (if (IN formatmask 4)
  440.     (set macdef 1)
  441.    )
  442.  
  443.    (set inputs (askoptions  (prompt #ask-inputs)
  444.                             (help   #ask-inputs-help)
  445.                             (choices    "all LaTeX2e macros"
  446.                                         "a4 (old LaTeX)"
  447.                                         "dinbrief"
  448.                                         "epic"
  449.                                         "eepic"
  450.                                         "script"
  451.                                         "subeqn"
  452.                                         "supertab"
  453.                                         "array"
  454.                                         "docstrip"
  455.                                         "ftnright"
  456.                                         "multicol"
  457.                                         "nfss"
  458.                                         "theorem"
  459.                                         "verbatim"
  460.                            )
  461.                            (default macdef)
  462.                )
  463.    )
  464.  
  465.   (if (IN inputs 0)
  466.    (message "You have choosen the LaTeX2e macro files.\n\n" 
  467.             "In order to use these files, you have to change the TeX configuration."
  468.             "See the difference between TeX:config/TeX.cnf and TeX-latex2e.cnf.\n\n"
  469.             "You have to use the other TEXINPUTS line.\n\n"
  470.             "If you have done this, you can call LaTeX2e with:\n"
  471.             "virtex &latex\n\n\n"
  472.             "If you get problems with the TeX capacity, use virtex-big."
  473.    )
  474.   )
  475.  
  476.    (user old_level)
  477.  
  478.  )
  479.  ( ; else
  480.    (set inputs 0)
  481.  )
  482. )
  483.  
  484. ;------pk-fonts--------------------
  485. (if (IN instmask 4)
  486.  (
  487.    (user 2)
  488.    (set resomask (askoptions (prompt #ask-resolutions)
  489.                              (help   #ask-resolutions-help)
  490.                              (choices   "preview"
  491.                                         "180x180 dpi (e.g. NEC P6 draft)"
  492.                                         "300x300 dpi (e.g. HP DeskJet)"
  493.                                         "360x360 dpi (e.g. NEC P6 high quality)"
  494.                                         "600x600 dpi (e.g. LaserJet 4)"
  495.                                         "204x196 dpi (FAX resolution)"
  496.                              )
  497.                              (default 1)
  498.                  )
  499.    )
  500.    (user old_level)
  501.  
  502.    ; preview fonts
  503.    (if (IN resomask 0)
  504.     ( ; then
  505.       (set pkprev     (askchoice (prompt #ask-preview)
  506.                                  (help   #ask-preview-help)
  507.                                  (choices "none (use font caching)"
  508.                                           "only a small subset (use font caching)"
  509.                                           "all fonts (of this CD)"
  510.                                  )
  511.                                  (default 0)
  512.                       )
  513.       )
  514.     )
  515.    )
  516.    
  517.    ; 180x180
  518.    (if (IN resomask 1)
  519.     ( ; then
  520.       (set pk180    (askchoice (prompt #ask-180)
  521.                                (help   #ask-180-help)
  522.                                 (choices "none (use font caching)"
  523.                                          "only a small subset (use font caching)"
  524.                                          "all fonts (of this CD)"
  525.                                 )
  526.                                 (default 0)
  527.                      )
  528.       )
  529.     )
  530.    )
  531.    
  532.    ; 300x300
  533.    (if (IN resomask 2)
  534.     ( ; then
  535.       (set pk300     (askchoice (prompt #ask-300)
  536.                                 (help   #ask-300-help)
  537.                                 (choices "none (use font caching)"
  538.                                          "only a small subset (use font caching)"
  539.                                          "all fonts (of this CD)"
  540.                                 )
  541.                                 (default 0)
  542.                      )
  543.       )
  544.     )
  545.    )
  546.    
  547.    ; 360x360
  548.    (if (IN resomask 3)
  549.     ( ; then
  550.       (set pk360     (askchoice (prompt #ask-360)
  551.                                 (help   #ask-360-help)
  552.                                 (choices "none (use font caching)"
  553.                                          "only a small subset (use font caching)"
  554.                                          "all fonts (of this CD)"
  555.                                 )
  556.                                 (default 0)
  557.                      )
  558.       )
  559.     )
  560.    )
  561.  
  562.    
  563.    ; 600x600
  564.    (if (IN resomask 4)
  565.     ( ; then
  566.       (set pk300     (askchoice (prompt #ask-600)
  567.                                 (help   #ask-600-help)
  568.                                 (choices "none (use font caching)"
  569.                                          "only a small subset (use font caching)"
  570.                                          "all fonts (of this CD)"
  571.                                 )
  572.                                 (default 0)
  573.                      )
  574.       )
  575.     )
  576.    )
  577.    
  578.    ; 204x196
  579.    (if (IN resomask 5)
  580.     ( ; then
  581.       (set pkfax     (askchoice (prompt #ask-pkfax)
  582.                                 (help   #ask-pkfax-help)
  583.                                 (choices "none (use font caching)"
  584.                                          "only a small subset (use font caching)"
  585.                                          "all fonts (of this CD)"
  586.                                 )
  587.                                 (default 0)
  588.                      )
  589.       )
  590.     )
  591.    )
  592.  )
  593. )
  594.  
  595. ;------mf progs--------------------
  596. (if (IN instmask 5)
  597.  ( ; then
  598.    (set callmf (askchoice (prompt  #ask-callmf)
  599.                           (help    #ask-callmf-help)
  600.                           (choices "no automatical font creation"
  601.                                    "create a batchfile for font creation"
  602.                                    "create missing fonts immediately"
  603.                           )
  604.                           (default 2)
  605.                )
  606.    )
  607.  )
  608. )
  609.  
  610. ;------mf fnt source---------------
  611.  
  612. ; hier gibt's nichts zu fragen
  613.  
  614.  
  615.  
  616. ;
  617. ; ---------------------------------------------------------------------------
  618. ;
  619. ; Nun die Pakete wirklich installieren.
  620. ; Hier nun keine User-Aktionen!
  621. ;
  622. ; ---------------------------------------------------------------------------
  623. ;
  624.  
  625.  
  626. ;------PasTeX prg install----------
  627. (if (IN instmask 0)
  628.  (
  629.   (set texbindir (tackon @default-dest "bin"))
  630.   (copyfiles (prompt  #copy-pt-progs)
  631.              (source  (tackon sourcedir "bin"))
  632.              (choices "ShowDVI" "DVIprint" "flib" "SpecialHost" "PToFront" "lsfont")
  633.              (dest    texbindir)
  634.              (infos)
  635.   )
  636.   (copyfiles (source (tackon sourcedir "bin.info"))
  637.              (dest   @default-dest)
  638.   )
  639.   (makedir   (tackon texbindir "catalogs"))
  640.   (copyfiles (prompt #copy-pt-ger-locale)
  641.              (source (tackon sourcedir "bin/catalogs/deutsch"))
  642.              (dest   (tackon texbindir "catalogs/deutsch"))
  643.              (all)
  644.   )
  645.   (copyfiles (prompt #copy-pt-ita-locale)
  646.              (source (tackon sourcedir "bin/catalogs/italiano"))
  647.              (dest   (tackon texbindir "catalogs/italiano"))
  648.              (all)
  649.   )
  650.  
  651.   (makedir   fontsdir)
  652.   (makedir   (tackon fontsdir "pk"))
  653.   (makedir   (tackon fontsdir "vf"))
  654.   (makedir   (tackon fontsdir "afm"))
  655.   (makedir   (tackon fontsdir "type1"))
  656.   (copyfiles (prompt #copy-tfm)
  657.              (source (tackon (tackon sourcedir "fonts") "tfm"))
  658.              (dest   (tackon fontsdir "tfm"))
  659.              (all)
  660.   )
  661.   
  662.   (copyfiles (prompt #copy-rexx)
  663.              (source sourcedir)
  664.              (dest   @default-dest)
  665.              (choices "rexx")
  666.              (infos)
  667.   )
  668.   
  669.   (copyfiles (prompt  #copy-rexx-namestruc)
  670.              (source  (tackon sourcedir "rexx"))
  671.              (dest    "rexx:")
  672.              (choices "namestruc")
  673.   )
  674.   
  675.   (copyfiles (prompt #copy-config)
  676.              (source sourcedir)
  677.              (dest   @default-dest)
  678.              (choices "config")
  679.              (infos)
  680.   )
  681.   
  682.   (copyfiles (prompt #copy-ps)
  683.              (source sourcedir)
  684.              (dest   @default-dest)
  685.              (choices "ps")
  686.   )
  687.   
  688.   (copyfiles (prompt #copy-icons)
  689.              (source sourcedir)
  690.              (dest   @default-dest)
  691.              (choices "icons")
  692.              (infos)
  693.   )
  694.   
  695.   (copylib (prompt #copy-req-lib)
  696.            (help   #help-req-lib)
  697.            (source (tackon (tackon sourcedir "libs") "req.library"))
  698.            (dest   "LIBS:")
  699.            (optional "nofail")
  700.            (confirm)
  701.   )
  702.   
  703.   (copylib (prompt #copy-iff-lib)
  704.            (help   #help-iff-lib)
  705.            (source (tackon (tackon sourcedir "libs") "iff.library"))
  706.            (dest   "LIBS:")
  707.            (optional "nofail")
  708.            (confirm)
  709.   )
  710.   
  711.   (copylib (prompt #copy-post-lib)
  712.            (help   #help-post-lib)
  713.            (source (tackon (tackon sourcedir "libs") "post.library"))
  714.            (dest   "LIBS:")
  715.            (optional "nofail")
  716.            (confirm)
  717.   )
  718.   
  719.   (if (<> texprgmask 0)
  720.    (
  721.     (copyfiles (prompt  #copy-tex-pool)
  722.                (source  (tackon sourcedir "pool"))
  723.                (dest    (tackon @default-dest "pool"))
  724.                (choices "tex.pool")
  725.     )
  726.    )
  727.   )
  728.  
  729.   (if (IN texprgmask 0)
  730.    (
  731.     (copyfiles (prompt #copy-tex-norm-progs)
  732.                (source (tackon sourcedir "bin"))
  733.                (choices "initex" "virtex")
  734.                (dest   texbindir)
  735.                (infos)
  736.     )
  737.   ))
  738.    
  739.   (if (IN texprgmask 1)
  740.    (
  741.     (copyfiles (prompt #copy-tex-big-progs)
  742.                (source (tackon sourcedir "bin"))
  743.                (choices "initex-big" "virtex-big")
  744.                (dest   texbindir)
  745.                (infos)
  746.                (optional)
  747.     )
  748.   ))
  749.    
  750.   (if (IN texprgmask 2)
  751.    (
  752.     (copyfiles (prompt #copy-tex-20-progs)
  753.                (source (tackon sourcedir "bin"))
  754.                (choices "initex-20" "virtex-20")
  755.                (dest   texbindir)
  756.                (infos)
  757.                (optional)
  758.     )
  759.   ))
  760.    
  761.   (if (IN texprgmask 3)
  762.    (
  763.     (copyfiles (prompt #copy-tex-big-20-progs)
  764.                (source (tackon sourcedir "bin"))
  765.                (choices "initex-big-20" "virtex-big-20")
  766.                (dest   texbindir)
  767.                (infos)
  768.                (optional)
  769.     )
  770.   ))
  771.    
  772.  )
  773. )
  774.  
  775.  
  776. (complete 4)
  777.  
  778. ;------Utilities-------------------
  779.  
  780. (set n 0)
  781. (set texutilpat "(%")
  782. (while (set texutil (select n "bibtex"
  783.                               "bm2font"
  784.                               "c++2latex"
  785.                               "dvi2tty"
  786.                               "dvidvi"
  787.                               "dvilj2p"
  788.                               "dvips"
  789.                               "dvips040"
  790.                               "dvitype"
  791.                               "lacheck"
  792.                               "fig|fig2dev|transfig"
  793.                               "makeindex"
  794.                               "pbmtopk|pktopbm"
  795.                               ""
  796.                      )
  797.        )
  798. (
  799.     (if (IN texutilmask n)
  800.     (
  801.         (set texutilpat (cat texutilpat "|" texutil))
  802.     ))
  803.     (set n (+ n 1))
  804. ))
  805.  
  806. (copyfiles (source (tackon sourcedir "bin"))
  807.            (dest texbindir)
  808.            (pattern (cat texutilpat ")")))
  809.  
  810. (if (OR (IN texutilmask 6) (IN texutilmask 7))
  811.       (
  812.             (copyfiles (source (tackon (tackon sourcedir "bin") "afm2tfm"))
  813.                        (dest texbindir)
  814.             )
  815.             (copyfiles (source (tackon (tackon (tackon sourcedir "fonts") "tfm") "PStfms"))
  816.                        (dest   (tackon (tackon fontsdir "tfm") "PStfms"))
  817.                        (all)
  818.             )
  819.             (copyfiles (source (tackon (tackon (tackon sourcedir "fonts") "vf") "PSvfs"))
  820.                        (dest   (tackon (tackon fontsdir "vf") "PSvfs"))
  821.                        (all)
  822.             )
  823.       )
  824. )
  825.  
  826.   
  827.  
  828. (complete 7)
  829.  
  830.  
  831. ;------TeX formats------------------
  832. (if (<> formatmask 0) 
  833.  ( ; then
  834.    (set n 0)
  835.    (set formatpat "(%")
  836.    (while (set format  (select n "plain.fmt|plain.log"
  837.                                  "gplain.fmt|gplain.log"
  838.                                  "lplain.fmt|lplain.log"
  839.                                  "glplain.fmt|glplain.log"
  840.                                  "latex.fmt|latex.log"
  841.                                  ""
  842.                        )
  843.           )
  844.    (
  845.       (if (IN formatmask n)
  846.       (
  847.          (set formatpat (cat formatpat "|" format))
  848.       ))
  849.       (set n (+ n 1))
  850.    ))
  851.  
  852.    (set formatpat (cat formatpat ")"))
  853.  
  854.    (if (= installbigfmt 1)
  855.      (copyfiles (source  (tackon sourcedir "formats.big"))
  856.                 (dest    bigfmtdir)
  857.                 (pattern formatpat))
  858.    )
  859.  
  860.    (copyfiles (source  (tackon sourcedir "formats"))
  861.               (dest    formatdir)
  862.               (pattern formatpat))
  863.  
  864.  
  865.  )
  866. )
  867.  
  868.  
  869. (complete 10)
  870.  
  871.  
  872.  
  873. ;------TeX macros------------------
  874. (if (IN instmask 3)
  875.  (
  876.   (set lamacdir (tackon macdir "latex209"))
  877.   (set mimacdir (tackon macdir "misc"))
  878.   
  879.   (makedir macdir (infos))
  880.   (makedir lamacdir (infos))
  881.   (makedir mimacdir (infos))
  882.  
  883.   ; sollen die LaTeX2e Makros installiert werden?
  884.   (if (IN inputs 0)
  885.    (
  886.         (makedir (tackon macdir "latex") (infos))
  887.         (makedir (tackon macdir "latex/unpacked") (infos))
  888.    )
  889.   )
  890.   
  891.  
  892.   ; erstmal die normalen Macros kopieren, die immer kopiert werden
  893.   (copyfiles (source   (tackon sourcedir "inputs"))
  894.              (dest     macdir)
  895.              (pattern  "#?.(tex|sty|one|two|hyphen)"))
  896.              
  897.   (copyfiles (source   (tackon (tackon sourcedir "inputs") "misc"))
  898.              (dest     mimacdir)
  899.              (all))
  900.              
  901.   (copyfiles (source   (tackon (tackon sourcedir "inputs") "hyphenation"))
  902.              (dest     (tackon macdir "hyphenation"))
  903.              (all))
  904.              
  905.   (copyfiles (source   (tackon (tackon (tackon sourcedir "inputs") "latex209") "general"))
  906.              (dest     (tackon lamacdir "general"))
  907.              (all))
  908.              
  909.   (copyfiles (source   (tackon (tackon (tackon sourcedir "inputs") "latex209") "sty"))
  910.              (dest     (tackon lamacdir "sty"))
  911.              (all))
  912.              
  913.  
  914.   (set n 0)
  915.   (while (set macrodir (select n "latex/unpacked"
  916.                                  "a4"
  917.                                  "dinbrief"
  918.                                  "epic"
  919.                                  "eepic"
  920.                                  "script"
  921.                                  "subeqn"
  922.                                  "supertab"
  923.                                  "distribs/array"
  924.                                  "distribs/doc"
  925.                                  "distribs/ftnright"
  926.                                  "distribs/multicol"
  927.                                  "distribs/nfss"
  928.                                  "distribs/theorem"
  929.                                  "distribs/verbatim"
  930.                                  ""
  931.                      )
  932.          )
  933.   (
  934.       (if (IN inputs n)
  935.        (
  936.          (if (> n 7)
  937.             (makedir (tackon macdir "distribs"))
  938.          )
  939.          (if (= n 0)
  940.             (makedir (tackon macdir "latex"))
  941.          )
  942.          (copyfiles (source (tackon (tackon sourcedir "inputs") macrodir))
  943.                     (dest   (tackon macdir macrodir)
  944.                     (all))
  945.          )
  946.        )
  947.       )
  948.       (set n (+ n 1))
  949.   ))
  950.  
  951.  
  952.  )
  953. )
  954.  
  955. (complete 30)
  956.  
  957.  
  958. ;------pk-fonts--------------------
  959. (if (IN instmask 4)
  960.  ( ; then
  961.    (makedir fontsdir)
  962.    (makedir pkdir)
  963.    
  964.    ; preview fonts
  965.    (if (IN resomask 0)
  966.     ( ; then
  967.       (set pkdestdir   (tackon pkdir "amiga"))
  968.       (set pksourcedir (tackon sourcedir "fonts/pk/amiga"))
  969.       (set pkcopyopt   pkprev)
  970.       (set pkpat       "#[0-9]")
  971.       (copyfonts)
  972.     )
  973.    )
  974.    ; 180 fonts
  975.    (if (IN resomask 1)
  976.     ( ; then
  977.       (set pkdestdir (tackon pkdir "nec"))
  978.       (set pksourcedir (tackon sourcedir "fonts/pk/nec"))
  979.       (set pkcopyopt   pk180)
  980.       (set pkpat       "#[0-9]")
  981.       (copyfonts)
  982.     )
  983.    )
  984.    ; 300 fonts
  985.    (if (IN resomask 2)
  986.     ( ; then
  987.       (set pkdestdir (tackon pkdir "deskjet"))
  988.       (set pksourcedir (tackon sourcedir "fonts/pk/deskjet"))
  989.       (set pkcopyopt   pk300)
  990.       (set pkpat       "#[0-9]")
  991.       (copyfonts)
  992.     )
  993.    )
  994.    ; 360 fonts
  995.    (if (IN resomask 3)
  996.     ( ; then
  997.       (set pkdestdir (tackon pkdir "nechi"))
  998.       (set pksourcedir (tackon sourcedir "fonts/pk/nechi"))
  999.       (set pkcopyopt   pk360)
  1000.       (set pkpat       "#[0-9]")
  1001.       (copyfonts)
  1002.     )
  1003.    )
  1004.    ; 600 fonts
  1005.    (if (IN resomask 2)
  1006.     ( ; then
  1007.       (set pkdestdir (tackon pkdir "ljfour"))
  1008.       (set pksourcedir (tackon sourcedir "fonts/pk/ljfour"))
  1009.       (set pkcopyopt   pk600)
  1010.       (set pkpat       "#[0-9]")
  1011.       (copyfonts)
  1012.     )
  1013.    )
  1014.    ; 204x196 fonts
  1015.    (if (IN resomask 3)
  1016.     ( ; then
  1017.       (set pkdestdir (tackon pkdir "fax"))
  1018.       (set pksourcedir (tackon sourcedir "fonts/pk/fax"))
  1019.       (set pkcopyopt   pkfax)
  1020.       (set pkpat       "#[0-9]")
  1021.       (copyfonts)
  1022.     )
  1023.    )
  1024.  )
  1025. )
  1026.  
  1027. (complete 80)
  1028.  
  1029.  
  1030. ;------mf progs--------------------
  1031. (if (IN instmask 5)
  1032.  ( ; then
  1033.    (makedir mfdir (infos))
  1034.    (copyfiles (source (tackon sourcedir "metafont"))
  1035.               (dest   mfdir)
  1036.               (pattern "(ReadMe|bases|bin|doc|pool|config|rexx|ENV)")
  1037.               (infos)
  1038.    )
  1039.    (if (= callmf 1)
  1040.     ( ; then batch
  1041.       (copyfiles (source (tackon sourcedir "metafont/ENV"))
  1042.                  (dest   "ENV:")
  1043.                  (choices "CALLMF-batch")
  1044.                  (newname "CALLMF")
  1045.       )
  1046.       (copyfiles (source (tackon sourcedir "metafont/ENV"))
  1047.                  (dest   "ENVARC:")
  1048.                  (choices "CALLMF-batch")
  1049.                  (newname "CALLMF")
  1050.       )
  1051.     )
  1052.    )
  1053.    (if (= callmf 2)
  1054.     ( ; then immediately
  1055.       (copyfiles (source (tackon sourcedir "metafont/ENV"))
  1056.                  (dest   "ENV:")
  1057.                  (choices "CALLMF"))
  1058.       (copyfiles (source (tackon sourcedir "metafont/ENV"))
  1059.                  (dest   "ENVARC:")
  1060.                  (choices "CALLMF"))
  1061.    )
  1062.   )
  1063.  )
  1064. )
  1065.  
  1066. (complete 85)
  1067.  
  1068.  
  1069. ;------mf fnt source---------------
  1070. (if (IN instmask 6)
  1071.  ( ; then
  1072.    (makedir mfdir (infos))
  1073.    (copyfiles (source (tackon sourcedir "metafont/inputs"))
  1074.               (dest   (tackon mfdir "inputs"))
  1075.               (all)
  1076.               (infos)
  1077.    )
  1078.  )
  1079. )
  1080.  
  1081.  
  1082. (complete 99)
  1083.  
  1084. (startup @app-name (prompt  #startup-prompt)
  1085.                    (help    #startup-help)
  1086.                    (command (cat "Assign TeX: \"" @default-dest "\"\n"))
  1087.                    (command (cat "Assign MF: \"" mfdir "\"\n"))
  1088.                    (command (cat "Assign PKVol: \"" (tackon sourcedir "fonts/pk/amiga") "\" \""
  1089.                                                     (tackon sourcedir "fonts/pk/nec") "\" \""
  1090.                                                     (tackon sourcedir "fonts/pk/deskjet") "\"\n"
  1091.                             )
  1092.                    )
  1093.                    (command (cat "Assign PKVol: \"" (tackon sourcedir "fonts/pk/nechi") "\" \""
  1094.                                                     (tackon sourcedir "fonts/pk/ljfour") "\" \""
  1095.                                                     (tackon sourcedir "fonts/pk/fax") "\" ADD\n"
  1096.                             )
  1097.                    )
  1098.                    (command "Path TeX:bin MF:bin ADD")
  1099. )
  1100.  
  1101. (complete 100)
  1102.  
  1103.  
  1104. (exit)
  1105.  
  1106.