> I've refactored the appropriate code, in src/roff/troff/input.cpp, > with a view to accommodating this; see patch attached. While I've > not yet progressed any implementation for PDF handling, I have > indicated the point at which it should be invoked. Okay to commit, > thus far?
This is very nice, thanks! For my taste, the comments are a bit excessive, but I guess this is probably only me who thinks so :-) Some comments, mainly regarding formatting: + while ((context = bounding_box_args()) == NULL + && get_line(DSC_LINE_MAX_ENFORCE) > 0) + ; Please say while ((context = bounding_box_args()) == NULL && get_line(DSC_LINE_MAX_ENFORCE) > 0) ; + while (*context == '\x20' || *context == '\t') + context++; Please say while (*context == '\x20' || *context == '\t') context++; + status = (context_args("(atend)", context) == NULL) + ? llx = lly = urx = ury = PSBB_RANGE_IS_BAD + : PSBB_RANGE_AT_END; Please say status = (context_args("(atend)", context) == NULL) ? llx = lly = urx = ury = PSBB_RANGE_IS_BAD : PSBB_RANGE_AT_END; + register size_t len = strlen(tag); Given that recent versions of clang emit warnings if it encounters the `register' keyword, and given that this keyword has no effect for about 20 years, please don't use it: size_t len = strlen(tag); [It would be a trivial clean-up in the groff source code to remove `register' everywhere.] Werner