aboutsummaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAgeFilesLines
* release 1.14.4VERSION_1_14_4Ingo Schwarze2018-08-081-6/+8
|
* Even though we strongly discourage escaping hyphens in manual pagesIngo Schwarze2018-08-081-2/+2
| | | | | in general, when introducing the *typographic* term "hyphen", actually display a real hyphen in output modes supporting it.
* Reorder the text in the "Dashes and Hyphens" subsection to keep theIngo Schwarze2018-08-081-25/+25
| | | | | | simplest and most important instructions together and at the beginning. No text change. Suggested by jmc@.
* Clarify the confusing "(text)" annotation in the character lists.Ingo Schwarze2018-08-081-17/+18
| | | | | | | | | | In some cases, it meant "render as an ASCII character in output modes that have a notion of codepoints" (e.g. UTF-8, HTML); in other cases, "render in the text font in output modes that also provide a special font for mathematical symbols" (e.g. PostScript, PDF). Also explicitly annotate the escape sequences that use a special font if available. OK bentley@
* After years of deliberation, finally provide a clear recommendationIngo Schwarze2018-08-081-16/+21
| | | | | | | | for hyphens and minus signs in manual pages. Since there is consensus that a typographically perfect solution is impossible, let's KISS - just write "-", don't bother with "\-", all currently relevant manual page formatters can handle "-" reasonably. OK jmc@ bentley@
* scanned to groff manual pages for todo items;Ingo Schwarze2018-08-061-1/+29
| | | | | the sheer number of issues is amazing, but they all look feasible
* Fix an off-by-one string read access that could happen if an emptyIngo Schwarze2018-08-011-3/+2
| | | | | string argument preceded a string argument beginning with "--". Found by Leah Neukirchen <leah at vuxu dot org> with -Wpointer-compare.
* After rewriting the parse buffer from scratch, we also have to resetIngo Schwarze2018-08-012-3/+8
| | | | | | the parse point to the beginning of the new buffer or we risk out of bounds accesses. Bug found by Leah Neukirchen <leah at vuxu dot org> with valgrind on Void Linux.
* Avoid a read access one byte beyond the end of an allocated stringIngo Schwarze2018-08-012-5/+5
| | | | | which occurred in situations like ".Fl a Cm --"; found by Leah Neukirchen <leah at vuxu dot org> with valgrind on Void Linux.
* more 1.14.4 release preparations:Ingo Schwarze2018-07-316-67/+113
| | | | | | autodetect whether the compiler can use -W and -static, clearer output from ./configure, and adjust some configuration instructions
* makewhatis -p complains about language subdirectoriesIngo Schwarze2018-07-311-1/+5
|
* html.c now uses ohash, and new file compat_strndup.cIngo Schwarze2018-07-311-1/+2
|
* first steps toward the 1.14.4 releaseIngo Schwarze2018-07-313-11/+84
|
* Issue a STYLE message when normalizing the date format in .Dd/.TH.Ingo Schwarze2018-07-285-14/+29
| | | | | | | | Leah Neukirchen pointed out that mdoclint(1) used to warn about a leading zero before the day number, so we know that both NetBSD and Void Linux want the message. It does no harm on OpenBSD because Mdocdate always does the right thing anyway. jmc@ agrees that it makes sense in contexts not using Mdocdate.
* remove two entries that were doneIngo Schwarze2018-07-281-11/+3
|
* garbage collect the unused "#define INDENT"Ingo Schwarze2018-07-272-6/+2
|
* Remove more redundant element selectors where the class selectorIngo Schwarze2018-07-231-37/+37
| | | | | is already sufficient. John Gardner tells me that "CSS selectors should only contain what's necessary to target their subjects".
* replace the last instances of ex units by em;Ingo Schwarze2018-07-231-6/+6
| | | | recommended by John Gardner <gardnerjohng at gmail dot com>
* new todos, mostly from Pali Rohar, mostly tbl(7)Ingo Schwarze2018-07-161-1/+19
|
* Delete substantial amounts of codeIngo Schwarze2018-06-255-180/+27
| | | | now that we no longer use variable style= attributes.
* Get rid of the last explicit length in HTML style= attributes.Ingo Schwarze2018-06-251-13/+3
| | | | | | | | | Even though style=height is not particularly harmful for responsive design except for very large arguments which don't really occur in practice, it is not useful either: nobody should use .sp in manual pages, in particular not with an argument. Even if somebody does, ignoring the argument will likely make the output look better rather than worse. Consequently, simplify by dropping a useless feature.
* Delete support for style=margin-left attributes, which are no longer used.Ingo Schwarze2018-06-252-21/+4
|
* Drop explicit, constant style=margin-left attribute on .Bf blocks.Ingo Schwarze2018-06-251-2/+2
| | | | Since <div> uses HTML_NLAROUND, it is no longer needed.
* Delete support for style=width attributes, which are no longer used.Ingo Schwarze2018-06-252-66/+2
|
* Do not write <colgroup> elements. Their only purpose is to enforceIngo Schwarze2018-06-254-38/+5
| | | | | | author-specified column widths, which can harm responsive design and provide no real benefit: HTML rendering engines usually do just fine automatically selecting appropriate column widths.
* Ignore author-specified indentation for .RS; it harms responsiveIngo Schwarze2018-06-251-21/+3
| | | | | design. Use the existing @media-dependent indent instead. This removes the last style= attribute from man(7) output.
* Delete support for the style=text-indent attribute, which is no longer used.Ingo Schwarze2018-06-252-10/+3
|
* For -man -Thtml, ignore author-specified .HP widths because theyIngo Schwarze2018-06-252-17/+11
| | | | harm responsive design; use @media-dependent defaults instead.
* Revert previous: style=height is still used by roff_html.c, and itIngo Schwarze2018-06-181-1/+4
| | | | | doesn't actually harm responsive design, so keep it for now. Bug reported in de.comp.os.unix.bsd via naddy@, thanks.
* delete support for the HTML style=height property, which is no longer usedIngo Schwarze2018-06-102-10/+3
|
* In HTML output, for lists that have an -indent argument, just useIngo Schwarze2018-06-102-20/+13
| | | | | | | | | | | | | a uniform indentation in CSS adapted to the viewport width and ignore the value of the argument taken from mdoc(7). While author-specified widths somewhat work as a micro-optimization in terminal and typeset output, they are nothing but harmful in HTML style= attributes because they break responsive design, whereas using a reasonable default indent almost never results in ugly output. Admittedly, the author-specified width might occasionally look even better, but only slightly so, and only for some viewport sizes. Based on guidance provided by John Gardner.
* When formatting man(7) documents that do not contain .SH macrosIngo Schwarze2018-06-101-1/+13
| | | | | with -Tps or -Tpdf, do not squeeze the whole text beyond the right margin. Bug reported by Will Backman during BSDCan.
* Remove redundant value= attributes from option elements,Ingo Schwarze2018-05-291-8/+6
| | | | | | and use type=search rather than type=text for the input element because it tends to better support autocompletion. Both suggested by John Gardner <gardnerjohng at gmail dot com>.
* Delete support for the print_otag(sw) * and - modifiers,Ingo Schwarze2018-05-292-24/+5
| | | | which are no longer used because we write fewer style= attributes.
* Ignore author-specified -width arguments for -tag and -hang listsIngo Schwarze2018-05-291-7/+6
| | | | | | | | | | | | | | | in HTML output. For terminal and typeset output, such arguments kind of work to achieve presentational micro-optimization. But for HTML, they only do harm. Large increases usually look ugly. Large reductions are impossible since the default is not large in the first place. Small tweaks in either direction are not important; at least not important enough to justify making responsive design impossible. Triggered by John Gardner's suggestion to further reduce style= attributes in the HTML code, in particular those containing hard-coded lengths.
* John Gardner tells me that among frontend developers, gratuitous useIngo Schwarze2018-05-281-53/+56
| | | | | | | | | | of double selectors like "element.class" is considered poor style. When doing selection mainly by elements is not appropriate because most elements require several different styles, exclusively selecting by class is less cumbersome, more concise, and more flexible. So drop the elements from the selectors, except where they are required for disambiguation and except where they add clarity due to the presence of child selectors.
* URL-fragment strings can only contain certain characters.Ingo Schwarze2018-05-281-3/+9
| | | | | Fixing HTML syntax violations e.g. in pf.conf(5) and ifconfig(8) reported by Anton Lazarov <lists at wrant dot com>.
* Start with baby steps towards responsive design:Ingo Schwarze2018-05-261-1/+15
| | | | | Use a @media width query to select a set of default indentations. Suggested by John Gardner <gardnerjohng at gmail dot com>.
* Use em units rather than ex units for horizontal lengths.Ingo Schwarze2018-05-261-20/+20
| | | | | | John Gardner and others tell me it produces more predictable results and is generally considered better style. Also use 0em instead of 0ex, in general.
* Do not write duplicate id= attributes, they violate HTML syntax.Ingo Schwarze2018-05-255-36/+60
| | | | | Append suffixes for disambiguation. Issue first reported by Jakub Klinkovsky <j dot l dot k at gmx dot com> (Arch Linux).
* Use <span> for .Ms rather than <b>; discussed with John Gardner.Ingo Schwarze2018-05-213-5/+8
|
* Use <span> for .Ad rather than <i>; also suggested by John Gardner.Ingo Schwarze2018-05-213-6/+7
|
* Use <span> rather than abusing <i> for .Pa;Ingo Schwarze2018-05-213-5/+8
| | | | suggested by John Gardner <gardnerjohng at gmail dot com>.
* various minor improvementsIngo Schwarze2018-05-201-4/+9
|
* Protect against malicious manual pages containing .ll requests withIngo Schwarze2018-05-201-1/+7
| | | | | | | | | | | | | | excessive arguments: apply the same cutoff as for the -O width= command line argument. While here, also place some assertions at strategical places to prevent excessive indentations from being printed in case of bugs. In the past, we had more than one bug that caused mandoc to print effectively infinite output, filling up people's /tmp/ file system, which is not funny. We cannot prevent bugs from crashing the program, but we can at least make filling up the disk less likely. Triggered by a remark from sthen@ on source-changes@.
* In a nutshell, all mobile browsers are broken.Ingo Schwarze2018-05-181-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By default, no matter the physical screen size, they use a fixed viewport width of about 1000px, then scale down the rendered page to make that huge viewport fit on the physical screen. That results in poor rendering for bad websites which assume a large fixed-size viewport (typically requiring zooming in to be able to actually read any text), but in atrocious rendering for good websites that make no assumption about the screen size (unreadably small text in the top left corner, most of the screen empty). A standard way to disable that insane behaviour and just render normally on the actual physical screen size does not exist. The closest thing is the CSS3 Device Adaptation Module Level 1 https://drafts.csswg.org/css-device-adapt/ but https://caniuse.com/#feat=css-deviceadaptation tells me that basically no browser implements it, not even on mobile. The next closest thing is the HTML meta viewport element - even though the problem has nothing to do with HTML and is purely a CSS issue. Standardization is not even planned for that one: * HTML 5.2 mentions it in passing without specifying it: https://www.w3.org/TR/html/document-metadata.html#the-meta-element * The Web Hypertext Application Technology Working Group provides very incomplete information: https://wiki.whatwg.org/wiki/MetaExtensions * CSS3 Device Adaptation Module Level 1 already wants to deprecate it, explaining mostly how to migrate *away* from it to some castle in the sky that no browser implements: https://drafts.csswg.org/css-device-adapt/#viewport-meta While i strongly believe in sticking to well-established standards, in the absence of standards and with atrocious behaviour being universal, there appears to be no alternative to using whatever works. The meta viewport element appears to be the only way to make real-world mobile browsers decently render any HTML page that does not have a fixed-width layout of 1000px. So use it, grudgingly. Originally suggested by xcv at dr dot com. Direction supported by espie@.
* Some broken terminal emulators (e.g. sakura) do the equivalentIngo Schwarze2018-05-141-2/+3
| | | | | | of "stty cols 0". Ignore that insanity rather than setting conf.output.width to an invalid value and embarking on infinite loops. Issue reported by Jesper Wallin <jesper at ifconfig dot se>, thanks!
* Fix a long-standing issue:Ingo Schwarze2018-05-094-20/+21
| | | | | | | | | Some macros (Nd, Oo) can contain blocks but rendered as elements that can only contain phrasing content, resulting in invalid HTML nesting. Switch them to <div>. Also move the related "display: inline" style from the HTML to the CSS. Reminded during a conversation with John Gardner.
* Eliminate the class=It-* attributes.Ingo Schwarze2018-05-085-83/+48
| | | | | Cleaner HTML, more idiomatic CSS, and minus 30 lines of C code. Suggested by John Gardner <gardnerjohng at gmail dot com>.
* Switch the emitted HTML element from <b> to <code> for the fixedIngo Schwarze2018-05-083-21/+43
| | | | | | | | syntax element macros .Nm, .Fl, .Cm, .Ic, .In, .Fd, .Fn, and .Cd. Adjust both the internal and external style sheets such that rendering remains unchanged in typical browsers. Based on feedback from John Gardner <gardnerjohng at gmail dot com>.