home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 November / PCO1197.ISO / FilesBBS / DOS / MXL226.EXE / ENGDOC.ZIP / TEMPLATE.DOC < prev    next >
Encoding:
Text File  |  1996-10-19  |  36.9 KB  |  956 lines

  1. ┌╦═╦═╦┐┌╦═╦═╦┐┌╦═══╦┐┌╦═══╦┐┌╦═══╦┐╒╦╕┌╦═══╦┐     ┌╦═══╦┐┌╦     ┌╦═══╦┐┌╦   ╦┐
  2.    ║      ║   │║  ═╦┐├╬══   │╠══╦╩┘   └╩═══╦┐     │║     │║     ├╬═══╬┤│║ ║ ║│
  3.    ║   └╩═╩═╩┘└╩═══╩┘└╩═══╩┘└╩  ╚═┘   └╩═══╩┘     │║     └╩═══╩┘└╩   ╩┘└╩═╩═╩┘
  4. ┌╦─╩───────────────────────────────────────────── └╩═══╩┘ ──── HATTINGEN ───╦┐
  5. │║                      » HOME OF MAXLIST / MAXF'REQ «                      ║│
  6. └╩══════════════════════════════════════════════════════════════════════════╩┘
  7.   FidoNet 2:2444/6001 (V34) ■ 2:2444/6002 ∙ 2:2444/6003 ∙ 2:2444/6004 (ISDN)
  8.  
  9.  
  10.           ┌──────┐ ┌──────┐ ┌─┐  ┌─┐ ┌─┐      ┌─┐ ┌──────┐ ┌───────┐
  11.           └──────┘ └──────┘ └─┘  └─┘ └─┘      └─┘ └──────┘ └───────┘
  12.           ┌─┐┌┐┌─┐ ┌──────┐   ┌──┐   ┌─┐      ┌─┐ ┌──────┐    ┌─┐
  13.           │ │└┘│ │ │ ┌──┐ │  ┌┘┌┐└┐  │ │      │ │ └────┐ │    │ │
  14.           │ │  │ │ │ │  │ │ ┌┘┌┘└┐└┐ │ └────┐ │ │ ┌────┘ │    │ │
  15.           └─┘  └─┘ └─┘  └─┘ └─┘  └─┘ └──────┘ └─┘ └──────┘    └─┘
  16.      ■ MaxList v2.25 ∙ 29-Jun-96             OS/2, DOS und DPMI Version ■
  17.      ■ Template controlled Filebaseprozessor for Maximus v2.x and v3.x  ■
  18.      ────────────────────────────────────────────────────────────────────
  19.      ■ (c) 1994-96 by Wilfried Brinkmann, Germany - All rights reserved ■
  20.  
  21.  
  22.            ───────────────────────────────────────────────────────
  23.             Documentation and Overview of MaxList Template-Tokens
  24.            ═══════════════════════════════════════════════════════
  25.  
  26.     MaxList uses templates for ALL output in file lists and FILES.BBS files.
  27.     They contain the information how to format the header and the single
  28.     lines.
  29.  
  30.  
  31.                           Common Information
  32.                          ────────────────────
  33.  
  34.     There is no limit in the length of a line for template files as well as 
  35.     for file descriptions. A template or one file description may be maximum
  36.     8 kB in total. If this value is exceeded, they will be trucated SILENTLY
  37.     to a length of 8192 characters!
  38.     The internal buffer of course is not limited to 8 kB, in order to be able
  39.     to perform reformatting.
  40.  
  41.     As it is likely that a large amount of tokens may occur on one line, the
  42.     text will soon get unreadable or unprocessable if you write all in one
  43.     line.
  44.     
  45.     Therefore it is possible to insert a continuation character in order to
  46.     have physical line feeds in a file without breaking the logical line.
  47.     This means that a logical line can extend to several lines of text.
  48.     The continuation characted is a backslash "\".
  49.     
  50.     Example:
  51.         @Format(@FileName @FileSize(#######) \
  52.         @FileDate(DD.MM.YYF) \
  53.         @Adjust("@AreaName",l,15,t) @Adjust("@FilePath",l,32,t))
  54.  
  55.     The whole block above is displayed in one line later on.
  56.     The \ character, as well as any following blank or CR/LF is removed.
  57.     At the end of the whole string ONE CR/LF is added, nevertheless how
  58.     many of them occur in the text.
  59.     
  60.     If you want to use the \ itself, you have to quote it by writing two
  61.     backslashes (\\). This will translate to one backslash in display.
  62.     "Backslash \\ in text" thus translates to "Backshlash \ in text".
  63.  
  64.     It is possible to use MECCA color tokens in the BBS header templates.
  65.     They are translated by MaxList.
  66.     The following MECCA tokens are available:
  67.     
  68.       [cls]   - clear screen
  69.  
  70.     Colors:
  71.       Foreground and Background       Foreground only
  72.       -------------------------       ---------------
  73.       [black]                         [darkgray]
  74.       [blue]                          [lightblue]
  75.       [green]                         [lightgreen]
  76.       [cyan]                          [lightcyan]
  77.       [red]                           [lightred]
  78.       [magenta]                       [lightmagenta]
  79.       [brown]                         [yellow]
  80.       [gray]                          [white]
  81.  
  82.     In order to set foreground and background color simultaneously you MUST
  83.     use the token ON, e.g. [white ON blue].
  84.  
  85.     The CLS token may be grouped together with color tokens, e.g.
  86.     [CLS red on blue]. 
  87.     If you need the bracket ([) as normal character in the text, you have to
  88.     double it ([[), e.g. [CLS WHITE][[White] [[[YELLOW]Yellow[WHITE]].
  89.  
  90.     MaxList automatically adds the MECCA token [left cr lf] at the end of
  91.     each line in the BBS header. By this sequence of characters MaxList
  92.     recognizes the header and so is able to remove it again.
  93.  
  94.     No extensive syntax check is done by MaxList. So the result may be 
  95.     unpredictable if you miswrote some tokens or made errors when setting
  96.     the brackets.
  97.  
  98.     Therefore note once again:
  99.  
  100.         SET THE DEBUG MODE OF MAXLIST FOR YOUR FIRST TRIES !!!!
  101.  
  102.     This is the only possibility to avoid changes to FILES.BBS files.
  103.     MaxList will then place it's output in a file named FILES.$$$ instead 
  104.     of changing the original FILES.BBS.
  105.  
  106.  
  107.  
  108.                               The Templates
  109.                              ───────────────
  110.  
  111.     The following section lists all templates, their function and their valid
  112.     place.
  113.  
  114.     Five types of templates are available: BBS, AREA, GROUP, REPORT and TITLE.
  115.     The types AREA, GROUP and REPORT each seperate into HEADER and FOOTER, so
  116.     that eight templates are available in total.
  117.  
  118.     The template types HEADER of BBS, AREA and GROUP each contain a statement
  119.     how the single file description lines should look like.
  120.  
  121.     This statement reads @FORMAT(@ID @ID ... @ID) and it MUST be the last
  122.     statement in this template.
  123.     If you do not want to have a header you have to write this statement
  124.     (only this statement) in either case!
  125.  
  126.     The arguments (@ID) have to consist of the single tokens for file name,
  127.     file size, date, description etc.
  128.     The possible arguments depend on the kind of template. Unresolvable 
  129.     tokens are removed. If they are written within an @ADJUST statement, an
  130.     empty string is used instead then!
  131.     
  132.  
  133.  
  134.     The BBSHEADER Template
  135.     ──────────────────────
  136.     You may specify a special header for the FILES.BBS files for each area 
  137.     or group. But take into consideration that ALL templates must permanently
  138.     remain in main memory. So things are limited under DOS. 
  139.  
  140.     At least one BBSHEADER should be specified. Otherwise MaxList will use 
  141.     an internal one which may not be altered.
  142.     The internal BBSHEADER has the following format:
  143.     
  144.         @Format(@FileName FileDesc(31, 79))
  145.  
  146.  
  147.     IMPORTANT NOTE FOR MAXIMUS 3.0 USERS!
  148.     ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ 
  149.  
  150.     MaxList supports a special kind of FILES.BBS format which contains both
  151.     file size and file date in addition to the normal entries.
  152.  
  153.     This special format is defined by a 
  154.         TYPE  DATELIST
  155.     statement in the area definition block in Maximus 3.0.
  156.  
  157.     In this special case a template is needed where the @FORMAT statement
  158.     looks like this:
  159.  
  160.         @Format(@FileName \
  161.         @FileSize(#######_f)@FileDate(MM-DD-YY__)\
  162.         @FreeDwnLd@DlCounter@FileDesc(31,79))
  163.  
  164.     You may change the border size at @FILEDESC to your need. Furthermore
  165.     @FREEDWNLD and @DLCOUNTER may be left out, if you do not need them.
  166.     The most simple @FORMAT statement should then look like this:
  167.  
  168.         @Format(@FileName \
  169.         @FileSize(#######_f)@FileDate(MM-DD_YY__)@FileDesc(31,79))
  170.  
  171.     NOTE:
  172.         You may also use this @FORMAT statement for areas which are not of
  173.         TYPE DATELIST. In this case MaxList will NOT print any file size or
  174.         date in the FILES.BBS files. This way it is possible to have ONE
  175.         template for ALL areas! This template is located in the archive as
  176.         BBSHDR3.TPL.
  177.  
  178.  
  179.     The LISTTITLE Template
  180.     ──────────────────────
  181.     Optional you may use a title template. So it is possible to insert e.g.
  182.     the list type immediately after your logo (ListHeaderFile) into the list.
  183.     I use a graphical font for this title which places the listname centered.
  184.     Furthermore the date, time and day as well as the new files flags are 
  185.     inserted here if the corresponding tokens are given. For an example see
  186.     the file TITLE.TPL
  187.  
  188.  
  189.     The AREA Templates (AreaHeader / AreaFooter)
  190.     ────────────────────────────────────────────
  191.     You may specify two templates for each area: AreaHeader and AreaFooter.
  192.     The footer is optional. A @FORMAT statement MUST be present in the
  193.     header.
  194.  
  195.     The header is printed at the beginning of each area. It is followed by
  196.     the single file description entries. At the end of each area a footer
  197.     may be printed OPTIONALLY.
  198.  
  199.     When the DUPE list is generated, the AreaHeader and the @FORMAT statements
  200.     contained herein are used to list the dupe files. For an example see the
  201.     template file DUPEHDR.TPL.
  202.  
  203.  
  204.     The GROUP Templates (GroupHeader / GroupFooter)
  205.     ───────────────────────────────────────────────
  206.     These two templates are required by the report part of a list.
  207.     The GroupHeader must contain a @FORMAT statement, the GroupFooter is
  208.     optional.
  209.  
  210.     The GroupHeader is printed before any area of this group, followed by
  211.     all area entries for that group.
  212.  
  213.  
  214.     The REPORT Templates (ReportHeader / ReportFooter)
  215.     ──────────────────────────────────────────────────
  216.     
  217.     These two templates are optional.
  218.     ReportHeader is written to the beginning of the statistics of a list,
  219.     ReportFooter at the end, immediately before my copyright notice.
  220.     In the report templates no @FORMAT statement is required.
  221.  
  222.  
  223.  
  224.     Schematic Structure of a File List
  225.     ──────────────────────────────────
  226.  
  227.         ┌───────────────────────────────────┐
  228.         │ FileListHeader (Optional)         │
  229.         │ ...                               │   
  230.         ├───────────────────────────────────┤
  231.         │ ListTitle      (Optional)         │
  232.         │ Date, time, name, flags           │
  233.         ╞═══════════════════════════════════╡ ──┐ 
  234.         │ AreaHeader with @Format statement │   │
  235.         ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┤   │
  236.         │ File  Description                 │   │
  237.         │   ...                             │   │
  238.         │ File  Description                 │   ├── Omitted at report lists.
  239.         ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┤   │   Dupe lists will contain
  240.         │ AreaFooter     (Optional)         │   │   only one AreaHeader.
  241.         ├───────────────────────────────────┤   │
  242.         │ ... additional Areas              │   │
  243.         ╞═══════════════════════════════════╡ ══╡  
  244.         │ ReportHeader   (Optional)         │   │
  245.         ├───────────────────────────────────┤   │
  246.         │ GroupHeader with @Format statement│   │
  247.         ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┤   │
  248.         │ Areas of this Group               │   │
  249.         │   ...                             │   ├── Only when AllAreaReport
  250.         │ Areas of this Group               │   │   set to YES.
  251.         ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┤   │   Always at report lists.
  252.         │ GroupFooter    (Optional)         │   │
  253.         ├───────────────────────────────────┤   │
  254.         │ ... additional Groups             │   │
  255.         ├───────────────────────────────────┤   │
  256.         │ ReportFooter   (Optional)         │   │
  257.         ╞═══════════════════════════════════╡ ──┘
  258.         │ FileListFooter (Optional)         │
  259.         │ ...                               │   
  260.         ├───────────────────────────────────┤
  261.         │        Copyright Logo             │
  262.         └───────────────────────────────────┘
  263.  
  264.  
  265.  
  266.     Example of a new files list with title, AreaHeader, GroupHeader and
  267.     ───────────────────────────────────────────────────────────────────
  268.     ReportHeader:
  269.     ─────────────
  270.  
  271.  
  272.                  █▄  █ █▀▀▀▀ █   █ █▀▀▀▀ ▀█▀ █     █▀▀▀▀ ▄▀▀▀▀                 
  273.         ▀▀▀▀▀    █ ▀▄█ █▀▀▀  █▄▀▄█ █▀▀▀   █  █     █▀▀▀   ▀▀▀▄    ▀▀▀▀▀        
  274.                  ▀   ▀ ▀▀▀▀▀ ▀   ▀ ▀     ▀▀▀ ▀▀▀▀▀ ▀▀▀▀▀ ▀▀▀▀                  
  275.      This list was created at 22:50 on Monday, 05.Feb 96 by MAXLIST+ v2.20
  276.  
  277.                       All files are less than 30 days old.                     
  278.  
  279. ═══════════════════════════════════════════════════════════════════════════════
  280.  ▄▀▀▀▄ ║ Local Echo
  281.   ▄▀▀  ║ Available: 3 files (236.918 Bytes)
  282.  ▀▀▀▀▀ ║ Newest: FRO_PWAD.ZIP  (03.09.1995, 79084 Bytes)
  283. ───────────────────────────────────────────────────────────────────────────────
  284. Filename        Size    Date   Description
  285. ──────────── ─────── ───────── ────────────────────────────────────────────────
  286. CTFILES.ZIP    24944 01.09.95  Alle neuen C't Files
  287. FRO_PWAD.ZIP   79084 03.09.95  Frodo PWAD for DOOM2 and Heretic
  288.                                DOOM2 level 1, 2, and 3
  289.                                Heretic e1m1, m2, and m3
  290. GERFAQ4A.ZIP  132890 29.08.95  FAQ zu OS/2 Warp 3, deutschsprachige
  291.                                Ausgabe 3a v. 03.03.95, TXT und INF.
  292.  
  293. ╒═════════╤═════════════════════════════════════════════════════════╤═════════╕
  294. │░▒▓███▓▒░│                     NEWFILES SUMMARY                    │░▒▓███▓▒░│
  295. │░▒▓███▓▒░├─────────────────────────────────────────────────────────┤░▒▓███▓▒░│
  296. │░▒▓███▓▒░│        72 files (5.553 Kb) in 24 Areas (6 Groups)       │░▒▓███▓▒░│
  297. ╘═════════╧═════════════════════════════════════════════════════════╧═════════╛
  298.  
  299. Group: GFD.APP - Gfd-Net Applicationen                                         
  300. Available: 9 files (694 Kb) in 3 areas                                         
  301. ═══════════════════════════════════════════════════════════════════════════════
  302. Area              Description                                  Files      Bytes
  303. ───────────────── ─────────────────────────────────────────── ────── ──────────
  304. GFD.APP.ARC       Archiver                                         3       231K
  305. GFD.APP.BACK      Backup Tools                                     3       231K
  306. GFD.APP.EDIT      Editoren                                         3       231K
  307.  
  308. Group: GFD.FNT - Gfd-Net Mailbox Programm                                      
  309. Available: 18 files (1.388 Kb) in 6 areas                                      
  310. ═══════════════════════════════════════════════════════════════════════════════
  311. Area              Description                                  Files      Bytes
  312. ───────────────── ─────────────────────────────────────────── ────── ──────────
  313. GFD.FNT.BBS       BBS Programme                                    3       231K
  314. GFD.FNT.DOOR      Door Programme                                   3       231K
  315. GFD.FNT.MISC      Diverse Tools                                    3       231K
  316. GFD.FNT.PNT       Pointprogramme                                   3       231K
  317. GFD.FNT.TOSS      Tosser                                           3       231K
  318.  
  319. Available: 3 files (231 Kb) in 1 area                                     
  320. ═══════════════════════════════════════════════════════════════════════════════
  321. Area              Description                                  Files      Bytes
  322. ───────────────── ─────────────────────────────────────────── ────── ──────────
  323. 2                 Lokales Echo                                     3       231K
  324.  
  325.    ╒═══════════════════════════════════════════════════════════════════════╕
  326.    │         This list was produced by MAXLIST+ (Version 2.20∙OS2)         │
  327.    │   Copyright 1994/95 by Wilfried Brinkmann, 45529 Hattingen, Germany   │
  328.    ╘═══════════════════════════════════════════════════════════════════════╛
  329.                        Registered to: Wilfried Brinkmann                       
  330.  
  331.  
  332.  
  333.                         The Template Tokens
  334.                        ─────────────────────
  335.  
  336.     The following section describes all tokens available in the templates.
  337.     For each token the valid template types or valid sections in an 
  338.     template are explained.
  339.  
  340.     Sometimes the same tokens will have a different result. This occurs
  341.     especially at sums (e.g. @FILES token).
  342.  
  343.     EVERY token starts with a "@" (the german word for this character is 
  344.     Klammeraffe, which would translate to "bracket monkey" in english, 
  345.     but this surely is not the right translation. Sorry, the translator ;)
  346.     If a token has parameters, these have to be put in paranthesis "( )".
  347.     The single parameters within the paranthesis are seperated by a comma ",".
  348.     
  349.     There is no difference in upper/lower case writing. The tokens may be
  350.     stacked into each other as you like, i.e. further tokens may be used as
  351.     parameters of one token.
  352.  
  353.         Example:  @Adjust(@Adjust(@Adjust("Test1",l,5),l,10),r,20)
  354.  
  355.     Optional parameters are diplayed in [brackets]. The brackets themselves
  356.     of course have NOT be given in a template.
  357.     When several parameters are allowed but not all of them are needed, the
  358.     unused part may be omitted. Nevertheless you have to give the commas then.
  359.  
  360.         Example:  @FileDesc(31,79,,TF)
  361.  
  362.  
  363.  
  364.     @FORMAT
  365.     ───────
  366.     Syntax: @Format(@ID @ID .... @ID)
  367.  
  368.     This statement is used, as mentioned above, for the format of one single
  369.     file description in a FILES.BBS or list. 
  370.  
  371.     It MUST be present in the following templates: 
  372.  
  373.         BBSHeader       - For Files.bbs
  374.         AreaHeader      - For file lists
  375.         GroupHeader     - For report lists
  376.  
  377.     In all other templates this statement is superfluous. When MaxList finds
  378.     it never the less, it will be ignored.
  379.  
  380.     Example of a @FORMAT statement:
  381.         @Format(@FileName @FreeDwnLd@DlCounter@Filedesc(31,79))
  382.  
  383.     After processing the resulting FILES.BBS will look like this:
  384.  
  385.     NWFAQ503.ARJ /bt [00] Novell FAQ Version 03/95  ASCII-Version
  386.                                    deutschsprachige FAQ ueber alles, was
  387.                                    mit Novell zu tun hat.
  388.                                    inkl. aktueller File- und Mailboxliste
  389.  
  390.  
  391.     @LISTTYP
  392.     ────────
  393.     Syntax:     @ListTyp
  394.     Templates:  All except BBS and @FORMAT statement
  395.  
  396.     This token prints the list type.
  397.     Available list types:
  398.         ALL        [Name]   - [Name] or ALLFILES
  399.         NEW <days> [Name]   - [Name] or NEWFILES
  400.         PART       [Name]   - [Name] (when given)
  401.         REPORT     [Name]   - [Name] or REPORT
  402.         DUPE       [Name]   - [Name] or DUPES
  403.         ORHAN      [Name]   - [Name] or ORPHAN
  404.         ANNOUNCE   [Name]   - [Name] or ANNOUNCE
  405.  
  406.     !!! IMPORTANT NOTE:
  407.         When @ListTyp is used within @TEST, not the Name of the list,
  408.         but the name of the type will be used for comparision.
  409.  
  410.         @Test(@ListTyp,=,All, ...) is TRUE, if the list is of type ALL.
  411.  
  412.  
  413.     @TEST
  414.     ─────
  415.     Syntax:     @Test(@ID1, <|=|>|<>|[], @ID2, @IDTrue, @IDFalse)
  416.     Templates:  All 
  417.  
  418.     For testing of parameters. @ID1 is compared to @ID2.
  419.     Valid operators are:
  420.       <     - less than
  421.       =     - equal to
  422.       >     - greater than
  423.       <>    - not equal
  424.       []    - in range
  425.  
  426.     Dependent on the result @IDTrue or @IDFalse is processed.
  427.  
  428.     Examples:  @Test(@Groups,>,1,(@Groups Groups),"")
  429.                The sum of groups is only printed when it is greater than 1.
  430.  
  431.                @Test(@AreaTag,[],12..99,"Top Secret",@AreaTag)
  432.                If the Areatag in 12 to 99, than "Top Secret" is printig,
  433.                otherwise the Areatag is written.
  434.  
  435.  
  436.     @FILEPATH
  437.     ─────────
  438.     Syntax:     @FilePath
  439.     Templates:  All except TitleTemplate and BBS
  440.  
  441.     Drive and Path(s) as given in DownLoad, e.g. D:\LISTS\SHUTTLE\.
  442.     If the FILES.BBS contains a path name in the file name, this value is
  443.     taken.
  444.  
  445.  
  446.     @FILENAME
  447.     ─────────
  448.     Syntax:     @FileName
  449.     Templates:  In all @FORMAT statements
  450.  
  451.     Prints the Name of a file leftbound with a length of 12 characters.
  452.     When the name is shorter than 12 characters it is filled with blanks,
  453.     e.g.: "ABC.ZIP_____"
  454.  
  455.     Any path in the FILES.BBS is NOT printed in the lists, but remains in
  456.     the FILES.BBS.
  457.  
  458.  
  459.     @FILEDATE
  460.     ─────────
  461.     Syntax:     @FileDate(DateFormat)
  462.     Templates:  In all @FORMAT statements
  463.  
  464.     You may format the date as you like. The parameter DateFormat may NOT be
  465.     omitted. The following placeholders may be specified:
  466.  
  467.         D   - Day     01 .. 31
  468.         M   - Month   01 .. 12, or name of month (Jan, Feb etc)
  469.         Y   - Year
  470.         F   - Flag for new file
  471.               If a file is older than specified for any flag, a blank will
  472.               be printed.
  473.         _   - Underscore, replaced by one blank
  474.  
  475.     Examples:
  476.  
  477.         DateFormat:       Result:
  478.         -----------       ---------
  479.         DD.MM.YY        - 20.09.95
  480.         MM.YYYY         - 09.1995
  481.         DD-MM-YYF       - 20-09-95+
  482.         D.M.YF          - 20.09.95+
  483.         DD.MMM_YYYY     - 20.Sep 1995
  484.         D.M.YYY         - 20.09.1995
  485.         DD-MM-YYF_      - 20-09-95+_  (_ is a Blank)
  486.  
  487.  
  488.     @FILESIZE
  489.     ─────────
  490.     Syntax:     @FileSize(SizeFormat)
  491.     Templates:  In all @FORMAT statements
  492.  
  493.     Size of a file. The number may be formatted and converted to other size
  494.     units (Kb Mb etc.) as you like. Internally it is counted in bytes and
  495.     may be converted to kilobytes (div 1024) and megabytes (div 1048576).
  496.  
  497.     NOTE:
  498.         NO conversion is allowed in the BBS templates for TYPE DATELIST.
  499.         The format for this template MUST look like this:
  500.         @FileSize(#######_F)
  501.  
  502.     Formatting character:
  503.         #   - replaced by a number
  504.         K   - conversion to kilobytes
  505.         M   - conversion to megabytes
  506.         F   - fill with blanks
  507.         _   - Underscore, replaced by one blank
  508.  
  509.         ATTENTION: The chars K, M, F NEED to be placed at the end!
  510.  
  511.     Examples:
  512.  
  513.         SizeFormat:                         Result:
  514.         ----------------------------        ----------
  515.         None (Empty paranthesis)            123456789
  516.         One or more #                       123456789
  517.         #.###.###                           12.346.789
  518.         K (conversion kilobytes)            120563
  519.         #.###.###K                          120.563
  520.         M (conversion megabytes)            117
  521.         #.###.###M                          117
  522.         #.###F                              123456.789
  523.         #######MF                           ____117  (_ represents one blank)
  524.         #.###_M                             117_     (_ represents one blank)
  525.  
  526.  
  527.     @FREEDWNLD
  528.     ──────────
  529.     Syntax:     @FreeDwnLd
  530.     Templates:  Only in @FORMAT statement in BBS templates
  531.  
  532.     Prints the corresponding string (when defined in the configuration file
  533.     at FreeDownLoad) and an additional blank. When FreeDownLoad is not
  534.     valid for this area or group, then nothing is printed.
  535.     Possible results are "/b ", "/t " or "/tb ".
  536.  
  537.  
  538.     @DLCOUNTER
  539.     ──────────
  540.     Syntax:     @DLCounter
  541.     Templates:  Only in @FORMAT statement in BBS and AREA templates
  542.  
  543.     When a download counter (DLCounter) is specified in the configuration,
  544.     it will be printed when none is already present in the FILES.BBS.
  545.     If a download counter is already present in the FILES.BBS it will be used
  546.     and remains unchanged.
  547.  
  548.     When a DLCounter is specified in the configuration, but this token is
  549.     NOT used in the BBS or AREA template, any existing download counter 
  550.     where the brackets match those of DLCounter is removed without grace!
  551.  
  552.     If no DLCounter is specified in the configuration, this token will be
  553.     ignored. 
  554.     
  555.     NOTE: An additional blank is added, when a download counter is printed!
  556.  
  557.  
  558.     @AREANAME
  559.     ─────────
  560.     Syntax:     @AreaName
  561.     Templates:  All except TitleTemplate
  562.  
  563.     Prints the WHOLE name of an area, including FileDivisions.
  564.     If an area EDIT is located in group GFD.APP, the result will be
  565.     "GFD.APP.EDIT".
  566.  
  567.  
  568.     @AREATAG
  569.     ────────
  570.     Syntax:     @AreaTag
  571.     Templates:  All except TitleTemplate
  572.  
  573.     Prints the name of an area without FileDivisions. For area EDIT the
  574.     result is "EDIT".
  575.  
  576.  
  577.     @GROUPTAG
  578.     ─────────
  579.     Syntax:     @GroupTag
  580.     Templates:  All except TitleTemplate
  581.  
  582.     Prints the name of the group, e.g. "GFD.APP".
  583.     The area name is not printed.
  584.  
  585.  
  586.     @AREADESC / @GROUPDESC
  587.     ──────────────────────
  588.     Syntax:     @AreaDesc / @GroupDesc
  589.     Templates:  All except TitleTemplate
  590.  
  591.     Prints the description for an area or a group. The length of
  592.     this description is limited internally to 50 characters.
  593.  
  594.  
  595.     @AREAACS / @GROUPACS
  596.     ────────────────────
  597.     Syntax:     @AreaAcs / @GroupAcs
  598.     Templates:  All except TitleTemplate
  599.  
  600.     Prints AccessLevel and Keys of an area or group.
  601.     If you defined a translation in the configuration (USERLEVEL) the
  602.     string defined there is printed. Otherwise the level/keys are printed
  603.     as defined at the corresponding area or group.
  604.     The length of the access string is limited internally to 50 characters.
  605.     
  606.  
  607.     @OFFLINE
  608.     ────────
  609.     Syntax:     @OffLine
  610.     Templates:  Only in @FORMAT statement of AREA templates
  611.  
  612.     All "normal" file list processors print an offline string instead of
  613.     file size and date if the file is not present in the file base.
  614.  
  615.     As MaxList allows the parameters to be put on any place, another method
  616.     is neccessary for inserting the offline string defined in the 
  617.     configuration.
  618.  
  619.     If an offline string should be printed, you have to define it by using
  620.     the @Test token. Example:
  621.  
  622.         @Format(@FileName \
  623.         @Test(@FileSize(),>,0,\
  624.         @FileSize(#######F) @FileDate(DD.MM.YYF),\
  625.         @Adjust("@OffLine",l,17)) @Filedesc(31,79))
  626.  
  627.     MaxList sets the file size to 0 when a file is not accessible. This means
  628.     that a 0 byte file is regarded as not present either!
  629.     The above code tests the file size to be greater than 0, if that is true,
  630.     @FileSize(#######F) @FileDate(DD.MM.YYF) is printed after the file name.
  631.     When the file size is 0, @Adjust("@OffLine",l,17) is used instead.
  632.  
  633.  
  634.     @NEWFNAME
  635.     ─────────
  636.     Syntax:     @NewFName
  637.     Templates:  AREA and BBS templates, but not in @FORMAT statement
  638.  
  639.     Name of the NEWEST file in this area.
  640.     The name is not formatted in any way. It will be printed as found in
  641.     the FILES.BBS file.
  642.  
  643.  
  644.     @NEWFDATE
  645.     ─────────
  646.     Syntax:     @NewFDate(DateFormat)
  647.     Templates:  AREA and BBS templates, but not in @FORMAT statement
  648.  
  649.     Date of the NEWEST file in this area.
  650.     The format of parameter DateFormat is the same as described at @FILEDATE.
  651.  
  652.  
  653.     @NEWFSIZE
  654.     ─────────
  655.     Syntax:     @NewFSize(SizeFormat)
  656.     Templates:  AREA and BBS templates, but not in @FORMAT statement
  657.  
  658.     Size of the NEWEST file in this area.
  659.     The format of parameter SizeFormat is the same as described at @FILESIZE.
  660.  
  661.  
  662.     @FILES
  663.     ──────
  664.     Syntax:     @Files
  665.     Templates:  All except in @FORMAT statement
  666.  
  667.     Prints the unformatted sum of files. It depends on the template: 
  668.  
  669.         AREA / BBS  -   sum of all files in this area
  670.         GROUP       -   sum of all files in this group
  671.         REPORT      -   sum of all files in this list
  672.  
  673.  
  674.     @BYTES
  675.     ──────
  676.     Syntax:     @Bytes(SizeFormat)
  677.     Templates:  All except in @FORMAT statement
  678.  
  679.     Returns the sum of bytes.
  680.     The format of parameter SizeFormat is the same as described at @FILESIZE.
  681.     The output depends on the template:
  682.  
  683.         AREA / BBS  -   sum of the bytes of all files in this area
  684.         GROUP       -   sum of the bytes of all files in this group
  685.         REPORT      -   sum of the bytes of all files in this list
  686.  
  687.  
  688.     @AREAS
  689.     ──────
  690.     Syntax:     @Areas
  691.     Templates:  Only in GROUP and REPORT
  692.  
  693.     Returns the sum of areas. The output depends on the template:
  694.  
  695.         GROUP       -   sum of all areas in this group
  696.         REPORT      -   sum of all areas in this list
  697.  
  698.  
  699.     @GROUPS
  700.     ───────
  701.     Syntax:     @Groups
  702.     Templates:  Only in REPORT
  703.  
  704.     Returns the sum of all groups in the list.
  705.     If you do not use FileDivisions, the sum of groups is 1.
  706.     (MainGroup = group without FileDivisions).
  707.     This group has neither a tag, ACS or description!
  708.  
  709.  
  710.     @PROGNAME
  711.     ─────────
  712.     Syntax:     @PrgName
  713.     Templates:  Only in title templates
  714.  
  715.     Hmm. What could this one be? This token is replaced by the string
  716.     'MAXLIST+ v#.##'. I hope you will ALWAYS use this token ;-)
  717.     The '+' sign occurs only at registered versions of MaxList, v#.## 
  718.     represents the version number of MaxList.
  719.  
  720.  
  721.     @DATE
  722.     ─────
  723.     Syntax:     @Date(DateFormat)
  724.     Templates:  Only in title templates
  725.  
  726.     Returns the actual date.
  727.     The format of parameter DateFormat is the same as described at @FILEDATE.
  728.  
  729.  
  730.     @TIME
  731.     ─────
  732.     Syntax:     @Time(TimeFormat)
  733.     Templates:  Only in title templates
  734.  
  735.     Returns the actual time.
  736.     Parameter TimeFormat is a formatting string (analog to @FILEDATE) 
  737.     that may consist of the following characters:
  738.  
  739.         H   - hour     00 .. 23
  740.         M   - minute   00 .. 59
  741.         S   - second   00 .. 59
  742.         _   - underscore, is replaced by a blank
  743.  
  744.     Examples:
  745.  
  746.         HH:MM:SS        - 22.17.05
  747.         H:M             - 22:17
  748.         HH:MM.SS_       - 22:17.05_  (_ is one blank)
  749.  
  750.  
  751.     @DAY
  752.     ────
  753.     Syntax:     @Day
  754.     Templates:  Only in title templates
  755.  
  756.     Returns the name of the day as defined in the configuration of MaxList.
  757.     If no translation is defined in the configuration the english names for
  758.     the days are used.
  759.  
  760.  
  761.     @NEWFDAYS
  762.     ─────────
  763.     Syntax:     @NewFDays
  764.     Templates:  Only in title templates
  765.  
  766.     This token is replaced by <days> in the new files lists.
  767.     Examples for its usage may be found in the template TITLE.TPL
  768.  
  769.  
  770.     @FLAGS
  771.     ──────
  772.     Syntax:     @Flags(FlagFormat)
  773.     Templates:  Only in title templates
  774.  
  775.     @Flags prints ALL new file flags as defined at FLAGCHAR in the 
  776.     configuration. They are each seperated by a comma.
  777.     
  778.     The parameter FlagFormat defines how to format the data:
  779.  
  780.         $   - print the flag character
  781.         #   - print the number of days
  782.         _   - print one blank
  783.     
  784.     Example:
  785.       If you have specified 
  786.             
  787.             FlagChar            7,!  14,*  30,+
  788.  
  789.       in the configuration of MaxList
  790.       and in the template 
  791.             
  792.             @Flags($_=_#_days)
  793.  
  794.       then MaxList will print the following:
  795.       
  796.             ! = 7 days, * = 14 days, + = 30 days.
  797.  
  798.  
  799.     @FONTSTR
  800.     ─────────
  801.     Syntax:     @FontStr(FontName, @ID), @FontStr(FontName)
  802.     Templates:  All except in @FORMAT statement
  803.  
  804.     Prints any desired text in a graphical font.
  805.     Parameters: FontName - name of the font as defined in the font (use
  806.                            FNTMAKE(p).EXE to create your own ones or alter
  807.                            the name of a font)
  808.                 @ID      - the text to be printed.
  809.     Previously you must have loaded a font in the configuration file
  810.     (statement LoadFont). 
  811.     When NO font is loaded, NOTHING will be printed!
  812.  
  813.     There are some special things to respect:
  814.  
  815.         One character in a graphical font has several lines, which must
  816.         exactly at the same position in consecutive lines.
  817.         As every output may be formatted using @ADJUST, you have to specify
  818.         one @FONTSTR token for EVERY line of the font!
  819.  
  820.         If you use a font having 3 lines in height, a @FONTSTR token has to
  821.         be placed at each column and row position. 
  822.         FontName has to be given for EVERY occurance of @FontStr, while
  823.         parameter @ID is only valid for the FIRST occurance!
  824.  
  825.         Example:
  826.             @Adjust("@FontStr(Digi3x5, -'@ListTyp'-)",c,79)@CrLf\
  827.             @Adjust("@FontStr(Digi3x5)",c,79)@CrLf\
  828.             @Adjust("@FontStr(Digi3x5)",c,79)
  829.  
  830.  
  831.     You may create your own fonts using a utility that comes with MaxList.
  832.     Five fonts are added to the MaxList archive (FONTS.ZIP).
  833.  
  834.  
  835.     @CRLF
  836.     ─────
  837.     Syntax:     @CrLf
  838.     Templates:  All
  839.  
  840.     Use this to add additional line feeds in a template.
  841.  
  842.  
  843.     @ADJUST
  844.     ───────
  845.     Syntax:     @Adjust("@ID", L|C|R, Len [, T]);
  846.     Templates:  All
  847.  
  848.     Formats a string left bound, centered or right bound and fills or cuts
  849.     to a given length.
  850.     @ID may contain any token except @FILEDESC.
  851.     @ID MUST always be enclosed in quotation marks. 
  852.  
  853.     Example:       
  854.         @Adjust("  This is a test",L,20)  will print |  This is a test  |
  855.         (the | is not printed, of course)
  856.  
  857.     Text may be adjusted left-bound ("L"), centered ("C") or right-bound 
  858.     ("R"). The string is padded with blanks to become "Len" in length (of
  859.     course only when the string is shorter than "Len").
  860.  
  861.     If the optional parameter "T" (for truncate) is given, the string will 
  862.     be truncated to the length "Len" in any case.
  863.  
  864.  
  865.     @FILEDESC
  866.     ─────────
  867.     Syntax:     @FileDesc(Left, Right [,Lines [, T|TF [, PreLine]]])
  868.     Templates:  Only in @FORMAT statement
  869.  
  870.     Formats and prints the description for a single file.
  871.  
  872.     Parameters:
  873.         Left        - left border of the continued description (i.e. line 2 
  874.                       and above). Any value in the range of 1 to 65535 is
  875.                       valid, but it must be less than the right border.
  876.  
  877.         Right       - right border of the description.
  878.                       Any value in the range of 1 to 65535 is valid, but it
  879.                       must be greater than the left border.
  880.  
  881.         Lines       - Optional. If given, the number of lines for one 
  882.                       description is limited to "Lines" lines.
  883.                       Valuable for pages and pages of FILE_ID.DIZ.
  884.                       If the value is set to 0, the number of lines is
  885.                       unlimited (default).
  886.                       Otherwise any value in the range of 1 to 65535 is valid.
  887.  
  888.         T or TF     - Optional. T means Truncate, TF means TruncateFirst.
  889.                       Normally the description is completely new maked up
  890.                       when not fitting in the borders (left - right).
  891.                       When "T"runcate is specified, no make up is performed
  892.                       but the too long lines are truncated at the right border.
  893.  
  894.                       "TF" is a important feature for people using a download 
  895.                       counter ;-) 
  896.                       When "TF" is specified, MaxList will only truncate the
  897.                       FIRST line when it exceeds the right border. If MaxList
  898.                       then recognizes in further processing that the desc needs
  899.                       to be maked up again, the truncated part is re-inserted
  900.                       again before the rest of the text is formatted.
  901.  
  902.         PreLine     - Optional. With this, you can create a list as a
  903.                       Table. The string in PreLine is placed at the begin of
  904.                       each line, was normaly holds (number of left) blanks.
  905.                       Alternate you can use PreLine, to add a "+" before
  906.                       each continous line. PreLine itself can contains a @ID
  907.                       (i.e. @Adjust).
  908.  
  909.                       Example:
  910.                         @FileDesc(31,79,,,@Adjust("+ ",r,31))
  911.  
  912.                       The product of this is following:
  913.                         TEST.ZIP         12K 01.01.80  Eine Testdatei
  914.                                                      + mit Erweiterter                                
  915.                                                      + Beschreibung und
  916.                                                      + einem Pluszeichen
  917.  
  918.                       Other (complexe) Example:
  919.                         @Format(@FileName│@FileSize(#######)│\
  920.                                 @FileDate(dd.mm.yyf)│\
  921.                                 @FileDesc(31,79,,,@Adjust("│",l,13)\
  922.                                 @Adjust("│",l,8)@Adjust("│",l,10)))
  923.  
  924.                       This will printout following:
  925.                         TEST1.ZIP   │  12351│01.01.80 │Eine Testdatei
  926.                                     │       │         │in Tabellenform
  927.                                     │       │         │mit Linien.
  928.                         ANYFILE.ARJ │  12351│01.01.80 │Noch eine Datei
  929.                                     │       │         │in Tabellenform
  930.  
  931.  
  932. ═══════════════════════════════════════════════════════════════════════════════
  933.  
  934.                             A Last Note
  935.                             ═══════════
  936.  
  937.     Study the example templates included with MaxList. You find them in
  938.     archive TEMPLATE.ZIP.
  939.     Please unpack them to a particular subdirectory and use a "Define" 
  940.     in the MaxList configuration to specify the path.
  941.     
  942.     Above is also valid for the font files and the FontMaker utility.
  943.     All fonts and the FNTMAKE(p).EXE program are located in the
  944.     archive FONTS.ZIP.    
  945.  
  946.     If you have designed a new font or created a nice template file please
  947.     don't hesitate to send it to me. So other MaxList users will profit
  948.     from your work.
  949.  
  950.  
  951.     The author, Wilfried Brinkmann
  952.  
  953. ────────────────────────────────────────────────────────────────────────────
  954. Template.Doc for MaxList 2.25                                Date: June 1996
  955.  
  956.