Things like ".ft C" appear in the displayed manpages, but they are not part of the content of the manpages, just some technical codes left there erroneously: $ man git-fetch | fgrep -1 .ft .ft C [url "<actual url base>"] insteadOf = <other url base> .ft -- .ft C [url "git://git.host.xz/"] -- insteadOf = work: .ft -- .ft C [remote "<name>"] -- fetch = <refspec> .ft -- .ft C URL: one of the above URL format -- .ft -- .ft C <url>#<head> .ft -- .ft C refs/heads/<head>:<repository> .ft $ rpm -q man git-doc man-1.6f-alt1 git-doc-1.5.6.5-alt2 $
В коде этой страницы написано следующее: \&.ft C [url "git://git\&.host\&.xz/"] insteadOf = host\&.xz:/path/to/ insteadOf = work: \&.ft Цитирую groff(7): \& Non-printable, zero-width glyph. Именно он мешает исполнению .ft . Мне кажется это ошибка в этой странице.
Reassign
Это результат работы asciidoc.
commit 281a53bb79786a6d7e54f9715cc8ad46fc2bdb0e Author: Julian Phillips <julian@quantumfyre.co.uk> Date: Wed Jul 18 22:33:57 2007 +0100 Force listingblocks to be monospaced in manpages For the html output we can use a stylesheet to make sure that the listingblocks are presented in a monospaced font. For the manpages do it manually by inserting a ".ft C" before and ".ft" after the block in question. In order for these roff commands to get through to the manpage they have to be element encoded to prevent quoting. commit 7f55cf451c9e7c35cad2efcd0bb7bbd7c7ae29ac Author: Jonas Fonseca <fonseca@diku.dk> Date: Wed Nov 14 10:38:46 2007 +0100 Documentation: Fix man page breakage with DocBook XSL v1.72 From version 1.72 it will replace all dots in roff requests with U+2302 ("house" character), and add escaping in output for all instances of dot that are not in roff requests. This caused the ".ft" hack forcing monospace font in listingblocks to end up as "\&.ft" and being visible in the resulting man page. The fix adds a DOCBOOK_XSL_172 build variable that will disable the hack. To allow this variable to be defined in config.mak it also moves build variable handling below the inclusion of config.mak.
(In reply to comment #4) > commit 281a53bb79786a6d7e54f9715cc8ad46fc2bdb0e Same problem in git-core-1.6.0.2-alt1.
Problem? It suggests to define DOCBOOK_XSL_172 during build, if we are using docbook-style-xsl >= 1.72.
(In reply to comment #6) > Problem? It suggests to define DOCBOOK_XSL_172 during build, if we are using docbook-style-xsl >= 1.72. Thank you for the hint.
*** Bug 19972 has been marked as a duplicate of this bug. ***
В Documentation/asciidoc.conf есть такое: ifndef::docbook-xsl-172[] # "unbreak" docbook-xsl v1.68 for manpages. v1.69 works with or without this. # v1.72 breaks with this because it replaces dots not in roff requests. [listingblock] <example><title>{title}</title> <literallayout> ifdef::doctype-manpage[] .ft C endif::doctype-manpage[] | ifdef::doctype-manpage[] .ft endif::doctype-manpage[] </literallayout> {title#}</example> endif::docbook-xsl-172[] Для dockbook-styles-xsl 1.73+, думаю, это уже неактуально, потому как man получается нормальный (см. напр. man -t и получившийся постскрипт, моноспейсом на сером фоне).
В новом git это чинится опцией ASCIIDOC_NO_ROFF. http://git.kernel.org/?p=git/git.git;a=commitdiff;h=8fa2b45f
git-1.6.3.1-alt1 -> sisyphus: * Thu May 14 2009 Dmitry V. Levin <ldv@altlinux> 1.6.3.1-alt1 - Updated to maint v1.6.3.1. - Fixed build of documentation with fresh asciidoc and docbook xsl (closes: #17003).