summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Nevins <jacobn@chiark.greenend.org.uk>2009-09-06 12:59:33 +0000
committerJacob Nevins <jacobn@chiark.greenend.org.uk>2009-09-06 12:59:33 +0000
commitc336fe89f0c6122ccbc7e5dd607f4ec6b3bd8853 (patch)
tree33dfd0f66ca47fcb60f07a6a9ba64b23b47f4b29
parentee67e0f06cb8dad155938767d7b8ec0438932871 (diff)
downloadhalibut-c336fe89f0c6122ccbc7e5dd607f4ec6b3bd8853.zip
halibut-c336fe89f0c6122ccbc7e5dd607f4ec6b3bd8853.tar.gz
halibut-c336fe89f0c6122ccbc7e5dd607f4ec6b3bd8853.tar.bz2
halibut-c336fe89f0c6122ccbc7e5dd607f4ec6b3bd8853.tar.xz
More portable attempt to get a literal U+0027 than r8321, pinched from pod2man
(via Colin in Debian bug#496063). [originally from svn r8640] [r8321 == 5e7a3a5b1bbaccb7ce7d61bb9bc4654924135dfb]
-rw-r--r--bk_man.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/bk_man.c b/bk_man.c
index 1433dfd..92d7c3a 100644
--- a/bk_man.c
+++ b/bk_man.c
@@ -248,6 +248,12 @@ void man_backend(paragraph *sourceform, keywordlist *keywords,
man_text(fp, p->words, TRUE, 0, &conf);
}
+ /* Standard preamble */
+ /* Dodge to try to get literal U+0027 in output when required,
+ * bypassing groff's Unicode transform; pinched from pod2man */
+ fprintf(fp, ".ie \\n(.g .ds Aq \\(aq\n"
+ ".el .ds Aq '\n");
+
/* .TH name-of-program manual-section */
fprintf(fp, ".TH");
if (conf.th && *conf.th) {
@@ -489,8 +495,9 @@ static int man_convert(wchar_t const *s, int maxlen,
rdaddsc(&out, "\\(hy");
continue;
} else if (*q == '\'' && (quote_props & QUOTE_LITERAL)) {
- /* Try to preserve literal U+0027 */
- rdaddsc(&out, "\\(aq"); /* "apostrophe quote" */
+ /* Try to preserve literal U+0027 (using string defined
+ * in preamble) */
+ rdaddsc(&out, "\\*(Aq"); /* "apostrophe quote" */
continue;
} else if (*q == '"' && (quote_props & QUOTE_QUOTES)) {
/*