qsos-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qsos-commits] qsos/tools checktree/checksheet createemptyshee...


From: Goneri Le Bouder
Subject: [Qsos-commits] qsos/tools checktree/checksheet createemptyshee...
Date: Tue, 20 Feb 2007 20:14:29 +0000

CVSROOT:        /sources/qsos
Module name:    qsos
Changes by:     Goneri Le Bouder <goneri>       07/02/20 20:14:29

Modified files:
        tools/checktree: checksheet 
        tools/createemptysheet: createemptysheet.pl 
        tools/syncglobaldesc: syncglobaldesc 

Log message:
        use of qsosappname

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qsos/tools/checktree/checksheet?cvsroot=qsos&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/qsos/tools/createemptysheet/createemptysheet.pl?cvsroot=qsos&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/qsos/tools/syncglobaldesc/syncglobaldesc?cvsroot=qsos&r1=1.4&r2=1.5

Patches:
Index: checktree/checksheet
===================================================================
RCS file: /sources/qsos/qsos/tools/checktree/checksheet,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- checktree/checksheet        20 Feb 2007 15:07:32 -0000      1.2
+++ checktree/checksheet        20 Feb 2007 20:14:28 -0000      1.3
@@ -1,7 +1,9 @@
 #!/bin/sh
-# $Id: checksheet,v 1.2 2007/02/20 15:07:32 goneri Exp $
+# $Id: checksheet,v 1.3 2007/02/20 20:14:28 goneri Exp $
 # Gonéri Le Bouder
 
+set -e
+
 DIR=`pwd`
 SYNCGLOBALDESC="$DIR/../syncglobaldesc/syncglobaldesc"
 CREATEEMPTYSHEET="$DIR/../createemptysheet/createemptysheet.pl"
@@ -10,22 +12,48 @@
 INCLUDEDIR="$SHEETDIR/include"
 
 sheet=$1
+sheetbasename=$(basename $sheet)
 if [ ! -f $sheet ]; then
   echo "file: $sheet doesn't exit"
   echo "usage: ./checksheet sheetname.qsos"
   exit 1
 fi
 
-echo "checking `basename $sheet`"
+echo "checking $sheetbasename"
 
-family=$(egrep '[\t\ ]*<qsosappfamily>.*</qsosappfamily>' $sheet|sed 
's/.*>\(.*\)<.*/\1/')
+authors=$(egrep '[\t\ ]*<email>.*</email>' $sheet|sed 's/.*>\(.*\)<.*/\1/')
+if [ "$authors" = "" ]; then
+  echo "There is NO author email for this sheet!"
+  exit 1
+fi
+echo " *author address:"
+for email in $authors; do echo "  $email";done
+
+qsosappname=$(egrep '[\t\ ]*<qsosappname>.*</qsosappname>' $sheet|sed 
's/.*>\(.*\)<.*/\1/')
+release=$(egrep '[\t\ ]*<release>.*</release>' $sheet|sed 's/.*>\(.*\)<.*/\1/')
 lang=$(egrep '[\t\ ]*<language>.*</language>' $sheet|sed 's/.*>\(.*\)<.*/\1/')
+echo " *qsosappname: $qsosappname"
+echo " *release: $release"
+echo " *lang: $lang"
+if [ -z $lang ] || [ "$lang" = "en" ];then
+  normalfilename="$qsosappname-$release.qsos"
+else
+  normalfilename=$qsosappname"-"$release"_"$lang".qsos"
+fi
+if [ ! "$normalfilename" = "$sheetbasename"  ]; then
+  echo "the sheep name ($sheetbasename) is malformed. Should be"
+  echo "$normalfilename (qsosappname-release.qsos or" 
+  echo "qsosappname-release_language.qsos)"
+#  exit 1
+fi
+
+family=$(egrep '[\t\ ]*<qsosappfamily>.*</qsosappfamily>' $sheet|sed 
's/.*>\(.*\)<.*/\1/')
 echo " *family: $family"
 if [ ! -d "$SHEETDIR/$family" ]; then
   echo "this family doesn't exist yet in the repository"
   exit 1
 fi
-echo " *lang: $lang"
+
 # refreshing .qsostmp file(s)
   echo " *refreshing template cache"
 for template in `find $SHEETDIR/$family -name '*.qtpl'`;do
@@ -37,9 +65,12 @@
   tpl=`echo $basetpl".qtpl.qsostmp"`
 else
   tpl=`echo $basetpl"_$lang.qtpl.qsostmp"`
+  if [ ! -f $tpl ]; then
+    tpl=`echo $basetpl".qtpl.qsostmp"`
+  fi
 fi
 if [ ! -f $tpl ]; then
-  echo "There is not template yet for this language ($tpl)"
+  echo "I can't find a template ($tpl)"
 fi
 echo " *synchronizing the template with the sheet"
 $SYNCGLOBALDESC --recreate --more --save --template $tpl --file $sheet || exit 
1

Index: createemptysheet/createemptysheet.pl
===================================================================
RCS file: /sources/qsos/qsos/tools/createemptysheet/createemptysheet.pl,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- createemptysheet/createemptysheet.pl        7 Dec 2006 23:30:24 -0000       
1.3
+++ createemptysheet/createemptysheet.pl        20 Feb 2007 20:14:29 -0000      
1.4
@@ -4,6 +4,31 @@
 
 use Getopt::Long;
 
+sub getLanguage {
+  my $file = shift;
+
+  my $filenamelang = 'en';
+  my $insheetlang = '';
+
+  if ($file =~ /_(\S\S)\.qtpl/) {
+    $filenamelang = $1;
+  }
+
+  open FILE,"<$file" or die "Can't open $file: $!";
+  foreach (<FILE>) {
+    if (/<language>(\S+)<\/language>/) {
+      $insheetlang = $1;
+    }
+  }
+  close $file;
+
+  if ($filenamelang ne $insheetlang) {
+    die "sheet name doesn't mach the language set in the sheet 
<language>$insheetlang</language>";
+  }
+
+  return $insheetlang;
+}
+
 my $includedir = "../../sheet/include/";
 my $qtpl;
 
@@ -25,7 +50,7 @@
 usage("Missing argument") if ! (defined $includedir && defined $qtpl);
 usage("Can't find include directory") if ! -d $includedir;
 usage("Can't find template file") if ! -f $qtpl;
-
+my $lang = getLanguage($qtpl);
 my @buff;
 open QTPL,"<$qtpl" or die "Failed to open $qtpl: $?";
 @buff = <QTPL>;
@@ -33,9 +58,12 @@
 
 while (my $line = shift @buff) {
   if ($line =~ /<include\W+section="([-\w]+)"\W*(|\/)>/) { # this is an include
-#    print STDERR "Including $1\n";
-    open INCLUDE, "<$includedir/$1.qin" or die "Failed to open includefile
-    $1.qin";
+    if ($lang ne 'en' && -f "$includedir/$1_$lang.qin" ) {
+      open INCLUDE, "<$includedir/$1_$lang.qin" or die "Failed to open ".
+      "localised includefile"
+    } else {
+      open INCLUDE, "<$includedir/$1.qin" or die "Failed to open includefile"
+    }
     unshift @buff, <INCLUDE>;
     close INCLUDE;
   } else {

Index: syncglobaldesc/syncglobaldesc
===================================================================
RCS file: /sources/qsos/qsos/tools/syncglobaldesc/syncglobaldesc,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- syncglobaldesc/syncglobaldesc       10 Nov 2006 22:39:56 -0000      1.4
+++ syncglobaldesc/syncglobaldesc       20 Feb 2007 20:14:29 -0000      1.5
@@ -1,7 +1,7 @@
 #!/usr/bin/perl -w
 # this script is experimental and will be certainly rewrite
 # It depends on the CVS release of QSOS::Document
-# $Id: syncglobaldesc,v 1.4 2006/11/10 22:39:56 goneri Exp $
+# $Id: syncglobaldesc,v 1.5 2007/02/20 20:14:29 goneri Exp $
 use strict;
 
 use Getopt::Long;
@@ -133,6 +133,7 @@
   $t->setqsosformat($qsos->getqsosformat());
   $t->setqsosspecificformat($qsos->getqsosspecificformat());
   $t->setqsosappfamily($qsos->getqsosappfamily());
+  $t->setqsosappname($qsos->getqsosappname());
   $t->setdatecreation($qsos->getdatecreation());
   $t->setdatevalidation($qsos->getdatevalidation());
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]