diff options
-rw-r--r-- | roff.7 | 18 | ||||
-rw-r--r-- | roff.c | 16 |
2 files changed, 34 insertions, 0 deletions
@@ -90,6 +90,12 @@ The syntax of this macro is the same as that of .Sx \&ig , except that a leading argument must be specified. It is ignored, as are its children. +.Ss \&ds +Define a string. +This macro is intended to have two arguments, +the name of the string to define and its content. +Currently, it is ignored including its arguments, +and the number of arguments is not checked. .Ss \&de1 The syntax of this macro is the same as that of .Sx \&ig , @@ -235,6 +241,18 @@ the subsequent invocation of .Sx \&if will first signify the end of comment, then be invoked as a macro. This behaviour really shouldn't be counted upon. +.Ss \&rm +Remove a request, macro or string. +This macro is intended to have one argument, +the name of the request, macro or string to be undefined. +Currently, it is ignored including its arguments, +and the number of arguments is not checked. +.Ss \&tr +Output character translation. +This macro is intended to have one argument, +consisting of an even number of characters. +Currently, it is ignored including its arguments, +and the number of arguments is not checked. .Sh COMPATIBILITY This section documents compatibility between mandoc and other other troff implementations, at this time limited to GNU troff @@ -38,10 +38,13 @@ enum rofft { ROFF_de, ROFF_dei, ROFF_de1, + ROFF_ds, ROFF_el, ROFF_ie, ROFF_if, ROFF_ig, + ROFF_rm, + ROFF_tr, ROFF_cblock, ROFF_ccond, ROFF_MAX @@ -98,6 +101,7 @@ static enum rofferr roff_ccond(ROFF_ARGS); static enum rofferr roff_cond(ROFF_ARGS); static enum rofferr roff_cond_text(ROFF_ARGS); static enum rofferr roff_cond_sub(ROFF_ARGS); +static enum rofferr roff_line(ROFF_ARGS); const struct roffmac roffs[ROFF_MAX] = { { "am", roff_block, roff_block_text, roff_block_sub, 0 }, @@ -106,10 +110,13 @@ const struct roffmac roffs[ROFF_MAX] = { { "de", roff_block, roff_block_text, roff_block_sub, 0 }, { "dei", roff_block, roff_block_text, roff_block_sub, 0 }, { "de1", roff_block, roff_block_text, roff_block_sub, 0 }, + { "ds", roff_line, NULL, NULL, 0 }, { "el", roff_cond, roff_cond_text, roff_cond_sub, ROFFMAC_STRUCT }, { "ie", roff_cond, roff_cond_text, roff_cond_sub, ROFFMAC_STRUCT }, { "if", roff_cond, roff_cond_text, roff_cond_sub, ROFFMAC_STRUCT }, { "ig", roff_block, roff_block_text, roff_block_sub, 0 }, + { "rm", roff_line, NULL, NULL, 0 }, + { "tr", roff_line, NULL, NULL, 0 }, { ".", roff_cblock, NULL, NULL, 0 }, { "\\}", roff_ccond, NULL, NULL, 0 }, }; @@ -703,3 +710,12 @@ roff_cond(ROFF_ARGS) *offs = pos; return(ROFF_RERUN); } + + +/* ARGSUSED */ +static enum rofferr +roff_line(ROFF_ARGS) +{ + + return(ROFF_IGN); +} |