home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 8
/
CDASC08.ISO
/
VRAC
/
MMCONV12.ZIP
/
MMCONV.DOC
< prev
next >
Wrap
Text File
|
1993-07-21
|
14KB
|
330 lines
MMCONV version 1.20
MMCONV is designed to be used by those of us who frequent recipe
conferences on BBSes and use MealMaster. Often people enter intriguing
recipes that are not in MM format. This program avoids some of the
drudgery of typing such recipes in by hand or manually reformatting them.
It can also be used by QuikBook users since QuikBook will import
MealMaster formatted recipes with no difficulty.
MMCONV is designed to convert free-form recipes or recipes formatted
for other recipe databases to MealMaster format with minimal manual
effort. The MM format is:
units measure ingredients
Col 1: 1-7 9-10 13-39
Col 2: 42-48 50-51 54-81
MMCONV knows the standard MealMaster measurement abbreviations and uses
them. I did not know small, large, and pinch had standard abbreviations,
but they do. Despite the temptation, I did not use CL (centiliter) to
represent clove(s). I have seen recipes using it this way.
MMCONV detects the start and end of recipes in four different ways:
Start of recipe:
--MM
-Begin Recipe Export- QUIKBOOK
********** Compu-Chef
(next line must have ** in it)
*** FROM SCRATCH RECIPE BEGINS *****
End of recipe:
---
-End Recipe Export-
Recipe Via Compu-Chef
********** RECIPE ENDS ********
The program itself provides a brief help screen if run without an input
file:
Version 1.20 Meal-Master recipe formatter by Rodney Grantham
Usage: MMCONV12 infile [outfile]
infile - contains recipes not in Meal-Master format
outfile - where to write Meal-Master format recipes by default: MMmmdd
(Recipes already in MM format are placed in output file)
*** Some manual pre-processing may be required ***
QUIKBOOK, COMPU-CHEF, FromScratch headings & footers are handled.
Mark other recipes with --MM at start and --- at end of the recipe.
Categories are picked up if headed Categories:, Keywords:, Cat:
If none of above is found, Category: Main dish is put in.
Servings: 1 is used if serving info not detected.
Serv or Make looked for as servings marker.
A line of more than 45 characters with no 3 space break
in it is assumed to be the first direction line.
-l - add own footer for left side,e.g., -lFrom mm002.zip
-r - add own footer for right side,e.g., -rFound 4/5/93
-t - no title display as recipes are found
-c - override the default 45 character max ingredient line,e.g. -c55
If the program is renamed, the new name will display in the help
message.
Please note:
A line of more than 45 characters with no 3 space break
-c - override the default 45 character ingredient line,e.g. -c55
In order to avoid manually marking direction sections, some convention
must be used. Most recipes don't have more than 45 characters in a line
(unless they are double columns which is handled) in my experience. If you
frequently have longer lines, you can use the -C option to change the
default. BUT you may find that you then have directions treated as
ingredients.
If a recipe does not have a QUIKBOOK, COMPU-CHEF, FromScratch or
MealMaster header and footer, it must be manually marked. Put --MM at the
top and at least 3 dashes (---) at the bottom. Both of these must be
aligned with the left margin. DO NOT add a MealMaster format header to a
non-MM recipe. These recipes are copied as is. Any of the other headers
could be used to mark a recipe, but the --MM and --- are fewer characters.
The '-l' or '-L' and '-r' or '-R' parameters are ways to label a zip
file or add a comment on the line after the author and date information if
you run an prior MMCREDIT output file through again. Up to 38 characters
will be used for either. Some flexibility is supported here. As long as
the total characters for both is under 76, the program will combine the
input into a credit line. If the length exceeds 76, the input will be
adjusted to fit the 76 space limit and a message showing the resulting
credit line will be displayed.
To enter just type, for example:
MMCONVnn mmrecipe -lFrom the ZIP file: MM00.zip -rOff PC101 BBS
This will add the following CREDIT line at the bottom of recipes:
From the ZIP file: MM00.zip Off PC101 BBS
If you add quotes to the -r parameter, the extra spaces will be preserved
so this input:
MMCONVnn mmrecipe -lFrom the ZIP file: MM00.zip -r"Off PC101 BBS"
produces this CREDIT line:
From the ZIP file: MM00.zip Off PC101 BBS
MMCONV will handle a missing footer. It will be stopped by the next
header. However, this may cause the inclusion of extra stuff such as
taglines and message header information in some cases. In Meal-Master
format recipes, a flag message about "Unexpected End of Recipe" is placed
at the end of the recipe to alert you to check for a problem.
The MMCONV program will split lines that are too long for the basic MM
format. If these lines are in column 2, there will be a '-' inserted in
column 1 if it would otherwise be blank. This is required to force MM to
treat the 2nd column as a separate column. Without this, MM thinks it has
a single line of input which is too long.
Occasionally recipes have commentary between the title and the
ingredients. You must manually move these into the direction section of
the recipe or delete them for MMCONV to process the recipe correctly.
MMCONV will recognize categories headed with all the following in any
combination of upper or lower case and format them for MM:
Category:
Categories:
Keywords:
Cat:
Servings will default to 1. Serving information in the recipe will be
picked up if recognized. The program looks for these characters
(case-blind) to occur on first non-blank line after the title and expects a
colon or space to follow them:
SERV (serves or servings or serving detected)
MAKE (make or makes)
If these are found and the servings is 0, it will be set to one. If
non-numeric serving is found, default of one will be used. A message
showing the problem line will print out so you can fix the servings:
TOMATO-CILANTRO BREAD
Problem with servings:
Makes one 9x5 loaf
A line of more than 45 characters with no space at least 3 blanks wide
(normally occurs between columns or numbers and measurements and
ingredients) are treated as the first direction line. All subsequent lines
are treated as directions. This 45 character default can be adjusted with
the -C parameter.
If your first direction is short, e.g., Preheat oven 350, it will be
treated as an ingredient. You can either reformat the recipe to make the
line longer (add on the subsequent line, for example) or manually adjust
this.
I like to know who originated the recipe. Typing this information on
each recipe by hand is tedious. This program will scan through a file and
add a credit line at the end of each recipe based on the From: and Date:
information in the header. If the recipes are read from QWK or BlueWave
messages, the From: and Date: info is placed at the end of the recipe:
From: Nancy Golden Date: 09-21-92
If there are no message headers detected, the following is used instead:
Converted by MMCONV vers. n.nn
MMCONV can also be used to label recipes in a ZIP file or otherwise
extracted MM format recipe file that does not have qwk headers. In this
case, the new -l and -r parameters are used to specify what you want stated
at the bottom of the recipe. Every recipe in this case would have the same
comment on it.
If there is a mixture of headed messages and recipes, the message
header information will affect more recipes than the one associated with
it. Basically, the credit information from it will carry on till the next
header is found.
My approach to using MMCONV is to mark the recipes and then format the
input file with MMCONV. I then examine the output recipes. Any recipes
that were not correctly processed, I tweak in the input file and then
reprocess the input file. If the error is something I think the program
should have handled, a new version is created or added to. If you find
something you think should be handled, please let me know. I may not
agree, but I'm willing to consider suggestions.
This process repeats until the recipes look right to me. Or until a
few manual changes are all that is required. Typically, only two passes
have been required. You may take several until you get a handle on what
the program expects.
The following is a sample of what the program output looks like:
MMCONV rec.tst
AL'S CHOCOLATE TO THE MAX
DATE BALLS
FLOURLESS CHOCOLATE CAKE
RASPBERRY SAUCE
RASPBERRY FOOL
RED LOBSTER GARLIC CHEESE ROLLS
M&M PIZZAS
CRUNCHY ALMOND STICKS
PINATA COOKIES
ST LOUIS' PEANUT BUTTER COOKIES
ST LOUIS' RUM BALLS
MM0612.1:
Recipes saved: 11 (already MM: 2)
Lines read: 276
Lines written: 302
The recipe titles display as they are extracted. This is followed by
the output file name and the number of recipes. The parenthetical count is
the number of these recipes that were found to already be in MM format.
The lines read and written print out at the end.
Like with MMCRDTxx, the default output file name is MMmmdd.n
(current month and day followed by a file number). If you provide your own
output file name, the file numbering convention is used similarly to avoid
overwriting existing files. It is supposed to go up to 999 versions, so
there should be little problem with running out. I have had up to 30+
versions in testing my programs.
An example of the output produced by MMCONVnn functionality when
encountering an MM recipe:
---------- Recipe via Meal-Master (tm) v7.04
Title: Mexican Fudge
Categories: Appetizers, Cheese/eggs
Servings: 1
1 lb Monterey Jack cheese with 1 cn Evaporated milk (13 oz.)
Jalapeno pepper 2 Eggs
1 lb Cheddar cheese 3 tb Flour
Grate cheese and lay in greased 9" x 13" pan. Beat milk, eggs, and
flour together, pour over cheeses. Bake 40 minutes at 350 degrees F. Cut
into squares or diamonds, serve hot or cold.
From: John Blackwell Date: 03-02-93
-----
I find manually entering recipes a nuisance. I also found trying to
squeeze odd recipes into MM format very time consuming. This program took
a while to write. But I expect to get some value from the time it saves
me.
I expect you will find that it saves you time as well. If it does, I
would like payment for the program. I cannot imagine that it does not save
you $5 worth of time if used a few times.
If you want to register and be notified of upgrades, send your name
and address and the BBS name and phone number where you got the program
with $5 to:
Rodney Grantham
770 Cranberry Tr.
Roswell, GA 30076
Please include the version number which displays when MMCONV is run
without any parameters. If there is a newer version, you will be notified.
If you have suggestions send them to the same address. I can also be
contacted via RIME or I-LINK CUISINE conferences. I recently added the
main FIDO recipe conference to my reading.
If you use the program and don't register, drop me a postcard anyway.
Include any comments and your name and address and BBS name and phone
number where you got the program. I won't nag you about the money. I
realize that sometimes people cannot afford $5. I'd like to track the
spread and usage just out of curiousity. At least splurge enough to blow
a quarter. That's real close to freeware.
ver 1.1 - add TEAS to abbreviate
- add OUNCES to abbreviate
- translate ½ and ¼ (Stan Hall) to 1/2 and 1/4
- activate -L & -R options to supply own footer
- -T option suppresses display of Titles
(opposite of MMCRDTnn functioning)
- -C option to change ingredient line number of chars.
- add SERVING detection
- caseblind CompuChef & QUIKBOOK header/footer detect
- CompuChef checks for "**********" & next line "**"
- handle continuation in non-MM recipes
- title: cap first char of words - lower the rest
- no MM count display if it is zero
- skip FAT GRAMS, CHOLESTEROL & INGREDIENT lines from
COMPU-CHEF
ver 1.2
- add TBSPS, TBLSP, TBL, #, SML, TEA, TBLS,
QTS, TSPN, TSPNS, TBLSPNS, TBLSPN to abbreviate
- add gallon which overlooked before
- add standard metrics for MM: kg, g, l, etc.
- modify SERV checking so won't pick up preserves
- handle multiple fractions, e.g., 1/4-1/2 c water
- extra recipe format:
*** FROM SCRATCH RECIPE BEGINS *****
********** RECIPE ENDS ********
- save 'FromScratch' servings & place correctly
- skip lines with just '.' on them
- mixed case credit line set from header info
- print counts of recipes & lines at end of output file
as well as on the screen (MM will ignore this)