TODO revision 322249
1************************************************************************ 2* Official mandoc TODO. 3* $Id: TODO,v 1.246 2017/07/24 11:15:12 schwarze Exp $ 4************************************************************************ 5 6Many issues are annotated for difficulty as follows: 7 8 - loc = locality of the issue 9 * single file issue, affects file only, or very few 10 ** single module issue, affects several files of one module 11 *** cross-module issue, significantly impacts multiple modules 12 and may require substantial changes to internal interfaces 13 - exist = difficulty of the existing code in this area 14 * affected code is straightforward and easy to read and change 15 ** affected code is somewhat complex, but once you understand 16 the design, not particularly difficult to understand 17 *** affected code uses a special, exceptionally tricky design 18 - algo = difficulty of the new algorithm to be written 19 * the required logic and code is straightforward 20 ** the required logic is somewhat complex and needs a careful design 21 *** the required logic is exceptionally tricky, 22 maybe an approach to solve that is not even known yet 23 - size = the amount of code to be written or changed 24 * a small number of lines (at most 100, usually much less) 25 ** a considerable amount of code (several dozen to a few hundred) 26 *** a large amount of code (many hundreds, maybe thousands) 27 - imp = importance of the issue 28 * mostly for completeness 29 ** would be nice to have 30 *** issue causes considerable inconvenience 31 32Obviously, as the issues have not been solved yet, these annotations 33are mere guesses, and some may be wrong. 34 35************************************************************************ 36* missing features 37************************************************************************ 38 39--- missing roff features ---------------------------------------------- 40 41- .ad (adjust margins) 42 .ad l -- adjust left margin only (flush left) 43 .ad r -- adjust right margin only (flush right) 44 .ad c -- center text on line 45 .ad b -- adjust both margins (alias: .ad n) 46 .na -- temporarily disable adjustment without changing the mode 47 .ad -- re-enable adjustment without changing the mode 48 Adjustment mode is ignored while in no-fill mode (.nf). 49 loc *** exist *** algo ** size ** imp ** (parser reorg would help) 50 51- .fc (field control) 52 found by naddy@ in xloadimage(1) 53 loc ** exist *** algo * size * imp * 54 55- .nr third argument (auto-increment step size, requires \n+) 56 found by bentley@ in sbcl(1) Mon, 9 Dec 2013 18:36:57 -0700 57 loc * exist * algo * size * imp ** 58 59- .ns (no-space mode) occurs in xine-config(1) 60 when implementing this, also let .TH set it 61 reported by brad@ Sat, 15 Jan 2011 15:45:23 -0500 62 loc *** exist *** algo *** size ** imp * 63 64- .while and .shift 65 found by jca@ in ratpoison(1) Sun, 30 Jun 2013 12:01:09 +0200 66 loc * exist ** algo ** size ** imp ** 67 68- \n+ and \n- numerical register increment and decrement 69 found by bentley@ in sbcl(1) Mon, 9 Dec 2013 18:36:57 -0700 70 loc * exist * algo * size * imp ** 71 72- \w'' improve width measurements 73 would not be very useful without an expression parser, see below 74 needed for Tcl_NewStringObj(3) via wiz@ Wed, 5 Mar 2014 22:27:43 +0100 75 loc ** exist *** algo *** size * imp *** 76 77- \\ in high-level macro arguments 78 Currently, \\ is expanded in two situations: 79 1) macro and string definition (roff.c setstrn()) 80 2) macro argument parsing (mandoc.c mandoc_getarg()) 81 For user defined macros, the second happens in time because of ROFF_REPARSE. 82 But for standard high-level macros, it only happens after entering the 83 high level parsers, which is too late because the code doesn't get 84 back to roff.c roff_res() from that point. Because this requires 85 distinguishing requests, user-defined macros and standard macros 86 on the roff_res() level, it is hard to solve without the parser reorg. 87 Found by naddy@ in devel/cutils cobfusc(1) Mon, 16 Feb 2015 19:10:52 +0100 88 loc *** exist *** algo *** size ** imp * 89 90- using undefined strings or macros defines them to be empty 91 wl@ Mon, 14 Nov 2011 14:37:01 +0000 92 loc * exist * algo * size * imp * 93 94--- missing mdoc features ---------------------------------------------- 95 96- .Bl -column .Xo support is missing 97 ultimate goal: 98 restore .Xr and .Dv to 99 lib/libc/compat-43/sigvec.3 100 lib/libc/gen/signal.3 101 lib/libc/sys/sigaction.2 102 loc * exist *** algo *** size * imp ** 103 104- edge case: decide how to deal with blk_full bad nesting, e.g. 105 .Sh .Nm .Bk .Nm .Ek .Sh found by jmc@ in ssh-keygen(1) 106 from jmc@ Wed, 14 Jul 2010 18:10:32 +0100 107 loc * exist *** algo *** size ** imp ** 108 109- .Bd -centered implies -filled, not -unfilled, which is not 110 easy to implement; it requires code similar to .ce, which 111 we don't have either. 112 Besides, groff has bug causing text right *before* .Bd -centered 113 to be centered as well. 114 loc *** exist *** algo ** size ** imp ** (parser reorg would help) 115 116- .Bd -filled should not be the same as .Bd -ragged, but align both 117 the left and right margin. In groff, it is implemented in terms 118 of .ad b, which we don't have either. Found in cksum(1). 119 loc *** exist *** algo ** size ** imp ** (parser reorg would help) 120 121- implement blank `Bl -column', such as 122 .Bl -column 123 .It foo Ta bar 124 .El 125 loc * exist *** algo *** size * imp * 126 127- explicitly disallow nested `Bl -column', which would clobber internal 128 flags defined for struct mdoc_macro 129 loc * exist * algo * size * imp ** 130 131- In .Bl -column .It, the end of the line probably has to be regarded 132 as an implicit .Ta, if there could be one, see the following mildly 133 ugly code from login.conf(5): 134 .Bl -column minpasswordlen program xetcxmotd 135 .It path Ta path Ta value of Dv _PATH_DEFPATH 136 .br 137 Default search path. 138 reported by Michal Mazurek <akfaew at jasminek dot net> 139 via jmc@ Thu, 7 Apr 2011 16:00:53 +0059 140 loc * exist *** algo ** size * imp ** 141 142- inside `.Bl -column' phrases, punctuation is handled like normal 143 text, e.g. `.Bl -column .It Fl x . Ta ...' should give "-x -." 144 145- inside `.Bl -column' phrases, TERMP_IGNDELIM handling by `Pf' 146 is not safe, e.g. `.Bl -column .It Pf a b .' gives "ab." 147 but should give "ab ." 148 149- check whether it is correct that `D1' uses INDENT+1; 150 does it need its own constant? 151 loc * exist ** algo ** size * imp ** 152 153- prohibit `Nm' from having non-text HEAD children 154 (e.g., NetBSD mDNSShared/dns-sd.1) 155 (mdoc_html.c and mdoc_term.c `Nm' handlers can be slightly simplified) 156 157- support translated section names 158 e.g. x11/scrotwm scrotwm_es.1:21:2: error: NAME section must be first 159 that one uses NOMBRE because it is spanish... 160 deraadt tends to think that section-dependent macro behaviour 161 is a bad idea in the first place, so this may be irrelevant 162 loc ** exist ** algo ** size * imp ** 163 164- When there is free text in the SYNOPSIS and that free text contains 165 the .Nm macro, groff somehow understands to treat the .Nm as an in-line 166 macro, while mandoc treats it as a block macro and breaks the line. 167 No idea how the logic for distinguishing in-line and block instances 168 should be, needs investigation. 169 uqs@ Thu, 2 Jun 2011 11:03:51 +0200 170 uqs@ Thu, 2 Jun 2011 11:33:35 +0200 171 loc * exist ** algo *** size * imp ** 172 173--- missing tbl features ----------------------------------------------- 174 175- the "s" layout column specifier is used for placement of data 176 into columns, but ignored during column width calculations 177 synaptics(4) found by tedu@ Mon, 17 Aug 2015 21:17:42 -0400 178 loc * exist ** algo *** size * imp ** 179 180- support mdoc(7) and man(7) macros inside tbl(7) code; 181 probably requires the parser reorg and letting tbl(7) 182 use roff_node such that macro sets can mix; 183 informed by bapt@ that FreeBSD needs this: 3 Jan 2015 23:32:23 +0100 184 loc *** exist ** algo *** size ** imp *** 185 186- look at the POSIX manuals in the books/man-pages-posix port, 187 they use some unsupported tbl(7) features. 188 loc * exist ** algo ** size ** imp *** 189 190- look what Joerg Schilling manual pages use 191 Thu, 19 Mar 2015 18:31:48 +0100 192 193- use Unicode U+2500 to U+256C for table borders 194 in tbl(7) -Tutf-8 output 195 suggested by bentley@ Tue, 14 Oct 2014 04:10:55 -0600 196 loc * exist ** algo * size * imp ** 197 198--- missing eqn features ----------------------------------------------- 199 200- In a matrix, break the output line after each matrix line. 201 Found in the discussion at CDBUG 2015. 202 Suggested by Avi Weinstock. 203 loc * exist * algo * size * imp ** 204 205- The "size" keyword is parsed, but ignored by the formatter. 206 loc * exist * algo * size * imp * 207 208- The spacing characters `~', `^', and tab are currently ignored, 209 see User's Guide (Second Edition) page 2 section 4. 210 loc * exist * algo ** size * imp ** 211 212- Mark and lineup are parsed and ignored, 213 see User's Guide (Second Edition) page 5 section 15. 214 loc ** exist ** algo ** size ** imp ** 215 216- GNU eqn converts some operators to special characters, for example, 217 input HYPHEN-MINUS becomes output \(mi, unless it is part of a 218 quoted word. mandoc(1) only does this when the operator is 219 surrounded by blanks, not when it is part of an unquoted word. 220 Also, check whether there are more such cases (e.g., +?). 221 reported by bentley@ 20 Jun 2017 02:04:29 -0600 222 223- Primes, opprime, and ' 224 bentley@ Thu, 13 Jul 2017 23:14:20 -0600 225 226--- missing misc features ---------------------------------------------- 227 228- italic correction (\/) in PostScript mode 229 Werner LEMBERG on groff at gnu dot org Sun, 10 Nov 2013 12:47:46 230 loc ** exist ** algo * size * imp * 231 232- change the default PAGER to more -Es and use the pager 233 even for apropos title line output; req by bapt@ 234 loc * exist * algo * size * imp *** 235 236- clean up escape sequence handling, creating three classes: 237 (1) fully implemented, or parsed and ignored without loss of content 238 (2) unimplemented, potentially causing loss of content 239 or serious mangling of formatting (e.g. \n) -> ERROR 240 see textproc/mgdiff(1) for nice examples 241 (3) undefined, just output the character -> perhaps WARNING 242 loc *** exist ** algo ** size ** imp *** (parser reorg helps) 243 244- kettenis wants base roff, ms, and me Fri, 1 Jan 2010 22:13:15 +0100 (CET) 245 loc ** exist ** algo ** size *** imp * 246 247--- compatibility checks ----------------------------------------------- 248 249- is .Bk implemented correctly in modern groff? 250 sobrado@ Tue, 19 Apr 2011 22:12:55 +0200 251 252- compare output to Heirloom roff, Solaris roff, and 253 http://repo.or.cz/w/neatroff.git http://litcave.rudi.ir/ 254 255- look at AT&T DWB http://www2.research.att.com/sw/download 256 Carsten Kunze <carsten dot kunze at arcor dot de> has patches 257 Mon, 4 Aug 2014 17:01:28 +0200 258 ported version: https://github.com/n-t-roff/DWB3.3 259 Carsten Kunze Wed, 22 Apr 2015 11:21:43 +0200 260 261- look at pages generated from reStructeredText, e.g. devel/mercurial hg(1) 262 These are a weird mixture of man(7) and custom autogenerated low-level 263 roff stuff. Figure out to what extent we can cope. 264 For details, see http://docutils.sourceforge.net/rst.html 265 noted by stsp@ Sat, 24 Apr 2010 09:17:55 +0200 266 reminded by nicm@ Mon, 3 May 2010 09:52:41 +0100 267 268- look at pages generated from ronn(1) github.com/rtomayko/ronn 269 (based on markdown) 270 271- look at pages generated from Texinfo source by yat2m, e.g. security/gnupg 272 First impression is not that bad. 273 274- look at pages generated by pandoc; see 275 https://github.com/jgm/pandoc/blob/master/src/Text/Pandoc/Writers/Man.hs 276 porting planned by kili@ Thu, 19 Jun 2014 19:46:28 +0200 277 278- check compatibility with Plan9: 279 http://swtch.com/usr/local/plan9/tmac/tmac.an 280 http://swtch.com/plan9port/man/man7/man.html 281 "Anthony J. Bentley" <anthonyjbentley@gmail.com> 28 Dec 2010 21:58:40 -0700 282 283- check compatibility with COHERENT troff: 284 http://www.nesssoftware.com/home/mwc/source.php 285 286- check compatibility with the man(7) formatter 287 https://raw.githubusercontent.com/rofl0r/hardcore-utils/master/man.c 288 289- check compatibility with 290 http://ikiwiki.info/plugins/contrib/mandoc/ 291 https://github.com/schmonz/ikiwiki/compare/mandoc 292 Amitai Schlair Mon, 19 May 2014 14:05:53 -0400 293 294- check features of the Slackware man.conf(5) format 295 Carsten Kunze Wed, 11 Mar 2015 17:57:24 +0100 296 297************************************************************************ 298* formatting issues: ugly output 299************************************************************************ 300 301- revisit empty in-line macros 302 look at the difference between "Em x Em ." and "Sq x Em ." 303 Carsten Kunze Fri, 12 Dec 2014 00:15:41 +0100 304 loc *** exist *** algo *** size * imp ** 305 306- a column list with blank `Ta' cells triggers a spurious 307 start-with-whitespace printing of a newline 308 309- In .Bl -column, .It a<tab>"b<tab>c" 310 shows the quotes in groff, but not in mandoc 311 loc * exist *** algo ** size * imp ** 312 313- In .Bl -column, 314 .It Em Authentication<tab>Key Length 315 ought to render "Key Length" with emphasis, too, 316 see OpenBSD iked.conf(5). 317 reported again Nicolas Joly via wiz@ Wed, 12 Oct 2011 00:20:00 +0200 318 loc * exist *** algo *** size ** imp *** 319 320- empty phrases in .Bl column produce too few blanks 321 try e.g. .Bl -column It Ta Ta 322 reported by millert Fri, 02 Apr 2010 16:13:46 -0400 323 loc * exist *** algo *** size * imp ** 324 325- .%T can have trailing punctuation. Currently, it puts the trailing 326 punctuation into a trailing MDOC_TEXT element inside its own scope. 327 That element should rather be outside its scope, such that the 328 punctuation does not get underlines. This is not trivial to 329 implement because .%T then needs some features of in_line_eoln() - 330 slurp all arguments into one single text element - and one feature 331 of in_line() - put trailing punctuation out of scope. 332 Found in mount_nfs(8) and exports(5), search for "Appendix". 333 loc ** exist ** algo *** size * imp ** 334 335- Trailing punctuation after .%T triggers EOS spacing, at least 336 outside .Rs (eek!). Simply setting ARGSFL_DELIM for .%T is not 337 the right solution, it sends mandoc into an endless loop. 338 reported by Nicolas Joly Sat, 17 Nov 2012 11:49:54 +0100 339 loc * exist ** algo ** size * imp ** 340 341- global variables in the SYNOPSIS of section 3 pages 342 .Vt vs .Vt/.Va vs .Ft/.Va vs .Ft/.Fa ... 343 from kristaps@ Tue, 08 Jun 2010 11:13:32 +0200 344 345- implicit whitespace around inline equations 346 example code: where '$times$' denotes matrix multiplication 347 must not have an HTML line break, nor a blank, before <math> 348 partial solution: html.c {"math", HTML_NLINSIDE | HTML_INDENT}, 349 bentley@ Thu, 13 Jul 2017 19:00:59 -0600 350 351- in enclosures, mandoc sometimes fancies a bogus end of sentence 352 reminded by jmc@ Thu, 23 Sep 2010 18:13:39 +0059 353 loc * exist ** algo *** size * imp *** 354 355- a line starting with "\fB something" counts as starting with whitespace 356 and triggers a line break; found in audio/normalize-mp3(1) 357 loc ** exist * algo ** size * imp ** 358 359- formatting /usr/local/man/man1/latex2man.1 with groff and mandoc 360 reveals lots of bugs both in groff and mandoc... 361 reported by bentley@ Wed, 22 May 2013 23:49:30 -0600 362 363--- PostScript and PDF issues ------------------------------------------ 364 365- PDF output doesn't use a monospaced font for .Bd -literal 366 Example: "mandoc -Tpdf afterboot.8 > output.pdf && pdfviewer output.pdf". 367 Search the text "Routing tables". 368 Also check what PostScript mode does when fixing this. 369 reported by juanfra@ Wed, 04 Jun 2014 21:44:58 +0200 370 instructions from juanfra@ Wed, 11 Jun 2014 02:21:01 +0200 371 add a new <</Type /Font>> block to the PDF files with /BaseFont /Courier 372 and change the /Name from /F0 to the new font (/F5 (?)). 373 re-reported by tb@ Mon, 16 Mar 2015 16:47:21 +0100 374 loc * exist ** algo ** size * imp ** 375 376--- HTML issues -------------------------------------------------------- 377 378- .Bf at the beginning of a paragraph inserts a bogus 1ex horizontal 379 space, see for example random(3). Introduced in 380 http://mdocml.bsd.lv/cgi-bin/cvsweb/mdoc_html.c.diff?r1=1.91&r2=1.92 381 reported by deraadt@ Mon, 28 Sep 2015 20:14:13 -0600 (MDT) 382 loc ** exist ** algo ** size * imp * 383 384- jsg on icb, Nov 3, 2014: 385 try to guess Xr in man(7) for hyperlinking 386 and render them with <a class="Xr" href=...> 387 https://github.com/Debian/debiman/issues/15 388 loc * exist * algo ** size ** imp ** 389 390- The tables used to render the three-part page headers actually force 391 the width of the <body> to the max-width given for <html>. 392 Not yet sure how to fix that... 393 Observed by an Anonymous Coward on undeadly.org: 394 http://undeadly.org/cgi?action=article&sid=20140925064244&pid=1 395 loc * exist * algo ** size * imp *** 396 397- generate <img> tags in HTML 398 idea from florian@ Tue, 7 Apr 2015 00:26:28 +0000 399 may be possible to implement with .Lk img://something.png alt_text 400 401- check https://github.com/trentm/mdocml 402 403************************************************************************ 404* formatting issues: gratuitous differences 405************************************************************************ 406 407- .Fn reopens a new scope after punctuation in mandoc, 408 but closes its scope for good in groff. 409 Do we want to change mandoc or groff? 410 Steffen Nurpmeso Sat, 08 Nov 2014 13:34:59 +0100 411 loc * exist ** algo ** size * imp ** 412 413- In .Bl -enum -width 0n, groff continues one the same line after 414 the number, mandoc breaks the line. 415 mail to kristaps@ Mon, 20 Jul 2009 02:21:39 +0200 416 loc * exist ** algo ** size * imp ** 417 418- .Pp between two .It in .Bl -column should produce one, 419 not two blank lines, see e.g. login.conf(5). 420 reported by jmc@ Sun, 17 Apr 2011 14:04:58 +0059 421 reported again by sthen@ Wed, 18 Jan 2012 02:09:39 +0000 (UTC) 422 loc * exist *** algo ** size * imp ** 423 424- If the *first* line after .It is .Pp, break the line right after 425 the tag, do not pad with space characters before breaking. 426 See the description of the a, c, and i commands in sed(1). 427 loc * exist ** algo ** size * imp ** 428 429- If the first line after .It is .D1, do not assert a blank line 430 in between, see for example tmux(1). 431 reported by nicm@ 13 Jan 2011 00:18:57 +0000 432 loc * exist ** algo ** size * imp ** 433 434- Trailing punctuation after .It should trigger EOS spacing. 435 reported by Nicolas Joly Sat, 17 Nov 2012 11:49:54 +0100 436 Probably, this should be fixed somewhere in termp_it_pre(), not sure. 437 loc * exist ** algo ** size * imp ** 438 439- When the -width string contains macros, the macros must be rendered 440 before measuring the width, for example 441 .Bl -tag -width ".Dv message" 442 in magic(5), located in src/usr.bin/file, is the same 443 as -width 7n, not -width 11n. 444 The same applies to .Bl -column column widths; 445 reported again by Nicolas Joly Thu, 1 Mar 2012 13:41:26 +0100 via wiz@ 5 Mar 446 reported again by Franco Fichtner Fri, 27 Sep 2013 21:02:28 +0200 447 reported again by Bruce Evans Fri, 17 Feb 2017 21:22:44 +0100 via bapt@ 448 loc *** exist *** algo *** size ** imp *** 449 An easy partial fix would be to just skip the first word if it starts 450 with a dot, including any following white space, when measuring. 451 loc * exist * algo * size * imp *** 452 453- The \& zero-width character counts as output. 454 That is, when it is alone on a line between two .Pp, 455 we want three blank lines, not two as in mandoc. 456 loc ** exist ** algo ** size * imp ** 457 458- Sequences of multiple man(7) paragraphs (.PP, .IP) interspersed 459 with .ps and .nf/.fi produce execessive blank lines, see libJudy 460 and graphics/dcmtk. The parser reorg may help with this. 461 462- trailing whitespace must be ignored even when followed by a font escape, 463 see for example 464 makes 465 \fBdig \fR 466 operate in batch mode 467 in dig(1). 468 loc ** exist ** algo ** size * imp ** 469 470************************************************************************ 471* warning issues 472************************************************************************ 473 474- style message about macros inside .Bd -literal and .Dl, in particular 475 font changing macros like .Cm, .Ar, .Fa (from the mdoclint TODO) 476 477- style message about mismatches between the section number in the 478 file name (if it is known) and the section number in .Dt 479 (from the mdoclint TODO) 480 481- style message about NULL without .Dv (from the mdoclint TODO) 482 483- style message about error constants without .Er (from the mdoclint TODO) 484 485- warn when .Sh or .Ss contain other macros 486 Steffen Nurpmeso, savannah.gnu.org/bugs/index.php?45034 487 loc * exist * algo * size * imp ** 488 489- style message about violations of the convention 490 .An name Aq Mt localpart@domain in AUTHORS (from the mdoclint TODO) 491 492- warn about attempts to call non-callable macros 493 Steffen Nurpmeso Tue, 11 Nov 2014 22:55:16 +0100 494 Note that formatting is inconsistent in groff. 495 .Fn Po prints "Po()", .Ar Sh prints "file ..." and no "Sh". 496 Relatively hard because the relevant code is scattered 497 all over mdoc_macro.c and all subtly different. 498 loc ** exist ** algo ** size ** imp ** 499 500- style message about suspicious uses of - vs. \- vs. \(mi 501 e.g. -1 is likely wrong (from the mdoclint TODO) 502 503- warn about punctuation - e.g. ',' and ';' - at the beginning 504 of a text line, if it is likely intended to follow the preceding 505 output without intervening whitespace, in particular after a 506 macro line (from the mdoclint TODO) 507 508- mandoc_special does not really check the escape sequence, 509 but just the overall format 510 loc ** exist ** algo *** size ** imp ** 511 512************************************************************************ 513* documentation issues 514************************************************************************ 515 516- dashes, hyphens, and minus signs in manual pages 517 jmc@ Fri, 28 Mar 2014 07:19:27 +0000 518 519- mark macros as: page structure domain, manual domain, general text domain 520 is this useful? 521 522- mention /usr/share/misc/mdoc.template in mdoc(7)? 523 524- Is all the content from http://www.std.com/obi/BSD/doc/usd/28.tbl/tbl 525 covered in tbl(7)? 526 527************************************************************************ 528* performance issues 529************************************************************************ 530 531- the PDF file is HUGE: this can be reduced by using relative offsets 532 533************************************************************************ 534* structural issues 535************************************************************************ 536 537- POSIX says in the documentation of sysconf(3) that PATH_MAX 538 is allowed to be so large that it is a bad idea to use it 539 for sizing static buffers. So use dynamic buffers throughout. 540 See the file test-PATH_MAX.c for details. 541 Found by Aaron M. Ucko in the GNU Hurd via Bdale Garbee, 542 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=829624 543 544- We use the input line number at several places to distinguish 545 same-line from different-line input. That plainly doesn't work 546 with user-defined macros, leading to random breakage. 547 548- Is it possible to further simplify ENDBODY_SPACE? 549 550- Find better ways to prevent endless loops 551 in roff(7) macro and string expansion. 552 553- make buffers for parsing functions const 554 christos@ via wiz@ Fri, 18 Dec 2015 17:10:01 +0100 555 556- struct mparse refactoring 557 Steffen Nurpmeso Thu, 04 Sep 2014 12:50:00 +0200 558 559************************************************************************ 560* CGI issues 561************************************************************************ 562 563 - Enable HTTP compression by detecting gzip encoding and filtering 564 output through libz. 565 - Sandbox (see OpenSSH). 566 - Enable caching support via HTTP 304 and If-Modified-Since. 567 - Have Mac OSX systems automatically disable -static compilation of the 568 CGI: -static isn't supported. 569 570************************************************************************ 571* to improve in the groff_mdoc(7) macros 572************************************************************************ 573 574- use uname(1) to set doc-default-operating-system at install time 575 tobimensch Mon, 1 Dec 2014 00:25:07 +0100 576 577- apostrophe (39), circumflex (94), grave (96), tilde (126) 578 in manuals: \(aq, \(ha, \`, \(ti 579 Re: [Groff] ASCII Minus Sign in man Pages. 580 bentley@ 26 Apr 2017 10:02:06 -0600 581 Do we need to fix existing manuals? 582 Do we need to fix the definition of the mdoc(7) language? 583