home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 8 / CDASC08.ISO / VRAC / MMCONV12.ZIP / MMCONV.DOC < prev    next >
Text File  |  1993-07-21  |  14KB  |  330 lines

  1.     MMCONV  version 1.20
  2.  
  3.     MMCONV is designed to be used by those of us who frequent recipe
  4. conferences on BBSes and use MealMaster.  Often people enter intriguing
  5. recipes that are not in MM format.  This program avoids some of the
  6. drudgery of typing such recipes in by hand or manually reformatting them.
  7.  
  8.     It can also be used by QuikBook users since QuikBook will import
  9. MealMaster formatted recipes with no difficulty.
  10.  
  11.     MMCONV is designed to convert free-form recipes or recipes formatted
  12. for other recipe databases to MealMaster format with minimal manual
  13. effort.  The MM format is:
  14.  
  15.                units     measure        ingredients
  16.    Col 1:       1-7        9-10           13-39
  17.    Col 2:      42-48      50-51           54-81
  18.  
  19.     MMCONV knows the standard MealMaster measurement abbreviations and uses
  20. them.  I did not know small, large, and pinch had standard abbreviations,
  21. but they do.  Despite the temptation, I did not use CL (centiliter) to
  22. represent clove(s).  I have seen recipes using it this way.
  23.  
  24.     MMCONV detects the start and end of recipes in four different ways:
  25.  
  26.         Start of recipe:
  27.  
  28.                 --MM
  29.  
  30.                 -Begin Recipe Export-          QUIKBOOK
  31.  
  32.                 **********                      Compu-Chef
  33.                   (next line must have ** in it)
  34.  
  35.                 *** FROM SCRATCH RECIPE BEGINS *****
  36.  
  37.  
  38.         End of recipe:
  39.  
  40.                  ---
  41.  
  42.                  -End Recipe Export-
  43.  
  44.                  Recipe Via Compu-Chef
  45.  
  46.                   ********** RECIPE ENDS ********
  47.  
  48.     The program itself provides a brief help screen if run without an input
  49. file:
  50.  
  51.  
  52.     Version 1.20 Meal-Master recipe formatter by Rodney Grantham
  53.  
  54.          Usage: MMCONV12 infile [outfile]
  55.  
  56.     infile - contains recipes not in Meal-Master format
  57.     outfile - where to write Meal-Master format recipes by default:  MMmmdd
  58.        (Recipes already in MM format are placed in output file)
  59.      *** Some manual pre-processing may be required ***
  60.     QUIKBOOK, COMPU-CHEF, FromScratch headings & footers are handled.
  61.      Mark other recipes with --MM at start and ---  at end of the recipe.
  62.     Categories are picked up if headed Categories:, Keywords:, Cat:
  63.     If none of above is found, Category: Main dish is put in.
  64.     Servings: 1 is used if serving info not detected.
  65.       Serv or Make looked for as servings marker.
  66.     A line of more than 45 characters with no 3 space break
  67.            in it is assumed to be the first direction line.
  68.     -l      - add own footer for left side,e.g., -lFrom mm002.zip
  69.     -r      - add own footer for right side,e.g., -rFound 4/5/93
  70.     -t      - no title display as recipes are found
  71.     -c      - override the default 45 character max ingredient line,e.g. -c55
  72.  
  73.     If the program is renamed, the new name will display in the help
  74. message.
  75.  
  76.     Please note:
  77.  
  78.     A line of more than 45 characters with no 3 space break
  79.  
  80.      -c      - override the default 45 character ingredient line,e.g. -c55
  81.  
  82.     In order to avoid manually marking direction sections, some convention
  83. must be used.  Most recipes don't have more than 45 characters in a line
  84. (unless they are double columns which is handled) in my experience.  If you
  85. frequently have longer lines, you can use the -C option to change the
  86. default.  BUT you may find that you then have directions treated as
  87. ingredients.
  88.  
  89.     If a recipe does not have a QUIKBOOK, COMPU-CHEF, FromScratch or
  90. MealMaster header and footer, it must be manually marked.  Put --MM at the
  91. top and at least 3 dashes (---) at the bottom.  Both of these must be
  92. aligned with the left margin.  DO NOT add a MealMaster format header to a
  93. non-MM recipe.  These recipes are copied as is.  Any of the other headers
  94. could be used to mark a recipe, but the --MM and --- are fewer characters.
  95.  
  96.     The '-l' or '-L' and '-r' or '-R' parameters are ways to label a zip
  97. file or add a comment on the line after the author and date information if
  98. you run an prior MMCREDIT output file through again.  Up to 38 characters
  99. will be used for either.  Some flexibility is supported here.  As long as
  100. the total characters for both is under 76, the program will combine the
  101. input into a credit line.  If the length exceeds 76, the input will be
  102. adjusted to fit the 76 space limit and a message showing the resulting
  103. credit line will be displayed.
  104.  
  105.  To enter just type, for example:
  106.  
  107.  MMCONVnn mmrecipe -lFrom the ZIP file: MM00.zip -rOff    PC101 BBS
  108.  
  109.  This will add the following CREDIT line at the bottom of recipes:
  110.  
  111.   From the ZIP file: MM00.zip            Off PC101 BBS
  112.  
  113.  If you add quotes to the -r parameter, the extra spaces will be preserved
  114. so this input:
  115.  
  116.  MMCONVnn mmrecipe -lFrom the ZIP file: MM00.zip -r"Off    PC101 BBS"
  117.  
  118. produces this CREDIT line:
  119.  
  120.  From the ZIP file: MM00.zip             Off    PC101 BBS
  121.  
  122.  
  123.     MMCONV will handle a missing footer.  It will be stopped by the next
  124. header.  However, this may cause the inclusion of extra stuff such as
  125. taglines and message header information in some cases.  In Meal-Master
  126. format recipes, a flag message about "Unexpected End of Recipe" is placed
  127. at the end of the recipe to alert you to check for a problem.
  128.  
  129.     The MMCONV program will split lines that are too long for the basic MM
  130. format.  If these lines are in column 2, there will be a '-' inserted in
  131. column 1 if it would otherwise be blank.  This is required to force MM to
  132. treat the 2nd column as a separate column.  Without this, MM thinks it has
  133. a single line of input which is too long.
  134.  
  135.     Occasionally recipes have commentary between the title and the
  136. ingredients.  You must manually move these into the direction section of
  137. the recipe or delete them for MMCONV to process the recipe correctly.
  138.  
  139.     MMCONV will recognize categories headed with all the following in any
  140. combination of upper or lower case and format them for MM:
  141.  
  142.          Category:
  143.          Categories:
  144.          Keywords:
  145.          Cat:
  146.  
  147.     Servings will default to 1.  Serving information in the recipe will be
  148. picked up if recognized.  The program looks for these characters
  149. (case-blind) to occur on first non-blank line after the title and expects a
  150. colon or space to follow them:
  151.  
  152.     SERV  (serves or servings or serving detected)
  153.     MAKE  (make or makes)
  154.  
  155. If these are found and the servings is 0, it will be set to one.  If
  156. non-numeric serving is found, default of one will be used.  A message
  157. showing the problem line will print out so you can fix the servings:
  158.  
  159. TOMATO-CILANTRO BREAD
  160.  Problem with servings:
  161.          Makes one 9x5 loaf
  162.  
  163.     A line of more than 45 characters with no space at least 3 blanks wide
  164. (normally occurs between columns or numbers and measurements and
  165. ingredients) are treated as the first direction line.  All subsequent lines
  166. are treated as directions.  This 45 character default can be adjusted with
  167. the -C parameter.
  168.  
  169.     If your first direction is short, e.g., Preheat oven 350, it will be
  170. treated as an ingredient.  You can either reformat the recipe to make the
  171. line longer (add on the subsequent line, for example) or manually adjust
  172. this.
  173.  
  174.     I like to know who originated the recipe.  Typing this information on
  175. each recipe by hand is tedious.  This program will scan through a file and
  176. add a credit line at the end of each recipe based on the From:  and Date:
  177. information in the header.  If the recipes are read from QWK or BlueWave
  178. messages, the From:  and Date:  info is placed at the end of the recipe:
  179.  
  180.   From: Nancy Golden                    Date: 09-21-92
  181.  
  182. If there are no message headers detected, the following is used instead:
  183.  
  184. Converted by MMCONV vers. n.nn
  185.  
  186.     MMCONV can also be used to label recipes in a ZIP file or otherwise
  187. extracted MM format recipe file that does not have qwk headers.  In this
  188. case, the new -l and -r parameters are used to specify what you want stated
  189. at the bottom of the recipe.  Every recipe in this case would have the same
  190. comment on it.
  191.  
  192.     If there is a mixture of headed messages and recipes, the message
  193. header information will affect more recipes than the one associated with
  194. it.  Basically, the credit information from it will carry on till the next
  195. header is found.
  196.  
  197.     My approach to using MMCONV is to mark the recipes and then format the
  198. input file with MMCONV.  I then examine the output recipes.  Any recipes
  199. that were not correctly processed, I tweak in the input file and then
  200. reprocess the input file.  If the error is something I think the program
  201. should have handled, a new version is created or added to.  If you find
  202. something you think should be handled, please let me know.  I may not
  203. agree, but I'm willing to consider suggestions.
  204.  
  205.     This process repeats until the recipes look right to me.  Or until a
  206. few manual changes are all that is required.  Typically, only two passes
  207. have been required.  You may take several until you get a handle on what
  208. the program expects.
  209.  
  210.     The following is a sample of what the program output looks like:
  211.  
  212. MMCONV rec.tst
  213.  
  214.  AL'S CHOCOLATE TO THE MAX
  215.  DATE BALLS
  216.  FLOURLESS CHOCOLATE CAKE
  217.  RASPBERRY SAUCE
  218.  RASPBERRY FOOL
  219.  RED LOBSTER GARLIC CHEESE ROLLS
  220.  M&M PIZZAS
  221.  CRUNCHY ALMOND STICKS
  222.  PINATA COOKIES
  223.  ST LOUIS' PEANUT BUTTER COOKIES
  224.  ST LOUIS' RUM BALLS
  225.  
  226.  MM0612.1:
  227.  Recipes saved: 11  (already MM: 2)
  228.     Lines read: 276
  229.  Lines written: 302
  230.  
  231.     The recipe titles display as they are extracted.  This is followed by
  232. the output file name and the number of recipes.  The parenthetical count is
  233. the number of these recipes that were found to already be in MM format.
  234. The lines read and written print out at the end.
  235.  
  236.     Like with MMCRDTxx, the default output file name is MMmmdd.n
  237. (current month and day followed by a file number).  If you provide your own
  238. output file name, the file numbering convention is used similarly to avoid
  239. overwriting existing files.  It is supposed to go up to 999 versions, so
  240. there should be little problem with running out.  I have had up to 30+
  241. versions in testing my programs.
  242.  
  243.     An example of the output produced by MMCONVnn functionality when
  244. encountering an MM recipe:
  245.  
  246. ---------- Recipe via Meal-Master (tm) v7.04
  247.  
  248.       Title: Mexican Fudge
  249.  Categories: Appetizers, Cheese/eggs
  250.    Servings:  1
  251.  
  252.       1 lb Monterey Jack cheese with           1 cn Evaporated milk (13 oz.)
  253.            Jalapeno pepper                     2    Eggs
  254.       1 lb Cheddar cheese                      3 tb Flour
  255.  
  256.           Grate cheese and lay in greased 9" x 13" pan.  Beat milk, eggs, and
  257.   flour together, pour over cheeses.  Bake 40 minutes at 350 degrees F. Cut
  258.   into squares or diamonds, serve hot or cold.
  259.  
  260.  
  261.   From: John Blackwell              Date: 03-02-93
  262. -----
  263.  
  264.     I find manually entering recipes a nuisance.  I also found trying to
  265. squeeze odd recipes into MM format very time consuming.  This program took
  266. a while to write.  But I expect to get some value from the time it saves
  267. me.
  268.  
  269.     I expect you will find that it saves you time as well.  If it does, I
  270. would like payment for the program.  I cannot imagine that it does not save
  271. you $5 worth of time if used a few times.
  272.  
  273.     If you want to register and be notified of upgrades, send your name
  274. and address and the BBS name and phone number where you got the program
  275. with $5 to:
  276.  
  277.               Rodney Grantham
  278.               770 Cranberry Tr.
  279.               Roswell, GA 30076
  280.  
  281.     Please include the version number which displays when MMCONV is run
  282. without any parameters.  If there is a newer version, you will be notified.
  283.  
  284.     If you have suggestions send them to the same address.  I can also be
  285. contacted via RIME or I-LINK CUISINE conferences.  I recently added the
  286. main FIDO recipe conference to my reading.
  287.  
  288.     If you use the program and don't register, drop me a postcard anyway.
  289. Include any comments and your name and address and BBS name and phone
  290. number where you got the program.  I won't nag you about the money.  I
  291. realize that sometimes people cannot afford $5.  I'd like to track the
  292. spread and usage just out of curiousity.  At least splurge enough to blow
  293. a quarter.  That's real close to freeware.
  294.  
  295.  
  296.     ver 1.1     - add TEAS to abbreviate
  297.                 - add OUNCES to abbreviate
  298.                 - translate ½ and ¼ (Stan Hall) to 1/2 and 1/4
  299.                 - activate -L & -R options to supply own footer
  300.                 - -T option suppresses display of Titles
  301.                         (opposite of MMCRDTnn functioning)
  302.                 - -C option to change ingredient line number of chars.
  303.                 - add SERVING detection
  304.                 - caseblind CompuChef & QUIKBOOK header/footer detect
  305.                 - CompuChef checks for "**********" & next line "**"
  306.                 - handle continuation in non-MM recipes
  307.                 - title: cap first char of words - lower the rest
  308.                 - no MM count display if it is zero
  309.                 - skip FAT GRAMS, CHOLESTEROL & INGREDIENT lines from
  310.                   COMPU-CHEF
  311.  
  312.  
  313.      ver 1.2
  314.                 - add TBSPS, TBLSP, TBL, #, SML, TEA, TBLS,
  315.                   QTS, TSPN, TSPNS, TBLSPNS, TBLSPN to abbreviate
  316.                 - add gallon which overlooked before
  317.                 - add standard metrics for MM: kg, g, l, etc.
  318.                 - modify SERV checking so won't pick up preserves
  319.                 - handle multiple fractions, e.g., 1/4-1/2 c water
  320.                 - extra recipe format:
  321.                      *** FROM SCRATCH RECIPE BEGINS *****
  322.                         ********** RECIPE ENDS ********
  323.                 - save 'FromScratch' servings & place correctly
  324.                 - skip lines with just '.' on them
  325.                 - mixed case credit line set from header info
  326.                 - print counts of recipes & lines at end of output file
  327.                   as well as on the screen (MM will ignore this)
  328.  
  329.  
  330.