Platon Technologies
not logged in Login Registration
EnglishSlovak
open source software development celebrating 10 years of open source development! Saturday, April 20, 2024

Diff for libcfg+/Attic/db-get-id between version 1.1 and 1.2

version 1.1, 2002/09/04 20:49:22 version 1.2, 2002/09/05 23:08:59
Line 3 
Line 3 
 # $Id$  # $Id$
 BEGIN {  BEGIN {
         last_tag  = "";          last_tag  = "";
         printf "# id-name\tfilename\tid-type\n";          str       = "";
           desc      = "";
           printf "# id-name\tfilename\tid-type\tdescription\n";
 }  }
   
 #/^[^<]+</ {  function compete_tag(reg)
 #       n = split($0, a, ">");  {
 #       first_tag = a[1];          reg1 = sprintf("<%s",   reg);
 #       #printf "first_tag = '%s'\n", first_tag;          reg2 = sprintf("</%s>", reg);
 #}  
           while (str ~ reg1 && str !~ reg2) {
   #               printf "BEFORE = '%s'\n", str;
                   getline;
                   str = sprintf("%s %s", str, $0);
   #               printf "AFTER = '%s'\n", str;
           }
           if (str ~ reg && desc == "") {
                   desc = str;
                   reg1 = sprintf("^.*<%s[^>]*>", reg);
                   reg2 = sprintf("[ \t]*</%s>.*$", reg);
                   sub(reg1, "", desc);
                   sub(reg2, "", desc);
           }
   
   }
   
 {  {
         if (last_tag != "") {          if (last_tag != "") {
                 str = sprintf("> XX <%s %s", last_tag, $0); # join last notcompleted tag                  str = sprintf("<%s %s", last_tag, $0); # join last notcompleted tag
                 last_tag = ""; # last_tag was used, make it empty                  last_tag = ""; # last_tag was used, make it empty
         } else          } else
                 str = sprintf("> ZZ %s", $0);                  str = sprintf("%s", $0);
   
           compete_tag("title");
           compete_tag("constant");
   
   
         if (str ~ /<[^>]*$/) {          if (str ~ /<[^>]*$/) {
                 n = split(str, a, "<");                  n = split(str, a, "<");
                 last_tag = a[n];                  last_tag = a[n];
                 sub(/<[^>]+$/, "", str); # remove last notcompleted tag from line                  sub(/<[^>]+$/, "", str); # remove last notcompleted tag from line
         }          }
   
         #printf "str = '%s'\n", str;          sub(/^</,      "> XX <", str);
         sub(/>[^>]*$/, "> YY <", str);          sub(/>[^>]*$/, "> YY <", str);
   
         n = split(str, a, ">[^<>]*<");          n = split(str, a, ">[^<>]*<");
         for (i = 1; i <= n; i++) {          for (i = 1; i <= n; i++) {
                 if (a[i] ~ /id=['"]/) { # SGML tag with id="..."                  if (a[i] ~ /id=['"]/) { # SGML tag with id="..."
   #                       printf "str = '%s'\n", str;
                         m = split(a[i], b, "[ \t]+");                          m = split(a[i], b, "[ \t]+");
                         for (j = 1; j <= m; j++) {                          for (j = 1; j <= m; j++) {
                                 if (b[j] ~ /id=['"]/) {                                  if (b[j] ~ /id=['"]/) {
                                         sub(/^id=['"]/, "", b[j]);                                          sub(/^id=['"]/, "", b[j]);
                                         sub(/['"]$/,    "", b[j]);                                          sub(/['"]$/,    "", b[j]);
                                         printf "%s\t%s\t%s\n", b[j], FILENAME, b[1];                                          printf "%s\t%s\t%s\t%s\n", b[j], FILENAME, b[1], desc;
                                           desc = "";
                                 }                                  }
                         }                          }
                 }                  }

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

Platon Group <platon@platon.org> http://platon.org/
Copyright © 2002-2006 Platon Group
Site powered by Metafox CMS
Go to Top