X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=doc%2Fmake_gom_xref;h=5a380d1f0565a1ee34edf88917984ce7a5f0d275;hb=b7b409df591fc0162afc3cf5b12f3336a1445835;hp=f883208364e915605c795799343a4ac85f4781b1;hpb=67e996e0af64da6f67a4a221949dbc9eabc267e6;p=gedcom-parse.git diff --git a/doc/make_gom_xref b/doc/make_gom_xref index f883208..5a380d1 100755 --- a/doc/make_gom_xref +++ b/doc/make_gom_xref @@ -4,6 +4,7 @@ use strict; use diagnostics; +my $gedcom_ref_doc="http://www.gendex.com/gedcom55/55gcch2.htm"; my $inputfile ="$ENV{srcdir}/../include/gom.h"; my $outputfile ="gomxref.html"; my $ext_link = "interface.html"; @@ -15,17 +16,32 @@ my $index = ""; my $section = ""; open INPUT, $inputfile or die "Can't read $inputfile\n"; -open OUTPUT, ">$outputfile" or die "Can't read $outputfile\n"; +open OUTPUT, ">$outputfile" or die "Can't write $outputfile\n"; + +sub gedcom_link { + my ($sublink) = @_; + if ($sublink) { + return "(?)"; + } + else { + return ""; + } +} while () { - $section = "sub" if m|/\* Sub-structures \*/|; - $section = "main" if m|/\* Main structures \*/|; - $section = "" if m|/\* Functions \*/|; - $generated = $1 if m|/\* [\$]Id: (.*?) \$ \*/|; - next if m|/\*|; + my $gedc_ref = ""; + $section = "sub" if m|^/\* Sub-structures \*/|; + $section = "main" if m|^/\* Main structures \*/|; + $section = "" if m|^/\* Functions \*/|; + $generated = $1 if m|^/\* [\$]Id: (.*?) \$ \*/|; + next if m|^/\*|; if ($section ne "") { + chomp; + if (s|\s*/\* (.*?) \*/\s*$||) { + $gedc_ref = $1; + } if (m|^struct (.*) \{|) { s|^struct (.*?) \{|struct $1 \{|; if ($section eq "main") { @@ -42,10 +58,10 @@ while () } if ($section eq "sub") { - $sub_structs .= "$_"; + $sub_structs .= "$_ " . gedcom_link($gedc_ref) . "\n"; } else { - $main_structs .= "$_"; + $main_structs .= "$_ " . gedcom_link($gedc_ref) . "\n"; } } } @@ -55,13 +71,26 @@ print OUTPUT <<"END_OF_HTML"; Gedcom object model in C + -

Gedcom object model in C

+

Gedcom object model in C: Structures

This page provides a cross-reference of all objects in the Gedcom object -model for C. The following links are fast links to the main structures -in the Gedcom object model: +model for C. The '(?)' links are links to the +Gedcom standard +giving the meaning of each field. +

+The following links are fast links to the +main structures in the Gedcom object model: