| 789 | /* Set extra fields in word W describing any attached punctuation. */ |
| 790 | |
| 791 | static void |
| 792 | check_punctuation (WORD *w) |
| 793 | { |
| 794 | char const *start = w->text; |
| 795 | char const *finish = start + (w->length - 1); |
| 796 | unsigned char fin = *finish; |
| 797 | |
| 798 | w->paren = isopen (*start); |
| 799 | w->punct = !! ispunct (fin); |
| 800 | while (start < finish && isclose (*finish)) |
| 801 | finish--; |
| 802 | w->period = isperiod (*finish); |
| 803 | } |
| 804 | |
| 805 | /* Flush part of the paragraph to make room. This function is called on |
| 806 | hitting the limit on the number of words or characters. */ |