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

Diff for /mandoc/term.c between version 1.285 and 1.286

version 1.285, 2022/01/10 18:01:35 version 1.286, 2022/04/27 13:41:13
Line 628  term_word(struct termp *p, const char *word)
Line 628  term_word(struct termp *p, const char *word)
                                 encode(p, "utf8", 4);                                  encode(p, "utf8", 4);
                         continue;                          continue;
                 case ESCAPE_HORIZ:                  case ESCAPE_HORIZ:
                           if (p->flags & TERMP_BACKAFTER) {
                                   p->flags &= ~TERMP_BACKAFTER;
                                   continue;
                           }
                         if (*seq == '|') {                          if (*seq == '|') {
                                 seq++;                                  seq++;
                                 uc = -p->col;                                  uc = -p->col;
Line 636  term_word(struct termp *p, const char *word)
Line 640  term_word(struct termp *p, const char *word)
                         if (a2roffsu(seq, &su, SCALE_EM) == NULL)                          if (a2roffsu(seq, &su, SCALE_EM) == NULL)
                                 continue;                                  continue;
                         uc += term_hen(p, &su);                          uc += term_hen(p, &su);
                         if (uc > 0) {                          if (uc >= 0) {
                                 while (uc > 0) {                                  while (uc > 0) {
                                         bufferc(p, ASCII_NBRSP);  
                                         uc -= term_len(p, 1);                                          uc -= term_len(p, 1);
                                           if (p->flags & TERMP_BACKBEFORE)
                                                   p->flags &= ~TERMP_BACKBEFORE;
                                           else
                                                   bufferc(p, ASCII_NBRSP);
                                 }                                  }
                         } else if (p->col > (size_t)(-uc)) {                                  continue;
                           }
                           if (p->flags & TERMP_BACKBEFORE) {
                                   p->flags &= ~TERMP_BACKBEFORE;
                                   assert(p->col > 0);
                                   p->col--;
                           }
                           if (p->col >= (size_t)(-uc)) {
                                 p->col += uc;                                  p->col += uc;
                         } else {                          } else {
                                 uc += p->col;                                  uc += p->col;

Legend:
Removed from v.1.285  
changed lines
  Added in v.1.286

CVSweb