|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r64248 - in branches/quickbook-1.5-spirit2: . detail doc test
From: daniel_james_at_[hidden]
Date: 2010-07-22 04:03:05
Author: danieljames
Date: 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
New Revision: 64248
URL: http://svn.boost.org/trac/boost/changeset/64248
Log:
Merge from tunk.
A lot of the recent trunk changes are from this branch, so they're not included.
* [63809] - Generate different ids when reusing code snippets.
* [63813] - Make repeated quickbook image attributes a warning rather than an error.
* [63814] - Check the quickbook version is valid.
* [63896] - Restore the invalid doc info attributes.
Added:
branches/quickbook-1.5-spirit2/test/fail-unknown-quickbook-1.quickbook
- copied unchanged from r64238, /trunk/tools/quickbook/test/fail-unknown-quickbook-1.quickbook
branches/quickbook-1.5-spirit2/test/fail-unknown-quickbook-2.quickbook
- copied unchanged from r64238, /trunk/tools/quickbook/test/fail-unknown-quickbook-2.quickbook
branches/quickbook-1.5-spirit2/test/fail-unknown-quickbook-3.quickbook
- copied unchanged from r64238, /trunk/tools/quickbook/test/fail-unknown-quickbook-3.quickbook
Removed:
branches/quickbook-1.5-spirit2/detail/
branches/quickbook-1.5-spirit2/test/fail-image_1_5.quickbook
Properties modified:
branches/quickbook-1.5-spirit2/ (props changed)
Text files modified:
branches/quickbook-1.5-spirit2/Jamfile.v2 | 1
branches/quickbook-1.5-spirit2/block_actions.cpp | 10 +++---
branches/quickbook-1.5-spirit2/code_snippet_actions.cpp | 33 ++++++++++------------
branches/quickbook-1.5-spirit2/doc/quickbook.qbk | 41 +++++++++++++++++++++-------
branches/quickbook-1.5-spirit2/doc_info.hpp | 9 ++++++
branches/quickbook-1.5-spirit2/doc_info_actions.cpp | 45 +++++++++++++++++++++++++++-----
branches/quickbook-1.5-spirit2/doc_info_actions.hpp | 1
branches/quickbook-1.5-spirit2/doc_info_grammar.cpp | 38 +++++++--------------------
branches/quickbook-1.5-spirit2/phrase_image.cpp | 5 +--
branches/quickbook-1.5-spirit2/process.cpp | 1
branches/quickbook-1.5-spirit2/state.cpp | 4 +-
branches/quickbook-1.5-spirit2/template.cpp | 56 +++++++++++++++++++++++++++++++++------
branches/quickbook-1.5-spirit2/template.hpp | 2
branches/quickbook-1.5-spirit2/test/Jamfile.v2 | 4 ++
branches/quickbook-1.5-spirit2/test/callouts.gold | 20 ++++++++++++++
branches/quickbook-1.5-spirit2/test/callouts.quickbook | 4 ++
branches/quickbook-1.5-spirit2/test/doc-info-1.gold | 4 ++
branches/quickbook-1.5-spirit2/test/image_1_5.gold | 7 +++++
branches/quickbook-1.5-spirit2/test/image_1_5.quickbook | 5 ++
branches/quickbook-1.5-spirit2/test/quickbook-manual.gold | 3 ++
20 files changed, 207 insertions(+), 86 deletions(-)
Modified: branches/quickbook-1.5-spirit2/Jamfile.v2
==============================================================================
--- branches/quickbook-1.5-spirit2/Jamfile.v2 (original)
+++ branches/quickbook-1.5-spirit2/Jamfile.v2 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -17,6 +17,7 @@
<toolset>darwin:<cflags>-g0
<debug-symbols>off
<warnings>off
+ <define>BOOST_FILESYSTEM_VERSION=3
;
exe quickbook
Modified: branches/quickbook-1.5-spirit2/block_actions.cpp
==============================================================================
--- branches/quickbook-1.5-spirit2/block_actions.cpp (original)
+++ branches/quickbook-1.5-spirit2/block_actions.cpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -315,9 +315,9 @@
fs::path path(x);
if (!path.is_complete())
{
- fs::path infile = fs::complete(state.filename).normalize();
+ fs::path infile = fs::absolute(state.filename).normalize();
path = (infile.parent_path() / path).normalize();
- fs::path outdir = fs::complete(state.outdir).normalize();
+ fs::path outdir = fs::absolute(state.outdir).normalize();
path = path_difference(outdir, path);
}
return path;
@@ -367,10 +367,10 @@
// update the __FILENAME__ macro
*state.macro.find("__FILENAME__") =
- quickbook::macro(state.filename.file_string());
+ quickbook::macro(state.filename.native());
// parse the file
- quickbook::parse(state.filename.file_string().c_str(), state, true);
+ quickbook::parse(state.filename.native().c_str(), state, true);
// restore the values
std::swap(state.filename, filein);
@@ -395,7 +395,7 @@
state.paragraph_output();
fs::path path = include_search(state.filename.parent_path(), x.path);
- std::string ext = path.extension();
+ std::string ext = path.extension().generic_string();
std::vector<define_template> storage;
state.error_count +=
load_snippets(path.string(), storage, ext, state.doc_id);
Modified: branches/quickbook-1.5-spirit2/code_snippet_actions.cpp
==============================================================================
--- branches/quickbook-1.5-spirit2/code_snippet_actions.cpp (original)
+++ branches/quickbook-1.5-spirit2/code_snippet_actions.cpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -27,25 +27,15 @@
actions.code += x;
}
- namespace detail
- {
- int callout_id = 0;
- }
-
void code_snippet_actions::process_action::operator()(callout const& x, unused_type, unused_type) const
{
- using detail::callout_id;
-
callout_source item;
- item.identifier = std::string(actions.doc_id.begin(), actions.doc_id.end());
- item.identifier += boost::lexical_cast<std::string>(callout_id + actions.callouts.size());
item.body = template_value(x.position, x.content);
+ item.role = x.role;
- actions.code += "``[[callout]";
- actions.code += x.role;
- actions.code += " ";
- actions.code += item.identifier;
- actions.code += "]``";
+ actions.code += "``[[callout" +
+ boost::lexical_cast<std::string>(actions.callouts.size()) +
+ "]]``";
actions.callouts.push_back(item);
}
@@ -73,7 +63,8 @@
void code_snippet_actions::output_action::operator()(code_snippet const& x, unused_type, unused_type) const
{
- using detail::callout_id;
+ std::vector<std::string> params;
+
if (!actions.code.empty())
{
detail::unindent(actions.code); // remove all indents
@@ -83,15 +74,21 @@
actions.snippet += actions.source_type;
actions.snippet += "```\n" + actions.code + "```\n\n";
}
+
+ if(actions.callouts.size() > 0)
+ {
+ for (size_t i = 0; i < actions.callouts.size(); ++i)
+ {
+ params.push_back("[callout" + boost::lexical_cast<std::string>(i) + "]");
+ }
+ }
}
- std::vector<std::string> empty_params;
- define_template d(x.identifier, empty_params,
+ define_template d(x.identifier, params,
template_value(x.position, actions.snippet));
d.callouts = actions.callouts;
actions.storage.push_back(d);
- callout_id += actions.callouts.size();
actions.callouts.clear();
actions.code.clear();
actions.snippet.clear();
Modified: branches/quickbook-1.5-spirit2/doc/quickbook.qbk
==============================================================================
--- branches/quickbook-1.5-spirit2/doc/quickbook.qbk (original)
+++ branches/quickbook-1.5-spirit2/doc/quickbook.qbk 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -191,19 +191,33 @@
[h3 Version 1.5.2 - Boost 1.44.0]
-* Generate more valid boostbook (still invalid in a few places).
-* Warn about invalid doc_info members.
-* Support multiple categories in library doc_info.
* Use the cygwin 1.7 API for better path handling.
-* Fix some corner cases for paragraph detection:
+* Improved boostbook generation:
+ * XML encode the documentation info correctly.
+ * Avoid generating empty paragraphs.
+ * No longer wraps block templates in paragraphs.
+ * Warns if you use invalid doc_info members for docbook document types.
+ * Fixes some other causes of invalid boostbook, although it still
+ generates invalid boostbook in places.
+* Improved grammar:
+ * Supports multiple categories in library doc_info.
+ * No longer requires commas between authors in docinfo.
+ * Allows empty document bodies.
* A line containing only a comment is no longer interpreted as a
paragraph break.
* If a line starts with a comment, interpret it as a paragraph even if it's
followed by whitespace or a list character.
- * Don't treat 4+ consecutive blank lines as multiple paragraph breaks.
-* Don't require commas between authors in docinfo.
-* Allow empty document bodies.
-* Less empty paragraphs.
+ * Doesn't treat several consecutive blank lines as multiple paragraph breaks.
+* Fixes duplicate image attribute detection.
+* Fixes using code snippets more than once.
+* Early work on quickbook 1.6, available using the `[quickbook 1.6]` version switch,
+ but liable to change in future versions.
+ * When automatically generating ids for headers, use the quickbook
+ source, rather than the generated docbook.
+ * Fix id generation in included files. It wasn't correctly using the
+ main document's documentation id.
+ * Correctly restore the quickbook version switch after including a file
+ with a different version.
[endsect]
@@ -786,6 +800,11 @@
=version=, =id=, =dirname=, =copyright=, =purpose=, =category=, =authors=,
=license=, =last-revision= and =source-mode= are optional information.
+=dirname=, =purpose= and =category= are boostbook attributes which are only
+valid for =library= documents. If you use them for other document types,
+quickbook will warn about them, but still use them, generating invalid markup,
+that's just ignored by the style sheets.
+
=source-type= is a lowercase string setting the initial __source_mode__. If
the =source-mode= field is omitted, a default value of =c++= will be used.
@@ -1924,7 +1943,7 @@
# Go to Quickbook's source directory (`BOOST_ROOT/tools/quickbook`).
-# Build the utility by issuing `bjam --v2`.
+# Build the utility by issuing `bjam`.
# Copy the resulting `quickbook` binary (located under the
`BOOST_ROOT/bin.v2` hierarchy) to a safe place. Following our previous
@@ -2014,7 +2033,7 @@
# Go to Quickbook's source directory (`BOOST_ROOT\tools\quickbook`).
-# Build the utility by issuing `bjam --v2`.
+# Build the utility by issuing `bjam`.
# Copy the resulting `quickbook.exe` binary (located under the
`BOOST_ROOT\bin.v2` hierarchy) to a safe place. Following our previous
@@ -2065,7 +2084,7 @@
# Go to Quickbook's source directory (`BOOST_ROOT/tools/quickbook`).
-# Build the utility by issuing `bjam --v2`.
+# Build the utility by issuing `bjam`.
# Copy the resulting `quickbook` binary (located under the
`BOOST_ROOT/bin.v2` hierarchy) to a safe place. The traditional location is
Modified: branches/quickbook-1.5-spirit2/doc_info.hpp
==============================================================================
--- branches/quickbook-1.5-spirit2/doc_info.hpp (original)
+++ branches/quickbook-1.5-spirit2/doc_info.hpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -55,6 +55,15 @@
doc_info_post(doc_info& info) : info(info) {}
doc_info& info;
};
+
+ struct version
+ {
+ version() : major(-1), minor(-1) {}
+
+ int major;
+ int minor;
+ file_position position;
+ };
}
#endif // BOOST_SPIRIT_QUICKBOOK_GRAMMARS_HPP
Modified: branches/quickbook-1.5-spirit2/doc_info_actions.cpp
==============================================================================
--- branches/quickbook-1.5-spirit2/doc_info_actions.cpp (original)
+++ branches/quickbook-1.5-spirit2/doc_info_actions.cpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -44,6 +44,43 @@
};
}
+ void process(quickbook::state& state, version const& x)
+ {
+ if(x.major == -1 || x.minor == -1)
+ {
+ qbk_major_version = 1;
+ qbk_minor_version = 1;
+ qbk_version_n = 101;
+
+ detail::outwarn(x.position.file)
+ << "Warning: Quickbook version undefined. "
+ "Version 1.1 is assumed" << std::endl;
+ }
+ else
+ {
+ qbk_major_version = x.major;
+ qbk_minor_version = x.minor;
+ qbk_version_n = (qbk_major_version * 100) + qbk_minor_version;
+
+ if (qbk_version_n == 106)
+ {
+ detail::outwarn(x.position.file)
+ << "Quickbook 1.6 is still under development and is "
+ "likely to change in the future." << std::endl;
+ }
+ else if(qbk_version_n < 100 || qbk_version_n > 106)
+ {
+ detail::outerr(x.position.file)
+ << "Unknown version of quickbook: quickbook "
+ << qbk_major_version
+ << "."
+ << qbk_minor_version
+ << std::endl;
+ ++state.error_count;
+ }
+ }
+ }
+
void process(quickbook::state& state, doc_info const& x)
{
doc_info info = x;
@@ -83,21 +120,15 @@
if (info.doc_type != "library")
{
if (!boost::apply_visitor(empty_visitor(), info.doc_purpose))
- {
- boost::apply_visitor(clear_visitor(), info.doc_purpose);
invalid_attributes.push_back("purpose");
- }
if (!info.doc_categories.empty())
- {
- info.doc_categories.clear();
invalid_attributes.push_back("category");
- }
}
if(!invalid_attributes.empty())
{
- detail::outwarn(state.filename.file_string(),1)
+ detail::outwarn(state.filename.native(),1)
<< (invalid_attributes.size() > 1 ?
"Invalid attributes" : "Invalid attribute")
<< " for '" << info.doc_type << "': "
Modified: branches/quickbook-1.5-spirit2/doc_info_actions.hpp
==============================================================================
--- branches/quickbook-1.5-spirit2/doc_info_actions.hpp (original)
+++ branches/quickbook-1.5-spirit2/doc_info_actions.hpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -17,6 +17,7 @@
namespace quickbook
{
+ void process(quickbook::state&, version const&);
void process(quickbook::state&, doc_info const&);
}
Modified: branches/quickbook-1.5-spirit2/doc_info_grammar.cpp
==============================================================================
--- branches/quickbook-1.5-spirit2/doc_info_grammar.cpp (original)
+++ branches/quickbook-1.5-spirit2/doc_info_grammar.cpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -32,28 +32,10 @@
namespace repo = boost::spirit::repository;
namespace ph = boost::phoenix;
- void set_quickbook_version(boost::fusion::vector<unsigned, unsigned> version)
- {
- qbk_major_version = boost::fusion::at_c<0>(version);
- qbk_minor_version = boost::fusion::at_c<1>(version);
- qbk_version_n = (qbk_major_version * 100) + qbk_minor_version;
- }
-
- void default_quickbook_version(file_position pos)
- {
- qbk_major_version = 1;
- qbk_minor_version = 1;
- qbk_version_n = 101;
-
- detail::outwarn(pos.file)
- << "Warning: Quickbook version undefined. "
- "Version 1.1 is assumed" << std::endl;
- }
-
struct doc_info_grammar_local
{
qi::symbols<char> doc_types;
- qi::rule<iterator> quickbook_version;
+ qi::rule<iterator, version()> quickbook_version;
qi::rule<iterator, raw_source()> doc_version;
qi::rule<iterator, raw_source()> doc_id;
qi::rule<iterator, raw_source()> doc_dirname;
@@ -88,7 +70,7 @@
>> qi::raw[
*(~qi::char_("[]") - qi::eol)
] [member_assign(&doc_info::doc_title)]
- >> local.quickbook_version
+ >> local.quickbook_version [actions.process]
>> *repo::confix(space >> '[', space >> ']' >> +qi::eol)
[ local.doc_version [member_assign(&doc_info::doc_version)]
| local.doc_id [member_assign(&doc_info::doc_id)]
@@ -108,14 +90,14 @@
;
local.quickbook_version =
- repo::confix(space >> '[', space >> ']')
- [ "quickbook"
- >> hard_space
- >> qi::uint_
- >> '.'
- >> uint2_t()
- ] [set_quickbook_version]
- | position [default_quickbook_version]
+ position [member_assign(&version::position)]
+ >> -repo::confix(space >> '[', space >> ']')
+ [ "quickbook"
+ >> hard_space
+ >> qi::uint_ [member_assign(&version::major)]
+ >> '.'
+ >> uint2_t() [member_assign(&version::minor)]
+ ]
;
local.doc_version = "version" >> hard_space >> qi::raw[*~qi::char_(']')];
Modified: branches/quickbook-1.5-spirit2/phrase_image.cpp
==============================================================================
--- branches/quickbook-1.5-spirit2/phrase_image.cpp (original)
+++ branches/quickbook-1.5-spirit2/phrase_image.cpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -39,18 +39,17 @@
begin = duplicates.begin(), end = duplicates.end();
begin != end; ++begin)
{
- detail::outerr(x.position.file, x.position.line)
+ detail::outwarn(x.position.file, x.position.line)
<< "Duplicate image attribute: "
<< begin->first
<< std::endl;
- ++state.error_count;
}
}
fs::path const img_path(x.image_filename);
attributes.insert(attribute("fileref", x.image_filename));
// Note: If there is already an alt attribute this is a no-op.
- attributes.insert(attribute("alt", img_path.stem()));
+ attributes.insert(attribute("alt", img_path.stem().generic_string()));
if(img_path.extension() == ".svg")
{
Modified: branches/quickbook-1.5-spirit2/process.cpp
==============================================================================
--- branches/quickbook-1.5-spirit2/process.cpp (original)
+++ branches/quickbook-1.5-spirit2/process.cpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -65,6 +65,7 @@
template void process_action::operator()<code_token>(code_token const&) const;
template void process_action::operator()<char>(char const&) const;
template void process_action::operator()<unicode_char>(unicode_char const&) const;
+ template void process_action::operator()<version>(version const&) const;
template void process_action::operator()<doc_info>(doc_info const&) const;
template void process_action::operator()<doc_info_post>(doc_info_post const&) const;
template void process_action::operator()<callout_link>(callout_link const&) const;
Modified: branches/quickbook-1.5-spirit2/state.cpp
==============================================================================
--- branches/quickbook-1.5-spirit2/state.cpp (original)
+++ branches/quickbook-1.5-spirit2/state.cpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -35,7 +35,7 @@
, encoder(encoder)
// state
- , filename(fs::complete(fs::path(filein_)))
+ , filename(fs::absolute(fs::path(filein_)))
, outdir(outdir_)
, macro()
, section_level(0)
@@ -52,7 +52,7 @@
// turn off __FILENAME__ macro on debug mode = true
std::string filename_str = debug_mode ?
std::string("NO_FILENAME_MACRO_GENERATED_IN_DEBUG_MODE") :
- filename.file_string();
+ filename.native();
// add the predefined macros
macro.add
Modified: branches/quickbook-1.5-spirit2/template.cpp
==============================================================================
--- branches/quickbook-1.5-spirit2/template.cpp (original)
+++ branches/quickbook-1.5-spirit2/template.cpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -8,6 +8,7 @@
=============================================================================*/
#include <boost/spirit/include/qi_symbols.hpp>
+#include <boost/lexical_cast.hpp>
#include "template.hpp"
#include "phrase_actions.hpp"
#include "grammar.hpp"
@@ -20,6 +21,11 @@
namespace quickbook
{
+ namespace
+ {
+ int callout_id = 0;
+ }
+
struct template_symbol
{
template_symbol(
@@ -322,7 +328,7 @@
quickbook_grammar g(actions);
// do a phrase level parse
- iterator first(body.begin(), body.end(), state.filename.file_string().c_str());
+ iterator first(body.begin(), body.end(), state.filename.native().c_str());
first.set_position(template_pos);
iterator last(body.end(), body.end());
r = boost::spirit::qi::parse(first, last, g.simple_phrase) && first == last;
@@ -340,7 +346,7 @@
// the need to check for end of file in the grammar.
body += "\n\n";
- iterator first(body.begin(), body.end(), state.filename.file_string().c_str());
+ iterator first(body.begin(), body.end(), state.filename.native().c_str());
first.set_position(template_pos);
iterator last(body.end(), body.end());
@@ -396,13 +402,44 @@
std::vector<template_value> args = x.args;
///////////////////////////////////
- // Break the arguments
- if (!break_arguments(args, x.symbol->params, x.position))
+ // Initialise the arguments
+
+ if (!x.symbol->callouts.size())
{
- state.pop(); // restore the state
- --state.template_depth;
- ++state.error_count;
- return;
+ // Break the arguments for a template
+
+ if (!break_arguments(args, x.symbol->params, x.position))
+ {
+ state.pop(); // restore the state
+ --state.template_depth;
+ ++state.error_count;
+ return;
+ }
+ }
+ else
+ {
+ if (!args.empty())
+ {
+ detail::outerr(x.position.file, x.position.line)
+ << "Arguments for code snippet."
+ <<std::endl;
+ ++state.error_count;
+
+ args.clear();
+ }
+
+ BOOST_ASSERT(x.symbol->params.size() == x.symbol->callouts.size());
+ unsigned int size = x.symbol->callouts.size();
+
+ for(unsigned int i = 0; i < size; ++i)
+ {
+ template_value value;
+ value.content = "[[callout]" + x.symbol->callouts[i].role + " " +
+ state.doc_id.value +
+ boost::lexical_cast<std::string>(callout_id + i) +
+ "]";
+ args.push_back(value);
+ }
}
///////////////////////////////////
@@ -456,7 +493,8 @@
callout_list list;
BOOST_FOREACH(callout_source const& c, x.symbol->callouts) {
callout_item item;
- item.identifier = c.identifier;
+ item.identifier = state.doc_id.value +
+ boost::lexical_cast<std::string>(callout_id++);
state.push();
// TODO: adjust the position?
Modified: branches/quickbook-1.5-spirit2/template.hpp
==============================================================================
--- branches/quickbook-1.5-spirit2/template.hpp (original)
+++ branches/quickbook-1.5-spirit2/template.hpp 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -44,7 +44,7 @@
};
struct callout_source {
- std::string identifier;
+ std::string role;
template_value body;
};
Modified: branches/quickbook-1.5-spirit2/test/Jamfile.v2
==============================================================================
--- branches/quickbook-1.5-spirit2/test/Jamfile.v2 (original)
+++ branches/quickbook-1.5-spirit2/test/Jamfile.v2 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -65,7 +65,9 @@
[ quickbook-fail-test fail-template-section-1 ]
[ quickbook-fail-test fail-template-section-2 ]
[ quickbook-fail-test fail-template-section-3 ]
- [ quickbook-fail-test fail-image_1_5 ]
+ [ quickbook-fail-test fail-unknown-quickbook-1 ]
+ [ quickbook-fail-test fail-unknown-quickbook-2 ]
+ [ quickbook-fail-test fail-unknown-quickbook-3 ]
[ quickbook-test utf-8 ]
[ quickbook-test utf-8-bom ]
[ quickbook-test unicode-escape ]
Modified: branches/quickbook-1.5-spirit2/test/callouts.gold
==============================================================================
--- branches/quickbook-1.5-spirit2/test/callouts.gold (original)
+++ branches/quickbook-1.5-spirit2/test/callouts.gold 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -66,4 +66,24 @@
</important>
</callout>
</calloutlist>
+ <para>
+ Example 3 (again!):
+ </para>
+ <para>
+
+<programlisting><phrase role="keyword">int</phrase> <phrase role="identifier">roll_die</phrase><phrase role="special">()</phrase> <phrase role="special">{</phrase>
+ <co id="callout_tests3co" linkends="callout_tests3" /><phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">variate_generator</phrase><phrase role="special"><</phrase><phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">mt19937</phrase><phrase role="special">&,</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">uniform_int</phrase><phrase role="special"><></phrase> <phrase role="special">></phrase> <phrase role="identifier">die</phrase><phrase role="special">(</phrase><phrase role="identifier">gen</phrase><phrase role="special">,</phrase> <phrase role="identifier">dist</phrase><phrase role="special">);</phrase>
+<phrase role="special">}</phrase>
+
+</programlisting>
+ </para>
+ <calloutlist>
+ <callout arearefs="callout_tests3co" id="callout_tests3">
+ <important>
+ <para>
+ test
+ </para>
+ </important>
+ </callout>
+ </calloutlist>
</article>
Modified: branches/quickbook-1.5-spirit2/test/callouts.quickbook
==============================================================================
--- branches/quickbook-1.5-spirit2/test/callouts.quickbook (original)
+++ branches/quickbook-1.5-spirit2/test/callouts.quickbook 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -15,3 +15,7 @@
Example 3:
[example3]
+
+Example 3 (again!):
+
+[example3]
Modified: branches/quickbook-1.5-spirit2/test/doc-info-1.gold
==============================================================================
--- branches/quickbook-1.5-spirit2/test/doc-info-1.gold (original)
+++ branches/quickbook-1.5-spirit2/test/doc-info-1.gold 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -12,5 +12,9 @@
<firstname>Jane</firstname> <surname>Doe</surname>
</author>
</authorgroup>
+ <articlepurpose>
+ Inline code test: <code>1 + 2</code>
+ </articlepurpose>
+ <articlecategory name="category:tests"></articlecategory> <articlecategory name="category:irrelevance"></articlecategory>
</articleinfo>
</article>
Deleted: branches/quickbook-1.5-spirit2/test/fail-image_1_5.quickbook
==============================================================================
--- branches/quickbook-1.5-spirit2/test/fail-image_1_5.quickbook 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
+++ (empty file)
@@ -1,5 +0,0 @@
-[article Images 1.5
- [quickbook 1.5]
-]
-
-[$test.gif [width 10cm] [height 10cm] [width 10cm]]
Modified: branches/quickbook-1.5-spirit2/test/image_1_5.gold
==============================================================================
--- branches/quickbook-1.5-spirit2/test/image_1_5.gold (original)
+++ branches/quickbook-1.5-spirit2/test/image_1_5.gold 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -56,4 +56,11 @@
</textobject>
</inlinemediaobject>
</para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="test.gif" height="10cm" width="10cm"></imagedata></imageobject>
+ <textobject>
+ <phrase>test</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
</article>
Modified: branches/quickbook-1.5-spirit2/test/image_1_5.quickbook
==============================================================================
--- branches/quickbook-1.5-spirit2/test/image_1_5.quickbook (original)
+++ branches/quickbook-1.5-spirit2/test/image_1_5.quickbook 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -13,4 +13,7 @@
[$ [/comment] test.gif ]
[$ [/comment] test.gif [/comment] ]
-[$ [/comment] test.gif [/comment] [alt comment] ]
\ No newline at end of file
+[$ [/comment] test.gif [/comment] [alt comment] ]
+
+[/ This should warn about repeated attribute and then ignore it. ]
+[$test.gif [width 10cm] [height 10cm] [width 20cm]]
Modified: branches/quickbook-1.5-spirit2/test/quickbook-manual.gold
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk
==============================================================================
--- branches/quickbook-1.5-spirit2/test/quickbook-manual.gold (original)
+++ branches/quickbook-1.5-spirit2/test/quickbook-manual.gold 2010-07-22 04:03:02 EDT (Thu, 22 Jul 2010)
@@ -21,6 +21,9 @@
file LICENSE_1_0.txt or copy at <ulink url="http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt>)
</para>
</legalnotice>
+ <articlepurpose>
+ <emphasis>WikiWiki</emphasis> style documentation tool
+ </articlepurpose>
</articleinfo>
<section id="quickbook.intro">
<title><link linkend="quickbook.intro"> Introduction</link></title>