===================================================================== === AMADEUS === === Family database editor === === === === Amadeus-Famibase === === vers. 250204 === ===================================================================== GENERAL Amadeus-Famibase is a lightweight tool for handling genealogical family base structures - descending family trees. It is a version of Amadeus with a new base language "Family". NB! A SIMPLE VERSION OF FAMILY TREE LANGUAGE DESIGNED SPECIALLY TO ACCOMPANY THE SUBMISSION TO WoDISEE http://www.cs.ut.ee/~kiho/submissionWoDiSEE.pdf IS AVAILABLE. See readme00.txt. --------------------------------------------------------------------- INFORMAL DATA SYNTAX Plain text for a person: Sketchy text for a person: === {PERSON | PERSON -- sketch head |-- [ PARTNER // husband/wife/... | PARTNER -- branch head person //child | person person //child | person ... | ... ] |-- [ PARTNER // husband/wife/... | PARTNER -- branch head person //child | person person //child | person ... | ... ] |-- ... ... | }// comment === PERSON: person_name (data) (data) ... PARTNER: wedding_data partner_info (data) (data) ... --------------------------------------------------------------------- MORE FORMAL DATA SYNTAX family ::= person // the "root" person person ::= "{" personName (personData)* (co-life)* "}" personName ::= IDENTIFIERS // mainly: lettters,"-","?",spaces personData ::= "(" any string not containing parentheses ")" co-life ::= "[" "~" partnership() (partnerData)* (child)* "]" partnership ::= (weddingDate)? partnerName // recommended "-- name" if not married // "--" if unknown partner // may include also the wedding place weddingDate ::= integers and dots, no spaces partnerName ::= personName partnerData ::= personData child ::= person Plain text data may contain Java-style comments: /* ... */ and //... The comments will be lost while sketchifying (converting plain text into corresponding sketchy text). While textualizing (converting sketchy text into plain text), few comments will be generated to mark the ends ("}") of the larger persons' sections. --------------------------------------------------------------------- SAMPLE (PLAIN TEXT) File: family.txt {$ Alviine Aam (19.11.1934 Tartu) // $-sign is consumed by the system [ ~ 22.1.1960 in Tartu Bert Buum (13.0.1934 Tartu) { Cathy Buum (11.5.1962 Tartu) [ ~ Daniel Err (25.9.1963 Hiiumaa, Kõpu _12.5.1992 Tartu) { Faina Err (1.6.1989 Tartu) } { Frederic Err (4.12.1991 Tartu) } ] [ ~ -- Hans Haan (15.9.1963 Kuopio, Finland) (never married) { Kevin Buum (14.2.1993 Tartu) } ] }//Cathy Buum { Lev Buum (Tallinn 3.8.1966) [ ~ in Narva Nana Nabur (2.9.1974 Kilingi-Nõmme, Karja k.) { Manda Nabur (12.4.2001 Tallinn) } ] }//Lev Buum ] }//Alviine Aam --------------------------------------------------------------------- USAGE is free. Unzip Amadeus-Famibase into a folder. In the folder, run java Amadeus (jre 1.4.1 at least). To read (family data) from plain text perform File + Read text ... family.txt Select all (mouse left-click at upper left corner of the main sketch) perform Tools + Sketchify Edit the new sketchy text as you like. Click mouse right button to open/close a sketch (click near the left upper corner of the sketch). Double click mouse right button to open/close all sketches at the pointed level. See also Help + Actions. NB! The window closing operation will be done without any warning (without prompting for to save the current file). To save the sketchy text perform File + Export plain-HTML To open the sketchy text (exported), perform File + Import To convert a sketch into plain text select the sketch and perform Tools + Textualize To save plain text perform File + Write text When creating a new sketchy text for family base, do not forget to assign the necessary base language attribute: select all and perform Base + Set ... Family --------------------------------------------------------------------- OUTPUT FAMILY DATABASE USING LATEX Include into a folder the following files: amadeus.tex (copy from Amadeus-Famibase/myFamily/latex) title.tex (your title page) main.tex (see below) family.tex (output by File + Print plain-TEX, see below) File main.tex: --------------------------------------- %preamble ... \makeindex \begin{document} \input title.tex %the title page \newpage \ \thispagestyle{empty} %page 2 \tableofcontents \input amadeus.tex %macros for drawing sketches \include {family} % family.tex: output from Amadeus-Famibase \newpage %include index pageno into contents: \addcontentsline{toc}{chapter}{\numberline{}Index} \printindex \end{document} --------------------------------------------- main.tex To obtain file family.tex, in the current window (displaying the family base in the sketchy form) perform File + Print plain-TEX ... family.tex NB! Prior to this, the sketches to be printed separately must be toggled to the type MODULE (denoted by thicker sketch lines). At least one MODULE sketch must be present. Also, if necessary, some sketches can be cut off from LaTeX document by toggling them to the type LOOP (denoted by double sketch lines). To toggle type of the selected sketch, perform (repeatedly) Edit + Toggle (or Ctrl + T). The execution steps of the function "Print plain-TEX": Select all, detect that selected sketchy text is not TEX-prepared yet. Tools + Normalize -- deploys MODULE sketches into a sequence Tools + Prepare Tex -- changes some characters, inserts LaTeX elements -- characters '>', '_' ==> \Rightarrow, \ding{61} -- for the last: \usepackage{pifont} File + Print plain-TEX -- converts to the drawable form Each step above can separately be activated also by the user. It allows to see and slightly modify the intermediate results. --------------------------------------------------------------------- USING DIFFERENT VIEWS Beside the "standard" sketchy view, the user may switch to the view "Family". However, the view "Family" is currently less supported compared to the view "Sketchy". --------------------------------------------------------------------- WARNING Amadeus-Famibase is an incomplete version of Amadeus. So many other functions may fail. ===================================================================== === Jüri Kiho kiho@cs.ut.ee === === University of Tartu Estonia === =====================================================================