summaryrefslogtreecommitdiff
path: root/bk_text.c
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2004-03-25 18:32:05 +0000
committerSimon Tatham <anakin@pobox.com>2004-03-25 18:32:05 +0000
commit2c5767ab6e1ea37c190be1da007cc015a5d3a7ed (patch)
tree04b7e27edba17f8a954439376e444d1925676b38 /bk_text.c
parente5650a35b3ee30edc4288fba5c1e21cc29247fdc (diff)
downloadhalibut-2c5767ab6e1ea37c190be1da007cc015a5d3a7ed.zip
halibut-2c5767ab6e1ea37c190be1da007cc015a5d3a7ed.tar.gz
halibut-2c5767ab6e1ea37c190be1da007cc015a5d3a7ed.tar.bz2
halibut-2c5767ab6e1ea37c190be1da007cc015a5d3a7ed.tar.xz
Add a \quote{...} directive, working like <blockquote> in HTML.
[originally from svn r3978]
Diffstat (limited to 'bk_text.c')
-rw-r--r--bk_text.c25
1 files changed, 16 insertions, 9 deletions
diff --git a/bk_text.c b/bk_text.c
index 989cdbf..139e1d6 100644
--- a/bk_text.c
+++ b/bk_text.c
@@ -226,12 +226,20 @@ void text_backend(paragraph *sourceform, keywordlist *keywords,
/* Do the main document */
for (p = sourceform; p; p = p->next) switch (p->type) {
+ case para_QuotePush:
+ nesting += 2;
+ break;
+ case para_QuotePop:
+ nesting -= 2;
+ assert(nesting >= 0);
+ break;
+
case para_LcontPush:
- nesting++;
+ nesting += nestindent;
break;
case para_LcontPop:
- assert(nesting > 0);
- nesting--;
+ nesting -= nestindent;
+ assert(nesting >= 0);
break;
/*
@@ -266,8 +274,7 @@ void text_backend(paragraph *sourceform, keywordlist *keywords,
break;
case para_Rule:
- text_rule(fp, conf.indent + nestindent*nesting,
- conf.width - nestindent*nesting);
+ text_rule(fp, conf.indent + nesting, conf.width - nesting);
break;
case para_Normal:
@@ -309,8 +316,8 @@ void text_backend(paragraph *sourceform, keywordlist *keywords,
body = p->words;
}
text_para(fp, prefix, prefixextra, body,
- conf.indent + nestindent*nesting + indentb, indenta,
- conf.width - nestindent*nesting - indentb - indenta);
+ conf.indent + nesting + indentb, indenta,
+ conf.width - nesting - indentb - indenta);
if (wp) {
wp->next = NULL;
free_word_list(body);
@@ -319,8 +326,8 @@ void text_backend(paragraph *sourceform, keywordlist *keywords,
case para_Code:
text_codepara(fp, p->words,
- conf.indent + nestindent*nesting + conf.indent_code,
- conf.width - nestindent*nesting - 2 * conf.indent_code);
+ conf.indent + nesting + conf.indent_code,
+ conf.width - nesting - 2 * conf.indent_code);
break;
}