[BACK]Return to util.c CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / texi2mdoc

Diff for /texi2mdoc/util.c between version 1.22 and 1.25

version 1.22, 2015/03/01 16:57:39 version 1.25, 2015/03/03 22:37:24
Line 184  texiputchar(struct texi *p, char c)
Line 184  texiputchar(struct texi *p, char c)
         if ('\'' == c && 0 == p->outcol)          if ('\'' == c && 0 == p->outcol)
                 fputs("\\&", p->outfile);                  fputs("\\&", p->outfile);
   
         fputc(c, p->outfile);          if (p->uppercase)
                   fputc(toupper((unsigned int)c), p->outfile);
           else
                   fputc(c, p->outfile);
         if ('\\' == c)          if ('\\' == c)
                 fputc('e', p->outfile);                  fputc('e', p->outfile);
         p->seenvs = 0;          p->seenvs = 0;
Line 210  texiputchars(struct texi *p, const char *s)
Line 213  texiputchars(struct texi *p, const char *s)
                 fputs("\\&", p->outfile);                  fputs("\\&", p->outfile);
         if ('\'' == *s && 0 == p->outcol)          if ('\'' == *s && 0 == p->outcol)
                 fputs("\\&", p->outfile);                  fputs("\\&", p->outfile);
         p->outcol += fputs(s, p->outfile);          if (p->uppercase)
                   for ( ; '\0' != *s; s++)
                           p->outcol += fputc(toupper
                                   ((unsigned int)*s), p->outfile);
           else
                   p->outcol += fputs(s, p->outfile);
         p->seenvs = 0;          p->seenvs = 0;
 }  }
   
Line 472  texiexecmacro(struct texi *p, struct teximacro *m, siz
Line 480  texiexecmacro(struct texi *p, struct teximacro *m, siz
          * The "sv" value was initialised at the start of the macro.           * The "sv" value was initialised at the start of the macro.
          */           */
         if (sv > 0)          if (sv > 0)
                 if (++p->files[p->filepos].depth > 64)                  if (++p->files[p->filepos - 1].depth > 64)
                         texierr(p, "maximium recursive depth");                          texierr(p, "maximium recursive depth");
   
         args = argparse(p, pos, &asz, m->argsz);          args = argparse(p, pos, &asz, m->argsz);
Line 561  static void
Line 569  static void
 parseword(struct texi *p, size_t *pos, char extra)  parseword(struct texi *p, size_t *pos, char extra)
 {  {
   
           /*
            * Some line control: if we (non-macro, non-literal) already
            * have more than 72 characters written to the screen, then
            * output a newline before getting started.
            */
         if (p->seenws && 0 == p->outmacro &&          if (p->seenws && 0 == p->outmacro &&
                  p->outcol > 72 && 0 == p->literal)                   p->outcol > 72 && 0 == p->literal)
                 texiputchar(p, '\n');                  texiputchar(p, '\n');
         /* FIXME: abstract this: we use it elsewhere. */  
           /* Usual padding in the case of seen whitespace. */
         if (p->seenws && p->outcol && 0 == p->literal)          if (p->seenws && p->outcol && 0 == p->literal)
                 texiputchar(p, ' ');                  texiputchar(p, ' ');
   
Line 593  parseword(struct texi *p, size_t *pos, char extra)
Line 607  parseword(struct texi *p, size_t *pos, char extra)
                         texiputchar(p, BUF(p)[*pos]);                          texiputchar(p, BUF(p)[*pos]);
                 advance(p, pos);                  advance(p, pos);
         }          }
   
           /*
            * New sentence, new line:if we (non-macro, non-literal) see a
            * period at the end of the last printed word, then open a
            * newline.
            */
           if (0 == p->literal && 0 == p->outmacro &&
                   *pos < BUFSZ(p) && '.' == BUF(p)[*pos - 1])
                   texiputchar(p, '\n');
 }  }
   
 /*  /*
Line 616  texicmd(const struct texi *p, size_t pos, size_t *end,
Line 639  texicmd(const struct texi *p, size_t pos, size_t *end,
                 return(TEXICMD__MAX);                  return(TEXICMD__MAX);
   
         /* Alphabetic commands are special. */          /* Alphabetic commands are special. */
         if ( ! isalpha((unsigned char)BUF(p)[pos])) {          if ( ! isalpha((unsigned int)BUF(p)[pos])) {
                 if ((*end = pos + 1) == BUFSZ(p))                  if ((*end = pos + 1) == BUFSZ(p))
                         return(TEXICMD__MAX);                          return(TEXICMD__MAX);
                 for (i = 0; i < TEXICMD__MAX; i++) {                  for (i = 0; i < TEXICMD__MAX; i++) {

Legend:
Removed from v.1.22  
changed lines
  Added in v.1.25

CVSweb