home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: InfoMgt / InfoMgt.zip / MJOG.ZIP / MJOG.DOC next >
Text File  |  1991-03-26  |  31KB  |  769 lines

  1.                                 MJOG 2.16/2.16P
  2.  
  3.         MJOG is a simple program that can help jog your memory for
  4.         important dates (mjog = Memory JOGger).  You can use MJOG to
  5.         create a small file containing birthdays, appointments, etc.,
  6.         and it will remind you of them as far in advance as you wish.
  7.         MJOG is a nice program to put in your AUTOEXEC.BAT.
  8.  
  9.         MJOG 2.xx is the DOS version; MJOG 2.xxP is the OS/2 version.
  10.         The two versions are identical except that one runs under DOS
  11.         and one under OS/2.
  12.  
  13.         Version 2 is a complete rewrite of the program.  It is much
  14.         more flexible than previous versions.  The basic changes are:
  15.  
  16.             -- Flexible reminder dates (remind on day of week, day
  17.                of month, etc.).
  18.  
  19.             -- "Cleanup" is no longer required; obsolete entries are
  20.                automatically deleted.
  21.  
  22.             -- You can delete reminders without editing the data file.
  23.  
  24.             -- You can temporarily "forget" a recurring reminder after
  25.                it has been taken care of.
  26.  
  27.             -- You can define different lookahead periods for each
  28.                reminder.
  29.  
  30.             -- More flexible configuration.
  31.  
  32.         | marks changes in recent versions.
  33.  
  34.  
  35.         Starting up
  36.         -----------
  37.         MJOG keeps a small text file for your appointments and
  38.         reminders.  You should decide where you want to keep this
  39.         before running MJOG the first time.  If you don't specify where
  40.         it goes, MJOG will create a file called MJOG.DAT in the current
  41.         directory.
  42.  
  43.         If you want to use a different name and/or directory, set the
  44.         environment variable MJOG as follows:
  45.  
  46.             SET MJOG=FILE:d:\path\filename
  47.  
  48.         For example:
  49.  
  50.             SET MJOG=FILE:c:\misc\mjog.txt
  51.  
  52.         Do this before running MJOG.  Note that there are additional
  53.         options for the MJOG variable, as described below.
  54.  
  55.  
  56.         Adding appointments to your calendar
  57.         ------------------------------------
  58.         To add a date to your calendar file (or to create a new file if
  59.         there isn't one already), just type
  60.  
  61.                 MJOG date text
  62.  
  63.         where date is a reminder date and text is the reminder text.
  64.         MJOG's date scheme is very flexible; see the section called
  65.         "Specifying dates."
  66.  
  67.         Here are some examples of entering reminders:
  68.  
  69.                 mjog tue Dentist 3pm
  70.                     (See the dentist next Tuesday)
  71.  
  72.                 mjog 4/14 Dinner with CPA
  73.                     (Meet with your CPA next April 14th)
  74.  
  75.                 mjog every 4/15 Income taxes due
  76.                     (Pay taxes every April 15th)
  77.  
  78.                 mjog 8/15/* Income taxes REALLY due
  79.                     (Note that * is a wildcard--same as "EVERY 8/15")
  80.  
  81.                 mjog today 1pm Lunch with Neville & Benito.
  82.                     (Have lunch today at 1 PM)
  83.  
  84.  
  85.         Displaying reminders
  86.         --------------------
  87.         To have MJOG display your reminders, just run it:
  88.  
  89.                 MJOG
  90.  
  91.         It will display all reminders for the next ten days.  You can
  92.         change the number of days MJOG "looks ahead" as described below.
  93.  
  94.         If you add a /P switch:
  95.  
  96.                 MJOG /P
  97.  
  98.         MJOG will pause after it displays any reminders.  It will not
  99.         pause if there are no reminders to display.
  100.  
  101.  
  102.         Displaying a calendar
  103.         ---------------------
  104.         You can have MJOG display a calendar of the current month:
  105.  
  106.             MJOG /L
  107.  
  108.         If you want a calendar for a different month, use:
  109.  
  110.             MJOG /L(mm/yy)
  111.  
  112.         For example:
  113.  
  114.             MJOG /L(6/89)
  115.  
  116.         This would display a calendar for June, 1989.
  117.  
  118.  
  119.         Specifying dates
  120.         ----------------
  121.         MJOG is quite flexible on dates.  You can specify days of the
  122.         week, months, days of the month, and years, and you can use
  123.         "wildcards" to create reminders that repeat regularly.
  124.  
  125.         There are two kinds of reminders.  "Floating" reminders recur
  126.         periodically (for example, the 1st of every month, every Monday,
  127.         every April 15th).  "Fixed" reminders refer to one specific date
  128.         (for example, 12/15/89).
  129.  
  130.         Here are the two generic date formats:
  131.  
  132.             TODAY
  133.             EVERY dow mm/dd/yy
  134.  
  135.         where EVERY is a keyword that forces the date to float; DOW is a
  136.         day of the week; and MM, DD, and YY represent a month, day of
  137.         the month ("DOM"), and year, respectively.  All fields are
  138.         optional, but you must specify enough for MJOG to be able to
  139.         determine a valid date.  We'll describe partial and wildcard
  140.         date specifications shortly.
  141.  
  142.         The DOW, if present, must be one of the following three-letter
  143.         abbreviations:
  144.  
  145.             Mon Tue Wed Thu Fri Sat Sun
  146.  
  147.         Case is not significant (e.g., "mon", "Mon", and "MON" are all
  148.         OK).
  149.  
  150.         All fields can be wildcards, and some can be omitted in certain
  151.         combinations.  Here are the details:
  152.  
  153.            1. Month, Year, DOM wildcards:  an asterisk (*) is a
  154.            wildcard; it allows the field to float.  Examples:
  155.  
  156.                 12/25/*     (December 25th of any year)
  157.                 12/*/*      (any date in any December)
  158.                 4/*/89      (any date in April, 1989)
  159.                 */15/*      (the 15th of every month)
  160.                 */1/89      (the 1st of every month in 1989)
  161.                 */*/*       (every day)
  162.  
  163.            2. Month, Year, DOM partial specifications:  in some cases
  164.            you can omit fields of the MM/DD/YY specification.  These are
  165.            the valid partial date formats:
  166.  
  167.                 MM/YY
  168.                     Shorthand for MM/*/YY
  169.                     Example: "12/89" = "12/*/89"
  170.  
  171.                 MM/DD
  172.                     The next occurrence of the month and DOM.  If
  173.                     entered on 6/9/89:
  174.                         "7/15" = "7/15/89"
  175.                         "4/15" = "4/15/90"
  176.  
  177.                 DD
  178.                     Means the next occurrence of the specified DOM.  If
  179.                     entered on 6/12/89:
  180.                         "12" = "6/12/89"
  181.                         "13" = "6/13/89"
  182.                         "11" = "7/11/89"
  183.  
  184.            Note that the MM/DD and DD formats are fixed reminders--they
  185.            represent one specific date.  MM/YY, however, is a floating
  186.            reminder--it represents any day in the specified month.
  187.  
  188.            3. DOW wildcards:  you can make the DOW a wildcard by simply
  189.            omitting it.  Do not use an asterisk.
  190.  
  191.            4. EVERY:  this is a keyword that forces the date
  192.            specification to float.  Examples:
  193.  
  194.                 every 12/25     (same as 12/25/*)
  195.                 every 15        (same as */15/*)
  196.                 every tue       (every Tuesday)
  197.                 every 12/89     (same as 12/*/89)
  198.  
  199.         This sounds much more complicated than it really is.  In
  200.         practice, you will find it quite natural.  Here are some
  201.         examples of valid date specifications.  Where "shorthand" is
  202.         used, the equivalent full specification is shown in parentheses
  203.         (MM, DD, and YY represent specific numbers):
  204.  
  205.             every thu       Every Thursday (THU */*/*)
  206.             thu             Next Thursday (THU MM/DD/YY)
  207.             17              The next 17th of the month (MM/17/YY)
  208.             4/89            Every day of April, 1989 (4/*/89)
  209.             12/15           The next December 15 (12/15/YY)
  210.             every 12/15     Every December 15 (12/15/*)
  211.             thu 12/89       Every Thursday in 12/89 (THU 12/*/89)
  212.             mon */*/89      Every Monday in 1989
  213.             */15/*          15th of every month
  214.             */15/90         15th of every month in 1990
  215.             1/*/*           Every day of every January
  216.             every 17        17th of every month (*/17/*)
  217.             9/14/89         September 14, 1989
  218.             today           Today!
  219.  
  220.         Note that if your date specification consists solely of a DOW,
  221.         MJOG will not include today, even if it is the same DOW.  For
  222.         example, if you enter
  223.  
  224.             MJOG tue dentist 9:30
  225.  
  226.         MJOG will assume that you mean NEXT Tuesday, even if today is
  227.         Tuesday.  If you really mean today, use
  228.  
  229.             MJOG today dentist 3pm
  230.  
  231.         If you use EVERY with a DOW, MJOG will include the current date:
  232.  
  233.             MJOG every tue Luncheon in the grass
  234.  
  235.         In this case, MJOG will display the reminder for today (if today
  236.         is Tuesday).
  237.  
  238.         Finally, note that you can enter a DOW and a DOM, but they must
  239.         match correctly.  For example:
  240.  
  241.             tue 1/3/89      is OK: 1/3/89 is a Tuesday
  242.             tue 1/4/89      is invalid (no such date)
  243.             tue */7/*       will display a reminder on any 7th that is a
  244.                             Tuesday, but will give error messages for
  245.                             other 7ths.
  246.  
  247.  
  248.         Changing the "lookahead" date
  249.         -----------------------------
  250.         Normally, MJOG will look ahead ten days.  This means that it
  251.         will display any reminders that will occur within the next ten
  252.         days (including today).
  253.  
  254.         You can change MJOG's lookahead date by using the /n switch,
  255.         where n is the number of days you want to look ahead.  For
  256.         example:
  257.  
  258.             MJOG /180
  259.  
  260.         This will display any reminders coming up within the next six
  261.         months.  Note that you can permanently change the lookahead
  262.         period via the MJOG environment variable (see below).
  263.  
  264.         You can also specify individual ("local") lookahead dates for
  265.         each reminder by using a /n switch when you define it.  For
  266.         example:
  267.  
  268.             MJOG /30 every 4/15 Income taxes due!
  269.  
  270.         This will display your income tax reminder one month in advance,
  271.         while other reminders remain set at the usual ten days.
  272.  
  273.         To be precise, the lookahead date is how many days IN ADVANCE
  274.         you want to be reminded.  If you only want to be reminded on the
  275.         actual day of the memo, use /0.  The maximum lookahead value is
  276.         65534 days.
  277.  
  278.         Note that MJOG will only display a reminder once, even if it
  279.         occurs multiple times within the lookahead period.  For example,
  280.         if you have
  281.  
  282.             mjog every Fri 9am staff meeting
  283.  
  284.         and you run MJOG /30, only the first weekly staff meeting will
  285.         be displayed.
  286.  
  287.         If you specify a global lookahead on the command line, MJOG will
  288.         use the longer of the two lookahead periods for those reminders
  289.         that also have "local" lookaheads.  For example, if you have:
  290.  
  291.             mjog /20 3/2/* Patty's birthday
  292.             mjog /60 4/15/* Taxes due
  293.  
  294.         (specifying a 20-day lookahead for the birthday and a 60 day
  295.         lookahead for taxes) and you then do:
  296.  
  297.             mjog /45
  298.  
  299.         MJOG will use a 45-day lookahead for the birthday and a 60-day
  300.         lookahead for the taxes.
  301.  
  302.  
  303.       | Displaying a different year
  304.       | ---------------------------
  305.       | Some people like to use MJOG as a "this day in history" tool,
  306.       | displaying interesting things that have occurred on the current
  307.       | date in years past:
  308.       |
  309.       |     MJOG /0 5/10/* Churchill becomes Prime Minister, 1940
  310.       |
  311.       | This works well, except that the reminder always shows up with
  312.       | the current date:
  313.       |
  314.       |      Wed  5/10/89 Churchill becomes Prime Minister, 1940
  315.       |
  316.       | The date "Wed 5/10/89" has no particular significance in this
  317.       | context; it is simply an artifact of the way MJOG works.
  318.       |
  319.       | The /Y switch allows you to specify a different year for
  320.       | display; just follow it with a full 4-digit year.  For example:
  321.       |
  322.       |     MJOG /0 /Y1940 5/10/* Churchill becomes Prime Minister
  323.       |
  324.       | On May 10, this will be displayed:
  325.       |
  326.       |     Fri  5/10/1940 Churchill becomes Prime Minister
  327.       |
  328.       | Any year from 1 A.D. is valid.  Note that, for years prior to
  329.       | the adoption of the Gregorian calendar, the displayed day of the
  330.       | week may differ from the day as recorded in history.  The
  331.       | Gregorian calendar was adopted by the British Empire (including
  332.       | the American colonies) on September 14, 1752, and by other
  333.       | countries at various times.
  334.  
  335.  
  336.         Deleting reminders
  337.         ------------------
  338.         When a reminder is obsolete (i.e., when the date of a fixed-date
  339.         reminder has passed), MJOG will automatically delete it.  To
  340.         delete a floating reminder or a fixed reminder before its date
  341.         has been reached, you can either edit the MJOG data file with
  342.         your text editor and manually delete it, or you can have MJOG
  343.         delete it via the command:
  344.  
  345.                 MJOG /D [date] [text]
  346.  
  347.         You must include enough of the date and/or text to uniquely
  348.         identify the reminder.  For example, if you have a note:
  349.  
  350.                 MJOG Tue Call for dentist appointment
  351.  
  352.         you could delete it by using:
  353.  
  354.                 MJOG /D dentist
  355.                     or
  356.                 MJOG /D Tue
  357.  
  358.         if and only if the word "dentist" does not appear in any other
  359.         reminder (first example) or if you have no other reminders for
  360.         next Tuesday (second example).  You can make the deletion
  361.         unambiguous by including more text or by specifying the date and
  362.         some text:
  363.  
  364.                 MJOG /D tue dentist
  365.                 MJOG /D call for dentist
  366.  
  367.         If you use a date, you do not have to use the same format as the
  368.         original entry, but you must specify it so that it evaulates to
  369.         the correct date.  For example, if you had originally used:
  370.  
  371.                 MJOG 6/20/89 Call dentist for appointment
  372.  
  373.         you could use:
  374.  
  375.                 MJOG /D Tue dentist
  376.  
  377.         if next Tuesday is 6/20/89.  In other words, that command would
  378.         work from Tuesday 6/13/89 through Monday 6/19/89.  Prior to
  379.         6/13/89 or on 6/20, you'd have to specify the date more
  380.         accurately.  Here are several examples:
  381.  
  382.                 MJOG /D 6/20/89 dentist (always OK)
  383.                 MJOG /D 6/20 dentist    (anytime from 6/21/88-6/20/89)
  384.                 MJOG /D 20 dentist      (OK 6/1/89-6/20/89)
  385.                 MJOG /D TODAY dentist   (OK on 6/20/89 only)
  386.  
  387.         If there is no way to make a reminder selection unambiguous
  388.         (i.e., if two reminders in file are identical), the only way to
  389.         remove one of them is by editing the file.
  390.  
  391.  
  392.         Forgetting reminders
  393.         --------------------
  394.         After you've taken care of a floating reminder, it's useful to
  395.         be able to "forget" it until the next occurrence.  For example,
  396.         suppose you have:
  397.  
  398.                 MJOG EVERY 10/19 Mom's birthday
  399.  
  400.         You'll be reminded every year, prior to October 19, that it's
  401.         time to take care of the birthday.  After you've sent her the
  402.         keys to that new car (say, on October 15), there's not much
  403.         point to the reminder remaining active.  But you don't want to
  404.         delete it, either, because you're going to have to buy another
  405.         new car next year.  All you want to do is forget it for this
  406.         year.
  407.  
  408.         MJOG allows you to forget the reminder in this fashion:
  409.  
  410.             MJOG /F [date] [text]
  411.  
  412.         The date and/or text are specified exactly as for deleting a
  413.         reminder (above).  For example:
  414.  
  415.             MJOG /F 10/19
  416.             MJOG /F 19 birthday
  417.  
  418.         When you do this, MJOG adds a special note to the reminder in
  419.         the file, telling it to forget the reminder until a specific
  420.         date has passed.  Assuming that you issue the above command in
  421.         1989, MJOG would change the reminder in file to:
  422.  
  423.             MJOG /~10/19/89 10/19/* Mom's birthday
  424.  
  425.         MJOG will then ignore this reminder until AFTER 10/19/89, at
  426.         which time the /F note will be removed and the reminder will
  427.         again become active (for 1990).
  428.  
  429.         The /~MM/DD/YY format is a special one that MJOG uses for
  430.         itself.  It appears only in the data file, and you should
  431.         probably not enter it by hand.  If you insist on doing so, it
  432.         must be in EXACTLY that format.  In particular, the date must be
  433.         explicit--it can contain no wildcards, missing elements, or days
  434.         of the week.
  435.  
  436.  
  437.         Displaying MJOG version
  438.         -----------------------
  439.         MJOG does not display its version/copyright notice when it is
  440.         just listing reminders (it would detract from the display).  It
  441.         does display the notice when any maintenance is performed on the
  442.         reminder file (new reminders, deletes, forgets, etc.) and when
  443.         an error is detected.
  444.  
  445.         If you need to check your version number manually, use the /V
  446.         switch:
  447.  
  448.             MJOG /V
  449.  
  450.  
  451.         Parameter specifications
  452.         ------------------------
  453.         MJOG is fairly flexible about how you enter parameters, but
  454.         there are a few rules you must follow.
  455.  
  456.         1. Switches cannot be combined and must be separated from each
  457.         other by at least one space:
  458.  
  459.             Legal:      MJOG /L /50
  460.             Illegal:    MJOG /L/50
  461.             Illegal:    MJOG /L50
  462.  
  463.         Switches can be introduced by either a slash (/) or a hyphen
  464.         (-).
  465.  
  466.         2. The keyword EVERY, if present, must precede the date/DOW:
  467.  
  468.             Legal:      mjog every tue
  469.             Illegal:    mjog 12/15 every
  470.  
  471.         3. MJOG assumes that the reminder text begins with first word it
  472.         finds that doesn't look like one of these:
  473.  
  474.             "EVERY" (unless date has already appeared)
  475.             "TODAY" (unless date has already appeared)
  476.             /switch
  477.             -switch
  478.             day-of-week specification
  479.             date specification
  480.  
  481.         That's fairly simple.  About the only time you can get into
  482.         trouble with the text is if your date specification is a DOW
  483.         only (no date) and the reminder text begins with a number:
  484.  
  485.             mjog tue 3 wise men arrive, Heathrow 0730
  486.  
  487.         MJOG will think the "3" is a date specification.  It does have
  488.         some special logic built in; numbers that meet any of these
  489.         criteria are assumed NOT to be dates (and thus to begin the
  490.         reminder text):
  491.  
  492.             Any number that is three or more digits in length.
  493.             Any number containing a colon (:).
  494.             Any number that is followed by "AM" or "PM"
  495.  
  496.         Therefore, all of these would be OK:
  497.  
  498.             mjog tue 0730 3 wise men arrive, Heathrow
  499.             mjog tue 9:00 staff meeting
  500.             mjog tue 9am staff meeting
  501.             mjog fri 10667 Brambley Court, meet Spiro
  502.  
  503.         4. When a date is in the format nn/nn, it could be either MM/DD
  504.         or MM/YY.  MJOG assumes that it is MM/YY if the second number is
  505.         larger than 31, else MM/DD.
  506.  
  507.         5. Years can be specified either as YY or as YYYY ("89" or
  508.         "1989").  MJOG accepts dates from 1981-2010.  Years are always
  509.         displayed as YY, except for /Y switch years, which are displayed
  510.         as YYYY.
  511.  
  512.  
  513.         The MJOG data file
  514.         ------------------
  515.         The file that MJOG uses (usually called MJOG.DAT) is a standard
  516.         ASCII text file containing all active reminders.  You can edit
  517.         it, if you wish, with your text editor or your word processor in
  518.         non-document mode.
  519.  
  520.         MJOG updates the file by itself whenever a reminder is added,
  521.         "forgotten", deleted, or obsoleted.  Note that MJOG uses a
  522.         standard format for its dates when writing the data file, so
  523.         they might not look exactly as they did when entered.  For
  524.         example, "every 15" is the same as "*/15/*"; MJOG will always
  525.         use the latter, no matter how you entered it.
  526.  
  527.         You can prevent MJOG from automatically deleting obsolete
  528.         reminders from the file via the NOUPDATE field in the MJOG
  529.         environment variable (see below).
  530.  
  531.         You can force MJOG to update the file with a /U parameter:
  532.  
  533.             MJOG /U
  534.  
  535.         /U overrides NOUPDATE if both are present.
  536.  
  537.         Whenever MJOG updates the file for any reason, it is sorted in
  538.         order of next occurrence date.  In other words, the memos will
  539.         appear in the file in the order they will appear on the screen.
  540.         Each line of the file is in a specific format:
  541.  
  542.             (mm/dd/yy) /~mm/dd/yy /nn dow mm/dd/yy text
  543.  
  544.         The mm/dd/yy in parentheses is the date of the next occurrence
  545.         of the memo.  The remainder of the line should be familiar:  the
  546.         "forget-until" date, local lookahead, DOW, reminder date, and
  547.         reminder text.  Many of these fields may be missing from any
  548.         single line, but everything will be lined up in columns.
  549.  
  550.         If you edit the data file by hand, the next-occurrence date (in
  551.         parentheses) need not be present.  However, if it is, it must be
  552.         enclosed in parentheses, and it must be the first item on the
  553.         line.
  554.  
  555.  
  556.         The MJOG environment variable
  557.         -----------------------------
  558.         The MJOG environment variable allows you to permanently change a
  559.         few items of MJOG's configuration.  These include the name and
  560.         location of the data file, the screen attributes (colors) to be
  561.         used, where to display the calendar, and the lookahead period.
  562.         The specific syntax is:
  563.  
  564.             MJOG=FILE:<filename> ATTRIB:<attribs> CAL:<coords> LOOK:<nn>
  565.                 NOUPDATE
  566.  
  567.         All are optional (but you obviously must specify at least one of
  568.         them).  The formats are as follows:
  569.  
  570.         FILE:   The exact path and filename of the data file.  For
  571.         example:
  572.  
  573.             FILE:c:\misc\mjog.dat
  574.  
  575.         ATTRIB:  A list of screen attributes in ANSI format.  ANSI.SYS
  576.         or equivalent must be loaded to use this feature [under OS/2,
  577.         MJOG does not check to ensure that this is true!].  You specify
  578.         three attributes:  normal, highlight, and exit.  Highlight is
  579.         used for highlighted displays, which includes any reminders for
  580.         today or tomorrow and the current date on the calendar.  Normal
  581.         is used for all other displays.  Exit is the attribute the
  582.         system will be using when MJOG finishes.  Attributes are
  583.         specified using the numeric sequence ANSI.SYS uses to specify
  584.         colors.  For example, "1" turns on the highlight attribute (the
  585.         ANSI sequence is <Esc>[1m), so you'd use "1" for highlighted
  586.         video; "34;43" would set blue-on-yellow (ANSI is <Esc>[34;43m).
  587.         The three attribute fields are separated by commas.  Examples:
  588.  
  589.             ATTRIB:0,1,0                (for a mono display)
  590.               Normal = white on black
  591.               Hilite = bright white on black
  592.               Exit   = white on black
  593.  
  594.             ATTRIB:34;43,33;44,34;43    (color display)
  595.               Normal = blue on yellow
  596.               Hilite = yellow on blue
  597.               Exit   = blue on yellow
  598.  
  599.         CAL:  the X,Y coordinates where you want the upper left hand
  600.         corner of the calendar to appear.  The standard coordinates are
  601.         56,2, and the upper left corner of the screen is 0,0.  Example:
  602.  
  603.               CAL:20,15
  604.  
  605.         This would cause the calendar to appear at column 20 of line 15.
  606.  
  607.         LOOK:  changes the global lookahead period from ten days to
  608.         something else.  Example:
  609.  
  610.               LOOK:7
  611.  
  612.         This would change the lookahead period to seven days.
  613.  
  614.         NOUPDATE:  If "NOUPDATE" is found in the variable, MJOG will not
  615.         perform automatic deletion of memos that are obsolete (i.e.,
  616.         fixed reminders whose date has passed).  The file will be only
  617.         updated when you add, "forget", or manually delete a reminder.
  618.         The /U command line switch overrides NOUPDATE and causes MJOG
  619.         to delete any obsolete memos.
  620.  
  621.         To create the environment variable, issue a SET MJOG= statement
  622.         before running MJOG (probably in AUTOEXEC.BAT).  For example:
  623.  
  624.          SET MJOG=FILE:c:\mjog.dat ATTRIB:0,1,0 CAL:10,2 LOOK:7 NOUPDATE
  625.  
  626.         If you see the DOS message "Out of environment space", you must
  627.         increase the space allocated for your environment.  For example,
  628.         under current versions of DOS, DOS 3.x or later, you could add
  629.         the following to your CONFIG.SYS:
  630.  
  631.             SHELL=c:\command.com c:\ /p /e:512
  632.  
  633.         This obviously assumes that your copy of COMMAND.COM is located
  634.         in C:\, and it would give you 512 bytes of environment space.
  635.  
  636.  
  637.         Compatibility with previous versions
  638.         ------------------------------------
  639.         We've made every effort to keep MJOG version 2 compatible with
  640.         earlier versions.
  641.  
  642.         The old MJOGDIR and MJOGXY environment variables are still
  643.         supported.  If the new MJOG variable and one or both of the old
  644.         variables are present, MJOG will override MJOGDIR and MJOGXY (if
  645.         MJOG contains FILE: and CAL: fields respectively).
  646.  
  647.         The old -C switch is no longer necessary and is ignored if
  648.         present (cleanup is now automatic).
  649.  
  650.  
  651.         Use on non-IBM-compatible systems (DOS version)
  652.         -----------------------------------------------
  653.         All features of MJOG except the calendar display can be used on
  654.         any MSDOS machine.
  655.  
  656.         If you have a non-compatible MSDOS machine and wish to use the
  657.         calendar:
  658.  
  659.             1. You must have ANSI.SYS or equivalent installed.
  660.             2. Your ANSI device driver must support the CPR (Cursor
  661.                Position Report) sequence.  On receipt of the sequence
  662.                <esc>[6n, the device driver should report the current
  663.                cursor position via standard input.
  664.             3. You must specify an attribute set (using the MJOG
  665.                environment variable).
  666.  
  667.         If you are not using an IBM-compatible machine and use the
  668.         calendar without taking the above steps, the results will be
  669.         unpredictable.  MJOG will use system interrupt 10h for cursor
  670.         movement; interrupt 10h is BIOS video service on IBM-compatible
  671.         systems, but may not be on others.
  672.  
  673.  
  674.         Switch summary
  675.         --------------
  676.         The full list of available switches is as follows:
  677.  
  678.         /#          Alter lookahead days to #.
  679.         /D          Delete a reminder (include date/text to identify).
  680.         /F          Forget a reminder (include date/text to identify).
  681.         /L[(m/y)]   Display a calendar [for month MM/YY].
  682.         /P          Pause after reminders.
  683.         /U          Force a file update (counters NOUPDATE).
  684.         /V          Display version number.
  685.         /Y#         Specifies a year for display.
  686.  
  687.  
  688.         Release history
  689.         ---------------
  690.         Version 2.16P 03/27/91
  691.             -- OS/2 release of version 2.16
  692.  
  693.         Version 2.16 02/04/89
  694.             -- Corrects errors in calendar displays
  695.  
  696.         Version 2.15 02/02/89
  697.             -- Fixes some problems with the ATTRIBute set.  One of these
  698.                problems could cause the calendar display to hang up or
  699.                repeat endlessly.
  700.             -- Fixes some problems with /Deleting and /Forgetting
  701.                reminders.
  702.             -- Adds /Y switch.
  703.             -- Allows larger data files
  704.  
  705.         Version 2.10 01/05/89
  706.             -- Fixes several problems with local lookahead.
  707.             -- Formats MJOG data file into columns and adds
  708.                next-occurrence date to each line.
  709.             -- Adds /U and /P switches.
  710.             -- Adds TODAY keyword.
  711.             -- DOW-only memos now assumed not to include today.
  712.             -- Adds NOUPDATE field to MJOG variable.
  713.             -- Numerous internal changes to reduce memory requirements
  714.                and possibilities of stack overflow.
  715.  
  716.         Version 2.00 12/20/88
  717.             Initial public release of version 2.
  718.  
  719.  
  720.                           Copyright/License/Warranty
  721.                           --------------------------
  722.  
  723.         This document and the program file MJOG.EXE ("the software") are
  724.         copyrighted by the author.  The copyright owner hereby licenses
  725.         you to:  use the software; make as many copies of the program
  726.         and documentation as you wish; give such copies to anyone; and
  727.         distribute the software and documentation via electronic means.
  728.         There is no charge for any of the above.
  729.  
  730.         However, you are specifically prohibited from charging, or
  731.         requesting donations, for any such copies, however made; and
  732.         from distributing the software and/or documentation with
  733.         commercial products without prior permission.  An exception is
  734.         granted to not-for-profit user's groups, which are authorized to
  735.         charge a small fee (not to exceed $7) for materials, handling,
  736.         postage, and general overhead.  NO FOR-PROFIT ORGANIZATION IS
  737.         AUTHORIZED TO CHARGE ANY AMOUNT FOR DISTRIBUTION OF COPIES OF
  738.         THE SOFTWARE OR DOCUMENTATION, OR TO INCLUDE COPIES OF THE
  739.         SOFTWARE OR DOCUMENTATION WITH SALES OF THEIR OWN PRODUCTS.
  740.  
  741.         THIS INCLUDES A SPECIFIC PROHIBITION AGAINST FOR-PROFIT
  742.         ORGANIZATIONS DISTRIBUTING THE SOFTWARE, EITHER ALONE OR WITH
  743.         OTHER SOFTWARE, AND CHARGING A "HANDLING" OR "MATERIALS" FEE OR
  744.         ANY OTHER SUCH FEE FOR THE DISTRIBUTION.  NO FOR-PROFIT
  745.         ORGANIZATION IS AUTHORIZED TO INCLUDE THE SOFTWARE ON ANY MEDIA
  746.         FOR WHICH MONEY IS CHARGED.
  747.  
  748.         The software is intended for personal use only and should not be
  749.         used in a commercial, institutional, or governmental environment
  750.         with prior permission of the copyright owner.
  751.  
  752.         No copy of the software may be distributed or given away without
  753.         this document, and this notice must not be removed.
  754.  
  755.         There is no warranty of any kind, and the copyright owner is not
  756.         liable for damages of any kind.  By using this free software,
  757.         you agree to this.
  758.  
  759.         The software and documentation are:
  760.  
  761.                     Copyright (C) 1985, 1986, 1987, 1988 by
  762.                             The Cove Software Group
  763.                             Christopher J. Dunford
  764.                                  P.O. Box 1072
  765.                            Columbia, Maryland 21044
  766.  
  767.                                 (301) 992-9371
  768.                         CompuServe 76703,2002 [IBMNET]
  769.