NLFamBook v. 1.3

[BACK TO Download]

NLFambook er et program til udskrift af slægtsbøger fra gedcom-filer. Det kan skrive i html-format [eksempel], rtf-format, der kan indlæses i f.eks. Microsoft Word og gemmes som pdf [eksempel], eller i helt normal tekst-form [eksempel].

"NL" står for "Naturligt Sprog" ("Natural Language"). Programmet fjerner f.eks. redundans og tilstræber en naturlig dansk prosastil. Endvidere skriver programmet "bøger". En bog er noget der normalt læses fra venstre mod højre. Derfor skildres probandens slægt i "kronologiske linjer" ligesom ved normal, ikke-maskingenereret fremstillingsform.

1. Hurtig start

1. Hent programpakken her.

2. Pak den ud i en folder med winzip.

3. Kopiér din gedcom-fil til samme folder.

4. Åbn din gedcom i en teksteditor og find personen der skal være proband. Det kan se sådan ud:

0 @I460@ INDI
1 NAME Charlotte Hedvig ("Lotte") /FRIDSCH/
1 SEX F osv.

Probandens ID er her I460.

5. Åbn filen start.bat i en teksteditor. Den ser sådan ud:

NLFamBookConsole mingedcom.ged -html I1 -rtf I1 -txt I1

- og erstat alle tre "I1" med den ID du fandt ovenfor (pkt. 4). Erstat også "mingedcom.ged" med navnet på din gedcomfil.

6. Gem ændringerne og dobbeltklik på start.bat

Programmet laver 2 filer med samme navn som din gedcom-fil fulgt af ID'en samt ekstensionerne .txt hhv. .rtf. Altså f.eks. mingedcom.ged.I460.txt og mingedcom.ged.I460.rtf. Dobbeltklik på dem for at se indholdet. De vil typisk blive åbnet med Notepad og Microsoft Word. Desuden laver programmet en folder igen med samme navn som din gedcom + ID (mingedcom.ged.I460). Åbn folderen og dobbeltklik på filen med navn index.html. Den vil nu åbne i din browser, typisk Internet Explorer.

Når du for fremtiden opdaterer din gedcom-fil, skal den igen kopieres til folderen med NLFambook og du skal dobbeltklikke på start.bat. Det øvrige skal ikke gentages!

Programkoden (C++) oversættes og kører også under Linux mm.

2. Kommandolinjen

Programmet NLFamBookConsole tager som argumenter 1) navnet på en gedcomfil, 2) 0 eller flere "options" indledt med tegnet '-' (f.eks. -html) og 3) en probands ID i gedcomfilen. Trin 2) og 3) kan gentages "uendeligt". Eksempler:

NLFamBookConsole mingedcom.ged I1

skriver html-slægtsbog (XHTML 1.0 Strict standard med CSS) for personen I1 i mingedcom.ged.

NLFamBookConsole mingedcom.ged I1 I2 I3

gør det samme for 3 personer.

NLFamBookConsole mingedcom.ged -rtf I1 I2 -txt I3

Skriver en RTF ("Rich Text Format) bog for I1, en RTF-bog for I2 og en TXT-bog for I3.

Der understøttes tre formater:

-html -rtf -txt

hvor -html er "default". Yderligere underformater af html er beskrevet under pkt. 4 nedenfor.

Til styring af hvor meget der kommer med f.eks. ved offentliggørelse på nettet, kan man anvende parametrerne

-n[tal] -d[tal] -m[tal] -x[tal]

hvor [tal] angiver en generation set i forhold til probanden. Probanden, hans/hendes søskende, fætre, kusiner osv. er generation nr. 1, probandens børn, niecer og nevøer er generation 0, børnebørn -1, forældre 2, bedsteforældre 3 osv.

-n[tal] bestemmer hvor mange generationer "under" probanden der kommer med i udskriften. Tallet skal være 1 eller mindre (0, -1 osv.).

-d[tal] bestemmer hvor "dybt" ned generationer i sidelinjerne skal beskrives. Ved -d0 kommer der slet ikke sidelinjer med, ved -d1 kun helfætre og -kusiner til aner osv. Tallet skal være 0 eller mere.

-m[tal] bestemmer om detaljer (noter, årstal mm.) skal udelades for generationen angivet i [tal] samt generationerne derunder.

-x[tal] angiver grænsen for hvor langt tilbage udskriften skal gå. For at udelade generationerne før Gorm den Gamle, vil parametret -x20 sikker være passende. Tallet skal være 2 eller derover.

3. TXT og RTF

TXT er et helt normalt format og skal ikke omtales mere. RTF læses af mange programmer, men det er forskelligt hvor meget de understøtter af formattering, billeder osv. Der er ikke i øjeblikket implementeret understøttelse af parametre på kommandolinjen for RTF for lidt svagere programmer. Men "håndtagene" er tilstede i koden.

4. HTML

options: -strict, -trans

NLFambook understøtter to html-standarder: XHTML 1.0 Strict samt  XHTML 1.0 Transitional (X'et antyder at begge standarderne opfylder kravene for XML, Extended Mark-Up Language). "Transitional" er en "overgangsstandard" som man kan bruge, hvis man vil være (nogenlunde) sikker på at udskriften også kan læses med meget gamle udgaver af Internet Explorer eller andre browser'e. "Strict" er den nyeste standard, der forudsætter anvendelse af såkaldt "Cascading Stylesheet" (CSS). Anbefaling: Brug XHTML 1.0 Strict. Det er den vej standarden bevæger sig.

NLFambook skriver html i det "stricte" format, hvis ikke andet specificeres fra kommandolinjen, f.eks.

NLFamBookConsole mingedcom.ged -html -trans I1


options: -frames, -NOframes

"Frames" indebærer at navigations-menuen  i udskrifterne forbliver i toppen af browseren (i en egen "frame"), selvom man "scroller ned" i teksten (som befinder sig i en anden "frame"). Men søge-maskiner som Google har det ikke godt med frames, og teknikken er derfor på vej ud af standarden. Anbefaling: Brug kun frames til private distributioner på f.eks. CD. Brug ikke frames til ting du lægger på web'en!

Som "default" anvender programmet ikke frames i html-udskrifterne. De kan slås til med optionen -frames.

NLFamBookConsole mingedcom.ged -html -frames I1


options: -css, -NOcss

"Cascading Stylesheet" (CSS) indebærer at alle oplysninger om fonte, farver, størrelser læses fra filen NLFamBookHTMLStyle.css. Denne kan editeres med en almindelig teksteditor. Ikke alle browser'e er lige gode til at fortolke CSS, men da der ikke anvendes "avancerede" ting i NLFamBookHTMLStyle.css, bør der ikke være problemer med CSS. Anbefaling: Brug CSS!

CSS kan dog slås fra med optionen -NOcss. Det virker kun sammen med XHTML1.0 Transitional.

NLFamBookConsole mingedcom.ged -html -trans -NOcss I1

5. Indstilling af farver, typer, email-adresse osv. i HTML

Hvis man bruger CSS (default) kan man redigere filen NLFamBookHTMLStyle.css i en normal teksteditor. Hvis f.eks. aner til probanden skal fremhæves i fed ("bold") blå skrift, kan linjen

strong.ancestor {color: #124578;font-style: italic;}

ændres til

strong.ancestor {color: blue;font-style: bold;}

Hvis man ikke bruger CSS læses indstilling af farver, typer osv. fra tekstfilen NLFamBookHTMLStyle. NLFamBook læser kun de 3 første linjer i denne fil. De to første linjer starter med '<body' og afsluttes af '>'. Den første linje styrer indstillinger i hovedvinduet og anden linje instillinger for menuen, hvis man bruger frames (ellers har anden linje ingen effekt). Tredje linje indeholder email-adressen som aktiveres, når man klikker på "@kontakt" i html-udskriften. Eksempel:

<body>
<body>
navn@email.dk

- hvis du foretrækker standardinstillingerne (sorte bogstaver og hvid baggrund). Eller hvis du er til skrappe farver:

<body text=yellow bgcolor=red>
<body text=blue bgcolor=black>
navn@email.dk

Hvis du er bange for at lægge din emailadresse direkte frem på nettet, kan du bare indsætte den sædvanlige FJERNDETTE:

navnFJERNDETTE@email.dk

6. Indledning og billeder

Indledning genereres af en tekstfil med samme navn som gedcomfilen med tilføjelse af ekstensionen .preface. F.eks. mingedcom.ged.preface. Denne tekstfil kan indeholde lidt hjemmelavet "mark-up" til indsættelse af billeder, styring af formattering mm. Samme hjemmelavede "mark-up" supporteres hvis det indsættes direkte i gedom-filen, f.eks. i noterne. Men der må advares mod at udnytte denne "udokumenterede" facilitet, medmindre du er så dygtig til f.eks. Perl, at du hurtigt kan ændre eller fjerne mark-up'en, hvis "standarden" ændres.

Dog så meget om billeder: Hvis indsat i gedcom-filen eller preface-filen vil koden:

<center><img>foto.jpg</img>Foto af xxx (1758-1832)</center>

få NLFambook til at indsætte et billede TanteAgathe.jpg fra folderen pictures i html- eller rtf-udskriften. Teksten "Tante Agathe (1758-1832)" vil blive anbragt under billedet og begge dele centreret.