summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwl <wl>2005-03-18 08:33:19 +0000
committerwl <wl>2005-03-18 08:33:19 +0000
commitd74986fcfa0c193332aa9b77da853b7cb3bef25e (patch)
tree3f7290dd0714a271121c79a4e26c345ea8901395
parent7afb9fb537b0c49e912f6837fc7abab64cf4e551 (diff)
downloadgroff-d74986fcfa0c193332aa9b77da853b7cb3bef25e.tar.gz
Add numbered and definition lists to www.tmac.
* tmac/www.tmac (www-ul-level1, www-ul-level2, www-ul-level3, www-ol-level1, www-ol-level2, www-ol-level3, www-ol-tmp): New auxiliary string registers. (www-ul-level, www-ol-level, www-dl-level, www-ol-ctr1, www-ol-ctr2, www-ol-ctr3, www-dl-shift): New auxiliary number registers. (www-level): Removed. (www-level1, www-level2, www-level3): Initialize to empty. (www-level0, www-level4, www-level5, www-level6, www-level7, www-level8, www-level9): New string registers. (www-push-li, www-pop-li): New macros. (www-push-level, www-pop-level): Renamed to... (www-push-ul-level, www-pop-ul-level): This. Updated. (www-push-ol-level, www-pop-ol-level): New macros. (ULS, ULE): Updated. (OLS, OLE, DLS, DLE): New user macros. (LI): Removed. It is aliased to one of... (www-li-ul, www-li-ol, www-li-dl): New macros. * tmac/groff_www.man: Document new macros. * NEWS: Updated.
-rw-r--r--ChangeLog29
-rw-r--r--NEWS4
-rw-r--r--tmac/groff_www.man4
-rw-r--r--tmac/www.tmac202
4 files changed, 212 insertions, 27 deletions
diff --git a/ChangeLog b/ChangeLog
index 530c1598..271a241d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,31 @@
-2005-03-17 Werner LEMBERG <wl@gnu.org>
+2005-03-18 Larry Kollar <kollar@alltel.net>
+
+ Add numbered and definition lists to www.tmac.
+
+ * tmac/www.tmac (www-ul-level1, www-ul-level2, www-ul-level3,
+ www-ol-level1, www-ol-level2, www-ol-level3, www-ol-tmp): New
+ auxiliary string registers.
+ (www-ul-level, www-ol-level, www-dl-level, www-ol-ctr1, www-ol-ctr2,
+ www-ol-ctr3, www-dl-shift): New auxiliary number registers.
+ (www-level): Removed.
+ (www-level1, www-level2, www-level3): Initialize to empty.
+ (www-level0, www-level4, www-level5, www-level6, www-level7,
+ www-level8, www-level9): New string registers.
+ (www-push-li, www-pop-li): New macros.
+ (www-push-level, www-pop-level): Renamed to...
+ (www-push-ul-level, www-pop-ul-level): This.
+ Updated.
+ (www-push-ol-level, www-pop-ol-level): New macros.
+ (ULS, ULE): Updated.
+ (OLS, OLE, DLS, DLE): New user macros.
+ (LI): Removed. It is aliased to one of...
+ (www-li-ul, www-li-ol, www-li-dl): New macros.
+
+ * tmac/groff_www.man: Document new macros.
+
+ * NEWS: Updated.
+
+2005-03-18 Werner LEMBERG <wl@gnu.org>
* tmac/doc-common (doc-operating-system-NetBSD-2.0.1,
doc-operating-system-NetBSD-2.0.2): New strings.
diff --git a/NEWS b/NEWS
index 4cef9529..2e3f08ee 100644
--- a/NEWS
+++ b/NEWS
@@ -152,6 +152,10 @@ o www.tmac
A new macro `HEAD' has been added to directly add data to the
<head>...</head> block.
+ New macros `OLS' and `OLE' to start and end an ordered list.
+
+ New macros `DLS' and `DLE' to start and end a definition list.
+
Pdfmark
-------
diff --git a/tmac/groff_www.man b/tmac/groff_www.man
index 4601b7af..68a7ff19 100644
--- a/tmac/groff_www.man
+++ b/tmac/groff_www.man
@@ -87,6 +87,10 @@ Here is a summary of the functions found in this macro set.
\&.HEAD add data to <head> block
\&.ULS unorder list begin
\&.ULE unorder list end
+\&.OLS ordered list begin
+\&.OLE ordered list end
+\&.DLS definition list begin
+\&.DLE definition list end
\&.LI insert a list item
\&.DC generate a drop capital
\&.HTML pass an html raw request to the
diff --git a/tmac/www.tmac b/tmac/www.tmac
index 8fa1b9bd..c0b6ed02 100644
--- a/tmac/www.tmac
+++ b/tmac/www.tmac
@@ -786,43 +786,101 @@ www functionality. It should work with any macro set.
..
.
.\" --------------------------------------------------------------------
-.\" auxiliary definitions for ULS / ULE
+.\" auxiliary definitions for lists
+.\"
+.ds www-ul-level1 \[bu]\ \ \"
+.ds www-ul-level2 \[sq]\ \ \"
+.ds www-ul-level3 \[ci]\ \ \"
+.nr www-ul-level 0
+.
+.ds www-ol-level1 decimal\"
+.ds www-ol-level2 lower-alpha\"
+.ds www-ol-level3 lower-roman\"
+.ds www-ol-tmp 00\ \ \"
+.nr www-ol-ctr1 0 1
+.nr www-ol-ctr2 0 1
+.nr www-ol-ctr3 0 1
+.af www-ol-ctr2 a
+.af www-ol-ctr3 i
+.nr www-ol-level 0
+.
+.nr www-dl-level 0
+.nr www-dl-shift 5n
+.
+.\"
+.\" allow nested lists
.\"
-.ds www-level1 \[bu]\ \ \"
-.ds www-level2 \[sq]\ \ \"
-.ds www-level3 \[ci]\ \ \"
-.nr www-level 0
.nr www-depth 0
+.nr www-li-indent \n[.i]
+.ds www-level0 nop\"
+.ds www-level1
+.ds www-level2
+.ds www-level3
+.ds www-level4
+.ds www-level5
+.ds www-level6
+.ds www-level7
+.ds www-level8
+.ds www-level9
+.
+.\" which macro to use for LI
+.de www-push-li
+. nr www-depth +1
+. ds www-level\\n[www-depth] \\$1\"
+. als LI \\$1
+..
+.
+.de www-pop-li
+. nr www-depth -1
+. als LI \\*[www-level\\n[www-depth]]
+..
.
.\"
.\" Auxiliary macro for ULS.
.\"
-.de www-push-level
-. nr www-level +1
-. if (\\n[www-level] > 3) \
-. www-error "too many levels of indentation (\\n[www-level])"
+.de www-push-ul-level
+. nr www-ul-level +1
+. if (\\n[www-ul-level] > 3) \
+. www-error "ULS: too many levels of indentation (\\n[www-ul-level])"
..
.\"
.\" Auxiliary macro for ULE.
.\"
-.de www-pop-level
-. if !\\n[www-level] \
-. www-error "trying to terminate a list which does not exist"
-. nr www-level -1
+.de www-pop-ul-level
+. if !\\n[www-ul-level] \
+. www-error "ULE: trying to terminate a list which does not exist"
+. nr www-ul-level -1
..
+.
+.\"
+.\" Auxiliary macro for OLS.
+.\"
+.de www-push-ol-level
+. nr www-ol-level +1
+. if (\\n[www-ol-level] > 3) \
+. www-error "OLS: too many levels of indentation (\\n[www-ol-level])"
+..
+.\"
+.\" Auxiliary macro for OLE.
+.\"
+.de www-pop-ol-level
+. if !\\n[www-ol-level] \
+. www-error "OLE: trying to terminate a list which does not exist"
+. nr www-ol-level -1
+..
+.
.\" --------------------------------------------------------------------
.\" ULS
.\"
.\" Start an unordered list.
.\"
.de ULS
-. www-push-level
+. www-push-li www-li-ul
+. www-push-ul-level
. ie \\n[www-html] \
. HTML</p> "<ul>"
. el \{\
-. if (\\n[www-level] == 1) \
-. nr www-depth \\n[.i]
-. nr www-depth +\w'\\*[www-level\\n[www-level]]'u
+. nr www-li-indent +\w'\\*[www-ul-level\\n[www-ul-level]]'u
. \}
..
.\" --------------------------------------------------------------------
@@ -832,26 +890,118 @@ www functionality. It should work with any macro set.
.\"
.de ULE
. ie \\n[www-html] \
-. HTML</p> "</ul>"
+. HTML "</ul>"
+. el \{\
+. nr www-li-indent -\w'\\*[www-ul-level\\n[www-ul-level]]'u
+. in \\n[www-li-indent]u
+. \}
+. www-pop-ul-level
+. www-pop-li
+..
+.\" --------------------------------------------------------------------
+.\" OLS
+.\"
+.\" Start an ordered list.
+.\"
+.de OLS
+. www-push-li www-li-ol
+. www-push-ol-level
+. ie \\n[www-html] \
+. HTML</p> "<ol style='list-style-type: \\*[www-ol-level\\n[www-ol-level]]'>"
+. el \
+. nr www-li-indent +\w'\\*[www-ol-tmp]'u
+..
+.\" --------------------------------------------------------------------
+.\" OLE
+.\"
+.\" End an ordered list.
+.\"
+.de OLE
+. ie \\n[www-html] \
+. HTML "</ol>"
+. el \{\
+. nr www-li-indent -\w'\\*[www-ol-tmp]'u
+. in \\n[www-li-indent]u
+. nr www-ol-ctr\\n[www-ol-level] 0 1
+. \}
+. www-pop-ol-level
+. www-pop-li
+..
+.\" --------------------------------------------------------------------
+.\"
+.\" DLS
+.\" Start a definition list.
+.\"
+.de DLS
+. www-push-li www-li-dl
+. nr www-dl-level +1
+. ie \\n[www-html] \
+. HTML</p> "<dl>"
+. el \{\
+. nr www-li-indent +\\n[www-dl-shift]u
+. in \\n[www-li-indent]u
+. \}
+..
+.\" --------------------------------------------------------------------
+.\"
+.\" DLE
+.\" End a definition list.
+.\"
+.de DLE
+. ie \\n[www-html] \
+. HTML "</dl>"
. el \{\
-. nr www-depth -\w'\\*[www-level\\n[www-level]]'u
-. in \\n[www-depth]u
+. nr www-li-indent -\\n[www-dl-shift]u
+. in \\n[www-li-indent]u
. \}
-. www-pop-level
+. nr www-dl-level -1
+. www-pop-li
..
.\" --------------------------------------------------------------------
.\" LI
.\"
.\" Insert a list item.
.\"
-.de LI
+.\" ********
+.\" www-li-ul - bulleted list item
+.\"
+.de www-li-ul
+. ie \\n[www-html] \
+. HTML-NS "<li>"
+. el \{\
+. www:paraspace
+. in \\n[www-li-indent]u
+. ti -\w'\\*[www-ul-level\\n[www-ul-level]]'u
+. nop \\*[www-ul-level\\n[www-ul-level]]\c
+. \}
+..
+.\" ********
+.\" www-li-ol - numbered list item
+.\"
+.de www-li-ol
. ie \\n[www-html] \
-. HTML</p> "<li>"
+. HTML-NS "<li>"
+. el \{\
+. www:paraspace
+. in \\n[www-li-indent]u
+. ti -\w'\\n[www-ol-ctr\\n[www-ol-level]]\ \ 'u
+. nop \\n+[www-ol-ctr\\n[www-ol-level]]\ \ \c
+. \}
+..
+.\" ********
+.\" www-li-dl - definition list item
+.\"
+.de www-li-dl
+. ie \\n[www-html] \{\
+. HTML "<dt>\\$1</dt>"
+. HTML-NS "<dd>"
+. \}
. el \{\
. www:paraspace
-. in \\n[www-depth]u
-. ti -\w'\\*[www-level\\n[www-level]]'u
-. nop \\*[www-level\\n[www-level]]\c
+. in \\n[www-li-indent]u
+. ti -\\n[www-dl-shift]u
+. nop \&\\$1
+. br
. \}
..
.\" --------------------------------------------------------------------