Commit Graph

449 Commits

Author SHA1 Message Date
Daniel James
5f5c526ea3 Quickbook: Better table titles.
[SVN r75445]
2011-11-10 18:16:37 +00:00
Daniel James
952b3b6550 Quickbook: Support version info outside of document info blocks.
[SVN r75442]
2011-11-10 18:15:49 +00:00
Daniel James
34c053f833 Quickbook: Parse version as for any other docinfo attribute.
[SVN r75441]
2011-11-10 18:15:30 +00:00
Daniel James
0e7874bfb6 Quickbook: Fix some tests.
I use compatibility mode to decide whether to link headers to
themselves. I'm not sure about that.

[SVN r75437]
2011-11-10 18:14:08 +00:00
Daniel James
1e3a88f440 Quickbook: Support escapes in links, anchors, images, includes, imports and exports.
[SVN r75360]
2011-11-06 22:22:42 +00:00
Daniel James
1531b4f348 Quickbook: Move more phrase parsing into local.common.
This change has two side effects: anchors are placed slightly better and
non-element/template square brackets are terminated by the end of a
paragraph.

[SVN r75357]
2011-11-06 22:21:32 +00:00
Daniel James
febcb14e01 Quickbook: Some anchor placement tests.
[SVN r75356]
2011-11-06 22:21:17 +00:00
Daniel James
b9f3b68580 Quickbook: No point in using hard_space here.
The difference between `hard_space` and `space` is that `hard_space`
won't have a zero-width match in certain places. But in the `-` part of
a classic spirit rule, zero-width matches don't count so there's
effectively no difference.

[SVN r75354]
2011-11-06 22:20:44 +00:00
Daniel James
e48ed3afe7 Quickbook: xmlbase docinfo attributes.
Useful for escaped `xi:include`.

(does this break horribly if it's given an absolute path?).

[SVN r75352]
2011-11-06 22:20:14 +00:00
Daniel James
4e411e96ce Quickbook: Better punctuation support for various elements.
[SVN r75351]
2011-11-06 22:19:53 +00:00
Daniel James
cdcd5349f6 Quickbook: Better parser for hr.
The old version had issues with multi-line comments.

[SVN r75350]
2011-11-06 22:19:25 +00:00
Daniel James
1058b13396 Quickbook: Compatibility mode to make upgrading easier.
[SVN r75347]
2011-11-06 22:18:32 +00:00
Daniel James
a2fe7199c9 Quickbook: Better encoded template support.
- Detect encoded templates in `call_template` so they're handled if
  anything calls it or `call_code_snippet` directly.
- Handle any paragraphs that comebefore a encoded block template.
- Escaped templates should always be inline, it isn't block content.
- Try to support escaped encoded templates. It's a bit of a weird case
  so I wasn't sure what to do. Just wrote out the boostbook in a phrase
  which seems the best option.
- Escapes now override the template type. This should happen as the user
  explictly asks for an escaped template.

[SVN r75270]
2011-11-02 08:52:05 +00:00
Daniel James
af4ea5b066 Quickbook: Deal with blocks following anchors.
Turn anchors into a special type of element that can either be a block
or a phrase, so that when immediately followed by block content, the
parser will do the right thing.

`xinclude` and conditional phrases might need similar treatment,
although they're trickier.

[SVN r75269]
2011-11-02 08:51:41 +00:00
Daniel James
1aede8bf77 Quickbook: Make windows paths an error in 1.6
[SVN r75267]
2011-11-02 08:50:53 +00:00
Daniel James
0ee79fe849 Quickbook: Move escaped phrase handling to the main grammar.
Note there's no need to check for the end of the escapse as the
intersection (`&`) rule only passes the content within the esapse.

[SVN r75264]
2011-11-02 08:49:33 +00:00
Daniel James
5be4962caf Quickbook: Fix issue with mixed version templates.
If a 1.5 template called a 1.4 template, its parent would be its
'dynamic' parent (the 1.5 template), whose parent would be its lexical
parent - breaking the dynamic lookup. I've changed it so that when
using a dynamic lookup, 1.5+ templates are skipped over. That means
they can use whatever variable names they wish without issues.

It does mean that if a 1.4- template was specifically written to use
dynamic lookup, then it wouldn't be callable from 1.5. So it might
be better if they didn't skip over 1.5+ templates.

Alternatively if might be better to always lexical scoping, even for
older versions, on the assumption that it was a bug.

[SVN r75263]
2011-11-02 08:48:52 +00:00
Daniel James
0f28f2da9c Quickbook: Store template_body as just a value.
[SVN r75261]
2011-11-02 08:47:01 +00:00
Daniel James
3ee432e250 Quickbook: Parse templates using the version they were defined for.
Needs to store the version in the file object, since it's only known
after the file is read in, had to make files non-const. Put some checks
in to make sure this isn't abused but pretty messy.

[SVN r75260]
2011-11-02 08:46:38 +00:00
Daniel James
f627c79f88 Quickbook: Add 'block' element.
[SVN r75259]
2011-11-02 08:46:05 +00:00
Daniel James
2fb0330405 Quickbook: Trim leading underscores in normalized ids.
[SVN r75257]
2011-11-02 07:59:12 +00:00
Daniel James
ea063efe1f Quickbook: role tag for 1.6. Refs #5860.
This implements the markup `[role red Some red text]`. Although I'm not
sure I like it that much. It would be pretty easy to use a template for
the same effect.

This is just the quickbook part of supporting coloured text, to complete
the ticket there needs to be css support for html pages and xsl support
for pdfs.

[SVN r75255]
2011-11-02 07:58:32 +00:00
Daniel James
4dea2a8ad5 Quickbook: Keep files in memory, stop tracking position in iterators.
Files are now permanently loaded. Quickbook substrings are stored as
references into the file. Now positions are stored as iterators into
the original file, the line and column is calculated when messages are
output.

This doesn't have much effect on efficiency but it simplifies a few
things.

[SVN r75253]
2011-11-02 07:57:47 +00:00
Daniel James
3ae7265139 Quickbook: New version of id_manager. Fixes #1221.
This encapsulates more in the id and section handling code. Fixes a few
edge cases and separates implementation of the new and old section
handling code. Always normalizes and truncates generated ids in quickbook
1.6.

[SVN r75251]
2011-11-02 07:49:22 +00:00
Daniel James
3ab3116ee4 Quickbook: Reset section info for nested documents.
So when including a document inside a section, the section's id is not
used. Also cleans up the messy handling of section.min_leveln.

[SVN r75245]
2011-11-02 07:43:03 +00:00
Daniel James
39e3a6e670 Quickbook: Fix including from inside a section.
It's a bit of a crazy edge case which creates invalid docbook in 1.6.

[SVN r75236]
2011-11-01 19:21:36 +00:00
Daniel James
152fe4fa5d Quickbook: Rename and rearrange some tests.
- More consistent names.
- Not using `.` in basename.
- Run the quickbook manual test last (as when there's an error, the more
  specific tests are more informative).
- Combine some of the code tests.

[SVN r75235]
2011-11-01 19:20:46 +00:00
Daniel James
2e7921057b Quickbook: New id include test.
[SVN r75233]
2011-11-01 19:17:22 +00:00
Daniel James
291df92b92 Quickbook: Trim trailing whitespace in code blocks.
[SVN r75224]
2011-11-01 19:00:21 +00:00
Daniel James
3c39fbca2e Quickbook: Clean up whitespace prior to programlisting.
[SVN r75223]
2011-11-01 19:00:02 +00:00
Daniel James
7cfb29d18c Quickbook: Fix a test.
[SVN r75222]
2011-11-01 18:59:39 +00:00
Daniel James
77694a9ce4 Quickbook: Close any open sections at end of document.
[SVN r75220]
2011-11-01 18:59:08 +00:00
Daniel James
7ca05863ad Quickbook: Fully qualify footnote and callout ids.
[SVN r75219]
2011-11-01 18:58:47 +00:00
Daniel James
e88f608707 Quickbook: Heading tests for quickbook 1.1
And make the other consistent.

[SVN r75218]
2011-11-01 18:58:28 +00:00
Daniel James
fb279b6fb2 Quickbook: Remove accidental commit.
[SVN r75215]
2011-11-01 18:57:04 +00:00
Daniel James
4a6dd9e97a Quickbook: Port Rene's sort code inclusion to quickbook-dev.
[SVN r75175]
2011-10-30 09:29:56 +00:00
Daniel James
e2a1114fb3 Quickbook: Trim trailing whitespace in code blocks.
[SVN r74349]
2011-09-11 17:00:18 +00:00
Daniel James
79ed68b360 Quickbook: Clean up whitespace prior to programlisting.
[SVN r74348]
2011-09-11 16:59:36 +00:00
Daniel James
ec22c9d052 Quickbook: Fix a test.
[SVN r74347]
2011-09-11 16:58:45 +00:00
Daniel James
bf0a45d4cb Quickbook: Change the anchor markup for headers.
Use a phrase with an id inside the header.

Using an anchor before the heading was causing problems when the heading
wasn't inside a section.

We can't use an anchor inside the header when it links to itself, as it
messes up getting the title for the link. Using an empty phrase means
that it will just get the empty title for the phrase. Thanks to John
Maddock for the idea.

This does generate slightly odd markup. We could possibly use the old
style markup whenever section depth > 0, since we would know that we're
inside a section, but that seems like an unnecessary complication.

[SVN r74346]
2011-09-11 16:58:14 +00:00
Daniel James
62a69acf85 Quickbook: Close any open sections at end of document.
[SVN r74345]
2011-09-11 16:57:23 +00:00
Daniel James
d59a0ccc3b Quickbook: Fully qualify footnote and callout ids.
[SVN r74344]
2011-09-11 16:56:49 +00:00
Daniel James
8e2707b9d4 Quickbook: Heading tests for quickbook 1.1
[SVN r74209]
2011-09-03 15:52:13 +00:00
Daniel James
418b4ff3f5 Quickbook: Remove accidental commit.
[SVN r74107]
2011-08-28 15:37:32 +00:00
Daniel James
4012b1f753 Quickbook: Merge to quickbook-dev.
[SVN r73983]
2011-08-21 13:27:52 +00:00
Daniel James
2abf117c95 Unordered: Don't 'pass thru' comment if = is repeated.
[SVN r73982]
2011-08-21 13:19:08 +00:00
Daniel James
9cd67492dc Quickbook: Don't normalize parent ids.
[SVN r73981]
2011-08-21 11:57:42 +00:00
Daniel James
4ab9f46757 Quickbook: Prioritize different generated ids.
[SVN r73980]
2011-08-21 11:56:49 +00:00
Daniel James
bd4de66c67 Quickbook: Better id generation for duplicates.
- Replaces repeated underscores with single underscores
- Truncates if they're too long.
- If the result ends with if a number, adds an underscore to separate
  that from the duplicate number.

Only doing this for the duplicate ids, so that the main generated id
doesn't change for existing documentation. Will do something similar for
all generated ids in quickbook 1.6.

[SVN r73974]
2011-08-20 23:35:20 +00:00
Daniel James
9a97c0fe91 Quickbook: Fix C style pass-thru comments.
[SVN r73571]
2011-08-06 12:42:52 +00:00
Daniel James
4ec6f56314 Quickbook: Simplify table a bit more.
Was crashing on darwin 4.0 in release mode.

[SVN r73418]
2011-07-28 22:34:32 +00:00
Daniel James
85fa462ef1 Quickbook: Clean id placeholder replacement.
And fix some bugs.

[SVN r73407]
2011-07-27 23:50:41 +00:00
Daniel James
a2b3c3aa04 Quickbook: Merge from trunk to quickbook-dev.
[SVN r73365]
2011-07-25 21:41:36 +00:00
Daniel James
36e788ec84 Quickbook: Use an id generator to aviod collisions.
[SVN r73337]
2011-07-24 20:40:38 +00:00
Daniel James
143bef8987 Quickbook: Add ids to tables for 1.4-.
[SVN r73263]
2011-07-20 20:28:15 +00:00
Daniel James
9b1eed66f4 Quickbook: Merge from trunk to quickbook-dev.
[SVN r73239]
2011-07-19 07:35:49 +00:00
Daniel James
9b65b96e29 Quickbook: Add id to legalnotice.
[SVN r73223]
2011-07-18 23:49:27 +00:00
Daniel James
a02a3f687b Quickbook: Add ids to footnotes.
[SVN r73222]
2011-07-18 23:48:53 +00:00
Daniel James
09165188f1 Quickbook: merge from trunk to dev.
[SVN r72762]
2011-06-26 11:07:04 +00:00
Daniel James
c72d4029c0 Quickbook: xml encode escaped punctuation.
[SVN r72760]
2011-06-26 10:44:00 +00:00
Daniel James
2f3d468aa6 Quickbook: Change the anchor markup for headers.
Use a phrase with an id inside the header.

Using an anchor before the heading was causing problems when the heading
wasn't inside a section.

We can't use an anchor inside the header when it links to itself, as it
messes up getting the title for the link. Using an empty phrase means
that it will just get the empty title for the phrase. Thanks to John
Maddock for the idea.

This does generate slightly odd markup. We could possibly use the old
style markup whenever section depth > 0, since we would know that we're
inside a section, but that seems like an unnecessary complication.

[SVN r72723]
2011-06-23 17:46:05 +00:00
Daniel James
bf1d753dba Merge tools directory from trunk.
[SVN r72698]
2011-06-20 19:19:56 +00:00
Daniel James
2811b30b7b Quickbook: remove escape character support from simple markup.
It breaks the regex documentation. Will probably implement this for quickbook
1.6.


[SVN r72695]
2011-06-20 18:52:03 +00:00
Daniel James
6d126acb44 Quickbook: Don't use double marks for simple markup.
[SVN r72393]
2011-06-04 16:18:14 +00:00
Daniel James
43486c773a Quickbook: End file with newline.
[SVN r72389]
2011-06-04 16:12:15 +00:00
Daniel James
21436b0415 Quickbook: Nest escapes in syntax highlighted comments.
[SVN r71144]
2011-04-09 11:29:22 +00:00
Daniel James
b403a2434d Quickbook: update tests.
[SVN r71111]
2011-04-08 06:16:00 +00:00
Daniel James
4713c1e211 Quickbook: Escapes in syntax highlighted comments.
Not great since it closes the comments around the escaped code. But to
nest it properly will require a bigger change. Would also be nice to
deal with escape in other contexts - such as strings.

[SVN r71098]
2011-04-08 00:09:59 +00:00
Daniel James
3de8d6b4f3 Quickbook: Don't add whitespace after anchors.
Tends to push anchors to the following word.

[SVN r71088]
2011-04-07 19:51:26 +00:00
Daniel James
0fe014b9ed Quickbook: Detab
[SVN r71087]
2011-04-07 19:50:50 +00:00
Daniel James
40821d55d8 Quickbook: Don't use null node in symbol table.
Since it isn't using a union for the value/middle pointer, there's no
need to have special terminating nodes.

[SVN r71063]
2011-04-07 00:15:38 +00:00
Daniel James
d4344ed435 Quickbook: Remove most of process suppression stuff.
Imports were failing because doc info expected values. The process_state
stuff is too fragile, so instead just process the contents of a
conditional phrase and discard them afterwards. Still suppresses all
elements.

[SVN r71062]
2011-04-06 23:59:24 +00:00
Daniel James
ce96819bb5 Quickbook: Avoid empty simple markups.
[SVN r71061]
2011-04-06 23:59:02 +00:00
Daniel James
d72d923f2e Quickbook: Write out blocks smuggled into phrases.
Pretty clumsy, but it's a dodgy thing to do. Maybe the values could
include whether they're blocks or phrases and actions could react
accordingly.

[SVN r71060]
2011-04-06 23:58:44 +00:00
Daniel James
2553e0e878 Quickbook: If a phrase template turns out to be a block template, treat it as a complete block.
[SVN r71059]
2011-04-06 23:58:25 +00:00
Daniel James
99b81b1fbf Quickbook: Avoid empty simple markups.
[SVN r71057]
2011-04-06 23:42:51 +00:00
Daniel James
d31276a383 Quickbook: Write out blocks smuggled into phrases.
Pretty clumsy, but it's a dodgy thing for the user to do. Maybe the
values could include whether they're blocks or phrases and actions could
react accordingly.

[SVN r71056]
2011-04-06 23:42:31 +00:00
Daniel James
9cb1f04aeb Quickbook: If a phrase template turns out to be a block template, treat it as a complete block.
[SVN r71055]
2011-04-06 23:42:09 +00:00
Daniel James
8bdaab2f37 Quickbook: Detab
[SVN r71014]
2011-04-05 20:06:11 +00:00
Daniel James
d90650a679 Quickbook: In 1.6, override document id with id from include element.
[SVN r71013]
2011-04-05 20:03:18 +00:00
Daniel James
de2fc3754c Quickbook: Overwrite duplicate macros in 1.6
[SVN r70977]
2011-04-04 22:10:45 +00:00
Daniel James
a615a0a6e3 Quickbook: Nested documents in 1.6.
If an included file has a docinfo block, use that docinfo. I'm not
entirely sure if the nested file be treated as if it's completely
standalone - i.e. should macros and templates defined in the parent be
used?

Also, there's some odd behaviour in quickbook if the docinfo block in an
included file has a parse error. It just goes back to the start and
parses as a file without a docinfo block. I think it would be better if
this was a hard error, but what should happen in someone has defined a
template with the same name as a docinfo block? That's actually valid in
existing quickbook, so the dodgy docinfo block might just be a template
call.

[SVN r70963]
2011-04-03 21:15:14 +00:00
Daniel James
85e8c03d70 Quickbook: Include code file in 1.6.
[SVN r70960]
2011-04-03 19:19:07 +00:00
Daniel James
9489385464 Quickbook: Import templates+macros from quickbook file in 1.6
[SVN r70959]
2011-04-03 19:18:38 +00:00
Daniel James
02406bf553 Quickbook: Scope templates in include in 1.6
[SVN r70958]
2011-04-03 19:18:12 +00:00
Daniel James
d53ac4b7e5 Quickbook: Clean up pass_thru tests.
[SVN r70926]
2011-04-03 10:56:56 +00:00
Daniel James
87d71d0633 Quickbook: Alternative tst that's cheaper to copy.
[SVN r70871]
2011-04-02 17:45:09 +00:00
Daniel James
100766d570 Quickbook: New tests. Mostly state tracking.
[SVN r70868]
2011-04-02 17:43:52 +00:00
Daniel James
bbea15be1e Quickbook: Remove accidentally commited test result.
[SVN r70864]
2011-04-02 17:42:37 +00:00
Daniel James
dc47dcbdc9 Quickbook: Don't require newlines at end of grammar.
[SVN r70617]
2011-03-27 10:31:13 +00:00
Daniel James
70a29a9fc3 Quickbook: Another missing copyright.
[SVN r70615]
2011-03-27 10:26:37 +00:00
Daniel James
5d465edfe8 Quickbook: Add missing copyright.
[SVN r70614]
2011-03-27 10:24:56 +00:00
Daniel James
abb793e3b6 Quickbook: Iterator tests. Equality operator for values.
The equality operator is pretty inefficient. Just for testing really.

[SVN r70565]
2011-03-26 11:13:07 +00:00
Daniel James
1c9648e21d Quickbook: Clean up anchor stuff.
[SVN r70564]
2011-03-26 11:12:45 +00:00
Daniel James
352a9ca028 Quickbook: Release lists from list builder.
[SVN r70562]
2011-03-26 11:11:58 +00:00
Daniel James
f6c565eddb Quickbook: explicit list markup. Refs #1193.
[SVN r70232]
2011-03-20 21:46:10 +00:00
Daniel James
86d40a07a9 Quickbook: Rewrite relative path.
- Do the normalization ourselves, so we don't use a deprecated function.
  Refs #2923
- Move more of the logic into `path_difference` and try to make it
  easier to read, because I found it a bit difficult.

[SVN r70231]
2011-03-20 21:41:42 +00:00
Daniel James
85cb554400 Quickbook: use relative paths in errors and __FILENAME__.
This is more consistent than it is at the moment. For the __FILENAME__
macro, use the path relative to the original file or the location last
matched on the include path. This ensures that the macro is consistent
no matter which directory you call quickbook from.

Also enable `__FILENAME__` in debug mode - so I can test this.

[SVN r70230]
2011-03-20 21:41:18 +00:00
Daniel James
345f0a2648 Quickbook: pass-thru comments.
[SVN r70207]
2011-03-19 19:22:45 +00:00
Daniel James
4caec51e26 Quickbook: better anchor placement for lists.
[SVN r70206]
2011-03-19 19:18:51 +00:00
Daniel James
35cae039f4 Quickbook: support escapes in simple markup.
[SVN r70204]
2011-03-19 19:13:38 +00:00
Daniel James
ec6300c841 Quickbook: further improvements for simple markup.
[SVN r70196]
2011-03-19 16:28:49 +00:00
Daniel James
88b61e52b2 Quickbook: clean up the value stuff.
[SVN r70192]
2011-03-19 15:42:08 +00:00
Daniel James
96e19b221a Quickbook: Go back to using invalid markup for lists.
[SVN r70191]
2011-03-19 15:27:51 +00:00
Daniel James
97c2a337ea Quickbook: nestable elements. Refs #1193
[SVN r70189]
2011-03-19 15:19:09 +00:00
Daniel James
3b09b15f55 Quickbook: A couple of hidden flags for testing.
[SVN r70187]
2011-03-19 15:09:54 +00:00
Daniel James
7b35846ec8 Quickbook: Tweak doc info for empty attributes.
Maybe these should fail.


[SVN r70186]
2011-03-19 14:53:10 +00:00
Daniel James
f7c5e244e8 Quickbook: merge further 'value' development.
[SVN r70185]
2011-03-19 14:43:12 +00:00
Daniel James
6758230e52 Quickbook: fix simple markup.
[SVN r70184]
2011-03-19 14:33:47 +00:00
Daniel James
f977003c85 Richer copyright syntax.
[SVN r70178]
2011-03-19 11:58:26 +00:00
Daniel James
de6a388a35 Quickbook: merge 'values' from quickbook-filenames branch.
[SVN r70177]
2011-03-19 11:45:49 +00:00
Daniel James
1ffd3ed233 Quickbook: doc info improvements.
- Fix handling empty category attributes.
- Quickbook 1.6: Scope source mode changes to the file they're made in.



[SVN r70176]
2011-03-19 10:47:02 +00:00
Daniel James
6500170f49 Pass-thru comments.
[SVN r70018]
2011-03-16 09:12:01 +00:00
Daniel James
704e3e7217 Don't require newlines at end of grammars.
[SVN r69888]
2011-03-12 10:08:00 +00:00
Daniel James
7f3980b107 Cherry pick adding ids to bridgeheads.
[SVN r69824]
2011-03-10 18:50:46 +00:00
Daniel James
ffade9f2bb Cherry pick quickbook test improvements.
- Encode the full paths into `quickbook-testing.jam` so it can be used from
  other locations.
- Turn off debug symbols on Visual C++, they cause the build system to do
  something odd to the tests.


[SVN r69823]
2011-03-10 18:41:20 +00:00
Daniel James
fddc8c896c Explicit list markup. Refs #1193
I don't think paragraph markup would be very useful right now, because
it wouldn't be usable in a phrase context.

These can't be templates because templates are implicitly wrapped in
paragraphs.

[SVN r69438]
2011-03-01 09:15:09 +00:00
Daniel James
7983810c39 Better anchor support for lists.
[SVN r69437]
2011-03-01 09:14:28 +00:00
Daniel James
661fd200ae Support escapes in simple markup.
[SVN r69332]
2011-02-27 15:37:47 +00:00
Daniel James
ab5cc3fb0c Make post_process a little less crashy.
[SVN r69318]
2011-02-27 10:09:53 +00:00
Daniel James
c5292a1349 Use a phoenix closure to inline the simple markup parser.
[SVN r69310]
2011-02-26 18:32:31 +00:00
Daniel James
a4b2852551 Fail if boostbook escape isn't closed.
[SVN r69309]
2011-02-26 18:31:58 +00:00
Daniel James
cb26921203 Don't include escaped boostbook or code in simple markup.
[SVN r69308]
2011-02-26 18:31:17 +00:00
Daniel James
e4ddb668de Clean up the value consumer interface.
[SVN r69288]
2011-02-25 23:06:16 +00:00
Daniel James
a86f19d7bf Invalid list markup again.
[SVN r69287]
2011-02-25 23:05:36 +00:00
Daniel James
d245a87966 More nestable elements. Refs #1193
[SVN r69189]
2011-02-22 21:28:49 +00:00
Daniel James
f8635bcb41 Another testing flag to allow testing xinclude.
Not ideal, since not testing normal use. But at least it would have
caught the error fixed in [68308].

[SVN r69181]
2011-02-22 20:47:15 +00:00
Daniel James
e4bddcebe5 Flag for testing errors.
quickbook-fail-test couldn't distinguish between correctly handled
errors and bugs, so add quickbook-error-test which will only succeed for
quickbook errors.

[SVN r69180]
2011-02-22 20:45:26 +00:00
Daniel James
acaf0a9689 Tweak doc info for empty attributes. Maybe these should fail.
[SVN r69179]
2011-02-22 20:43:10 +00:00
Daniel James
a6606bdba6 Use values for lists.
[SVN r69178]
2011-02-22 20:41:36 +00:00
Daniel James
4b9254f3a4 Clean up the grammars a bit.
[SVN r69177]
2011-02-22 20:40:08 +00:00
Daniel James
b4001fe672 Deal with some simple markup edge cases.
[SVN r68943]
2011-02-16 08:28:59 +00:00
Daniel James
a336eda585 Only use debug-symbols=off for msvc.
[SVN r68942]
2011-02-16 08:28:16 +00:00
Daniel James
00e7131448 Improve the simple markup parser.
[SVN r68926]
2011-02-15 20:41:04 +00:00
Daniel James
7d96722034 Missing copyright tests.
[SVN r68925]
2011-02-15 20:39:59 +00:00
Daniel James
843dad17de Richer copyright syntax.
Year ranges and multiple copyrights per copyright attribute (comma
separated).

[SVN r68890]
2011-02-15 00:26:26 +00:00
Daniel James
d92609023f A value type for quickbook data.
[SVN r68882]
2011-02-15 00:20:10 +00:00
Daniel James
262a10b812 Save source mode when including file in 1.6
[SVN r68880]
2011-02-15 00:18:45 +00:00
Daniel James
d24e78acac Move other doc-info tests into subdirectory.
[SVN r68879]
2011-02-15 00:17:45 +00:00
Daniel James
46d1d1447c Some tests for duplicate docinfo attributes.
[SVN r68878]
2011-02-15 00:16:43 +00:00
Daniel James
fb36de29cb Fix empty category.
[SVN r68877]
2011-02-15 00:15:55 +00:00
Daniel James
adaa57c8e3 Get the quickbook test tool working from other directories.
[SVN r68875]
2011-02-15 00:07:50 +00:00
Daniel James
6d4dec6803 Add ids to bridgeheads.
Prevents docbook from making up ever changing ids. It would be nice to
use the heading's anchor. But that causes docbook to complain that it
can't generate a title for the link.

[SVN r68595]
2011-02-01 09:21:25 +00:00
Daniel James
adece17fc6 Turn debug symbols off when testing quickbook.
Fixes an odd error with the Boost Build Visual C++ tool.

[SVN r68562]
2011-01-30 11:36:07 +00:00
Daniel James
bd8c0894b0 Place section anchors inside the section title.
Generates better html.

[SVN r68559]
2011-01-30 10:52:35 +00:00
Daniel James
aea4163f6c Use a single symbol table for all elements.
[SVN r67855]
2011-01-09 12:01:15 +00:00
Daniel James
d626f30cd5 Allow include, import and xinclude in conditional macros.
[SVN r67637]
2011-01-03 22:15:41 +00:00
Daniel James
3e075a122b Make the newline after block markup optional.
[SVN r67636]
2011-01-03 22:13:54 +00:00
Daniel James
29c97dc3f3 Add an option to turn off all quickbook actions, and use it to implement conditional phrase.
[SVN r67635]
2011-01-03 22:12:58 +00:00
Daniel James
fff43d6853 Make the scoped parser more generic and use it for conditional phrases.
[SVN r67632]
2011-01-03 22:09:10 +00:00
Daniel James
c51e3add8f Smarter anchor support.
[SVN r67324]
2010-12-19 13:26:55 +00:00
Daniel James
d1f14e2aed Implement lang attribute in quickbook/boostbook.
[SVN r67090]
2010-12-07 20:44:23 +00:00
Daniel James
d55ea7699b Use a different feature name for quickbook-define in the tests.
Something was going wrong, this is the easiest fix.

[SVN r67089]
2010-12-07 20:42:59 +00:00
Daniel James
34d049361b Support more quickbook options in boost build.
[SVN r66431]
2010-11-07 14:45:43 +00:00
Daniel James
ed9733296b Some extra quickbook table tests.
[SVN r66430]
2010-11-07 14:45:01 +00:00
Daniel James
6c3f05ca9d Restore \n support to quickbook.
[SVN r66292]
2010-10-30 23:16:21 +00:00
Daniel James
53fec6d3f1 Nested blocks in document info comments.
[SVN r65448]
2010-09-18 17:56:15 +00:00
Daniel James
17adae094e More link tests.
[SVN r65422]
2010-09-14 20:50:51 +00:00
Daniel James
d165ef3a67 An extra test for lists.
[SVN r65421]
2010-09-14 20:47:16 +00:00
Daniel James
0544468ad9 Don't match words that start with tip, note etc.
[SVN r65419]
2010-09-14 20:45:47 +00:00
Daniel James
bd0b01578b Add biblioid support to quickbook.
[SVN r65370]
2010-09-09 22:45:39 +00:00
Daniel James
a74d3d4979 Fix a bug in nested template support.
[SVN r65360]
2010-09-09 00:11:35 +00:00
Daniel James
d67b0e3931 Fix argument position in break_arguments.
And some small code_snippet improvements.

[SVN r65280]
2010-09-05 08:14:16 +00:00
Daniel James
810642f159 Restore 1.43 style document fields.
Only xml encoding the fields, and supporting escapes with a 1.6 version
switch.

[SVN r65113]
2010-08-29 21:11:02 +00:00
Daniel James
c2b5212d49 Only stack macros when necessary.
Pushing and popping symbol containers is pretty expensive, so try to do
it less.

[SVN r65102]
2010-08-29 11:18:51 +00:00
Daniel James
aafa5d83d2 Move the source files into a source directory.
[SVN r65030]
2010-08-26 20:56:37 +00:00
Daniel James
c65adc378a Don't generate empty document info tags.
[SVN r65011]
2010-08-26 08:04:08 +00:00
Daniel James
8eeff84ac5 Don't escape docinfo fields for quickbook <= 1.2
[SVN r65005]
2010-08-25 20:28:15 +00:00
Daniel James
23d910d7a3 Fix xml escaping for the license in quickbook 1.2 and less.
[SVN r64990]
2010-08-24 23:12:10 +00:00
Daniel James
351442d050 Escapes in doc info fields.
[SVN r64988]
2010-08-24 19:47:46 +00:00
Daniel James
1dc08fd09c Nested code snippets.
[SVN r64976]
2010-08-23 21:51:53 +00:00
Daniel James
4b41d22c87 Merge multiple listitems in varlistentry.
Docbook only allows a single `listitem` in a `varlistentry` so combine
multiple items into a single item.

[SVN r64831]
2010-08-15 16:48:10 +00:00
Daniel James
aa69438440 Overhaul some of the template code.
* Store the location along with the contents of the template body, so
  the location should usually be correct now. Exceptions are code
  snippets, because they get rewritten, and the extra newlines added to
  block template.
* Store if a template is a block template at the time of creation. Using
  spirit to decide, rather than handwritten C++.
* Fix callout list markup.
* Fix the `skip_initial_spaces` stuff in `block.hpp`. This never really
  worked before. No longer have to skip spaces in `parse_template` in
  `actions.cpp`.

[SVN r64830]
2010-08-15 16:47:21 +00:00
Daniel James
e641698536 Better parser for code blocks.
* A line containing a comment with no identation will now end a code
  block.
* Code blocks no longer need to be followed by a blank line.

[SVN r64829]
2010-08-15 16:46:18 +00:00
Daniel James
7101c28eba Don't put nested lists inside a list item's paragraph.
[SVN r64828]
2010-08-15 16:45:27 +00:00
Daniel James
b622d1d6ee Trim space after element ids.
[SVN r64827]
2010-08-15 16:44:33 +00:00
Daniel James
6b6aad78a6 Ids for headings.
[SVN r64826]
2010-08-15 16:43:40 +00:00
Daniel James
8fe8e33699 Fix command line macros in quickbook.
[SVN r64825]
2010-08-15 16:41:54 +00:00
Daniel James
54938aef15 Restore the invalid doc info attributes.
Removing them breaks the release notes, there's still a warning that
they're invalid. Refs #1281

[SVN r63896]
2010-07-11 23:15:18 +00:00
Daniel James
230a211767 Check the quickbook version is valid.
[SVN r63814]
2010-07-10 15:03:45 +00:00
Daniel James
c6d769cf0d Make repeated quickbook image attributes a warning rather than an error.
[SVN r63813]
2010-07-10 15:03:07 +00:00
Daniel James
1bc916f41f Generate different ids when reusing code snippets.
Generates the ids during template expansion instead of when parsing the
code snippet - so that different ids are used for different exapnsions.
Refs #4416

[SVN r63809]
2010-07-10 11:24:54 +00:00
Daniel James
26030cc220 Copy tests from spirit 2 branch.
The only remaining difference is the invalid output for callouts.

[SVN r63736]
2010-07-08 07:14:35 +00:00
Daniel James
f3a52f99ee Fix duplicate image attribute detection.
[SVN r63735]
2010-07-08 07:14:03 +00:00
Daniel James
9d9721f79e Fix xml encoding in a few places.
[SVN r63734]
2010-07-08 07:13:26 +00:00
Daniel James
db2cfd0d79 Fix documentation info handling in included files. Refs #3907.
[SVN r63733]
2010-07-08 07:12:43 +00:00
Daniel James
3127d2fd1b Fix identifier generation for headings. Refs #1436.
[SVN r63732]
2010-07-08 07:11:58 +00:00
Daniel James
93fb714dac Backport improved paragraphs from spirit 2 version
Templates are no longer expanded inside paragraphs, although callout
lists still are. Refs #4302.

[SVN r63713]
2010-07-06 23:10:10 +00:00
Daniel James
3dfcf5ef14 Don't output empty paragraphs.
[SVN r63621]
2010-07-04 18:52:05 +00:00
Daniel James
5dd58732a1 Test some empty templates.
[SVN r63612]
2010-07-04 16:56:28 +00:00
Daniel James
c8cdcd075e Don't match empty paragraphs.
[SVN r63611]
2010-07-04 16:55:58 +00:00
Daniel James
e3e2018a45 Allow empty document bodies.
[SVN r63610]
2010-07-04 16:55:24 +00:00
Daniel James
a47a09e259 Clear template_info before parsing a template.
Sometimes template_info contains values from a previous failed parse. I
think this makes the last change unnecessary, but I'm going to leave it
in as I feel like it improved the grammar.

[SVN r63609]
2010-07-04 16:54:44 +00:00
Daniel James
1cde9f5cfe Only store template name after correct match.
Fixes a bug where a failed template expansion would leave the template
name in template_info.

[SVN r63608]
2010-07-04 16:53:54 +00:00
Daniel James
f4834d5c6a Make author parsing a little stricter.
[SVN r63607]
2010-07-04 16:53:25 +00:00
Daniel James
7e299228fe Don't require commas between authors.
Makes the author grammar more consistent with the rest of quickbook.

[SVN r63342]
2010-06-26 12:09:56 +00:00
Daniel James
e410b371fc Update list_test.gold.
[SVN r62823]
2010-06-11 23:00:56 +00:00
Daniel James
52a5504cb4 Nested lists inside <simplepara>.
Not valid, but generates better html. Maybe I should use `<para>` inside
list items, and remove the margin using CSS.

[SVN r62701]
2010-06-10 00:15:41 +00:00
Daniel James
38275cb119 Fix paragraph mark up.
* Require an eol after comments, so that an eol with content after it is
  interpreted as a paragraph.
* 'eol >> eol' => 'eol >> *blank_p >> eol_p' so that lines containing
  only a comment aren't interpreted as paragraph breaks.
* +eol after 'inside paragraphs' so that all the whitespace following
  a paragraph is swallowed up. If it wasn't then it'd create lots of
  empty paragraphs when there's a lot of whitespace.

[SVN r62700]
2010-06-10 00:14:56 +00:00
Daniel James
796b9eb078 Support multiple categories. Refs #1200.
[SVN r62471]
2010-06-06 07:23:44 +00:00