summaryrefslogtreecommitdiffstats
path: root/tools/tcltk-man2html.tcl
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2011-09-22 14:05:16 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2011-09-22 14:05:16 (GMT)
commitf1367943a944acec1363cae14f2dd5a6f261f8f9 (patch)
treee9d09c4d108b160a19fe134fb72a9ab235834c1e /tools/tcltk-man2html.tcl
parent163bd8d39b867eb56b871da18aac105c20e5c0d7 (diff)
downloadtcl-f1367943a944acec1363cae14f2dd5a6f261f8f9.zip
tcl-f1367943a944acec1363cae14f2dd5a6f261f8f9.tar.gz
tcl-f1367943a944acec1363cae14f2dd5a6f261f8f9.tar.bz2
[Bug 2903743]: Try to do the right thing when presented with old-style nroff.
Diffstat (limited to 'tools/tcltk-man2html.tcl')
-rwxr-xr-xtools/tcltk-man2html.tcl30
1 files changed, 16 insertions, 14 deletions
diff --git a/tools/tcltk-man2html.tcl b/tools/tcltk-man2html.tcl
index b347abf..e4845a6 100755
--- a/tools/tcltk-man2html.tcl
+++ b/tools/tcltk-man2html.tcl
@@ -360,7 +360,7 @@ proc make-man-pages {html args} {
continue
}
switch -exact -- $code {
- .if - .nr - .ti - .in -
+ .if - .nr - .ti - .in - .ie - .el -
.ad - .na - .so - .ne - .AS - .VE - .VS - . {
# ignore
continue
@@ -379,21 +379,22 @@ proc make-man-pages {html args} {
lappend manual(text) "$code [unquote $rest]"
}
.QW {
- set rest [regexp -all -inline {\"(?:[^""]+)\"|\S+} $rest]
- addbuffer $LQ [unquote [lindex $rest 0]] $RQ \
- [unquote [lindex $rest 1]]
+ lassign [regexp -all -inline {\"(?:[^""]+)\"|\S+} $rest] \
+ inQuote afterwards
+ addbuffer $LQ [unquote $inQuote] $RQ [unquote $afterwards]
}
.PQ {
- set rest [regexp -all -inline {\"(?:[^""]+)\"|\S+} $rest]
- addbuffer ( $LQ [unquote [lindex $rest 0]] $RQ \
- [unquote [lindex $rest 1]] ) \
- [unquote [lindex $rest 2]]
+ lassign [regexp -all -inline {\"(?:[^""]+)\"|\S+} $rest] \
+ inQuote punctuation afterwards
+ addbuffer ( $LQ [unquote $inQuote] $RQ \
+ [unquote $punctuation] ) \
+ [unquote $afterwards]
}
.QR {
- set rest [regexp -all -inline {\"(?:[^""]+)\"|\S+} $rest]
- addbuffer $LQ [unquote [lindex $rest 0]] - \
- [unquote [lindex $rest 1]] $RQ \
- [unquote [lindex $rest 2]]
+ lassign [regexp -all -inline {\"(?:[^""]+)\"|\S+} $rest] \
+ rangeFrom rangeTo afterwards
+ addbuffer $LQ [unquote $rangeFrom] "&ndash;" \
+ [unquote $rangeTo] $RQ [unquote $afterwards]
}
.MT {
addbuffer $LQ$RQ
@@ -404,7 +405,7 @@ proc make-man-pages {html args} {
}
.BS - .BE - .br - .fi - .sp - .nf {
flushbuffer
- if {"$rest" ne {}} {
+ if {$rest ne ""} {
if {!$verbose} {
puts stderr ""
}
@@ -435,8 +436,9 @@ proc make-man-pages {html args} {
}
.OP {
flushbuffer
+ lassign $rest cmdName dbName dbClass
lappend manual(text) [concat .OP [process-text \
- "\\fB[lindex $rest 0]\\fR \\fB[lindex $rest 1]\\fR \\fB[lindex $rest 2]\\fR"]]
+ "\\fB$cmdName\\fR \\fB$dbName\\fR \\fB$dbClass\\fR"]]
}
.PP - .LP {
flushbuffer