home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 2: PC / frozenfish_august_1995.bin / bbs / d09xx / d0975.lha / PCal / pcal.doc < prev    next >
Text File  |  1994-02-14  |  35KB  |  793 lines

  1.  
  2.  
  3.  
  4. PCAL(1)                                                   PCAL(1)
  5.  
  6.  
  7. NNAAMMEE
  8.        pcal - generate PostScript calendars
  9.  
  10. SSYYNNOOPPSSIISS
  11.        ppccaall [--ee|--ff _c_a_l] [--oo _f_i_l_e] [--jj | --JJ] [--ll | --pp] [--mm | --MM]
  12.             [--bb _d_a_y|all] [--gg _d_a_y|all] [--OO] [--GG]
  13.             [--ss [[_d_a_t_e___s_h_a_d_e]][[//_f_i_l_l___s_h_a_d_e]]_] _[--FF _d_a_y_] _[--AA_|--EE_]
  14.             _[--tt _t_i_t_l_e___f_o_n_t_] _[--dd _d_a_y___f_o_n_t_] _[--nn _t_e_x_t___f_o_n_t_[_/_s_i_z_e_]_]
  15.             _[--LL _f_o_o_t_e_r___s_t_r_] _[--CC _f_o_o_t_e_r___s_t_r_] _[--RR _f_o_o_t_e_r___s_t_r_]
  16.             _[--NN _n_o_t_e_s___s_t_r_] _[--DD _s_y_m_b_o_l_] _[--UU _s_y_m_b_o_l_] _[--xx _x_s_c_a_l_e_]
  17.             _[--yy _y_s_c_a_l_e_] _[--XX _x_t_r_a_n_s_] _[--YY _y_t_r_a_n_s_] _[--II_] _[--BB_]
  18.             _[--SS _| --kk _| --KK_] _[--ww_] _[--hh _| --uu _| --vv_] _[_m_o_n_t_h_] _[_y_e_a_r_]
  19.             _[_n_m_o_n_t_h_s_]
  20.  
  21. DDEESSCCRRIIPPTTIIOONN
  22.        _P_c_a_l generates PostScript to produce landscape or portrait
  23.        calendars for any month and year.  The arguments mmoonntthh,
  24.        yyeeaarr, and nnmmoonntthhss, if provided, should be numeric.  The
  25.        mmoonntthh value should be in the range 1 - 12, and the yyeeaarr
  26.        value should be specified as 1 or 2 digits or as the full
  27.        4 digit year.  If no numeric arguments are provided, the
  28.        calendar for the current month and year will be generated.
  29.  
  30.        If one numeric argument is provided, it is interpreted as
  31.        the yyeeaarr value, and calendars for the entire year will be
  32.        generated.  Otherwise, nnmmoonntthhss months, starting with mmoonntthh
  33.        and yyeeaarr, will be generated.
  34.  
  35.        For whole-year calendars (i.e. the --ww option is given),
  36.        the command line arguments are interpreted somewhat dif-
  37.        ferently.  By default, all months in the current year are
  38.        printed, starting with January.  If the mmoonntthh argument
  39.        alone is given, it is expected to be the desired yyeeaarr to
  40.        print, and prints all of the months in the given year.  If
  41.        both mmoonntthh and yyeeaarr are given, then 12 consecutive months
  42.        are printed starting at the given month and year.  If the
  43.        mmoonntthh, yyeeaarr, and nnmmoonntthhss arguments are all present, print-
  44.        ing begins with the given month and year and nnmmoonntthhss
  45.        months are printed, rounded up to the nearest multiple of
  46.        12.
  47.  
  48.        TThhee DDaattee FFiillee
  49.  
  50.        By default, _p_c_a_l simply prints an empty calendar.  Its
  51.        real power is in its ability to place ``events'' in appro-
  52.        priate days on the calendar, thus allowing the user to
  53.        create personalized calendars.  This is achieved through
  54.        the use of the ``date file''.
  55.  
  56.        The date file is named _._c_a_l_e_n_d_a_r (_p_c_a_l_._d_a_t under MS-DOS),
  57.        or _c_a_l_e_n_d_a_r for compatibility with older versions.  _P_c_a_l
  58.        will look in several places for such a file.  First, if
  59.        the environment variable PPCCAALL__DDIIRR is defined, _p_c_a_l
  60.        searches the directory indicated by that variable.  Next,
  61.  
  62.  
  63.  
  64.                                                                 1
  65.  
  66.  
  67.  
  68.  
  69.  
  70. PCAL(1)                                                   PCAL(1)
  71.  
  72.  
  73.        _p_c_a_l searches the user's home directory (as specified by
  74.        the HHOOMMEE environment variable).  If neither PPCCAALL__DDIIRR nor
  75.        HHOOMMEE is defined, _p_c_a_l searches the current directory
  76.        instead.  Finally, the directory where the _p_c_a_l executable
  77.        resides will be checked.  If no date file is found, an
  78.        empty calendar is printed; no error is generated.
  79.  
  80.        If a date file is found, it will be searched for lines
  81.        with leading dates matching the requested month and year.
  82.        Any text following the dates found will be printed on the
  83.        calendar under the appropriate day of the month.  Dates in
  84.        the _._c_a_l_e_n_d_a_r file may be expressed in any of several for-
  85.        mats:
  86.  
  87.             <<oorrddiinnaall>> <<ddaayy__ssppeecc>> iinn <<mmoonntthh__ssppeecc>>{{**}} {{<<tteexxtt>>}}
  88.             <<ddaayy__ssppeecc>> <<pprreepp>> <<ddaattee__ssppeecc>>{{**}} {{<<tteexxtt>>}}
  89.             <<ddaattee__ssppeecc>>{{**}} {{<<tteexxtt>>}}
  90.  
  91.        Where:
  92.  
  93.             <month_name>   := first 3+ characters of name of month, or ``all''
  94.             <month_spec>   := <month_name>, or ``year''
  95.             <day_spec>     := first 3+ characters of name of weekday, ``day'',
  96.                            ``weekday'', ``workday'', ``holiday'', ``nonweekday'',
  97.                            ``nonworkday'', ``nonholiday'', ``new_moon'',
  98.                            ``first_quarter'', ``full_moon'', or ``last_quarter''
  99.             <ordinal> := any ordinal number (``1st'', ``2nd'', etc.), ``first'' ... ``fifth'',
  100.                            ``last'', ``odd'', ``even'', or ``all''
  101.             <prep>         := ``before'', ``preceding'', ``after'', ``following'',
  102.                            ``on_or_before'' (``oob''), or ``on_or_after'' (``ooa'')
  103.             <sep>          := one or more non-numeric, non-space, non-`*' characters
  104.             <month>   := a numeric month (1-12)
  105.             <day>          := day of month (1-31)
  106.             <year>         := a numeric year
  107.  
  108.        If the --AA option (American date formats, the default) is
  109.        given:
  110.  
  111.             <date_spec>    := <month_name> <day> | <month><sep><day>{<sep><year>}
  112.  
  113.        If the --EE option (European date formats) is given:
  114.  
  115.             <date_spec>    := <month_name> <day> | <month><sep><day>{<sep><year>}
  116.  
  117.        _P_c_a_l also allows format specifiers in both the text and
  118.        foot strings (see the --LL, --CC, --RR, and --NN options below);
  119.        each will be replaced by a corresponding string as out-
  120.        lined in the table below.  Most of these are derived from
  121.        the ANSI C ssttrrffttiimmee(()) function; the %%[[lloouuwwMMDD]] and %%[[oo00++--]]
  122.        format specifiers are specific to _p_c_a_l:
  123.  
  124.             %a   abbreviated weekday
  125.             %A   full weekday
  126.             %b   abbreviated month name
  127.  
  128.  
  129.  
  130.                                                                 2
  131.  
  132.  
  133.  
  134.  
  135.  
  136. PCAL(1)                                                   PCAL(1)
  137.  
  138.  
  139.             %B   full month name
  140.             %d   day of month (1-31)
  141.             %j   day of year (1-366)
  142.             %l   days left in year (0-365)
  143.             %m   month (1-12)
  144.             %U   week number (0-53)
  145.             %W   week number (0-53)
  146.             %u   week number (1-54)
  147.             %w   week number (1-54)
  148.             %y   year w/o century (00-99)
  149.             %Y   year w/century
  150.             %%   `%' character
  151.  
  152.             %o   print number as ordinal
  153.             %0   print number with leading zeroes
  154.             %+   use following month or year
  155.             %-   use previous month or year
  156.             %{+N}[DWMY]    adjust date by +N days/weeks/months/years
  157.             %{-N}[DWMY]    adjust date by -N days/weeks/months/years
  158.  
  159.        The %%uu specifier considers the week containing 1/1 as week
  160.        1 and the following logical Sunday (the first day of the
  161.        week as printed; cf. the --FF option below) as the start of
  162.        week 2; %%UU considers the first logical Sunday as the first
  163.        day of week 1.  %%ww and %%WW behave like %%uu and %%UU respec-
  164.        tively, but use the first logical Monday instead.  Note
  165.        that %%ww ssttrrffttiimmee(())..
  166.  
  167.        The %%oo format specifier prints a number as an ordinal,
  168.        with the appropriate suffix (``st'', ``nd'', ``rd'', or
  169.        ``th'' in English) appended.  For example, %%oodd prints the
  170.        day of the month as ``1st'', ``2nd'', ``3rd'', etc.
  171.  
  172.        Unlike ssttrrffttiimmee(()),, _p_c_a_l defaults to printing numbers
  173.        (except %%yy) without leading zeroes.  If leading zeroes are
  174.        desired, the `0' prefix may be used.  For example, %%00jj
  175.        prints the first day of year as ``001''.
  176.  
  177.        The %%++ and %%-- format specifiers direct _p_c_a_l to substitute
  178.        the following/previous month/year in the following [[bbBBmmyyYY]]
  179.        specifier.  For example, %%++BB prints the name of the next
  180.        month.
  181.  
  182.        The %%{{[[++--]]NN}}[[DDWWMMYY]] format specifiers do not print any-
  183.        thing, but instead adjust the working date by +- NNdays
  184.        (DD), weeks (WW), months (MM), or years (YY).  Subsequent for-
  185.        mat specifiers use the adjusted date instead of the cur-
  186.        rent date.  For example, %%++11MM %%BB %%YY adjusts the date for-
  187.        ward by one month and then prints the resulting month and
  188.        year (``January 1992'' in December, 1991); %%--22WW %%bb %%dd
  189.        adjusts the date backward by two weeks and prints the
  190.        resulting month and day (``Jul 26'' on August 9).
  191.  
  192.        Such date adjustments are normally cumulative; for
  193.  
  194.  
  195.  
  196.                                                                 3
  197.  
  198.  
  199.  
  200.  
  201.  
  202. PCAL(1)                                                   PCAL(1)
  203.  
  204.  
  205.        example, %%++11YY%%--11DD adjusts the date forward by one year and
  206.        then backward by one day.  If %%DD or %%MM is specified alone
  207.        (or if NN is zero), _p_c_a_l restores the original date.  Note
  208.        that %%MM has a different meaning to the ssttrrffttiimmee(()) func-
  209.        tion.
  210.  
  211.        The ``Notes'' box (see below) uses the first of the cur-
  212.        rent month as the default date.  All foot strings use the
  213.        first of the current month in single-month mode and the
  214.        first of the starting month in whole-year mode.
  215.  
  216.        Examples:
  217.  
  218.             llaasstt MMoonnddaayy iinn MMaayy**         MMeemmoorriiaall DDaayy HHoolliiddaayy
  219.  
  220.             aallll FFrriiddaayyss iinn OOcctt          SSttaattuuss MMeeeettiinngg,, 1111 AAMM
  221.             ffiirrsstt wwoorrkkddaayy iinn aallll        %%--BB pprrooggrreessss rreeppoorrtt dduuee
  222.             aallll FFrrii iinn aallll              TTiimmee ccaarrdd dduuee,, 33 PPMM
  223.             aallll MMoonnddaayy iinn aallll           FFiissccaall wweeeekk %%00WW
  224.             --22nndd wwoorrkkddaayy iinn aallll         SScchheedduullee ffoorr %%++BB dduuee %%++22DD
  225.             22nndd ffuullll__mmoooonn iinn aallll        BBlluuee MMoooonn
  226.             FFrrii oonn__oorr__bbeeffoorree aallll 1155     PPaayy DDaayy
  227.             eevveenn FFrriiddaayyss iinn yyeeaarr        PPaayy DDaayy
  228.             118833rrdd ddaayy ooff yyeeaarr           MMiidd--yyeeaarr ((%%ll ddaayyss lleefftt))
  229.  
  230.             TTuuee aafftteerr ffiirrsstt MMoonn iinn NNoovv  EElleeccttiioonn DDaayy ((UUSSAA))
  231.  
  232.             44tthh TThhuu iinn NNoovv**             TThhaannkkssggiivviinngg
  233.             FFrrii aafftteerr 44tthh TThhuu iinn NNoovv**   DDaayy aafftteerr TThhaannkkssggiivviinngg
  234.  
  235.             1122//2255//9900**                   CChhrriissttmmaass     ## AAmmeerriiccaann
  236.             2255..1122..9900**                   CChhrriissttmmaass     ## EEuurrooppeeaann
  237.  
  238.             DDeecc 2255**                     CChhrriissttmmaass     ## AAmmeerriiccaann
  239.             2255 DDeecc**                     CChhrriissttmmaass     ## EEuurrooppeeaann
  240.  
  241.        Any non-numeric character may separate numeric dates.
  242.        Holidays may be flagged by following the date immediately
  243.        with `*' as in the examples above; this will cause the
  244.        date to be printed in gray.  ``Each'' and ``every'' are
  245.        accepted as synonyms for ``all'', and any word may be used
  246.        in place of ``in''.  The abbreviations ``oob'' and ``ooa''
  247.        may be used in place of the keywords ``on_or_before'' and
  248.        ``on_or_after'', respectively.  ``Nearest'' attempts to
  249.        match the specified date; if that fails, it tries the day
  250.        after, then the day before, then two days after, two days
  251.        before, and so forth until a match occurs.
  252.  
  253.        Wildcard day names are also provided.  The keyword ``week-
  254.        day'' applies to any days which are normally printed in
  255.        black on the calendar.  The keyword ``workday'' is the
  256.        same, but does not include any holidays.  The keyword
  257.        ``holiday'' includes only those days flagged as holidays.
  258.        The keywords ``nonweekday'', ``nonworkday'', and
  259.  
  260.  
  261.  
  262.                                                                 4
  263.  
  264.  
  265.  
  266.  
  267.  
  268. PCAL(1)                                                   PCAL(1)
  269.  
  270.  
  271.        ``nonholiday'' are also recognized as negations of the
  272.        above.  See the CCAAVVEEAATTSS below for important notes on using
  273.        these keywords.  Moon phases may also appear as wildcards;
  274.        ``nm'' is accepted as a synonym for ``new_moon'', ``1q''
  275.        and ``fq'' for ``first_quarter'', ``fm'' for
  276.        ``full_moon'', ``3q'' for ``third_quarter'', and ``lq''
  277.        for ``last_quarter''.
  278.  
  279.        Ordinal day numbers may be used to specify dates, either
  280.        relative to the month or to the year.  Either words or
  281.        numeric abbreviations may be used for ``first'' through
  282.        ``fifth''; higher numbers must be given using the numeric
  283.        equivalent (e.g. 100th).  Negative ordinal numbers may
  284.        even be used.  For example, ``-2nd'' means ``next to
  285.        last''.
  286.  
  287.        ``Odd'' and ``even'' do not refer to the actual date;
  288.        instead, ``odd'' means ``alternate, starting with the
  289.        first'', and ``even'' means ``alternate, starting with the
  290.        second''.  Thus, ``odd Fridays in March'' refers to the
  291.        first, third, and (if present) fifth Fridays in March -
  292.        not to those Fridays falling on odd dates.
  293.  
  294.        ``All'' refers to each individual month; ``year'' refers
  295.        to the year as an entity.  Thus ``odd Fridays in all''
  296.        refers to the first, third, and fifth Friday of each
  297.        month, while ``odd Fridays in year'' refers to the first
  298.        Friday of January and every other Friday thereafter.
  299.  
  300.        Text in the date file may use C-like escape sequences
  301.        (i.e. a `\' followed by a character, 1 - 3 octal digits,
  302.        or `x' followed by 1 - 2 hexadecimal digits).  Escaped
  303.        whitespace (including nneewwlliinnee ) and the standard ANSI
  304.        character escapes (`\a', `\b', `\f', `\n', `\r', `\t',
  305.        `\v') are all replaced by a single blank.
  306.  
  307.        Lines in the _._c_a_l_e_n_d_a_r file consisting of yyeeaarr ######## (where
  308.        ######## is a numeric year) can be used to set the year for
  309.        following entries.  This assumes that the following
  310.        entries do not contain a year; any date entries containing
  311.        year information will set the remembered year to that
  312.        year.
  313.  
  314.        Lines in the _._c_a_l_e_n_d_a_r file consisting of oopptt <<ooppttiioonnss>>
  315.        can be used to override the defaults for any command-line
  316.        options except --cc, --ee, --ff, --hh, --uu, --vv, --DD, and --UU.  Any
  317.        options specified in this manner are, in turn, overridden
  318.        by those specified explicitly on the command line.
  319.  
  320.        Lines in the _._c_a_l_e_n_d_a_r file consisting of nnoottee{{//<<nnuummbbeerr>>}}
  321.        <<mmoonntthh>> can be used to place notes regarding the entire
  322.        month in one of the unused blocks of the calendar.  The
  323.        <<mmoonntthh>> indicator may be either a number 1 through 12 or
  324.        an alphabetic month name as described above;  ``note all''
  325.  
  326.  
  327.  
  328.                                                                 5
  329.  
  330.  
  331.  
  332.  
  333.  
  334. PCAL(1)                                                   PCAL(1)
  335.  
  336.  
  337.        will place the associated text in the notes block for each
  338.        month in the current year.  <<nnuummbbeerr>> is an optional posi-
  339.        tive or negative number specifying the empty box where the
  340.        associated text is to be placed.  If positive, _p_c_a_l counts
  341.        forward from the first empty box; if negative, _p_c_a_l counts
  342.        backward from the last empty box.  Thus, ````nnoottee//11'''' places
  343.        the associated text in the first empty box; nnoottee//--33 in the
  344.        third-to-last.  The default is -1 if no <number> is given
  345.        (last empty box, immediately preceding the small calendars
  346.        on the bottom row; cf.  --SS, --kk, and --KK, below).
  347.  
  348.        Comments are supported in the _._c_a_l_e_n_d_a_r file.  Any charac-
  349.        ters following a `#' character through the end of the line
  350.        are ignored.
  351.  
  352.        _P_c_a_l supports rudimentary _c_p_p-like functionality in the
  353.        date file, allowing the following constructs: ddeeffiinnee ||
  354.        uunnddeeff, iiff{{{{nn}}ddeeff}} ...... {{eelliiff ......}}** {{eellssee ......}} eennddiiff,, and
  355.        iinncclluuddee.  Note that these are not preceded by `#' as they
  356.        are in C.  Symbol names defined using these keywords (or
  357.        via the --DD option) are case-insensitive.  It is not an
  358.        error to uunnddeeff an undefined symbol, nor to ddeeffiinnee a previ-
  359.        ously-defined one.  An iiffddeeff alone is always ffaallssee; an
  360.        iiffnnddeeff alone is always ttrruuee.  iiff is accepted as a synonym
  361.        for iiffddeeff.
  362.  
  363.        The name of the file in the iinncclluuddee directive may option-
  364.        ally be surrounded by either "" or <>, both of which are
  365.        ignored.  If the name is not an absolute path, it is taken
  366.        to be relative to the directory where the file containing
  367.        the directive is located.  _P_c_a_l is smart enough to trans-
  368.        late ~~// to the user's home directory.
  369.  
  370.        In addition to pre-processing keywords, _p_c_a_l also accepts
  371.        boolean expressions in iiff{{{{nn}}ddeeff}} and eelliiff directives.
  372.        These expressions consist of symbol names joined by the
  373.        boolean operators !!, &&, ^^, and ||, in order of precedence,
  374.        high to low.  Parentheses may be used to alter the prece-
  375.        dence.  The synonyms &&&& and |||| are accepted for && and ||.
  376.        A symbol name evaluates to ttrruuee if currently defined,
  377.        ffaallssee if not; thus:
  378.  
  379.             iiffddeeff AA || BB || CC
  380.  
  381.        ...is ttrruuee if any of the symbols A, B, and C is defined,
  382.        and:
  383.  
  384.             iiffddeeff AA && BB && CC
  385.  
  386.        ...is ttrruuee if they all are.  Note that iiffnnddeeff <<eexxpprr>> is
  387.        equivalent to iiffddeeff !!(( <<eexxpprr>> ))..
  388.  
  389.        TThhee MMoooonn FFiillee
  390.  
  391.  
  392.  
  393.  
  394.                                                                 6
  395.  
  396.  
  397.  
  398.  
  399.  
  400. PCAL(1)                                                   PCAL(1)
  401.  
  402.  
  403.        If a file of the name _._m_o_o_n_#_# (_m_o_o_n_#_#_._d_a_t under MS-DOS),
  404.        where #### is the last two digits of the calendar year,
  405.        exists in the same directory as the date file (or in the
  406.        directory where _p_c_a_l resides), _p_c_a_l uses the information
  407.        contained within to calculate the phase of the moon.  If
  408.        no such file exists, _p_c_a_l uses an approximate algorithm.
  409.  
  410.        Entries in the moon file must conform to the following
  411.        syntax:
  412.  
  413.        If the --AA option (American date formats, the default) is
  414.        given:
  415.  
  416.             <<qquuaarrtteerr>> <<mmoonntthh>><<sseepp>><<ddaayy>> {{<<hhoouurr>><<sseepp>><<mmiinn>>}}
  417.  
  418.        If the --EE option (European date formats) is given:
  419.  
  420.             <<qquuaarrtteerr>> <<ddaayy>><<sseepp>><<mmoonntthh>> {{<<hhoouurr>><<sseepp>><<mmiinn>>}}
  421.  
  422.        Where:
  423.  
  424.             <quarter> := ``nm'', ``fq'' or ``1q'', ``fm'', ``3q'' or ``lq'' (new moon,
  425.                            first quarter, full moon, last quarter)
  426.             <hour>         := number 0-23 (24-hour clock)
  427.             <min>          := number 0-59
  428.  
  429.        This file must contain entries for all quarter moons in
  430.        the year, in chronological order; if any errors are
  431.        encountered, _p_c_a_l will revert to using its default algo-
  432.        rithm.
  433.  
  434.        As in the date file, comments start with `#' and run
  435.        through the end of the given line.
  436.  
  437.        OOppttiioonnss
  438.  
  439.        _P_c_a_l has many options:
  440.  
  441.  
  442.        --ee          Prints an empty calendar.  Do not print
  443.                    entries from a _._c_a_l_e_n_d_a_r file.
  444.  
  445.        --ff _c_a_l      Directs _p_c_a_l to use the file name _c_a_l as the
  446.                    input file in place of the default _._c_a_l_e_n_d_a_r
  447.                    file.  Note that the search rules are differ-
  448.                    ent when --ff is used.  If _c_a_l is an absolute
  449.                    file name (i.e., starting with a `/'), then
  450.                    _p_c_a_l attempts to open only that file.  Other-
  451.                    wise, _p_c_a_l looks for _c_a_l in the current direc-
  452.                    tory, then in the directory indicated by the
  453.                    environment variable PPCCAALL__DDIIRR (if defined),
  454.                    and finally in the directory where the _p_c_a_l
  455.                    executable resides.  If the given _c_a_l file is
  456.                    not found, an error results.
  457.  
  458.  
  459.  
  460.                                                                 7
  461.  
  462.  
  463.  
  464.  
  465.  
  466. PCAL(1)                                                   PCAL(1)
  467.  
  468.  
  469.        --oo _f_i_l_e     Directs _p_c_a_l to write the output to _f_i_l_e
  470.                    instead of to stdout.
  471.  
  472.        --ll          Causes the output to be in landscape mode
  473.                    (default).  This also resets the x- and y-axis
  474.                    scaling and translation factors to the
  475.                    defaults for landscape mode.
  476.  
  477.        --pp          Causes the output to be in portrait mode.
  478.                    This also resets the x- and y-axis scaling and
  479.                    translation factors to the defaults for por-
  480.                    trait mode.
  481.  
  482.        --jj          Causes the Julian date (day of year) to be
  483.                    printed in each calendar box.
  484.  
  485.        --JJ          Causes the Julian date and the number of days
  486.                    remaining in the year to be printed in each
  487.                    calendar box.
  488.  
  489.        --mm          Causes moon icons to be printed on dates cor-
  490.                    responding to new, half, and full moons (the
  491.                    default is that no moons are printed).
  492.  
  493.        --MM          Causes moon icons to be printed on all dates
  494.                    (the default is that no moons are printed).
  495.  
  496.        --bb _d_a_y || aallll
  497.                    Causes all dates falling on weekday _d_a_y to be
  498.                    printed in black; --bb aallll causes all weekdays
  499.                    to be printed in black.
  500.  
  501.        --gg _d_a_y || aallll
  502.                    Causes all dates falling on weekday _d_a_y to be
  503.                    printed in gray; --gg aallll causes all weekdays to
  504.                    be printed in gray.
  505.  
  506.                    The default for the --bb and --gg options is to
  507.                    print Saturdays and Sundays in gray and other
  508.                    days, unless flagged as holidays, in black.
  509.  
  510.        --OO          Causes ``gray'' dates to be printed as out-
  511.                    lined characters.
  512.  
  513.        --GG          Causes ``gray'' dates to be printed as out-
  514.                    lined characters filled with gray.
  515.  
  516.        --ss_{_d_a_t_e_}_{_/_f_i_l_l_}
  517.                    Overrides the default values for date and/or
  518.                    fill box shading.  These values must be in the
  519.                    range 0.0 (black) through 1.0 (white); they
  520.                    may be set independently of each other.  The
  521.                    default values are 0.8 for dates and 0.9 for
  522.                    empty boxes.
  523.  
  524.  
  525.  
  526.                                                                 8
  527.  
  528.  
  529.  
  530.  
  531.  
  532. PCAL(1)                                                   PCAL(1)
  533.  
  534.  
  535.        --FF _d_a_y      Selects weekday _d_a_y as the first day of the
  536.                    week.  The given day will appear in the left-
  537.                    most column of the calendar.
  538.  
  539.        --AA          Directs _p_c_a_l to use American date conventions
  540.                    mmmm//dddd{{//yyyy}} and mmoonntthh dddd ) when parsing the
  541.                    date file (default).
  542.  
  543.        --EE          Directs _p_c_a_l to use European date conventions
  544.                    dddd//mmmm{{//yyyy}} and dddd mmoonntthh ) when parsing the
  545.                    date file.
  546.  
  547.        --XX _x_t_r_a_n_s   Specifies the x-axis translation value for
  548.                    positioning the output on the page.
  549.  
  550.        --YY _y_t_r_a_n_s   Specifies the y-axis translation value for
  551.                    positioning the output on the page.
  552.  
  553.        --xx _x_s_c_a_l_e   Specifies the x-axis scaling factor for the
  554.                    calendar size.
  555.  
  556.        --yy _y_s_c_a_l_e   Specifies the y-axis scaling factor for the
  557.                    calendar size.
  558.  
  559.        --tt _t_i_t_l_e___f_o_n_t
  560.                    Specifies the name of a font to use to print
  561.                    the month name and year at the top of the cal-
  562.                    endar, the foot strings, and the notes box
  563.                    heading.  For example, ppccaall --tt TTiimmeess--RRoommaann.
  564.  
  565.        --dd _d_a_y___f_o_n_t Similar to the --tt option, but selects the font
  566.                    used to print the day numbers and weekday
  567.                    names.
  568.  
  569.        --nn _t_e_x_t___f_o_n_t[//_s_i_z_e]
  570.                    Similar to the --tt option, but selects the font
  571.                    used to print the text inside each day and in
  572.                    the notes block.  The user may also select the
  573.                    font size; ppccaall --nn HHeellvveettiiccaa//88 sets the font
  574.                    to 8-point Helvetica.
  575.  
  576.        --DD _s_y_m_b_o_l   Defines the named symbol prior to reading the
  577.                    date file.
  578.  
  579.        --UU _s_y_m_b_o_l   Un-defines the named symbol prior to reading
  580.                    the date file.
  581.  
  582.        --LL _s_t_r_i_n_g   Causes the accompanying string to be printed
  583.                    as a left-justified footer.  Format specifiers
  584.                    denoting the month and/or year may appear in
  585.                    the string; the appropriate values will be
  586.                    substituted upon printing.
  587.  
  588.        --CC _s_t_r_i_n_g   Similar to --LL, but causes the accompanying
  589.  
  590.  
  591.  
  592.                                                                 9
  593.  
  594.  
  595.  
  596.  
  597.  
  598. PCAL(1)                                                   PCAL(1)
  599.  
  600.  
  601.                    string to be printed as a centered footer.
  602.  
  603.        --RR _s_t_r_i_n_g   Similar to --LL, but causes the accompanying
  604.                    string to be printed as a right-justified
  605.                    footer.
  606.  
  607.        --NN _s_t_r_i_n_g   Causes the accompanying string to be printed
  608.                    as the heading for the "Notes" box.  Note,
  609.                    however, that _p_c_a_l makes no attempt to ensure
  610.                    that it fits.
  611.  
  612.        --BB          Causes _p_c_a_l to leave unused calendar boxes
  613.                    blank (default is gray).
  614.  
  615.        --SS          Causes _p_c_a_l to suppress printing the small
  616.                    calendars.  See the CCAAVVEEAATTSS section for fur-
  617.                    ther details.
  618.  
  619.        --kk          Causes _p_c_a_l to print the small calendars in
  620.                    the upper left corner (the default is to print
  621.                    them at the lower right).
  622.  
  623.        --KK          Causes _p_c_a_l to print the small calendar for
  624.                    the previous month in the upper left corner
  625.                    and the next month in the lower right (the
  626.                    default is to print both at the lower right).
  627.  
  628.        --ww          Causes _p_c_a_l to print a calendar for 12 consec-
  629.                    utive months: 3 rows / 4 columns in landscape
  630.                    mode, 4 rows / 3 columns in portrait mode.
  631.                    See the CCAAVVEEAATTSS section for details on the use
  632.                    of this option with other options.
  633.  
  634.        --cc          Causes _p_c_a_l to generate a date file suitable
  635.                    for use as input to the Un*x _c_a_l_e_n_d_a_r_(_1_) util-
  636.                    ity.  The normal PostScript output is sup-
  637.                    pressed.
  638.  
  639.        --II          Resets all parameters to the program defaults.
  640.  
  641.        --hh          Causes _p_c_a_l to write version information,
  642.                    parameter usage message, and full explanation
  643.                    of options and file formats (to _s_t_d_o_u_t) and
  644.                    terminate.
  645.  
  646.        --uu          Causes _p_c_a_l to write version information and
  647.                    parameter usage message (to _s_t_d_o_u_t) and termi-
  648.                    nate.
  649.  
  650.        --vv          Causes _p_c_a_l to write version information only
  651.                    (to _s_t_d_o_u_t) and terminate.
  652.  
  653.        Any option which normally takes an argument may be speci-
  654.        fied without the argument in order to reset the value to
  655.  
  656.  
  657.  
  658.                                                                10
  659.  
  660.  
  661.  
  662.  
  663.  
  664. PCAL(1)                                                   PCAL(1)
  665.  
  666.  
  667.        the program default.  Note that while the --DD option alone
  668.        clears all the defined symbols, the --UU option alone has no
  669.        effect.  The -- (or ---- as per System V) argument may be
  670.        used to disambiguate command lines such as:
  671.  
  672.               ppccaall --tt 99 9900
  673.  
  674.        This could be written instead as one of the following:
  675.  
  676.               ppccaall --tt -- 99 9900
  677.               ppccaall --tt ---- 99 9900
  678.  
  679.        If the environment variable PPCCAALL__OOPPTTSS is defined, its con-
  680.        tents are parsed as a command line.  Flags set via
  681.        PPCCAALL__OOPPTTSS override the program defaults, but are overrid-
  682.        den by options set via oopptt lines in the _._c_a_l_e_n_d_a_r file or
  683.        explicitly on the command line.
  684.  
  685. CCAAVVEEAATTSS
  686.        The ``workday'' and ``holiday'' keywords are aware of only
  687.        those holidays which have already been flagged at the
  688.        point where they appear.  For example, consider January
  689.        1990:
  690.  
  691.                           JJaannuuaarryy 11999900
  692.                        SS  MM TTuu  WW TThh  FF  SS
  693.                           11  22  33  44  55  66
  694.                        77  88  99 1100 1111 1122 1133
  695.                       1144 1155 1166 1177 1188 1199 2200
  696.                       2211 2222 2233 2244 2255 2266 2277
  697.                       2288 2299 3300 3311
  698.  
  699.        If the _._c_a_l_e_n_d_a_r file looked like this:
  700.  
  701.             wwoorrkkddaayy oonn__oorr__bbeeffoorree aallll 1155   ppaayyddaayy
  702.             33rrdd MMoonn iinn JJaann**               MMLLKK ddaayy
  703.  
  704.        ... then _p_c_a_l would mark the 15th as ``payday'' since at
  705.        that point in the _._c_a_l_e_n_d_a_r file it has no way of knowing
  706.        that January 15th will later be flagged as a holiday.  If
  707.        the two lines were reversed, such that the holiday pre-
  708.        ceded the ``workday'' wildcard, then _p_c_a_l would work as
  709.        intended, marking instead the 12th as ``payday''.  Also,
  710.        beware of year boundaries which affect the handling of all
  711.        of the day wildcard keywords.  In general, it is best to
  712.        place monthly wildcards such as the example above at the
  713.        end of each year to achieve the desired effect.
  714.  
  715.        When the --ww and --pp options are used together, _p_c_a_l revises
  716.        the y-scale factor in order to use the entire portrait
  717.        page; therefore, the user should avoid using use the --yy
  718.        option when using both the --ww and --pp options.  Use of the
  719.        --ww option in any case effectively disables the --mm, --MM, --jj,
  720.        and --JJ options.
  721.  
  722.  
  723.  
  724.                                                                11
  725.  
  726.  
  727.  
  728.  
  729.  
  730. PCAL(1)                                                   PCAL(1)
  731.  
  732.  
  733.        The output of the --cc option may be used as input to subse-
  734.        quent runs of _p_c_a_l.  Note, however, that oopptt lines (except
  735.        for an automatic oopptt --[[AA||EE]]), comments, ``note'' text, and
  736.        iiffddeeff'd-out source will be lost.
  737.  
  738.        The --SS option interacts with nnoottee{{//<<nnuummbbeerr>>}}; if used, it
  739.        should be specified either on the command line or prior to
  740.        the first nnoottee line in the date file.
  741.  
  742. SSEEEE AALLSSOO
  743.        cal(1), calendar(1).
  744.  
  745. AAUUTTHHOORRSS
  746.        The original PostScript code to generate the calendars was
  747.        written by Patrick Wood (Copyright (c) 1987 by Patrick
  748.        Wood of Pipeline Associates, Inc.), and authorized for
  749.        modification and redistribution.  The calendar file inclu-
  750.        sion code was originally written in _b_s(1) by Bill Vogel of
  751.        AT&T.  Patrick's original PostScript was modified and
  752.        enhanced several times by others whose names have regret-
  753.        tably been lost.  Ken Keirnan of Pacific Bell assembled
  754.        the original ``C'' version upon which this is based; addi-
  755.        tional modifications and enhancements are the work of
  756.        Joseph P. Larson, Ed Hand, Andrew W. Rogers, Mark
  757.        Kantrowitz, Joe Brownlee, Jamie Zawinski, Richard L.
  758.        Dyson, Bill Hogsett, Floyd Miller, Andy Fyfe, and Geoff
  759.        Kuenning.
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.                                                                12
  791.  
  792.  
  793.