New version
[infodrom/dtaus] / main.c
diff --git a/main.c b/main.c
index 9995e27..c12f711 100644 (file)
--- a/main.c
+++ b/main.c
@@ -19,7 +19,7 @@
     $Id$
  */
 
-static char version[] = "0.6";
+static char version[] = "0.7";
 
 #include <stdio.h>
 #include <sys/stat.h>
@@ -32,22 +32,25 @@ static char version[] = "0.6";
 #define FN_CONTROL "dtaus0.ctl"
 #define FN_BELEG   "dtaus0.doc"
 #define FN_CHECK   "dtaus0.sik"
+#define FN_LATEX   "dtaus0.tex"
 
 char *dtaus   = FN_DTAUS;
 char *control = FN_CONTROL;
 char *beleg   = FN_BELEG;
 char *check   = FN_CHECK;
+char *latex   = NULL;
 
 void help ()
 {
   printf ("dtaus - Belegloser Datenträgeraustausch mit einer Bank\n\n");
-  printf ("  -dtaus        Erzeugt eine Bankdatei\n");
-  printf ("  -control      Liest eine Bankdatei und erzeugt die Kontrolldatei\n");
+  printf ("  -dtaus         Erzeugt eine Bankdatei\n");
+  printf ("  -control       Liest eine Bankdatei und erzeugt die Kontrolldatei\n");
   printf ("\n");
-  printf ("  -d <dtaus>    Bankdatei [%s]\n", FN_DTAUS);
-  printf ("  -c <control>  Steuerdatei [%s]\n", FN_CONTROL);
-  printf ("  -b <begleit>  Begleitzettel für die Bank [%s]\n", FN_BELEG);
-  printf ("  -o <kontroll> Kontrolldatei zum Abheften [%s]\n", FN_CHECK);
+  printf ("  -d <dtaus>     Bankdatei [%s]\n", FN_DTAUS);
+  printf ("  -c <control>   Steuerdatei [%s]\n", FN_CONTROL);
+  printf ("  -b <begleit>   Begleitzettel für die Bank [%s]\n", FN_BELEG);
+  printf ("  -l [<begleit>] Begleitzettel als LaTeX [%s]\n", FN_LATEX);
+  printf ("  -o <kontroll>  Kontrolldatei zum Abheften [%s]\n", FN_CHECK);
 }
 
 #define DTAUS   1
@@ -64,7 +67,7 @@ int main (int argc, char **argv)
     if ( !strcmp(argv[i], "-h") ) {
       help(); exit(0);
     } else if ( !strcmp(argv[i], "-v") ) {
-      printf ("dtaus version %s - Copyright (c) 1997,8,2001 by Martin Schulze <joey@infodrom.org>\n", version);
+      printf ("dtaus version %s - Copyright (c) 1997,8,2001,4 by Martin Schulze <joey@infodrom.org>\n", version);
       exit (0);
     } else if ( !strcmp(argv[i], "-d") ) {
       if (argc - i > 1) {
@@ -81,6 +84,12 @@ int main (int argc, char **argv)
        i++;
        beleg = argv[i];
       }
+    } else if ( !strcmp(argv[i], "-l") ) {
+      if (argc - i > 1 && argv[i+1][0] != '-') {
+       i++;
+       latex = argv[i];
+      } else
+       latex = FN_LATEX;
     } else if ( !strcmp(argv[i], "-o") ) {
       if (argc - i > 1) {
        i++;
@@ -95,7 +104,7 @@ int main (int argc, char **argv)
 
   if (action == DTAUS) {
     if (!strcmp("-", control) || !stat(control, &sbuf)) {
-      if (control2dtaus (control, dtaus, beleg, check) == 0)
+      if (control2dtaus (control, dtaus, beleg, check, latex) == 0)
        exit (1);
     }
     else {
@@ -103,14 +112,14 @@ int main (int argc, char **argv)
       exit (1);
     }
   } else if (action == CONTROL) {
-    if (!strcmp("-",dtaus) || !stat(dtaus, &sbuf))
+    if (!strcmp("-", dtaus) || !stat(dtaus, &sbuf))
       dtaus2control (dtaus, control);
     else {
       fprintf( stderr, "Can't stat %s\n", dtaus);
       exit (1);
     }
   } else {
-    printf ("Keine Routine angegeben (-dtaus bzw. -control vergessen).\n");
+    fprintf (stderr, "Keine Routine angegeben (-dtaus bzw. -control vergessen).\n");
     exit (1);
   }
   exit (0);