              **************************************
                         M E M O     1.00

                (c) Copyright Matthias Lenski 2000
              **************************************

** Note: See README.TXT to read the ENGLISH VERSION of this manual **

Herzlich willkommen zu Memo, auch genannt "das Geburtstagsprogramm" ;-)
In dieser README-Datei finden Sie eine Anleitung an Beispielen, Inhalt:

1. WOZU DAS PROGRAMM: Erinnerung an Geburtstage
2. QUICKSTART: Wie es funktioniert
   a) MEMO.EXE automatisch starten per Autostart-Ordner
   b) MEMO.TXT anlegen: Name und Datum durch Komma getrennt
3. ANPASSEN: Wie man es dressiert
   a) Grundeinstellungen (Iconform etc.)
   b) Anpassen fuer andere Zwecke als Geburtstage
   c) Sprachanpassungen

Systemvoraussetzung: Laeuft auf PCs ab Windows 95. Ist Freeware.



1.) WOZU DAS PROGRAMM
=======================================
Einige Geburtstage hat jeder im Kopf, aber einige vergisst man jedes Jahr.
Was lag also naeher, als sich vom PC ein paar Tage im voraus erinnern zu
lassen? Nun gab es einige Programme als Free- oder Shareware, die genau
das taten. Das kleinste war ein paar hundert Kilobyte gross und verzerrte
seine Schrift, wenn es auf meinem Monitor in hoher Aufloesung lief. Die
anderen Freewareprogramme liefen resident und belegten Speicher. Also habe
ich mich letztes Wochenende hingesetzt und ein eigenes programmiert, das
nur 20 Kilobyte gross, schnell, nicht-resident und anpassbar ist. 
Die Anpassbarkeit erlaubt den Einsatz fuer andere Zwecke, siehe unten.



2.) QUICKSTART: Wie es funktioniert
=======================================
Das Programm besteht aus zwei Dateien, die im selben Ordner gehalten werden
muessen. Diese sind MEMO.EXE und MEMO.TXT. Die erste, MEMO.EXE, ist das 
Programm selbst. Um das Programm in Betrieb zu nehmen, bedarf es nur zweier
Schritte:


a) Das Programm MEMO.EXE automatisch starten

Sie koennen das Programm MEMO.EXE jederzeit mit Doppelklick starten und
bekommen die Meldungen des Tages (um MEMO.EXE zu suchen, koennen Sie die
Suchfunktion im Startmenue benutzen: Start-Suchen-Dateien/Ordner)

Sinn macht das ganze natuerlich eher, wenn MEMO.EXE automatisch beim
Systemstart aufgerufen wird. Dazu legen Sie eine Verknuepfung von MEMO.EXE
in Ihrem Autostart-Ordner (im Startmenue) an. Genaueres steht in der
Anleitung zum Betriebssystem. Normalerweise legt man Verknuepfungen an, indem
man das Programm mit der rechten Maustaste anklickt und es auf das
Zielverzeichnis schiebt (hier den Autostart-Ordner). Es oeffnet sich ein
kleines Menue, in dem man "Verknuepfung(en) hier erstellen" auswaehlt.


b) Die Datei MEMO.TXT anlegen 

Die zweite Datei, MEMO.TXT ist eine gewoehnliche Textdatei. Sie enthaelt
die Geburtstage. Jede Zeile ist ein Eintrag, bestehend aus dem Namen der 
betreffenden Person und dem Geburtsdatum, durch Komma getrennt, zB:

Alfred Mustermann, 01.02.1988

Eine solche Zeile in der Datei MEMO.TXT veranlasst Memo, am 1.Februar an den 
Geburtstag des besagten Herrn zu erinnern. Die vorlaufenden Nullen vor dem
einstelligen Tag und Monat sind nicht unbedingt noetig.

Die Jahreszahl kann zweistellig sein, und wird dann mit 1900 (!) ergaenzt.
Schliesslich liegen die meisten Geburtstage noch im 20. Jahrhundert, Bsp:

Alfred Mustermann, 1.2.88

Das waere auch zulaessig. Beachtet werden muss nur, dass keine (ungewollten)
Kommata auftauchen. Folgendes fuehrt zwar auch zur Erinnerung am 1. Februar:

Alfred, der echt cool ist, 1.2.1988

Aber "der echt cool ist" wird nicht mehr mit ausgegeben.

Tragen Sie also einfach die Geburtstage derjenigen Leute, an die sie erinnert
werden wollen, in MEMO.TXT ein. Ein einfacher Doppelklick auf MEMO.TXT sollte
hierfuer den Editor starten (um MEMO.TXT anklicken zu koennen, kann man es
suchen, s.o.).



*****************************************************************************
** So, mehr muss man nicht wissen, um das Programm sinnvoll zu nutzen.       
** Die Datei MEMO.TXT braucht nichts zu enthalten ausser Geburtstagsdaten.
** Empfohlen wird lediglich die Kopfzeile (#Default=0) fuer Deutschland.
*****************************************************************************



3.) ANPASSEN: Wie man es dressiert
=======================================

a) Grundeinstellungen

So weit, so gut. Ein einfaches Programm, das eine simple Messagebox oeffnet,
und dazu eine Textdatei ausliest. MEMO erlaubt aber noch ein paar kleine
Anpassungen, die es fuer beliebige Erinnerungen einsetzbar machen.

Diese Anpassungen werden durch Einstellung bestimmter "Environment-Werte"
vorgenommen. Der Einfachheit halber geschieht dies ebenfalls direkt in der
Textdatei MEMO.TXT (und nicht in der Registry).

Jede Zeile, die mit '#' beginnt, ist KEINE Datenzeile, sondern eine
Einstellungszeile. Alle Einstellungen koennen weggelassen werden.

Folgende Zeile schaltet das Programm z.B. auf Englisch um:

#Default=1

Wieso jetzt kein einziger Geburtstag mehr funktioniert? Weil nicht nur die
Sprache, sondern auch die Schreibweise der Daten an amerikanische
Verhaeltnisse angepasst werden. Ab dem Umschalten interpretiert das Programm
den ERSTEN Wert als Monat und erst den zweiten Wert als Tag.

Alfred Mustermann hat unter der Geltung von Default=1 also am 2. Januar
Geburtstag! Dies laesst sich aber genauer beeinflussen, siehe sogleich...

Alle folgenden Einstellungswerte beginnen mit "Env" fuer "Environment", z.B.:

#EnvFirst=0	

schaltet wieder auf die hierzulande uebliche Schreibweise (zuerst der Monat).
Auch den Nachrichtentext (x hat morgen seinen x. Geburtstag), koennen Sie
voellig veraendern, dazu komme ich aber im letzten Teil der Anleitung, weil
das etwas komplizierter ist.

Alle Einstellungsparameter koennen gross oder klein geschrieben werden, z.B.:
#envfirst oder #ENVFIRST oder auch #EnVfIrSt, das ist voellig egal.

Zunaechst in aller Kuerze die Grundeinstellungen, die das Erscheinungsbild
betreffen:

#EnvToday=01.02.2000

zwingt das Programm, anzunehmen, dass heute der 1. Februar 2000 ist. Es wird
also nicht das tatsaechliche Systemdatum des Computers zugrunde gelegt. Diese
Einstellungsmoeglichkeit ist sehr praktisch, um das Programm zu testen.
Probieren Sie es doch mal mit den eingegebenen Geburtstagen, oder den Tagen
davor...

#EnvLink=c:\doc\meinedaten.txt

veranlasst das Programm, weitere Geburtstage aus einer von Ihnen selbst
angelegeten Datendatei, hier MEINEDATEN.TXT zu holen, sobald es mit MEMO.TXT
fertig ist (nicht schon sofort, wenn es auf #EnvLink trifft).

Auf diese Art koennen die Geburtstage auch in einem anderen Verzeichnis
liegen, als im Verzeichnis von MEMO. Man erstellt dort, wo sie liegen sollen,
eine entsprechende Textdatei, und MEMO.TXT enhaelt nur eine einzige Zeile
nach obigem Beispiel (#EnvLink=...).

#EnvAdv=3
stellt ein, wieviele Tage im voraus das Programm an einen Geburtstag
erinnert. Die Standardeinstellung sind vier Tage. Diese gilt, wenn Sie keine
eigene Einstellung vornehmen. #EnvAdv=4 waere also ueberfluessig. 

#EnvIcon=64
stellt ein, welches Icon in der Box erscheint, zB 64 fuer ein Info-Zeichen
oder 48 fuer ein Warnschild. Moeglich ist auch 262144 fuer eine Box ohne
Icon, die immer im Vordergrund steht...

#EnvMax=10
stellt ein, mit wievielen "Erinnerungsfenstern" der Bildschirm maximal
zugepflastert werden darf. Vorgabewert ist 10. Nach dem zehnten Fenster wird
abgebrochen. Diese Funktion unterbindet Auswuechse, die z.B. dadurch
entstehen, dass #EnvAdv=365 gesetzt wird... (schonmal probiert? :-) )


b) Ein praktisches Beispiel
Kommen wir nun zu den letzten 4 Parametern, die die Nachricht in der Box
selbst betreffen. Diese sind etwas komplizierter, damit man auch ausgefallene
Gestaltungen realisieren kann.

Hierzu ein einfaches Beispiel: Ausser den Geburtstagen, an die ich
selbstverstaendlich weiterhin erinnert werden will, habe ich noch eine
TODO-List mit 3 Eintraegen. Zahnarzttermin, Zimmer mieten und Brief schreiben
stehen auf dem Programm.

Ich fuege in meine Geburtstagsdatei NACH all den Geburtstagen die Daten fuer
die TODO-List ein:

Zahnarzttermin, 1.2.2000
Zimmer mieten, 1.2.2000
Brief schreiben, 1.2.2000

Das allein reicht nicht, sonst erinnert mich das Programm im Februar, dass
"Zahnarzttermin" Geburtstag hat (und Null Jahre alt wird...).
Vor den Terminen (und nach den Geburtstagen) fuege ich nun folgende Zeile
ein:

#EnvMsg=Sptestens,: ,

Die kryptischen Kommata zeigen dem Programm an, dass an der Stelle des Kommas
noch etwas anderes eingefuegt werden soll. Es folgt dabei folgender Regel:
Wenn im Messagetext ("EnvMsg") ein Komma folgt, wird die Ausgabe mit dem 
Datentext (das ist hier "Zahnarzttermin, 1.2.2000") fortgesetzt, bis DORT 
wiederum ein Komma folgt, dann geht es wieder weiter mit dem Messagetext.

Wir erhalten im Beispiel daher einstweilen folgende Ausgabe:
SpaetestensZahnartzttermin: (usw.)

Das sieht noch nicht so schoen aus. Das Programm kann noch zwei andere
Texte einfuegen, die hier im Weg sind: zum einen den Abstand vom Termin 
(also "heute", "morgen" usw.), zum anderen den Abstand vom Jahr des Termins, 
um z.B. anzugeben, dass jemand "66" Jahre alt wird.

Die Stelle an der diese eingefuegt werden, wird duch die Parameter
#EnvWPos	und
#EnvAPos	festgelegt.
Setzt man einen Wert auf Null, wird gar nichts dazu angezeigt. 

Wir setzen also
#EnvAPos=0
damit das "Alter" des Zahnarzttermins (0 Jahre) ersatzlos wegfaellt.

Zuletzt setzen wir:
#EnvWPos=2
und geben damit an, dass an der Stelle 2, also nach dem ersten Komma im
Messagetext der "When"-Text ("heute", "morgen", ...) eingefuegt wird.
Dann erscheint: "Spaetestens heute: Zahnarzttermin"

Wie das Programm die "Entfernungsangabe" nennt, legt uebrigens der letzte 
noch zu besprechende Paramter fest:

#EnvWhen=bald, heute , morgen , uebermorgen , in 3 Tagen 

c) Sprachanpassungen
Da saemtliche Texte frei veraenderbar sind, kann das Programm an beliebige
Sprachen angepasst werden. Fuer Englisch wurden die dazu noetigen
Environment-Parameter zum Befehl "#Default=1" zusammengefasst. Dies 
entspricht folgenden Einzelbefehlen:

#EnvMsg	=,, will be , years old!
#EnvWhen=Soon ,Today ,Tomorrow ,The day after tomorrow 
#EnvWPos=2
#EnvAPos=6
#EnvFirst=1

Fuer deutsche Ausgaben sieht das ganze so aus (#Default=0):

#EnvMsg=, wird , Jahre alt!
#EnvWhen=bald , heute , morgen , bermorgen , in 3 Tagen 
#EnvWPos=4
#EnvAPos=5
#EnvFirst=0

Beachten Sie bitte noch, dass derartige Einstellungen immer erst ab der
Stelle gelten, wo sie in MEMO.TXT auftauchen. Das heisst, ich kann erst eine
Reihe von Geburtstagen mit deutscher Meldung ausgeben, dann folgt "Default=1"
und es folgen weitere Geburtstage in amerikanischer Schreibweise.

4. EPILOG
=======================================

Das Programm ist Freeware, aber ich freue mich ueber jegliche Anregungen und besonders ueber anderssprachige Message-Texte!

Meine E-Mail-Adresse ist: M.Lenski@ginko.de

Falls ich fremdsprachige Messsagetexte erhalte, werden diese in zukuenftige Versionen des Programms einfliessen. 

Das Programm wurde mit dem Freeware C-Compiler LCC entwickelt. 
Besonderen Dank daher an seine Autoren C.Fraser, D.Hanson, Jacob Navia!

