Merge branch 'main' into merge_2.0.5
This commit is contained in:
@@ -167,14 +167,13 @@ pip install -r requirements.txt
|
||||
|
||||
On Linux, the dependencies are generally available in the standard package repository.
|
||||
|
||||
For more details on running or installing from source, see
|
||||
[Other Setup Methods](https://novelwriter.readthedocs.io/en/latest/setup_other.html).
|
||||
For more details on running or installing from source, see the
|
||||
[documentation](https://novelwriter.readthedocs.io).
|
||||
|
||||
## Debugging
|
||||
|
||||
If you need to debug novelWriter, you must run it from the command line. It takes a few parameters,
|
||||
which can be listed with the switch `--help`. The `--info`, `--debug` or `--verbose` flags are
|
||||
particularly useful for increasing logging output for debugging.
|
||||
If you need to debug novelWriter, you can run it from the command line and increase terminal output
|
||||
by adding the `--info` or `--debug` flags. By default, only warnings and errors are printed.
|
||||
|
||||
## Licence
|
||||
|
||||
|
||||
+157
-138
@@ -1,24 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<office:document xmlns:officeooo="http://openoffice.org/2009/office" xmlns:css3t="http://www.w3.org/TR/css3-text/" xmlns:grddl="http://www.w3.org/2003/g/data-view#" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rpt="http://openoffice.org/2005/report" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:tableooo="http://openoffice.org/2009/table" xmlns:drawooo="http://openoffice.org/2010/draw" xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:xforms="http://www.w3.org/2002/xforms" office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.text">
|
||||
<office:meta><meta:initial-creator>Veronica Olsen</meta:initial-creator><meta:creation-date>2022-11-05T18:25:44.887473159</meta:creation-date><dc:date>2022-11-27T16:59:09.712224049</dc:date><dc:creator>Veronica Olsen</dc:creator><meta:editing-duration>PT3H37M58S</meta:editing-duration><meta:editing-cycles>40</meta:editing-cycles><meta:generator>LibreOffice/7.0.4.2$Linux_X86_64 LibreOffice_project/00$Build-2</meta:generator><meta:document-statistic meta:table-count="12" meta:image-count="0" meta:object-count="0" meta:page-count="7" meta:paragraph-count="283" meta:word-count="2105" meta:character-count="13209" meta:non-whitespace-character-count="11150"/></office:meta>
|
||||
<office:meta><meta:initial-creator>Veronica Olsen</meta:initial-creator><meta:creation-date>2022-11-05T18:25:44.887473159</meta:creation-date><dc:date>2023-02-09T13:03:44.196703858</dc:date><dc:creator>Veronica Olsen</dc:creator><meta:editing-duration>PT3H48M55S</meta:editing-duration><meta:editing-cycles>42</meta:editing-cycles><meta:generator>LibreOffice/7.0.4.2$Linux_X86_64 LibreOffice_project/00$Build-2</meta:generator><meta:document-statistic meta:table-count="12" meta:image-count="0" meta:object-count="0" meta:page-count="7" meta:paragraph-count="284" meta:word-count="2233" meta:character-count="13945" meta:non-whitespace-character-count="11759"/></office:meta>
|
||||
<office:settings>
|
||||
<config:config-item-set config:name="ooo:view-settings">
|
||||
<config:config-item config:name="ViewAreaTop" config:type="long">0</config:config-item>
|
||||
<config:config-item config:name="ViewAreaTop" config:type="long">9825</config:config-item>
|
||||
<config:config-item config:name="ViewAreaLeft" config:type="long">0</config:config-item>
|
||||
<config:config-item config:name="ViewAreaWidth" config:type="long">26555</config:config-item>
|
||||
<config:config-item config:name="ViewAreaHeight" config:type="long">20394</config:config-item>
|
||||
<config:config-item config:name="ViewAreaWidth" config:type="long">35909</config:config-item>
|
||||
<config:config-item config:name="ViewAreaHeight" config:type="long">19657</config:config-item>
|
||||
<config:config-item config:name="ShowRedlineChanges" config:type="boolean">true</config:config-item>
|
||||
<config:config-item config:name="InBrowseMode" config:type="boolean">false</config:config-item>
|
||||
<config:config-item-map-indexed config:name="Views">
|
||||
<config:config-item-map-entry>
|
||||
<config:config-item config:name="ViewId" config:type="string">view2</config:config-item>
|
||||
<config:config-item config:name="ViewLeft" config:type="long">10569</config:config-item>
|
||||
<config:config-item config:name="ViewTop" config:type="long">2925</config:config-item>
|
||||
<config:config-item config:name="ViewLeft" config:type="long">23216</config:config-item>
|
||||
<config:config-item config:name="ViewTop" config:type="long">176844</config:config-item>
|
||||
<config:config-item config:name="VisibleLeft" config:type="long">0</config:config-item>
|
||||
<config:config-item config:name="VisibleTop" config:type="long">0</config:config-item>
|
||||
<config:config-item config:name="VisibleRight" config:type="long">26554</config:config-item>
|
||||
<config:config-item config:name="VisibleBottom" config:type="long">20392</config:config-item>
|
||||
<config:config-item config:name="VisibleTop" config:type="long">9825</config:config-item>
|
||||
<config:config-item config:name="VisibleRight" config:type="long">35907</config:config-item>
|
||||
<config:config-item config:name="VisibleBottom" config:type="long">29480</config:config-item>
|
||||
<config:config-item config:name="ZoomType" config:type="short">0</config:config-item>
|
||||
<config:config-item config:name="ViewLayoutColumns" config:type="short">1</config:config-item>
|
||||
<config:config-item config:name="ViewLayoutBookMode" config:type="boolean">false</config:config-item>
|
||||
@@ -85,7 +85,7 @@
|
||||
<config:config-item config:name="ChartAutoUpdate" config:type="boolean">true</config:config-item>
|
||||
<config:config-item config:name="PrinterSetup" config:type="base64Binary"/>
|
||||
<config:config-item config:name="AddParaTableSpacingAtStart" config:type="boolean">true</config:config-item>
|
||||
<config:config-item config:name="Rsid" config:type="int">421923</config:config-item>
|
||||
<config:config-item config:name="Rsid" config:type="int">695346</config:config-item>
|
||||
<config:config-item config:name="EmbeddedDatabaseName" config:type="string"/>
|
||||
<config:config-item config:name="FieldAutoUpdate" config:type="boolean">true</config:config-item>
|
||||
<config:config-item config:name="OutlineLevelYieldsNumbering" config:type="boolean">false</config:config-item>
|
||||
@@ -149,7 +149,7 @@
|
||||
<office:styles>
|
||||
<style:default-style style:family="graphic">
|
||||
<style:graphic-properties svg:stroke-color="#3465a4" draw:fill-color="#729fcf" fo:wrap-option="no-wrap" draw:shadow-offset-x="0.3cm" draw:shadow-offset-y="0.3cm" draw:start-line-spacing-horizontal="0.283cm" draw:start-line-spacing-vertical="0.283cm" draw:end-line-spacing-horizontal="0.283cm" draw:end-line-spacing-vertical="0.283cm" style:flow-with-text="false"/>
|
||||
<style:paragraph-properties style:text-autospace="ideograph-alpha" style:line-break="strict" style:font-independent-line-spacing="false">
|
||||
<style:paragraph-properties style:text-autospace="ideograph-alpha" style:line-break="strict" style:writing-mode="lr-tb" style:font-independent-line-spacing="false">
|
||||
<style:tab-stops/>
|
||||
</style:paragraph-properties>
|
||||
<style:text-properties style:use-window-font-color="true" loext:opacity="0%" style:font-name="Liberation Serif" fo:font-size="12pt" fo:language="nb" fo:country="NO" style:letter-kerning="true" style:font-name-asian="Noto Serif CJK SC" style:font-size-asian="10.5pt" style:language-asian="zh" style:country-asian="CN" style:font-name-complex="FreeSans" style:font-size-complex="12pt" style:language-complex="hi" style:country-complex="IN"/>
|
||||
@@ -1203,6 +1203,12 @@
|
||||
<style:style style:name="P63" style:family="paragraph" style:parent-style-name="Heading_20_5">
|
||||
<style:text-properties fo:language="en" fo:country="GB" officeooo:paragraph-rsid="00048e47"/>
|
||||
</style:style>
|
||||
<style:style style:name="P64" style:family="paragraph" style:parent-style-name="Table_20_Contents">
|
||||
<style:text-properties fo:font-size="10pt" fo:language="en" fo:country="GB" officeooo:rsid="00048e47" officeooo:paragraph-rsid="00048e47"/>
|
||||
</style:style>
|
||||
<style:style style:name="P65" style:family="paragraph" style:parent-style-name="Text_20_body">
|
||||
<style:text-properties fo:font-size="10pt" fo:language="en" fo:country="GB" officeooo:rsid="00048e47" officeooo:paragraph-rsid="00098d04"/>
|
||||
</style:style>
|
||||
<style:style style:name="T1" style:family="text">
|
||||
<style:text-properties officeooo:rsid="0002e28e"/>
|
||||
</style:style>
|
||||
@@ -1228,50 +1234,62 @@
|
||||
<style:text-properties fo:font-size="10pt" officeooo:rsid="00064b83"/>
|
||||
</style:style>
|
||||
<style:style style:name="T9" style:family="text">
|
||||
<style:text-properties fo:color="#b85c00" loext:opacity="100%"/>
|
||||
<style:text-properties fo:font-size="10pt" officeooo:rsid="0007af22"/>
|
||||
</style:style>
|
||||
<style:style style:name="T10" style:family="text">
|
||||
<style:text-properties fo:color="#127622" loext:opacity="100%"/>
|
||||
<style:text-properties fo:color="#b85c00" loext:opacity="100%"/>
|
||||
</style:style>
|
||||
<style:style style:name="T11" style:family="text">
|
||||
<style:text-properties fo:color="#000000" loext:opacity="100%"/>
|
||||
<style:text-properties fo:color="#127622" loext:opacity="100%"/>
|
||||
</style:style>
|
||||
<style:style style:name="T12" style:family="text">
|
||||
<style:text-properties fo:color="#000000" loext:opacity="100%" style:font-name="Liberation Mono" fo:font-size="10pt" officeooo:rsid="00048e47" style:font-name-asian="Noto Sans Mono CJK SC" style:font-size-asian="10pt" style:font-name-complex="Liberation Mono" style:font-size-complex="10pt"/>
|
||||
<style:text-properties fo:color="#000000" loext:opacity="100%"/>
|
||||
</style:style>
|
||||
<style:style style:name="T13" style:family="text">
|
||||
<style:text-properties fo:font-weight="normal" officeooo:rsid="0002e28e" style:font-weight-asian="normal" style:font-weight-complex="normal"/>
|
||||
<style:text-properties fo:color="#000000" loext:opacity="100%" style:font-name="Liberation Mono" fo:font-size="10pt" officeooo:rsid="00048e47" style:font-name-asian="Noto Sans Mono CJK SC" style:font-size-asian="10pt" style:font-name-complex="Liberation Mono" style:font-size-complex="10pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="T14" style:family="text">
|
||||
<style:text-properties style:font-name="Liberation Sans" fo:font-size="18.2000007629395pt" fo:font-weight="bold" officeooo:rsid="0002e28e" style:font-name-asian="Noto Sans CJK SC" style:font-size-asian="18.2000007629395pt" style:font-weight-asian="bold" style:font-name-complex="FreeSans" style:font-size-complex="18.2000007629395pt" style:font-weight-complex="bold"/>
|
||||
<style:text-properties fo:font-weight="normal" officeooo:rsid="0002e28e" style:font-weight-asian="normal" style:font-weight-complex="normal"/>
|
||||
</style:style>
|
||||
<style:style style:name="T15" style:family="text">
|
||||
<style:text-properties style:font-name="Liberation Sans" fo:font-size="16.1000003814697pt" fo:font-weight="bold" style:font-name-asian="Noto Sans CJK SC" style:font-size-asian="16.1000003814697pt" style:font-weight-asian="bold" style:font-name-complex="FreeSans" style:font-size-complex="16.1000003814697pt" style:font-weight-complex="bold"/>
|
||||
<style:text-properties style:font-name="Liberation Sans" fo:font-size="18.2000007629395pt" fo:font-weight="bold" officeooo:rsid="0002e28e" style:font-name-asian="Noto Sans CJK SC" style:font-size-asian="18.2000007629395pt" style:font-weight-asian="bold" style:font-name-complex="FreeSans" style:font-size-complex="18.2000007629395pt" style:font-weight-complex="bold"/>
|
||||
</style:style>
|
||||
<style:style style:name="T16" style:family="text">
|
||||
<style:text-properties style:font-name="Liberation Sans" fo:font-size="16.1000003814697pt" fo:font-weight="bold" officeooo:rsid="00048e47" style:font-name-asian="Noto Sans CJK SC" style:font-size-asian="16.1000003814697pt" style:font-weight-asian="bold" style:font-name-complex="FreeSans" style:font-size-complex="16.1000003814697pt" style:font-weight-complex="bold"/>
|
||||
<style:text-properties style:font-name="Liberation Sans" fo:font-size="16.1000003814697pt" fo:font-weight="bold" style:font-name-asian="Noto Sans CJK SC" style:font-size-asian="16.1000003814697pt" style:font-weight-asian="bold" style:font-name-complex="FreeSans" style:font-size-complex="16.1000003814697pt" style:font-weight-complex="bold"/>
|
||||
</style:style>
|
||||
<style:style style:name="T17" style:family="text">
|
||||
<style:text-properties style:font-name="Liberation Sans" fo:font-size="14.1000003814697pt" fo:font-weight="bold" officeooo:rsid="0004ff85" style:font-name-asian="Noto Sans CJK SC" style:font-size-asian="14.1000003814697pt" style:font-weight-asian="bold" style:font-name-complex="FreeSans" style:font-size-complex="14.1000003814697pt" style:font-weight-complex="bold"/>
|
||||
<style:text-properties style:font-name="Liberation Sans" fo:font-size="16.1000003814697pt" fo:font-weight="bold" officeooo:rsid="00048e47" style:font-name-asian="Noto Sans CJK SC" style:font-size-asian="16.1000003814697pt" style:font-weight-asian="bold" style:font-name-complex="FreeSans" style:font-size-complex="16.1000003814697pt" style:font-weight-complex="bold"/>
|
||||
</style:style>
|
||||
<style:style style:name="T18" style:family="text">
|
||||
<style:text-properties officeooo:rsid="00048e47"/>
|
||||
<style:text-properties style:font-name="Liberation Sans" fo:font-size="14.1000003814697pt" fo:font-weight="bold" officeooo:rsid="0004ff85" style:font-name-asian="Noto Sans CJK SC" style:font-size-asian="14.1000003814697pt" style:font-weight-asian="bold" style:font-name-complex="FreeSans" style:font-size-complex="14.1000003814697pt" style:font-weight-complex="bold"/>
|
||||
</style:style>
|
||||
<style:style style:name="T19" style:family="text">
|
||||
<style:text-properties fo:color="#c9211e" loext:opacity="100%"/>
|
||||
<style:text-properties officeooo:rsid="00048e47"/>
|
||||
</style:style>
|
||||
<style:style style:name="T20" style:family="text">
|
||||
<style:text-properties officeooo:rsid="0004ff85"/>
|
||||
<style:text-properties fo:color="#c9211e" loext:opacity="100%"/>
|
||||
</style:style>
|
||||
<style:style style:name="T21" style:family="text">
|
||||
<style:text-properties style:font-name="Liberation Mono" officeooo:rsid="0004ff85"/>
|
||||
<style:text-properties officeooo:rsid="0004ff85"/>
|
||||
</style:style>
|
||||
<style:style style:name="T22" style:family="text">
|
||||
<style:text-properties style:font-name="Liberation Mono" fo:font-size="9pt" officeooo:rsid="0004ff85" style:font-size-asian="9pt" style:font-size-complex="9pt"/>
|
||||
<style:text-properties style:font-name="Liberation Mono" officeooo:rsid="0004ff85"/>
|
||||
</style:style>
|
||||
<style:style style:name="T23" style:family="text">
|
||||
<style:text-properties style:font-name="Liberation Mono" fo:font-size="9pt" officeooo:rsid="0004ff85" style:font-size-asian="9pt" style:font-size-complex="9pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="T24" style:family="text">
|
||||
<style:text-properties officeooo:rsid="00064b83"/>
|
||||
</style:style>
|
||||
<style:style style:name="T25" style:family="text">
|
||||
<style:text-properties officeooo:rsid="0007af22"/>
|
||||
</style:style>
|
||||
<style:style style:name="T26" style:family="text">
|
||||
<style:text-properties officeooo:rsid="00098d04"/>
|
||||
</style:style>
|
||||
<style:style style:name="T27" style:family="text">
|
||||
<style:text-properties officeooo:rsid="000a9c32"/>
|
||||
</style:style>
|
||||
<style:page-layout style:name="pm1">
|
||||
<style:page-layout-properties fo:page-width="21.001cm" fo:page-height="29.7cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="2cm" fo:margin-bottom="2cm" fo:margin-left="2cm" fo:margin-right="2cm" style:writing-mode="lr-tb" style:layout-grid-color="#c0c0c0" style:layout-grid-lines="20" style:layout-grid-base-height="0.706cm" style:layout-grid-ruby-height="0.353cm" style:layout-grid-mode="none" style:layout-grid-ruby-below="false" style:layout-grid-print="false" style:layout-grid-display="false" style:footnote-max-height="0cm">
|
||||
<style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:line-style="solid" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
|
||||
@@ -1293,12 +1311,12 @@
|
||||
<text:sequence-decl text:display-outline-level="0" text:name="Figure"/>
|
||||
</text:sequence-decls>
|
||||
<text:p text:style-name="P49">novelWriter</text:p>
|
||||
<text:p text:style-name="P22">Project File Format 1.5 <text:span text:style-name="T1">Spec</text:span><text:span text:style-name="T20">ification</text:span></text:p>
|
||||
<text:p text:style-name="P22">Project File Format 1.5 <text:span text:style-name="T1">Spec</text:span><text:span text:style-name="T21">ification</text:span></text:p>
|
||||
<text:p text:style-name="P42"/>
|
||||
<text:p text:style-name="P47">This document covers the file format specification for the 1.5 file format for novelWriter project files. See the <text:a xlink:type="simple" xlink:href="https://novelwriter.readthedocs.io/" text:style-name="Internet_20_link" text:visited-style-name="Visited_20_Internet_20_Link">documentation</text:a><text:note text:id="ftn1" text:note-class="footnote"><text:note-citation>1</text:note-citation><text:note-body>
|
||||
<text:p text:style-name="P50">See: <text:a xlink:type="simple" xlink:href="https://novelwriter.readthedocs.io/" text:style-name="Internet_20_link" text:visited-style-name="Visited_20_Internet_20_Link">https://novelwriter.readthedocs.io/</text:a></text:p></text:note-body></text:note> for a full description of the app’s functionality.</text:p>
|
||||
<text:p text:style-name="P47">The target audience of this document is developers who intend to write a tool or script that generates valid novelWriter project files from data from other applications, or for templating purposes.</text:p>
|
||||
<text:p text:style-name="P47">Note that flags are generally written out as yes/no values, but also true/false and on/off are understood by the application. The None value that occasionally occurs is the text representation of the Python None value, and must be used in those cases.</text:p>
|
||||
<text:p text:style-name="P47">Note that flags are generally written out as yes/no values, but also true/false and on/off are understood by the application. The None value that occasionally occurs <text:span text:style-name="T25">in actual project files</text:span> is the text representation of the Python None value, <text:span text:style-name="T9">and indicates that there is no value set</text:span>.</text:p>
|
||||
<text:h text:style-name="P2" text:outline-level="1">XML Root</text:h>
|
||||
<text:p text:style-name="P43">Tag: <text:tab/><text:span text:style-name="T2">novelWriterXML</text:span></text:p>
|
||||
<text:p text:style-name="P45">The root tag of a novelWriter project file must be named “<text:span text:style-name="T2">novelWriterXML</text:span>”. This value is case sensitive. The <text:span text:style-name="T2">fileVersion</text:span> attribute must also be set to the appropriate format version in order to be parsed correctly.</text:p>
|
||||
@@ -1318,7 +1336,7 @@
|
||||
<text:p text:style-name="P35">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250146032">
|
||||
<table:table-row table:style-name="TableLine94488389152192">
|
||||
<table:table-cell table:style-name="Table1.A2" office:value-type="string">
|
||||
<text:p text:style-name="P23">appVersion</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1329,7 +1347,7 @@
|
||||
<text:p text:style-name="P27">A string representation of the novelWriter version used to write the file. The value is not required, but is used to report to the user when the file format is converted.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250148032">
|
||||
<table:table-row table:style-name="TableLine94488389154192">
|
||||
<table:table-cell table:style-name="Table1.A4" office:value-type="string">
|
||||
<text:p text:style-name="P23">hexVersion</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1340,7 +1358,7 @@
|
||||
<text:p text:style-name="P27">A hex representation of the novelWriter version used to write the file. The value is used to check if the project is opened by a lower version than was used to write it, which issues a warning. Defaults to 0x0.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250150528">
|
||||
<table:table-row table:style-name="TableLine94488389156688">
|
||||
<table:table-cell table:style-name="Table1.A4" office:value-type="string">
|
||||
<text:p text:style-name="P23">fileVersion</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1348,10 +1366,10 @@
|
||||
<text:p text:style-name="P27">Yes</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table1.C4" office:value-type="string">
|
||||
<text:p text:style-name="P27">The file format version used when writing the project file. This determines how the file is parsed, so it is important that it is set correctly.</text:p>
|
||||
<text:p text:style-name="P27">The file format version used when writing the project file. This determines how the file is parsed, so it is important that it is set correctly. <text:span text:style-name="T25">Valid values are “1.0”, “1.1”, “1.2”, “1.3”, “1.4”, and “1.5”.</text:span></text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250152512">
|
||||
<table:table-row table:style-name="TableLine94488389158672">
|
||||
<table:table-cell table:style-name="Table1.A5" office:value-type="string">
|
||||
<text:p text:style-name="P23">timeStamp</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1364,12 +1382,12 @@
|
||||
</table:table-row>
|
||||
</table:table>
|
||||
<text:h text:style-name="P12" text:outline-level="5">Example</text:h>
|
||||
<text:p text:style-name="P20"><novelWriterXML <text:span text:style-name="T9">appVersion</text:span>=<text:span text:style-name="T10">"2.0-rc1" </text:span><text:span text:style-name="T9">hexVersion</text:span>=<text:span text:style-name="T10">"0x020000c1"</text:span></text:p>
|
||||
<text:p text:style-name="P20"><text:span text:style-name="T10"><text:s text:c="16"/></text:span><text:span text:style-name="T9">fileVersion</text:span>=<text:span text:style-name="T10">"1.5" </text:span><text:span text:style-name="T9">timeStamp</text:span>=<text:span text:style-name="T10">"2022-11-05 17:46:51"</text:span>></text:p>
|
||||
<text:p text:style-name="P20"><novelWriterXML <text:span text:style-name="T10">appVersion</text:span>=<text:span text:style-name="T11">"2.0-rc1" </text:span><text:span text:style-name="T10">hexVersion</text:span>=<text:span text:style-name="T11">"0x020000c1"</text:span></text:p>
|
||||
<text:p text:style-name="P20"><text:span text:style-name="T11"><text:s text:c="16"/></text:span><text:span text:style-name="T10">fileVersion</text:span>=<text:span text:style-name="T11">"1.5" </text:span><text:span text:style-name="T10">timeStamp</text:span>=<text:span text:style-name="T11">"2022-11-05 17:46:51"</text:span>></text:p>
|
||||
<text:h text:style-name="P53" text:outline-level="1"/>
|
||||
<text:h text:style-name="P4" text:outline-level="1">Project <text:span text:style-name="T1">Node</text:span></text:h>
|
||||
<text:p text:style-name="P43">Tag: <text:tab/><text:span text:style-name="T2">project</text:span></text:p>
|
||||
<text:p text:style-name="P45">The project section is a level one node under the root. It stores the primary settings for the project. The only required values are the <text:span text:style-name="T2">id</text:span> attribute and the <text:span text:style-name="T2">name</text:span> value. All other entries are set to default values during parsing and can be ommitted from the XML.</text:p>
|
||||
<text:p text:style-name="P45">The project section is a level one node under the root. It stores the primary settings for the project. The only required values are the <text:span text:style-name="T2">id</text:span> attribute and the <text:span text:style-name="T2">name</text:span> value. All other entries are set to default values during parsing <text:span text:style-name="T25">if ommitted from</text:span> the XML.</text:p>
|
||||
<text:h text:style-name="P12" text:outline-level="5">Attributes</text:h>
|
||||
<table:table table:name="Table2" table:style-name="Table2">
|
||||
<table:table-column table:style-name="Table2.A"/>
|
||||
@@ -1386,7 +1404,7 @@
|
||||
<text:p text:style-name="P36">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250185456">
|
||||
<table:table-row table:style-name="TableLine94488389192048">
|
||||
<table:table-cell table:style-name="Table2.A2" office:value-type="string">
|
||||
<text:p text:style-name="P25">id</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1394,10 +1412,10 @@
|
||||
<text:p text:style-name="P31">Yes</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table2.C2" office:value-type="string">
|
||||
<text:p text:style-name="P31">A UUID that is unique for the project and does not change during the lifetime of the project. It is used by novelWriter for to keep track of temporary files and associate cross-project settings with different projects without relying on the project name.</text:p>
|
||||
<text:p text:style-name="P31">A UUID that is unique for the project and does not change during the lifetime of the project. It is used by novelWriter to keep track of temporary files and <text:span text:style-name="T25">to </text:span>associate cross-project settings with <text:span text:style-name="T25">specific</text:span> projects without relying on the project name.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250187264">
|
||||
<table:table-row table:style-name="TableLine94488389193728">
|
||||
<table:table-cell table:style-name="Table2.A4" office:value-type="string">
|
||||
<text:p text:style-name="P23">saveCount</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1408,7 +1426,7 @@
|
||||
<text:p text:style-name="P27">A number representing the number of times the project file has been written as a result of user interaction with the application.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250189632">
|
||||
<table:table-row table:style-name="TableLine94488389196096">
|
||||
<table:table-cell table:style-name="Table2.A4" office:value-type="string">
|
||||
<text:p text:style-name="P23">autoCount</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1419,7 +1437,7 @@
|
||||
<text:p text:style-name="P27">A number representing the number of times the project file has been written as a result of internal timed automatic operations of the application.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250191616">
|
||||
<table:table-row table:style-name="TableLine94488389198080">
|
||||
<table:table-cell table:style-name="Table2.A5" office:value-type="string">
|
||||
<text:p text:style-name="P23">editTime</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1447,7 +1465,7 @@
|
||||
<text:p text:style-name="P36">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250208496">
|
||||
<table:table-row table:style-name="TableLine94488389214528">
|
||||
<table:table-cell table:style-name="Table3.A2" office:value-type="string">
|
||||
<text:p text:style-name="P25">name</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1458,7 +1476,7 @@
|
||||
<text:p text:style-name="P31">The name the user has given to the project.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250210048">
|
||||
<table:table-row table:style-name="TableLine94488389216080">
|
||||
<table:table-cell table:style-name="Table3.A4" office:value-type="string">
|
||||
<text:p text:style-name="P23">title</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1469,7 +1487,7 @@
|
||||
<text:p text:style-name="P27">The title the user has given to the project, which may differ from the project name. The value is used in some places in the user interface, and can be added to manuscript builds.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250212544">
|
||||
<table:table-row table:style-name="TableLine94488389218576">
|
||||
<table:table-cell table:style-name="Table3.A4" office:value-type="string">
|
||||
<text:p text:style-name="P23">author</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1482,16 +1500,16 @@
|
||||
</table:table-row>
|
||||
</table:table>
|
||||
<text:h text:style-name="P12" text:outline-level="5">Example</text:h>
|
||||
<text:p text:style-name="P20"><project <text:span text:style-name="T9">id</text:span>=<text:span text:style-name="T10">"e2be99af-f9bf-4403-857a-c3d1ac25abea"</text:span></text:p>
|
||||
<text:p text:style-name="P20"><text:s text:c="9"/><text:span text:style-name="T9">saveCount</text:span>=<text:span text:style-name="T10">"5"</text:span> <text:span text:style-name="T9">autoCount</text:span>=<text:span text:style-name="T10">"10"</text:span> <text:span text:style-name="T9">editTime</text:span>=<text:span text:style-name="T10">"1000"</text:span>></text:p>
|
||||
<text:p text:style-name="P20"><text:s text:c="4"/><name><text:span text:style-name="T11">Sample Project</text:span></name></text:p>
|
||||
<text:p text:style-name="P20"><text:s text:c="4"/><title><text:span text:style-name="T11">Sample Project</text:span></title></text:p>
|
||||
<text:p text:style-name="P20"><text:s text:c="4"/><author><text:span text:style-name="T11">Jane Smith</text:span></author></text:p>
|
||||
<text:p text:style-name="P20"><project <text:span text:style-name="T10">id</text:span>=<text:span text:style-name="T11">"e2be99af-f9bf-4403-857a-c3d1ac25abea"</text:span></text:p>
|
||||
<text:p text:style-name="P20"><text:s text:c="9"/><text:span text:style-name="T10">saveCount</text:span>=<text:span text:style-name="T11">"5"</text:span> <text:span text:style-name="T10">autoCount</text:span>=<text:span text:style-name="T11">"10"</text:span> <text:span text:style-name="T10">editTime</text:span>=<text:span text:style-name="T11">"1000"</text:span>></text:p>
|
||||
<text:p text:style-name="P20"><text:s text:c="4"/><name><text:span text:style-name="T12">Sample Project</text:span></name></text:p>
|
||||
<text:p text:style-name="P20"><text:s text:c="4"/><title><text:span text:style-name="T12">Sample Project</text:span></title></text:p>
|
||||
<text:p text:style-name="P20"><text:s text:c="4"/><author><text:span text:style-name="T12">Jane Smith</text:span></author></text:p>
|
||||
<text:p text:style-name="P20"></project></text:p>
|
||||
<text:h text:style-name="P53" text:outline-level="1"/>
|
||||
<text:h text:style-name="P4" text:outline-level="1">Settings <text:span text:style-name="T14">Node</text:span></text:h>
|
||||
<text:h text:style-name="P4" text:outline-level="1">Settings <text:span text:style-name="T15">Node</text:span></text:h>
|
||||
<text:p text:style-name="P43">Tag: <text:tab/><text:span text:style-name="T3">settings</text:span></text:p>
|
||||
<text:p text:style-name="P45">The <text:span text:style-name="T6">settings</text:span> section is a level one node under the root. It stores the various runtime values for the project, and the settings available from the Project Settings panel. None of these settings are required, and if missing, will be set to default values. <text:span text:style-name="T20">The entire settings section can thus be ommitted.</text:span></text:p>
|
||||
<text:p text:style-name="P45">The <text:span text:style-name="T6">settings</text:span> section is a level one node under the root. It stores the various runtime values for the project, and the settings available from the Project Settings panel. None of these settings are required, and if missing, will be set to default values. <text:span text:style-name="T21">The entire settings section can thus be ommitted.</text:span></text:p>
|
||||
<text:h text:style-name="P12" text:outline-level="5">Attributes</text:h>
|
||||
<text:p text:style-name="P45">None</text:p>
|
||||
<text:h text:style-name="P12" text:outline-level="5">Values</text:h>
|
||||
@@ -1510,7 +1528,7 @@
|
||||
<text:p text:style-name="P36">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250253184">
|
||||
<table:table-row table:style-name="TableLine94488389262576">
|
||||
<table:table-cell table:style-name="Table5.A2" office:value-type="string">
|
||||
<text:p text:style-name="P25">doBackup</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1521,7 +1539,7 @@
|
||||
<text:p text:style-name="P31">User-controlled setting for whether or not to run backup when the project is closed.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250254736">
|
||||
<table:table-row table:style-name="TableLine94488389264128">
|
||||
<table:table-cell table:style-name="Table5.A3" office:value-type="string">
|
||||
<text:p text:style-name="P23">language</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1529,10 +1547,10 @@
|
||||
<text:p text:style-name="P27">No</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table5.C3" office:value-type="string">
|
||||
<text:p text:style-name="P27">The language used when building the manuscript. The settings is controlled from the Build Novel Project tool.</text:p>
|
||||
<text:p text:style-name="P27">The language used when building the manuscript. The setting is controlled from the Build Novel Project tool.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250257232">
|
||||
<table:table-row table:style-name="TableLine94488389266624">
|
||||
<table:table-cell table:style-name="Table5.A4" office:value-type="string">
|
||||
<text:p text:style-name="P23">spellChecking</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1545,7 +1563,7 @@
|
||||
<text:p text:style-name="P30">Attribute <text:span text:style-name="T2">auto</text:span>: A flag determining whether the spell checking is automatic or not.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250259776">
|
||||
<table:table-row table:style-name="TableLine94488389269168">
|
||||
<table:table-cell table:style-name="Table5.A5" office:value-type="string">
|
||||
<text:p text:style-name="P23">lastHandle</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1556,7 +1574,7 @@
|
||||
<text:p text:style-name="P27">An auto-generated list of the last documents open in the editor and viewer, and which novel root folder was last viewed in the Novel Tree and Outline <text:span text:style-name="T6">View</text:span>. These are saved as key/value pairs. See separate section for how they are stored as XML.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250262160">
|
||||
<table:table-row table:style-name="TableLine94488389271552">
|
||||
<table:table-cell table:style-name="Table5.A6" office:value-type="string">
|
||||
<text:p text:style-name="P23">autoReplace</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1564,10 +1582,10 @@
|
||||
<text:p text:style-name="P27">No</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table5.C6" office:value-type="string">
|
||||
<text:p text:style-name="P27">The entries of the auto-replace feature available from the Project Settings. These are saved as key/value pairs. See separate section for how they are stored as XML.</text:p>
|
||||
<text:p text:style-name="P27">The entries of the auto-replace feature available from Project Settings. These are saved as key/value pairs. See separate section for how they are stored as XML.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250264880">
|
||||
<table:table-row table:style-name="TableLine94488389274272">
|
||||
<table:table-cell table:style-name="Table5.A7" office:value-type="string">
|
||||
<text:p text:style-name="P23">titleFormat</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1578,7 +1596,7 @@
|
||||
<text:p text:style-name="P27">The formatting specifications set by the user in the Build Novel Project tool for formatting headers in the manuscript. These are saved as key/value pairs. See separate section for how they are stored as XML.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250267376">
|
||||
<table:table-row table:style-name="TableLine94488389276768">
|
||||
<table:table-cell table:style-name="Table5.A8" office:value-type="string">
|
||||
<text:p text:style-name="P23">status</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1589,7 +1607,7 @@
|
||||
<text:p text:style-name="P27">The status labels as defined by the user in Project Settings. <text:span text:style-name="T6">These are saved as special key/value pars. See separate section for how they are stored as XML.</text:span></text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250269872">
|
||||
<table:table-row table:style-name="TableLine94488389279264">
|
||||
<table:table-cell table:style-name="Table5.A9" office:value-type="string">
|
||||
<text:p text:style-name="P23">importance</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1603,9 +1621,9 @@
|
||||
</table:table>
|
||||
<text:h text:style-name="P12" text:outline-level="5">Example</text:h>
|
||||
<text:p text:style-name="P17"><settings></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><doBackup><text:span text:style-name="T12">yes</text:span></doBackup></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><language><text:span text:style-name="T11">en_GB</text:span></language></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="4"/><spellChecking <text:span text:style-name="T9">auto</text:span>=<text:span text:style-name="T10">"yes"</text:span>><text:span text:style-name="T11">en_GB</text:span></spellChecking></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><doBackup><text:span text:style-name="T13">yes</text:span></doBackup></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><language><text:span text:style-name="T12">en_GB</text:span></language></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="4"/><spellChecking <text:span text:style-name="T10">auto</text:span>=<text:span text:style-name="T11">"yes"</text:span>><text:span text:style-name="T12">en_GB</text:span></spellChecking></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><lastHandle /></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><autoReplace /></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><titleFormat /></text:p>
|
||||
@@ -1613,7 +1631,7 @@
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><importance /></text:p>
|
||||
<text:p text:style-name="P17"></settings></text:p>
|
||||
<text:h text:style-name="P56" text:outline-level="2"/>
|
||||
<text:h text:style-name="P7" text:outline-level="2">Key/Value <text:span text:style-name="T15">Nodes</text:span></text:h>
|
||||
<text:h text:style-name="P7" text:outline-level="2">Key/Value <text:span text:style-name="T16">Nodes</text:span></text:h>
|
||||
<text:p text:style-name="P43">The key/value nodes are used for <text:span text:style-name="T2">lastHandle</text:span>, <text:span text:style-name="T2">autoReplace</text:span> and <text:span text:style-name="T2">titleFormat</text:span> settings. The lookup key is stored as an attribute, and the value is the text of the node.</text:p>
|
||||
<text:h text:style-name="P12" text:outline-level="5">Attributes</text:h>
|
||||
<table:table table:name="Table6" table:style-name="Table6">
|
||||
@@ -1631,7 +1649,7 @@
|
||||
<text:p text:style-name="P36">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250291568">
|
||||
<table:table-row table:style-name="TableLine94488389306704">
|
||||
<table:table-cell table:style-name="Table6.A2" office:value-type="string">
|
||||
<text:p text:style-name="P25">key</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1645,13 +1663,13 @@
|
||||
</table:table>
|
||||
<text:h text:style-name="P12" text:outline-level="5">Example</text:h>
|
||||
<text:p text:style-name="P17"><lastHandle></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"editor"</text:span>><text:span text:style-name="T11">636b6aa9b697b</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"viewer"</text:span>><text:span text:style-name="T11">636b6aa9b697b</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"novelTree"</text:span>><text:span text:style-name="T11">7031beac91f75</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"outline"</text:span>><text:span text:style-name="T11">7031beac91f75</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"editor"</text:span>><text:span text:style-name="T12">636b6aa9b697b</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"viewer"</text:span>><text:span text:style-name="T12">636b6aa9b697b</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"novelTree"</text:span>><text:span text:style-name="T12">7031beac91f75</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"outline"</text:span>><text:span text:style-name="T12">7031beac91f75</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"></lastHandle></text:p>
|
||||
<text:h text:style-name="P9" text:outline-level="2">Status/Importance Key/Value Nodes</text:h>
|
||||
<text:p text:style-name="P43">The status and importance settings anre stored as key/value nodes with additional data attributes.</text:p>
|
||||
<text:p text:style-name="P43">The status and importance settings are stored as key/value nodes with additional data attributes. <text:span text:style-name="T25">The label of the status or importance setting is saved as the node text value.</text:span></text:p>
|
||||
<text:h text:style-name="P12" text:outline-level="5">Attributes</text:h>
|
||||
<table:table table:name="Table4" table:style-name="Table4">
|
||||
<table:table-column table:style-name="Table4.A"/>
|
||||
@@ -1668,7 +1686,7 @@
|
||||
<text:p text:style-name="P36">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250327696">
|
||||
<table:table-row table:style-name="TableLine94488389335056">
|
||||
<table:table-cell table:style-name="Table4.A2" office:value-type="string">
|
||||
<text:p text:style-name="P25">key</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1676,10 +1694,10 @@
|
||||
<text:p text:style-name="P31">Yes</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table4.C2" office:value-type="string">
|
||||
<text:p text:style-name="P31">The lookup key. For status labels, it must consist of an “s” followed by six hexadecimal numbers. These must be unique for each entry. For importance labels it must consist of an “i” followed by six hexadecimal numbers.</text:p>
|
||||
<text:p text:style-name="P31">The lookup key. For status labels, it must consist of an “s” followed by six hexadecimal numbers. For importance labels it must consist of an “i” followed by six hexadecimal numbers. <text:span text:style-name="T25">Each key string must be unique. Internally, they are random numbers, but also sequential values are valid.</text:span></text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250329376">
|
||||
<table:table-row table:style-name="TableLine94488389336736">
|
||||
<table:table-cell table:style-name="Table4.A4" office:value-type="string">
|
||||
<text:p text:style-name="P23">count</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1690,7 +1708,7 @@
|
||||
<text:p text:style-name="P27">A record of the number of times each label is used in the project content.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250331808">
|
||||
<table:table-row table:style-name="TableLine94488389339168">
|
||||
<table:table-cell table:style-name="Table4.A4" office:value-type="string">
|
||||
<text:p text:style-name="P23">red</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1701,7 +1719,7 @@
|
||||
<text:p text:style-name="P27">A number between 0 and 255 representing the red component of the label colour.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250333792">
|
||||
<table:table-row table:style-name="TableLine94488389341152">
|
||||
<table:table-cell table:style-name="Table4.A5" office:value-type="string">
|
||||
<text:p text:style-name="P23">green</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1712,7 +1730,7 @@
|
||||
<text:p text:style-name="P27">A number between 0 and 255 representing the <text:span text:style-name="T6">green</text:span> component of the label colour.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250336288">
|
||||
<table:table-row table:style-name="TableLine94488389343648">
|
||||
<table:table-cell table:style-name="Table4.A6" office:value-type="string">
|
||||
<text:p text:style-name="P23">blue</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1726,25 +1744,25 @@
|
||||
</table:table>
|
||||
<text:h text:style-name="P13" text:outline-level="5">Example</text:h>
|
||||
<text:p text:style-name="P17"><status></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"sf12341"</text:span> <text:span text:style-name="T9">count</text:span>=<text:span text:style-name="T10">"4"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T9">red</text:span>=<text:span text:style-name="T10">"100"</text:span> <text:span text:style-name="T9">green</text:span>=<text:span text:style-name="T10">"100"</text:span> <text:span text:style-name="T9">blue</text:span>=<text:span text:style-name="T10">"100"</text:span>><text:span text:style-name="T11">New</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"sd51c5b"</text:span> <text:span text:style-name="T9">count</text:span>=<text:span text:style-name="T10">"0"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T9">red</text:span>=<text:span text:style-name="T10">"193"</text:span> <text:span text:style-name="T9">green</text:span>=<text:span text:style-name="T10">"129"</text:span> <text:span text:style-name="T9">blue</text:span>=<text:span text:style-name="T10">"0"</text:span>><text:span text:style-name="T11">Draft</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"s78ea90"</text:span> <text:span text:style-name="T9">count</text:span>=<text:span text:style-name="T10">"1"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T9">red</text:span>=<text:span text:style-name="T10">"58"</text:span> <text:span text:style-name="T9">green</text:span>=<text:span text:style-name="T10">"180"</text:span> <text:span text:style-name="T9">blue</text:span>=<text:span text:style-name="T10">"58"</text:span>><text:span text:style-name="T11">Finished</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"sf12341"</text:span> <text:span text:style-name="T10">count</text:span>=<text:span text:style-name="T11">"4"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T10">red</text:span>=<text:span text:style-name="T11">"100"</text:span> <text:span text:style-name="T10">green</text:span>=<text:span text:style-name="T11">"100"</text:span> <text:span text:style-name="T10">blue</text:span>=<text:span text:style-name="T11">"100"</text:span>><text:span text:style-name="T12">New</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"sd51c5b"</text:span> <text:span text:style-name="T10">count</text:span>=<text:span text:style-name="T11">"0"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T10">red</text:span>=<text:span text:style-name="T11">"193"</text:span> <text:span text:style-name="T10">green</text:span>=<text:span text:style-name="T11">"129"</text:span> <text:span text:style-name="T10">blue</text:span>=<text:span text:style-name="T11">"0"</text:span>><text:span text:style-name="T12">Draft</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"s78ea90"</text:span> <text:span text:style-name="T10">count</text:span>=<text:span text:style-name="T11">"1"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T10">red</text:span>=<text:span text:style-name="T11">"58"</text:span> <text:span text:style-name="T10">green</text:span>=<text:span text:style-name="T11">"180"</text:span> <text:span text:style-name="T10">blue</text:span>=<text:span text:style-name="T11">"58"</text:span>><text:span text:style-name="T12">Finished</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"></status></text:p>
|
||||
<text:p text:style-name="P17"><importance></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"ia857f0"</text:span> <text:span text:style-name="T9">count</text:span>=<text:span text:style-name="T10">"5"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T9">red</text:span>=<text:span text:style-name="T10">"100"</text:span> <text:span text:style-name="T9">green</text:span>=<text:span text:style-name="T10">"100"</text:span> <text:span text:style-name="T9">blue</text:span>=<text:span text:style-name="T10">"100"</text:span>><text:span text:style-name="T11">None</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"icfb3a5"</text:span> <text:span text:style-name="T9">count</text:span>=<text:span text:style-name="T10">"2"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T9">red</text:span>=<text:span text:style-name="T10">"0"</text:span> <text:span text:style-name="T9">green</text:span>=<text:span text:style-name="T10">"122"</text:span> <text:span text:style-name="T9">blue</text:span>=<text:span text:style-name="T10">"188"</text:span>><text:span text:style-name="T11">Minor</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T9">key</text:span>=<text:span text:style-name="T10">"i2d7a54"</text:span> <text:span text:style-name="T9">count</text:span>=<text:span text:style-name="T10">"2"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T9">red</text:span>=<text:span text:style-name="T10">"21"</text:span> <text:span text:style-name="T9">green</text:span>=<text:span text:style-name="T10">"0"</text:span> <text:span text:style-name="T9">blue</text:span>=<text:span text:style-name="T10">"180"</text:span>><text:span text:style-name="T11">Major</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"ia857f0"</text:span> <text:span text:style-name="T10">count</text:span>=<text:span text:style-name="T11">"5"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T10">red</text:span>=<text:span text:style-name="T11">"100"</text:span> <text:span text:style-name="T10">green</text:span>=<text:span text:style-name="T11">"100"</text:span> <text:span text:style-name="T10">blue</text:span>=<text:span text:style-name="T11">"100"</text:span>><text:span text:style-name="T12">None</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"icfb3a5"</text:span> <text:span text:style-name="T10">count</text:span>=<text:span text:style-name="T11">"2"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T10">red</text:span>=<text:span text:style-name="T11">"0"</text:span> <text:span text:style-name="T10">green</text:span>=<text:span text:style-name="T11">"122"</text:span> <text:span text:style-name="T10">blue</text:span>=<text:span text:style-name="T11">"188"</text:span>><text:span text:style-name="T12">Minor</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="4"/><entry <text:span text:style-name="T10">key</text:span>=<text:span text:style-name="T11">"i2d7a54"</text:span> <text:span text:style-name="T10">count</text:span>=<text:span text:style-name="T11">"2"</text:span></text:p>
|
||||
<text:p text:style-name="P17"><text:s text:c="11"/><text:span text:style-name="T10">red</text:span>=<text:span text:style-name="T11">"21"</text:span> <text:span text:style-name="T10">green</text:span>=<text:span text:style-name="T11">"0"</text:span> <text:span text:style-name="T10">blue</text:span>=<text:span text:style-name="T11">"180"</text:span>><text:span text:style-name="T12">Major</text:span></entry></text:p>
|
||||
<text:p text:style-name="P17"></importance></text:p>
|
||||
<text:h text:style-name="P56" text:outline-level="2"/>
|
||||
<text:h text:style-name="P5" text:outline-level="1">Content Node</text:h>
|
||||
<text:p text:style-name="P44">Tag: <text:tab/><text:span text:style-name="T4">content</text:span></text:p>
|
||||
<text:p text:style-name="P46">The <text:span text:style-name="T7">content</text:span> section is a level one node under the root. It stores <text:span text:style-name="T18">all the project items of the project. The items are stored in the order in which they appear in the project tree, so altering the order will affect the structure. The attribute with the order number is not used when processing the data. It is mainly written to the XML for debugging purposes.</text:span></text:p>
|
||||
<text:p text:style-name="P46">The <text:span text:style-name="T7">content</text:span> section is a level one node under the root. It stores <text:span text:style-name="T19">all the project items of the project. The items are stored in the order in which they appear in the project tree, so altering the order will affect the </text:span><text:span text:style-name="T26">project</text:span><text:span text:style-name="T19"> structure. The attribute with the order number is not used when processing the data. It is written to the XML for debugging purposes.</text:span></text:p>
|
||||
<text:h text:style-name="P14" text:outline-level="5">Attributes</text:h>
|
||||
<table:table table:name="Table7" table:style-name="Table7">
|
||||
<table:table-column table:style-name="Table7.A"/>
|
||||
@@ -1761,7 +1779,7 @@
|
||||
<text:p text:style-name="P37">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250376112">
|
||||
<table:table-row table:style-name="TableLine94488389386528">
|
||||
<table:table-cell table:style-name="Table7.A3" office:value-type="string">
|
||||
<text:p text:style-name="P24">items</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1772,7 +1790,7 @@
|
||||
<text:p text:style-name="P33">The number of project items in the content section.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250377920">
|
||||
<table:table-row table:style-name="TableLine94488389388336">
|
||||
<table:table-cell table:style-name="Table7.A3" office:value-type="string">
|
||||
<text:p text:style-name="P24">novelWords</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1780,10 +1798,10 @@
|
||||
<text:p text:style-name="P28">No</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table7.C3" office:value-type="string">
|
||||
<text:p text:style-name="P33">The number of words in total for all document nodes layout DOCUMENT. The value defaults to 0, but this number forms the basis of computing writing statistics during a session, so the number should be properly set in order to ensure correct statistics.</text:p>
|
||||
<text:p text:style-name="P33">The number of words in total for all document nodes <text:span text:style-name="T26">with </text:span>layout DOCUMENT. The value defaults to 0, but this number forms the basis of computing writing statistics during a session, so the number should be properly set to ensure correct statistics.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250379728">
|
||||
<table:table-row table:style-name="TableLine94488389390144">
|
||||
<table:table-cell table:style-name="Table7.A4" office:value-type="string">
|
||||
<text:p text:style-name="P24">notesWords</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1791,7 +1809,7 @@
|
||||
<text:p text:style-name="P28">No</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table7.C4" office:value-type="string">
|
||||
<text:p text:style-name="P33">The number of words in total for all document nodes layout NOTE. The value defaults to 0, but this number forms the basis of computing writing statistics during a session, so the number should be properly set in order to ensure correct statistics.</text:p>
|
||||
<text:p text:style-name="P33">The number of words in total for all document nodes <text:span text:style-name="T26">with </text:span>layout NOTE. The value defaults to 0, but this number forms the basis of computing writing statistics during a session, so the number should be properly set to ensure correct statistics.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
</table:table>
|
||||
@@ -1811,7 +1829,7 @@
|
||||
<text:p text:style-name="P37">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250390256">
|
||||
<table:table-row table:style-name="TableLine94488389398960">
|
||||
<table:table-cell table:style-name="Table8.A2" office:value-type="string">
|
||||
<text:p text:style-name="P26">item</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1824,18 +1842,20 @@
|
||||
</table:table-row>
|
||||
</table:table>
|
||||
<text:h text:style-name="P14" text:outline-level="5">Example</text:h>
|
||||
<text:p text:style-name="P18"><content <text:span text:style-name="T9">items</text:span>=<text:span text:style-name="T10">"27"</text:span> <text:span text:style-name="T9">novelWords</text:span>=<text:span text:style-name="T10">"954"</text:span> <text:span text:style-name="T9">notesWords</text:span>=<text:span text:style-name="T10">"409"</text:span>></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="4"/><item <text:span text:style-name="T9">handle</text:span>=<text:span text:style-name="T10">"7031beac91f75"</text:span> <text:span text:style-name="T9">parent</text:span>=<text:span text:style-name="T10">"None"</text:span> <text:span text:style-name="T9">root</text:span>=<text:span text:style-name="T10">"7031beac91f75"</text:span></text:p>
|
||||
<text:p text:style-name="P18"><text:span text:style-name="T9"><text:s text:c="10"/>order</text:span>=<text:span text:style-name="T10">"0"</text:span> <text:span text:style-name="T9">type</text:span>=<text:span text:style-name="T10">"ROOT"</text:span> <text:span text:style-name="T9">class</text:span>=<text:span text:style-name="T10">"NOVEL"</text:span>></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="6"/><meta <text:span text:style-name="T9">expanded</text:span>=<text:span text:style-name="T10">"yes"</text:span>/></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="6"/><name <text:span text:style-name="T9">status</text:span>=<text:span text:style-name="T10">"sc24b8f"</text:span> <text:span text:style-name="T9">import</text:span>=<text:span text:style-name="T10">"ia857f0"</text:span>><text:span text:style-name="T11">Novel</text:span></name></text:p>
|
||||
<text:p text:style-name="P18"><content <text:span text:style-name="T10">items</text:span>=<text:span text:style-name="T11">"27"</text:span> <text:span text:style-name="T10">novelWords</text:span>=<text:span text:style-name="T11">"954"</text:span> <text:span text:style-name="T10">notesWords</text:span>=<text:span text:style-name="T11">"409"</text:span>></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="4"/><item <text:span text:style-name="T10">handle</text:span>=<text:span text:style-name="T11">"7031beac91f75"</text:span> <text:span text:style-name="T10">parent</text:span>=<text:span text:style-name="T11">"None"</text:span> <text:span text:style-name="T10">root</text:span>=<text:span text:style-name="T11">"7031beac91f75"</text:span></text:p>
|
||||
<text:p text:style-name="P18"><text:span text:style-name="T10"><text:s text:c="10"/>order</text:span>=<text:span text:style-name="T11">"0"</text:span> <text:span text:style-name="T10">type</text:span>=<text:span text:style-name="T11">"ROOT"</text:span> <text:span text:style-name="T10">class</text:span>=<text:span text:style-name="T11">"NOVEL"</text:span>></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="6"/><meta <text:span text:style-name="T10">expanded</text:span>=<text:span text:style-name="T11">"yes"</text:span>/></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="6"/><name <text:span text:style-name="T10">status</text:span>=<text:span text:style-name="T11">"sc24b8f"</text:span> <text:span text:style-name="T10">import</text:span>=<text:span text:style-name="T11">"ia857f0"</text:span>><text:span text:style-name="T12">Novel</text:span></name></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="4"/></item></text:p>
|
||||
<text:p text:style-name="P19"><text:s text:c="4"/>...</text:p>
|
||||
<text:p text:style-name="P18"></content></text:p>
|
||||
<text:h text:style-name="P10" text:outline-level="2"><text:span text:style-name="T16">Item</text:span> <text:span text:style-name="T15">Nodes</text:span></text:h>
|
||||
<text:p text:style-name="P48">The item nodes make up the actual project content of the project. Each node represents either a root folder, a regular folder, or a document. Each node has a type, class and layout setting that determine its category. Each item is given a handle that is a random hexadecimal string of length 13. For the items that are document files, this handle corresponds to its filename. <text:span text:style-name="T20">It is therefore important that these match. Each document node is expected to correspond to a file in the contents folder of the project named “</text:span><text:span text:style-name="T22">content/7031beac91f75.nwd</text:span><text:span text:style-name="T20">” for the item handle “</text:span><text:span text:style-name="T22">7031beac91f75</text:span><text:span text:style-name="T20">”.</text:span></text:p>
|
||||
<text:p text:style-name="P48">Each item node has a meta data node and a name node. The meta data node contains only collected information, and is thus not strictly required. However, an accurate word count and the correct icon in the project tree depend on these values. These values are set by the indexer class, so rebuilding the index should restore the data.</text:p>
|
||||
<text:p text:style-name="P48">The name node contains the primary user defined settings for an item, and is required.</text:p>
|
||||
<text:h text:style-name="P10" text:outline-level="2"><text:span text:style-name="T17">Item</text:span> <text:span text:style-name="T16">Nodes</text:span></text:h>
|
||||
<text:p text:style-name="P65">The item nodes make up the actual project content of the project. Each node represents either a root folder, a regular folder, or a document. Each node has a type, class and layout setting that determine its category. Each item is given a handle that is a random hexadecimal string of length 13.</text:p>
|
||||
<text:p text:style-name="P65">For the items that are document files, th<text:span text:style-name="T26">e</text:span> handle corresponds to its <text:span text:style-name="T26">expected</text:span> filename. <text:span text:style-name="T21">It is therefore important that the</text:span><text:span text:style-name="T26">y</text:span><text:span text:style-name="T21"> match </text:span><text:span text:style-name="T26">in generated projects</text:span><text:span text:style-name="T21">. Each document node is expected to correspond to a file in the contents folder of the project named “</text:span><text:span text:style-name="T23">content/7031beac91f75.nwd</text:span><text:span text:style-name="T21">” for the item handle “</text:span><text:span text:style-name="T23">7031beac91f75</text:span><text:span text:style-name="T21">”. </text:span><text:span text:style-name="T26">If there is no such file, the document item is assumed to contain no text, and a file is created when the user tries to save text to it.</text:span></text:p>
|
||||
<text:p text:style-name="P48">Each item node has a meta data node and a name node. The meta data node contains only collected information, and is thus not strictly required. However, an accurate word count and <text:span text:style-name="T26">setting the</text:span> correct icon in the project tree depend on these values. These values are set by the indexer class, so rebuilding the index should restore the data.</text:p>
|
||||
<text:p text:style-name="P48">The name node contains the primary user defined settings for an item, and is required <text:span text:style-name="T26">for the entry to be valid</text:span>.</text:p>
|
||||
<text:h text:style-name="P14" text:outline-level="5"><text:soft-page-break/></text:h>
|
||||
<text:h text:style-name="P14" text:outline-level="5">Attributes</text:h>
|
||||
<table:table table:name="Table9" table:style-name="Table9">
|
||||
<table:table-column table:style-name="Table9.A"/>
|
||||
@@ -1852,7 +1872,7 @@
|
||||
<text:p text:style-name="P37">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250431936">
|
||||
<table:table-row table:style-name="TableLine94488389440224">
|
||||
<table:table-cell table:style-name="Table9.A2" office:value-type="string">
|
||||
<text:p text:style-name="P26">handle</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1860,10 +1880,10 @@
|
||||
<text:p text:style-name="P32">Yes</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table9.C2" office:value-type="string">
|
||||
<text:p text:style-name="P33">The 13 value hexadecimal string that represents the item in the project. This is the primary identifier of a project item, and is required.</text:p>
|
||||
<text:p text:style-name="P33">The 13 value hexadecimal string that represents the item in the project. This is the primary identifier of a project item, and is required. <text:span text:style-name="T26">It must be unique withing a project. Internally, it is generated as a random value, but it can also be sequential.</text:span></text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250433744">
|
||||
<table:table-row table:style-name="TableLine94488389442032">
|
||||
<table:table-cell table:style-name="Table9.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">parent</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1871,10 +1891,10 @@
|
||||
<text:p text:style-name="P33">Yes</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table9.C7" office:value-type="string">
|
||||
<text:p text:style-name="P33">The handle of the parent item in the tree. This value should only be None for root <text:soft-page-break/>folders. All other items must have a parent handle set. If the parent handle is None for an item that isn’t a root folder, the item will be treated as orphaned during project loading.</text:p>
|
||||
<text:p text:style-name="P33">The handle of the parent item in the tree. This value should only be None for root folders. All other items must have a parent handle set. If the parent handle is None for an item that isn’t a root folder, the item will be treated as orphaned during project loading.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250436112">
|
||||
<table:table-row table:style-name="TableLine94488389444400">
|
||||
<table:table-cell table:style-name="Table9.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">root</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1882,10 +1902,10 @@
|
||||
<text:p text:style-name="P33">No</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table9.C7" office:value-type="string">
|
||||
<text:p text:style-name="P33">The handle of the top of its hierarchy of parent items. That is, the root folder which it ultimately sits under. If the attribute is not set, it will be computed during loading. It is primarily saved to the XML file for efficiency reasons.</text:p>
|
||||
<text:p text:style-name="P33">The handle of the top of its hierarchy of parent items. That is, the root folder which it ultimately sits under. If the attribute is not set, it will be computed during loading. It is saved to the XML file for efficiency reasons.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250436976">
|
||||
<table:table-row table:style-name="TableLine94488389445264">
|
||||
<table:table-cell table:style-name="Table9.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">order</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1896,7 +1916,7 @@
|
||||
<text:p text:style-name="P33">The numerical order of the item under its parent item. This value is not used during the loading process as the physical item order in the content node is used instead. It is primarily saved to the XML for debugging purposes.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250437744">
|
||||
<table:table-row table:style-name="TableLine94488389446160">
|
||||
<table:table-cell table:style-name="Table9.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">type</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1907,7 +1927,7 @@
|
||||
<text:p text:style-name="P33">The item type of the item node. Allowed values are ROOT, FOLDER and FILE.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250438736">
|
||||
<table:table-row table:style-name="TableLine94488389447360">
|
||||
<table:table-cell table:style-name="Table9.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">class</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1915,10 +1935,10 @@
|
||||
<text:p text:style-name="P33">Yes</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table9.C7" office:value-type="string">
|
||||
<text:p text:style-name="P33">The item class of the item node. There are a number of item classes available in the app, all corresponding to a specific type of root folder. Each item in a root folder should have the same class set as the root folder itself. The attribute is not strictly required for items that aren’t root folders as it will be automatically set to match during loading.</text:p>
|
||||
<text:p text:style-name="P33">The item class of the item node. There are a number of item classes available in the app, all corresponding to a specific type of root folder. Each item in a root folder should have the same class set as the root folder itself. The attribute is not strictly required for items that aren’t root folders as it will be automatically set to match during loading. <text:span text:style-name="T27">Allowed values are NOVEL, </text:span>PLOT, CHARACTER, WORLD, TIMELINE, OBJECT, ENTITY, CUSTOM, ARCHIVE <text:span text:style-name="T27">and </text:span>TRASH.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250439712">
|
||||
<table:table-row table:style-name="TableLine94488389448336">
|
||||
<table:table-cell table:style-name="Table9.A8" office:value-type="string">
|
||||
<text:p text:style-name="P26">layout</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1946,7 +1966,7 @@
|
||||
<text:p text:style-name="P37">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250450624">
|
||||
<table:table-row table:style-name="TableLine94488389458928">
|
||||
<table:table-cell table:style-name="Table10.A2" office:value-type="string">
|
||||
<text:p text:style-name="P26">meta</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1957,7 +1977,7 @@
|
||||
<text:p text:style-name="P33">A node of meta data attributes for the item.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250452432">
|
||||
<table:table-row table:style-name="TableLine94488389460736">
|
||||
<table:table-cell table:style-name="Table10.A3" office:value-type="string">
|
||||
<text:p text:style-name="P26">name</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1969,8 +1989,8 @@
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
</table:table>
|
||||
<text:h text:style-name="P51" text:outline-level="3"><text:span text:style-name="T16">Meta</text:span> <text:span text:style-name="T17">N</text:span><text:span text:style-name="T18">odes</text:span></text:h>
|
||||
<text:p text:style-name="P48">The meta data collected for the current item. This data is collected primarily by the indexer class. It can be restored by rebuilding the index, so the data is not essential.</text:p>
|
||||
<text:h text:style-name="P51" text:outline-level="3"><text:span text:style-name="T17">Meta</text:span> <text:span text:style-name="T18">N</text:span><text:span text:style-name="T19">odes</text:span></text:h>
|
||||
<text:p text:style-name="P48">The meta data collected for the current item. This data <text:span text:style-name="T27">either represents the item’s last state in the app, or consists of data collected </text:span>by the indexer. It can be restored by rebuilding the index, so the data is not essential.</text:p>
|
||||
<text:h text:style-name="P14" text:outline-level="5">Attributes</text:h>
|
||||
<table:table table:name="Table11" table:style-name="Table11">
|
||||
<table:table-column table:style-name="Table11.A"/>
|
||||
@@ -1987,7 +2007,7 @@
|
||||
<text:p text:style-name="P37">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250482800">
|
||||
<table:table-row table:style-name="TableLine94488389489504">
|
||||
<table:table-cell table:style-name="Table11.A2" office:value-type="string">
|
||||
<text:p text:style-name="P26">expanded</text:p>
|
||||
</table:table-cell>
|
||||
@@ -1995,10 +2015,10 @@
|
||||
<text:p text:style-name="P33">No</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table11.C2" office:value-type="string">
|
||||
<text:p text:style-name="P33">Whether the tree node in the project tree was expanded or collapsed during the last session. Applies to all item types.</text:p>
|
||||
<text:p text:style-name="P33">Whether the tree node in the project tree was expanded or collapsed during the last session. Applies to all item types, <text:span text:style-name="T27">but is ignored for items without child items.</text:span></text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250484608">
|
||||
<table:table-row table:style-name="TableLine94488389490928">
|
||||
<table:table-cell table:style-name="Table11.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">heading</text:p>
|
||||
</table:table-cell>
|
||||
@@ -2009,7 +2029,7 @@
|
||||
<text:p text:style-name="P33">The heading level of the first heading of the text of the item. Only applies to FILE item types. Allowed values are H0, H1, H2, H3, and H4. Other values are reset to H0.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250486912">
|
||||
<table:table-row table:style-name="TableLine94488389493168">
|
||||
<table:table-cell table:style-name="Table11.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">charCount</text:p>
|
||||
</table:table-cell>
|
||||
@@ -2020,7 +2040,7 @@
|
||||
<text:p text:style-name="P33">The number of characters in the text of the item. Only applies to FILE item types.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250487776">
|
||||
<table:table-row table:style-name="TableLine94488389494032">
|
||||
<table:table-cell table:style-name="Table11.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">wordCount</text:p>
|
||||
</table:table-cell>
|
||||
@@ -2031,7 +2051,7 @@
|
||||
<text:p text:style-name="P33">The number of words in the text of the item. Only applies to FILE item types.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250488672">
|
||||
<table:table-row table:style-name="TableLine94488389494928">
|
||||
<table:table-cell table:style-name="Table11.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">paraCount</text:p>
|
||||
</table:table-cell>
|
||||
@@ -2042,7 +2062,7 @@
|
||||
<text:p text:style-name="P33">The number of paragraphs in the text of the item. Only applies to FILE item types.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250489872">
|
||||
<table:table-row table:style-name="TableLine94488389496128">
|
||||
<table:table-cell table:style-name="Table11.A7" office:value-type="string">
|
||||
<text:p text:style-name="P26">cursorPos</text:p>
|
||||
</table:table-cell>
|
||||
@@ -2050,12 +2070,12 @@
|
||||
<text:p text:style-name="P33">No</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="Table11.C7" office:value-type="string">
|
||||
<text:p text:style-name="P33">The last cursor position in the text of the item from the last session. Only applies to FILE item types. The value is used to restore the cursor position when the document is opened in the editor.</text:p>
|
||||
<text:p text:style-name="P33">The last cursor position in the text of the item from the last <text:span text:style-name="T27">editing </text:span>session. Only applies to FILE item types. The value is used to restore the cursor position when the document is opened in the editor.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
</table:table>
|
||||
<text:h text:style-name="P51" text:outline-level="3"><text:span text:style-name="T16">Name</text:span> <text:span text:style-name="T20">N</text:span><text:span text:style-name="T18">odes</text:span></text:h>
|
||||
<text:p text:style-name="P48">The name node contains information about an item that is set by the user. Including its label, which is the text value of the node. <text:span text:style-name="T20">This is the label that is displayed in the project tree.</text:span></text:p>
|
||||
<text:h text:style-name="P51" text:outline-level="3"><text:soft-page-break/><text:span text:style-name="T17">Name</text:span> <text:span text:style-name="T21">N</text:span><text:span text:style-name="T19">odes</text:span></text:h>
|
||||
<text:p text:style-name="P48">The name node contains information about an item that is set by the user. Including its label, which is the text value of the node. <text:span text:style-name="T21">This is the label that is displayed in the project tree.</text:span></text:p>
|
||||
<text:h text:style-name="P14" text:outline-level="5">Attributes</text:h>
|
||||
<table:table table:name="Table12" table:style-name="Table12">
|
||||
<table:table-column table:style-name="Table12.A"/>
|
||||
@@ -2072,7 +2092,7 @@
|
||||
<text:p text:style-name="P37">Description</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250504064">
|
||||
<table:table-row table:style-name="TableLine94488389510048">
|
||||
<table:table-cell table:style-name="Table12.A2" office:value-type="string">
|
||||
<text:p text:style-name="P26">status</text:p>
|
||||
</table:table-cell>
|
||||
@@ -2083,7 +2103,7 @@
|
||||
<text:p text:style-name="P33">The ID of the status label that has been set for this item. Defaults to the first status item defined in the status section of the settings node.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<table:table-row table:style-name="TableLine94536250505744">
|
||||
<table:table-row table:style-name="TableLine94488389511584">
|
||||
<table:table-cell table:style-name="Table12.A4" office:value-type="string">
|
||||
<text:p text:style-name="P26">import</text:p>
|
||||
</table:table-cell>
|
||||
@@ -2094,8 +2114,7 @@
|
||||
<text:p text:style-name="P33">The ID of the importance label that has been set for this item. Defaults to the first importance item defined in the importance section of the settings node.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
<text:soft-page-break/>
|
||||
<table:table-row table:style-name="TableLine94536250508112">
|
||||
<table:table-row table:style-name="TableLine94488389513568">
|
||||
<table:table-cell table:style-name="Table12.A4" office:value-type="string">
|
||||
<text:p text:style-name="P26">active</text:p>
|
||||
</table:table-cell>
|
||||
@@ -2108,11 +2127,11 @@
|
||||
</table:table-row>
|
||||
</table:table>
|
||||
<text:h text:style-name="P14" text:outline-level="5">Example</text:h>
|
||||
<text:p text:style-name="P18"><item <text:span text:style-name="T9">handle</text:span>=<text:span text:style-name="T10">"53b69b83cdafc"</text:span> <text:span text:style-name="T9">parent</text:span>=<text:span text:style-name="T10">"7031beac91f75"</text:span> <text:span text:style-name="T9">root</text:span>=<text:span text:style-name="T10">"7031beac91f75"</text:span></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="6"/><text:span text:style-name="T9">order</text:span>=<text:span text:style-name="T10">"0"</text:span> <text:span text:style-name="T9">type</text:span>=<text:span text:style-name="T10">"FILE"</text:span> <text:span text:style-name="T9">class</text:span>=<text:span text:style-name="T10">"NOVEL"</text:span> <text:span text:style-name="T9">layout</text:span>=<text:span text:style-name="T10">"DOCUMENT"</text:span>></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="4"/><meta <text:span text:style-name="T9">expanded</text:span>=<text:span text:style-name="T10">"no"</text:span> <text:span text:style-name="T9">heading</text:span>=<text:span text:style-name="T10">"H1"</text:span> <text:span text:style-name="T9">charCount</text:span>=<text:span text:style-name="T10">"93"</text:span> <text:span text:style-name="T9">wordCount</text:span>=<text:span text:style-name="T10">"19"</text:span></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="10"/><text:span text:style-name="T9">paraCount</text:span>=<text:span text:style-name="T10">"2"</text:span> <text:span text:style-name="T9">cursorPos</text:span>=<text:span text:style-name="T10">"119"</text:span>/></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="4"/><name <text:span text:style-name="T9">status</text:span>=<text:span text:style-name="T10">"sc24b8f"</text:span> <text:span text:style-name="T9">import</text:span>=<text:span text:style-name="T10">"ia857f0"</text:span> <text:span text:style-name="T9">active</text:span>=<text:span text:style-name="T10">"yes"</text:span>><text:span text:style-name="T11">Title Page</text:span></name></text:p>
|
||||
<text:p text:style-name="P18"><item <text:span text:style-name="T10">handle</text:span>=<text:span text:style-name="T11">"53b69b83cdafc"</text:span> <text:span text:style-name="T10">parent</text:span>=<text:span text:style-name="T11">"7031beac91f75"</text:span> <text:span text:style-name="T10">root</text:span>=<text:span text:style-name="T11">"7031beac91f75"</text:span></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="6"/><text:span text:style-name="T10">order</text:span>=<text:span text:style-name="T11">"0"</text:span> <text:span text:style-name="T10">type</text:span>=<text:span text:style-name="T11">"FILE"</text:span> <text:span text:style-name="T10">class</text:span>=<text:span text:style-name="T11">"NOVEL"</text:span> <text:span text:style-name="T10">layout</text:span>=<text:span text:style-name="T11">"DOCUMENT"</text:span>></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="4"/><meta <text:span text:style-name="T10">expanded</text:span>=<text:span text:style-name="T11">"no"</text:span> <text:span text:style-name="T10">heading</text:span>=<text:span text:style-name="T11">"H1"</text:span> <text:span text:style-name="T10">charCount</text:span>=<text:span text:style-name="T11">"93"</text:span> <text:span text:style-name="T10">wordCount</text:span>=<text:span text:style-name="T11">"19"</text:span></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="10"/><text:span text:style-name="T10">paraCount</text:span>=<text:span text:style-name="T11">"2"</text:span> <text:span text:style-name="T10">cursorPos</text:span>=<text:span text:style-name="T11">"119"</text:span>/></text:p>
|
||||
<text:p text:style-name="P18"><text:s text:c="4"/><name <text:span text:style-name="T10">status</text:span>=<text:span text:style-name="T11">"sc24b8f"</text:span> <text:span text:style-name="T10">import</text:span>=<text:span text:style-name="T11">"ia857f0"</text:span> <text:span text:style-name="T10">active</text:span>=<text:span text:style-name="T11">"yes"</text:span>><text:span text:style-name="T12">Title Page</text:span></name></text:p>
|
||||
<text:p text:style-name="P18"></item></text:p>
|
||||
</office:text>
|
||||
</office:body>
|
||||
|
||||
Binary file not shown.
+5
-6
@@ -1,9 +1,6 @@
|
||||
#
|
||||
# Configuration file for the Sphinx documentation builder.
|
||||
#
|
||||
# This file does only contain a selection of the most common options. For a
|
||||
# full list see the documentation:
|
||||
# http://www.sphinx-doc.org/en/master/config
|
||||
# Documentation: http://www.sphinx-doc.org/en/master/config
|
||||
#
|
||||
|
||||
# -- Imports -----------------------------------------------------------------
|
||||
@@ -38,14 +35,13 @@ os.environ["TZ"] = "Europe/Oslo"
|
||||
time.tzset()
|
||||
|
||||
needs_sphinx = "4.0"
|
||||
extensions = []
|
||||
templates_path = ["_templates"]
|
||||
source_suffix = ".rst"
|
||||
master_doc = "index"
|
||||
today_fmt = "%A, %d %B %Y at %H:%M"
|
||||
language = "en"
|
||||
exclude_patterns = []
|
||||
pygments_style = "sphinx"
|
||||
pygments_dark_style = "monokai"
|
||||
|
||||
# -- Options for HTML Output -------------------------------------------------
|
||||
|
||||
@@ -54,8 +50,11 @@ html_static_path = ["_static"]
|
||||
html_theme_options = {
|
||||
"light_logo": "novelwriter-light.png",
|
||||
"dark_logo": "novelwriter-dark.png",
|
||||
"navigation_with_keys": True,
|
||||
}
|
||||
html_title = f"<div style='text-align: center'>Documentation Version {release}</div>"
|
||||
pygments_style = "tango"
|
||||
pygments_dark_style = "native"
|
||||
|
||||
# -- Options for HTMLHelp Output ---------------------------------------------
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ as well. novelWriter can also be run directly from the Python source, or install
|
||||
the pip tool. See :ref:`a_started` for more details.
|
||||
|
||||
.. note::
|
||||
Version 1.5 introduced a few changes that will require you to make some minor modifications to
|
||||
Version 1.3 introduced a few changes that will require you to make some minor modifications to
|
||||
some of the headings in your project. It should be fairly quick and straightforward. Please see
|
||||
the :ref:`a_prjfmt_1_3` section for more details.
|
||||
|
||||
@@ -47,6 +47,11 @@ the pip tool. See :ref:`a_started` for more details.
|
||||
* PyPi Project: https://pypi.org/project/novelWriter
|
||||
* Social Media: https://fosstodon.org/@novelwriter
|
||||
|
||||
.. toctree::
|
||||
:hidden:
|
||||
|
||||
Main Page <self>
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:caption: Introduction
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
furo
|
||||
sphinx>=4.0
|
||||
pygments>=2.7
|
||||
docutils==0.17.1
|
||||
docutils>=0.17.1
|
||||
|
||||
@@ -4,6 +4,9 @@
|
||||
How Data is Stored
|
||||
******************
|
||||
|
||||
.. _File Format Spec 1.5: _static/fileformatspec15.pdf
|
||||
.. _documentation: https://novelwriter.readthedocs.io
|
||||
|
||||
This section contains details of how novelWriter stores and handles the project data.
|
||||
|
||||
|
||||
@@ -39,6 +42,15 @@ The project XML file is indent-formatted, and is suitable for diff tools and ver
|
||||
most of the file will stay static, although a timesetamp is set in the meta section on line 2, and
|
||||
various meta data entries incremented, on each save.
|
||||
|
||||
.. only:: not html
|
||||
|
||||
A full project file format specification is available in the online documentation_.
|
||||
|
||||
.. only:: html
|
||||
|
||||
A full description of the current file format is available in the `File Format Spec 1.5`_
|
||||
document, available as a PDF.
|
||||
|
||||
|
||||
Project Documents
|
||||
=================
|
||||
|
||||
@@ -6,6 +6,7 @@ A collection of tools to create and manipulate documents
|
||||
File History:
|
||||
Created: 2022-10-02 [2.0rc1] DocMerger
|
||||
Created: 2022-10-11 [2.0rc1] DocSplitter
|
||||
Created: 2022-11-03 [2.0rc2] ProjectBuilder
|
||||
|
||||
This file is a part of novelWriter
|
||||
Copyright 2018–2023, Veronica Berglyd Olsen
|
||||
|
||||
+22
-13
@@ -49,15 +49,24 @@ class NWIndex:
|
||||
contains the data that isn't stored in the project items themselves.
|
||||
The content of the index is updated every time a file item is saved.
|
||||
|
||||
The primary index data is contained in the ItemIndex class, which
|
||||
contains an IndexItem representing each NWItem. Each IndexItem holds
|
||||
an IndexHeading object for each heading of the item's text.
|
||||
Some information needed by the NWItem object of a project item can
|
||||
only be known after a text file has been scanned by the indexer, so
|
||||
this data is set directly by the indexer class in the NWItem object.
|
||||
|
||||
A reverse index of all tags is contained in the TagsIndex class.
|
||||
This is duplicate information used for quicker lookups from the tags
|
||||
and back to items where they are defined.
|
||||
The primary index data is contained in a single instance of the
|
||||
ItemIndex class. This object contains an IndexItem representing each
|
||||
NWItem of the project. Each IndexItem holds an IndexHeading object
|
||||
for each heading of the item's text.
|
||||
|
||||
The index data is cached in a JSON file between writing sessions.
|
||||
A reverse index of all tags is contained in a single instance of the
|
||||
TagsIndex class. This is duplicate information used for quicker
|
||||
lookups from the tags and back to items where they are defined.
|
||||
|
||||
The index data is cached in a JSON file between writing sessions in
|
||||
order to save startup time. The cached index is validated on input,
|
||||
and a broken flag set if it is not valid. If it is invalid, the
|
||||
loaded data is cleared and it is up to the calling code to initiate
|
||||
a rebuild of the index data.
|
||||
"""
|
||||
|
||||
def __init__(self, project):
|
||||
@@ -283,10 +292,10 @@ class NWIndex:
|
||||
def _scanActive(self, tHandle, theItem, theText, itemTags):
|
||||
"""Scan an active document for meta data.
|
||||
"""
|
||||
nTitle = 0 # Line Number of the previous title
|
||||
cTitle = TT_NONE # Tag of the current title
|
||||
pTitle = TT_NONE # Tag of the previous title
|
||||
firstHeader = True # First header has been seen
|
||||
nTitle = 0 # Line Number of the previous title
|
||||
cTitle = TT_NONE # Tag of the current title
|
||||
pTitle = TT_NONE # Tag of the previous title
|
||||
canSetHeader = True # First header has not yet been set
|
||||
|
||||
theLines = theText.splitlines()
|
||||
for nLine, aLine in enumerate(theLines, start=1):
|
||||
@@ -299,9 +308,9 @@ class NWIndex:
|
||||
if hDepth == "H0":
|
||||
continue
|
||||
|
||||
if firstHeader:
|
||||
if canSetHeader:
|
||||
theItem.setMainHeading(hDepth)
|
||||
firstHeader = False
|
||||
canSetHeader = False
|
||||
|
||||
cTitle = self._itemIndex.addItemHeading(tHandle, nLine, hDepth, hText)
|
||||
if cTitle != TT_NONE:
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
"""
|
||||
novelWriter – Manuscript Build Init File
|
||||
"""
|
||||
@@ -0,0 +1,241 @@
|
||||
"""
|
||||
novelWriter – Build Document Tool
|
||||
=================================
|
||||
A class to build one or more novelWriter files to a single document
|
||||
|
||||
File History:
|
||||
Created: 2022-12-01 [2.1b1]
|
||||
|
||||
This file is a part of novelWriter
|
||||
Copyright 2018–2023, Veronica Berglyd Olsen
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
"""
|
||||
|
||||
import logging
|
||||
import novelwriter
|
||||
|
||||
from PyQt5.QtGui import QFont, QFontInfo
|
||||
|
||||
from novelwriter.error import formatException
|
||||
from novelwriter.core.tomd import ToMarkdown
|
||||
from novelwriter.core.toodt import ToOdt
|
||||
from novelwriter.core.tohtml import ToHtml
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class NWBuildDocument:
|
||||
|
||||
def __init__(self, project):
|
||||
|
||||
self._conf = novelwriter.CONFIG
|
||||
self._project = project
|
||||
self._build = {}
|
||||
self._documents = []
|
||||
self._error = None
|
||||
|
||||
return
|
||||
|
||||
##
|
||||
# Properties
|
||||
##
|
||||
|
||||
@property
|
||||
def error(self):
|
||||
return self._error
|
||||
|
||||
@property
|
||||
def buildLength(self):
|
||||
return len(self._documents)
|
||||
|
||||
##
|
||||
# Setters
|
||||
##
|
||||
|
||||
def setBuildConfig(self, config):
|
||||
"""Set the build config dictionary.
|
||||
"""
|
||||
self._build = config
|
||||
return
|
||||
|
||||
def addDocument(self, tHandle):
|
||||
"""Add a document to the build queue.
|
||||
"""
|
||||
self._documents.append(tHandle)
|
||||
return
|
||||
|
||||
##
|
||||
# Methods
|
||||
##
|
||||
|
||||
def iterBuildOpenDocument(self, savePath, isFlat):
|
||||
"""Build an Open Document file.
|
||||
"""
|
||||
makeOdt = ToOdt(self._project, isFlat=isFlat)
|
||||
self._setupBuild(makeOdt)
|
||||
makeOdt.initDocument()
|
||||
|
||||
for i, tHandle in enumerate(self._documents):
|
||||
yield i, self._doBuild(makeOdt, tHandle)
|
||||
|
||||
makeOdt.closeDocument()
|
||||
|
||||
self._error = None
|
||||
try:
|
||||
if isFlat:
|
||||
makeOdt.saveFlatXML(savePath)
|
||||
else:
|
||||
makeOdt.saveOpenDocText(savePath)
|
||||
except Exception as exc:
|
||||
self._error = formatException(exc)
|
||||
|
||||
return
|
||||
|
||||
def iterBuildHTML(self, savePath):
|
||||
"""Build an HTML file.
|
||||
"""
|
||||
makeHtml = ToHtml(self._project)
|
||||
self._setupBuild(makeHtml)
|
||||
|
||||
if self._build.get("process.replaceTabs", False):
|
||||
makeHtml.replaceTabs()
|
||||
|
||||
for i, tHandle in enumerate(self._documents):
|
||||
yield i, self._doBuild(makeHtml, tHandle)
|
||||
|
||||
self._error = None
|
||||
try:
|
||||
makeHtml.saveHTML5(savePath)
|
||||
except Exception as exc:
|
||||
self._error = formatException(exc)
|
||||
|
||||
return
|
||||
|
||||
def iterBuildMarkdown(self, savePath, extendedMd):
|
||||
"""Build a Markdown file.
|
||||
"""
|
||||
makeMd = ToMarkdown(self._project)
|
||||
self._setupBuild(makeMd)
|
||||
|
||||
if extendedMd:
|
||||
makeMd.setGitHubMarkdown()
|
||||
else:
|
||||
makeMd.setStandardMarkdown()
|
||||
|
||||
if self._build.get("process.replaceTabs", False):
|
||||
makeMd.replaceTabs(nSpaces=4, spaceChar=" ")
|
||||
|
||||
for i, tHandle in enumerate(self._documents):
|
||||
yield i, self._doBuild(makeMd, tHandle)
|
||||
|
||||
self._error = None
|
||||
try:
|
||||
makeMd.saveMarkdown(savePath)
|
||||
except Exception as exc:
|
||||
self._error = formatException(exc)
|
||||
|
||||
return
|
||||
|
||||
##
|
||||
# Internal Functions
|
||||
##
|
||||
|
||||
def _setupBuild(self, bldObj):
|
||||
"""Configure the build object.
|
||||
"""
|
||||
# Get Settings
|
||||
fmtTitle = self._build.get("format.fmtTitle", "%title%")
|
||||
fmtChapter = self._build.get("format.fmtChapter", "%title%")
|
||||
fmtUnnumbered = self._build.get("format.fmtUnnumbered", "%title%")
|
||||
fmtScene = self._build.get("format.fmtScene", "%title%")
|
||||
fmtSection = self._build.get("format.fmtSection", "%title%")
|
||||
buildLang = self._build.get("format.buildLang", "en_GB")
|
||||
hideScene = self._build.get("format.hideScene", False)
|
||||
hideSection = self._build.get("format.hideSection", False)
|
||||
textFont = self._build.get("format.textFont", self._conf.textFont)
|
||||
textSize = self._build.get("format.textSize", self._conf.textSize)
|
||||
lineHeight = self._build.get("format.lineHeight", 1.15)
|
||||
justifyText = self._build.get("format.justifyText", False)
|
||||
noStyling = self._build.get("format.noStyling", False)
|
||||
replaceUCode = self._build.get("format.replaceUCode", False)
|
||||
incSynopsis = self._build.get("filter.includeSynopsis", False)
|
||||
incComments = self._build.get("filter.includeComments", False)
|
||||
incKeywords = self._build.get("filter.includeKeywords", False)
|
||||
includeBody = self._build.get("filter.includeBody", True)
|
||||
|
||||
# The language lookup dict is reloaded if needed
|
||||
self._project.setProjectLang(buildLang)
|
||||
|
||||
# Get font information
|
||||
fontInfo = QFontInfo(QFont(textFont, textSize))
|
||||
textFixed = fontInfo.fixedPitch()
|
||||
|
||||
bldObj.setTitleFormat(fmtTitle)
|
||||
bldObj.setChapterFormat(fmtChapter)
|
||||
bldObj.setUnNumberedFormat(fmtUnnumbered)
|
||||
bldObj.setSceneFormat(fmtScene, hideScene)
|
||||
bldObj.setSectionFormat(fmtSection, hideSection)
|
||||
|
||||
bldObj.setFont(textFont, textSize, textFixed)
|
||||
bldObj.setJustify(justifyText)
|
||||
bldObj.setLineHeight(lineHeight)
|
||||
|
||||
bldObj.setSynopsis(incSynopsis)
|
||||
bldObj.setComments(incComments)
|
||||
bldObj.setKeywords(incKeywords)
|
||||
bldObj.setBodyText(includeBody)
|
||||
|
||||
if isinstance(bldObj, ToHtml):
|
||||
bldObj.setStyles(not noStyling)
|
||||
bldObj.setReplaceUnicode(replaceUCode)
|
||||
|
||||
if isinstance(bldObj, ToOdt):
|
||||
bldObj.setColourHeaders(not noStyling)
|
||||
bldObj.setLanguage(buildLang)
|
||||
|
||||
return
|
||||
|
||||
def _doBuild(self, bldObj, tHandle):
|
||||
"""Build a single document and add it to the build object.
|
||||
"""
|
||||
self._error = None
|
||||
tItem = self._project.tree[tHandle]
|
||||
if tItem is None:
|
||||
self._error = f"Build: Unknown item '{tHandle}'"
|
||||
logger.error(self._error)
|
||||
return False
|
||||
|
||||
try:
|
||||
if tItem.isRootType() and not tItem.isNovelLike():
|
||||
bldObj.addRootHeading(tItem.itemHandle)
|
||||
bldObj.doConvert()
|
||||
elif tItem.isFileType():
|
||||
bldObj.setText(tHandle)
|
||||
bldObj.doPreProcessing()
|
||||
bldObj.tokenizeText()
|
||||
bldObj.doHeaders()
|
||||
bldObj.doConvert()
|
||||
bldObj.doPostProcessing()
|
||||
else:
|
||||
logger.info(f"Build: Skipping '{tHandle}'")
|
||||
|
||||
except Exception:
|
||||
self._error = f"Build: Failed to build '{tHandle}'"
|
||||
logger.error(self._error)
|
||||
return False
|
||||
|
||||
return True
|
||||
|
||||
# END Class NWBuildDocument
|
||||
@@ -682,7 +682,7 @@ class GuiBuildNovel(QDialog):
|
||||
return
|
||||
|
||||
def _doBuild(self, bldObj, isPreview=False, doConvert=True):
|
||||
"""Rund the build with a specific build object.
|
||||
"""Run the build with a specific build object.
|
||||
"""
|
||||
tStart = int(time())
|
||||
|
||||
|
||||
@@ -0,0 +1,183 @@
|
||||
# Lorem Ipsum
|
||||
|
||||
**By lipsum.com**
|
||||
|
||||
“Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit…”
|
||||
|
||||
“There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…”
|
||||
|
||||
**Comment:** Exctracted from the lipsum.com website.
|
||||
|
||||
Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of “de Finibus Bonorum et Malorum” (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, “Lorem ipsum dolor sit amet..”, comes from a line in section 1.10.32.
|
||||
|
||||
The standard chunk of Lorem Ipsum used since the 1500s is reproduced below for those interested. Sections 1.10.32 and 1.10.33 from “de Finibus Bonorum et Malorum” by Cicero are also reproduced in their exact original form, accompanied by English versions from the 1914 translation by H. Rackham.
|
||||
|
||||
## Prologue
|
||||
|
||||
**Synopsis:** Explanation from the lipsum.com website.
|
||||
|
||||
_Lorem Ipsum_ is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.
|
||||
|
||||
# Title: Act One
|
||||
|
||||
“Fusce maximus felis libero”
|
||||
|
||||
## Chapter: Chapter One
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque at aliquam quam.
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque at aliquam quam. Praesent magna nunc, lacinia sit amet quam eget, aliquet ultrices justo. Morbi ornare enim et lorem rutrum finibus ut eu dolor. Aliquam a orci odio. Ut ultrices sem quis massa placerat, eget mollis nisl cursus. Cras vel sagittis justo. Ut non ultricies leo. Maecenas rutrum velit in est varius, et egestas massa pulvinar.
|
||||
|
||||
### Scene: Scene One
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Aenean ut placerat velit. Etiam laoreet ullamcorper risus, eget lobortis enim scelerisque non. Suspendisse id maximus nunc, et mollis sapien. Curabitur vel semper sapien, non pulvinar dolor. Etiam finibus nisi vel mi molestie consectetur.
|
||||
|
||||
Aenean ut placerat velit. Etiam laoreet ullamcorper risus, eget lobortis enim scelerisque non. Suspendisse id maximus nunc, et mollis sapien. Curabitur vel semper sapien, non pulvinar dolor. Etiam finibus nisi vel mi molestie consectetur. Donec quis ante nunc. Mauris ut leo ipsum. Vestibulum est neque, hendrerit nec neque a, ullamcorper lobortis tellus. Fusce sollicitudin purus quis congue bibendum. Aliquam condimentum ipsum tristique blandit tristique. Donec pulvinar neque ac suscipit malesuada.
|
||||
|
||||
Aliquam ut nisl arcu. Ut ultricies, lorem dignissim rutrum convallis, risus orci tempus lectus, congue feugiat sem lectus vitae odio. Duis sit amet justo finibus, hendrerit nulla at, ullamcorper enim. Praesent vel tellus sit amet tellus vulputate bibendum. Morbi eleifend sagittis sem, ac volutpat ante congue non. In hac habitasse platea dictumst. Morbi lobortis fermentum elit, dignissim sagittis ligula volutpat lacinia. Vestibulum eu interdum odio. Integer ac purus commodo metus congue tempor non at urna. Sed eget tortor vel quam viverra egestas. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Donec non convallis mauris, ac feugiat ex.
|
||||
|
||||
#### Section: Scene One, Section Two
|
||||
|
||||
Integer vel libero ipsum. Donec varius aliquam libero, sit amet commodo urna hendrerit non. Nullam quis erat mollis nunc viverra volutpat tincidunt in odio. Nam vitae quam sem. Aliquam suscipit nulla non lorem pharetra semper. Ut suscipit erat eu ligula accumsan ultrices. Phasellus nisl tellus, placerat sed laoreet id, consectetur nec dolor. Sed fringilla ipsum id dapibus posuere. Aenean finibus pharetra tincidunt. Ut molestie malesuada nulla, id posuere lorem tincidunt eu. Aliquam tempor eros a est vulputate, scelerisque pulvinar ipsum fermentum. In hac habitasse platea dictumst.
|
||||
|
||||
Curabitur congue, justo quis interdum fermentum, tellus nulla imperdiet sapien, eu interdum enim tellus condimentum metus. Vivamus nunc velit, dignissim ut ultrices sit amet, ultricies quis enim. Donec ut vestibulum neque. Vivamus semper neque id ex ullamcorper varius. Fusce mattis nibh viverra lorem sagittis, et tempor arcu congue. Suspendisse sit amet felis sed urna facilisis mattis eget vitae arcu. Proin eu magna hendrerit, tristique sem maximus, placerat diam. Nulla tristique sed velit sit amet varius. Etiam vel ornare magna, in vulputate arcu. Cras velit orci, tincidunt sed volutpat cursus, bibendum vel sem. Nunc vulputate pharetra tortor, ac consectetur neque tincidunt sit amet. Nulla ornare mi sed mi dignissim ultricies. Ut tincidunt bibendum mauris, sed elementum ex vulputate vel. Mauris fermentum, felis nec vehicula congue, felis lorem facilisis erat, a dictum dolor augue vitae quam. Maecenas rutrum tortor nec consequat eleifend.
|
||||
|
||||
### Scene: Scene Two
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer sapien nulla, dictum at lacus a, dignissim consectetur dolor. Nunc vel eleifend lacus, eu dapibus orci.
|
||||
|
||||
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer sapien nulla, dictum at lacus a, dignissim consectetur dolor. Nunc vel eleifend lacus, eu dapibus orci. Vestibulum facilisis bibendum aliquam. Aliquam posuere, turpis ac bibendum varius, sem tellus venenatis risus, in elementum massa enim ac lorem. Integer in sem ac diam blandit ultricies ut in nulla. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam sit amet erat est. Curabitur vitae cursus justo, sit amet placerat dolor. Vivamus eu felis hendrerit, tincidunt massa rutrum, maximus arcu. Pellentesque commodo justo odio, vel rutrum nulla tincidunt eu. Integer non neque condimentum, convallis diam non, varius ligula. Aliquam eget sapien mauris. Aenean pharetra nunc nisi, vel maximus ante tristique sit amet. Aliquam risus metus, interdum non odio eu, consectetur lacinia sapien.
|
||||
|
||||
Proin vitae gravida nisl. Integer viverra orci turpis, sit amet pretium ligula facilisis consequat. Nulla interdum commodo metus, mollis consequat dui tincidunt et. Proin consequat bibendum justo id commodo. Fusce fermentum nunc turpis, eu vestibulum risus feugiat ut. Sed scelerisque vel ligula ut interdum. Suspendisse ac blandit ligula, sagittis fringilla dolor. In tincidunt convallis diam et ornare. Aenean id dignissim est, ut rhoncus quam. Donec vitae nisl velit. In convallis nibh ut augue dignissim, eu elementum quam cursus. Phasellus in lectus lorem. Curabitur in pellentesque nisi, at gravida sapien. Sed cursus justo volutpat lacus placerat, sit amet dignissim turpis commodo. Aliquam vitae orci eget nulla posuere condimentum in ut felis.
|
||||
|
||||
Nulla accumsan ante in pulvinar efficitur. Nulla non velit quis urna hendrerit bibendum. Suspendisse ultrices ante eu justo malesuada, sed fermentum enim rutrum. Nunc fermentum pharetra felis, vitae sollicitudin quam rutrum porta. Aliquam fringilla velit a mi laoreet, et luctus est rutrum. In gravida non ipsum sit amet tempus. Curabitur et eleifend purus. Nulla facilisi.
|
||||
|
||||
#### Section: Scene Two, Section Two
|
||||
|
||||
Suspendisse potenti. Fusce tempus lorem nec laoreet suscipit. Fusce vulputate nisl ac diam tincidunt, nec malesuada quam pellentesque. Maecenas congue, tellus quis commodo rutrum, magna leo egestas arcu, quis suscipit ex risus id ligula. Suspendisse potenti. Morbi blandit lacus vitae laoreet vulputate. Donec vitae tellus eleifend, lobortis eros eu, tincidunt enim. Nullam et ullamcorper nisi. Vivamus tellus ex, lobortis quis rutrum ut, dapibus sit amet turpis. Phasellus pellentesque metus diam, commodo tristique ante commodo ac. Ut mollis ipsum nec diam blandit sollicitudin. Duis bibendum lacus nec commodo dapibus. Sed condimentum luctus ante, id ultricies urna varius nec. Nam convallis magna nec bibendum ultrices. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed auctor pharetra quam, vitae porta ex bibendum eu.
|
||||
|
||||
Vivamus ut venenatis lectus. Phasellus nec elit id sem dictum ornare. Quisque feugiat, diam eget sagittis ultricies, orci turpis efficitur nisi, et fringilla justo odio nec nibh. In hac habitasse platea dictumst. Sed tempus bibendum feugiat. Etiam luctus mauris arcu, non interdum ipsum ultrices id. Vivamus blandit urna sit amet scelerisque vulputate. Quisque in metus eget massa rutrum dictum sit amet sed nulla. Vivamus vel efficitur dolor.
|
||||
|
||||
Ut et consequat enim, quis ornare nibh. In lectus neque, mollis et suscipit et, vestibulum vitae augue. Praesent id ante sit amet odio venenatis placerat a at erat. Sed sed metus sed nisi dictum varius. Integer tincidunt fermentum purus ac porta. Fusce porttitor non risus eget tristique. Donec augue nunc, maximus at fermentum vel, varius et neque. Ut sed consectetur mauris. Quisque ipsum enim, porttitor vitae imperdiet sit amet, tempor et mauris. Aliquam malesuada tincidunt lectus quis blandit. Sed commodo orci felis, quis ultrices tellus facilisis sed. Nunc vel varius est. Duis ullamcorper eu metus in pulvinar. Morbi at sapien dictum, rutrum mauris eget, interdum tellus.
|
||||
|
||||
## Why do we use it?
|
||||
|
||||
**Comment:** Exctracted from the lipsum.com website.
|
||||
|
||||
It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.
|
||||
|
||||
The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English.
|
||||
|
||||
Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).
|
||||
|
||||
## Chapter: Chapter Two
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Curabitur a elit posuere, varius ex et, convallis neque. Phasellus sagittis pharetra sem vitae dapibus. Curabitur varius lorem non pulvinar congue.
|
||||
|
||||
Curabitur a elit posuere, varius ex et, convallis neque. Phasellus sagittis pharetra sem vitae dapibus. Curabitur varius lorem non pulvinar congue. Vestibulum pharetra fermentum leo, sed faucibus eros placerat quis. In hac habitasse platea dictumst. Donec metus massa, rutrum quis consequat et, tincidunt ac felis. Duis mollis metus ac nunc tincidunt blandit. Ut aliquet velit eu odio pharetra condimentum. Integer rutrum lacus orci, id venenatis libero accumsan at.
|
||||
|
||||
### Scene: Scene Three
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Aenean ut libero ut lectus porttitor rhoncus vel et massa. Nam pretium, nibh et varius vehicula, urna metus blandit eros, euismod pharetra diam diam et libero. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.
|
||||
|
||||
Aenean ut libero ut lectus porttitor rhoncus vel et massa. Nam pretium, nibh et varius vehicula, urna metus blandit eros, euismod pharetra diam diam et libero. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aenean tincidunt lacus vitae nibh elementum eleifend. Sed rutrum condimentum sem quis blandit. Duis imperdiet libero metus, quis convallis quam faucibus a. Nulla ligula est, semper quis sollicitudin et, pretium id justo. Curabitur pharetra risus eget consectetur commodo. Duis mattis arcu non est condimentum, id venenatis risus volutpat. Pellentesque aliquet mauris non mauris porttitor ultrices. Phasellus ut vestibulum mi. Suspendisse malesuada metus lorem, a malesuada orci rhoncus a. Praesent euismod convallis ante, lacinia tincidunt ex egestas id. Praesent sit amet efficitur sapien. Morbi tincidunt volutpat nunc sed dictum. Aliquam ultrices metus id fermentum lobortis.
|
||||
|
||||
Pellentesque id sagittis dui. Praesent ut nisi sit amet libero euismod ornare. Vestibulum vehicula, lorem eget aliquet imperdiet, eros nulla iaculis mi, vel bibendum est dui sed orci. Nullam vitae lorem rutrum, euismod lacus id, ullamcorper lectus. Duis nec commodo mi, a fringilla diam. Vestibulum molestie nibh tristique, viverra augue non, aliquet metus. Phasellus a tellus ac nisl tempor aliquet. Nulla vitae sapien rutrum augue ornare ultrices a quis nisi. Sed pulvinar tincidunt ex. Fusce vel sem vitae ante pellentesque lobortis.
|
||||
|
||||
Maecenas ullamcorper lacus nec turpis finibus aliquet eget rutrum augue. Integer lorem erat, faucibus non lacus lacinia, pulvinar egestas felis. Proin rutrum nunc eget nulla varius, id blandit mauris tincidunt. Donec sit amet ullamcorper nisi, ut efficitur mi. Aliquam aliquet, nulla eget rhoncus tristique, justo lorem consectetur dui, id ornare leo odio sed tellus. Curabitur interdum velit a turpis condimentum venenatis. Nunc rhoncus sem ac augue auctor, nec malesuada ex fringilla. Vestibulum egestas diam sed leo consectetur vulputate quis eget enim. Nam tincidunt metus sit amet maximus ullamcorper. Sed placerat velit vitae massa efficitur viverra. Etiam eleifend dignissim ante, sed luctus nisl tristique a. In vestibulum pharetra dolor in molestie. Vivamus auctor massa ac magna imperdiet, sit amet iaculis turpis finibus.
|
||||
|
||||
Aenean dapibus vulputate purus, sit amet tempor nunc suscipit consequat. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Mauris auctor congue eros, non pellentesque neque dapibus ac. Vestibulum non leo nec urna lacinia eleifend quis et diam. Praesent eu nisi magna. Nulla at magna massa. Suspendisse porta varius scelerisque. Duis at auctor dolor, non dapibus urna. Nunc venenatis feugiat magna non molestie. Aliquam non ornare ex. Quisque eu ultrices velit, quis pellentesque eros. Phasellus eleifend, elit id imperdiet aliquam, nulla quam molestie turpis, at egestas odio ante et tortor. Suspendisse fringilla condimentum justo, at aliquet odio aliquam ac.
|
||||
|
||||
### Scene: Scene Four
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Nam tempor blandit magna laoreet aliquet. Vestibulum auctor posuere leo, ac gravida nisi rhoncus varius. Aenean posuere dolor vitae condimentum volutpat. Donec egestas volutpat risus, quis luctus justo.
|
||||
|
||||
Nam tempor blandit magna laoreet aliquet. Vestibulum auctor posuere leo, ac gravida nisi rhoncus varius. Aenean posuere dolor vitae condimentum volutpat. Donec egestas volutpat risus, quis luctus justo. Nullam viverra dui et auctor pretium. Ut ullamcorper velit urna, sed imperdiet massa convallis a. Suspendisse efficitur, ipsum nec cursus pulvinar, eros urna posuere diam, nec elementum mi felis vitae sapien.
|
||||
|
||||
Duis efficitur metus pulvinar, molestie magna eget, feugiat dui. Fusce convallis vehicula ipsum convallis blandit. Duis eros risus, malesuada eu imperdiet in, hendrerit ac metus. Vestibulum id justo gravida, dignissim nibh non, iaculis diam. Fusce accumsan est ut massa porta ultricies. Nulla vitae justo in tortor laoreet mollis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin eu libero justo. Vivamus aliquet placerat est, et auctor eros posuere venenatis. Nunc quam diam, tincidunt ac aliquet in, fermentum sit amet lectus. Proin commodo tincidunt blandit. Quisque erat arcu, semper nec dui non, consectetur gravida ipsum. Nullam pretium consectetur elit at condimentum.
|
||||
|
||||
Etiam sagittis, erat vitae accumsan tempor, neque augue scelerisque nulla, ut ultrices justo urna sit amet augue. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aenean at pulvinar tortor. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras vel porta quam. Nullam eu mauris mollis, vehicula justo vel, placerat sapien. Phasellus viverra elit et vestibulum pharetra. Vestibulum commodo fermentum leo, eu porta nisi aliquam eget. Nulla tempus porttitor nisi nec mollis. Nam non mollis turpis. Nam finibus leo a bibendum tincidunt. Donec commodo velit magna, ac semper sapien mattis id. Proin sem velit, lobortis quis ultricies id, pharetra et lectus. Vestibulum condimentum neque vitae mi dapibus mollis. Mauris luctus vel sapien vitae hendrerit.
|
||||
|
||||
Aenean vestibulum magna placerat fermentum tempus. Nam auctor condimentum nunc, in elementum quam ornare a. Etiam in ipsum elit. Proin pharetra, dolor sollicitudin pellentesque congue, lorem dolor ultricies magna, non iaculis risus nisl dictum diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Vivamus vel euismod nibh, et lobortis dolor. Maecenas dui odio, gravida nec molestie ut, feugiat ut arcu. Pellentesque risus sapien, gravida a convallis quis, ullamcorper porttitor sapien.
|
||||
|
||||
Donec ipsum eros, vestibulum sit amet cursus eget, iaculis quis dolor. Pellentesque magna augue, tristique dapibus mi vitae, molestie venenatis enim. Nam malesuada, turpis volutpat rhoncus ullamcorper, justo est eleifend orci, ut luctus risus ex rutrum arcu. Sed mi elit, feugiat rhoncus ornare sed, porta id leo. Pellentesque feugiat nulla tincidunt erat suscipit, eu congue lacus hendrerit. Morbi pulvinar enim sed consequat auctor. Ut eleifend enim sem, vitae euismod ex ultricies sit amet. Curabitur eu efficitur nisi, suscipit finibus sapien. In sodales blandit erat, vestibulum pulvinar ante volutpat nec. Vivamus dictum non libero at molestie. Donec sit amet neque in ante convallis pretium. Nunc vel iaculis dui.
|
||||
|
||||
Phasellus eu nunc ut nunc faucibus laoreet. Aliquam at magna risus. Praesent lobortis, risus finibus semper varius, magna purus vestibulum eros, at pulvinar sapien enim a ex. In scelerisque malesuada ex, sit amet egestas neque condimentum sed. Praesent vulputate efficitur massa. Cras at accumsan ligula. In elementum lectus eget blandit dictum. Nam vitae libero ut justo eleifend rutrum ac nec arcu. Aliquam sodales in quam congue vestibulum. Aliquam in accumsan sapien. Quisque lobortis nisl nisi, vitae bibendum turpis efficitur sed. Vestibulum tempor nulla eget nisi convallis, blandit sagittis ipsum convallis. Donec odio nibh, ultrices quis odio in, mollis euismod libero.
|
||||
|
||||
### Scene: Scene Five
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Praesent eget est porta, dictum ante in, egestas risus. Mauris risus mauris, consequat aliquam mauris et, feugiat iaculis ipsum. Aliquam arcu ipsum, fermentum ut arcu sed, lobortis euismod sem. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
|
||||
|
||||
Praesent eget est porta, dictum ante in, egestas risus. Mauris risus mauris, consequat aliquam mauris et, feugiat iaculis ipsum. Aliquam arcu ipsum, fermentum ut arcu sed, lobortis euismod sem. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. In sed felis auctor, rhoncus dui ac, consequat dolor. Integer volutpat libero sed nisl aliquet varius. Suspendisse et lorem sapien. Proin id ultrices nibh, ac suscipit diam. Suspendisse placerat varius porttitor. Curabitur elementum sed enim ultrices imperdiet.
|
||||
|
||||
In ut lobortis lacus, nec luctus arcu. Vivamus condimentum sapien a ipsum malesuada sodales. Donec et vestibulum risus. Integer dictum euismod eros id tincidunt. Aliquam sagittis leo vitae consequat fermentum. Donec maximus ex eu ex iaculis porta. Praesent pharetra lacinia risus, et eleifend diam commodo non. Sed feugiat ipsum ut orci sagittis, quis faucibus lectus blandit. Sed tellus quam, gravida vitae laoreet quis, tempus lobortis dui. Vivamus semper accumsan ullamcorper. Praesent tempus pretium eros, non elementum risus. Pellentesque odio quam, auctor quis ex non, vulputate egestas dolor. Nunc luctus enim ut justo sodales consectetur. Sed aliquet a mauris vel posuere.
|
||||
|
||||
Donec luctus lectus efficitur, blandit nisi vitae, dignissim tellus. Pellentesque euismod pharetra augue gravida hendrerit. Quisque nisi mi, mattis ac nisi non, maximus malesuada ante. Nulla lobortis, diam eu ornare ornare, tellus enim feugiat arcu, non vestibulum tortor nunc eu justo. Integer blandit felis justo, eu semper est scelerisque vel. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nam ultricies, nisi vel elementum commodo, nisl dolor tincidunt magna, sed varius est nunc at lectus. Aliquam dolor tortor, sodales placerat ultricies quis, sodales quis sapien. Duis ullamcorper sollicitudin risus at mattis. Integer consequat et nunc at condimentum. Pellentesque cursus congue augue, non suscipit lectus sodales ut. Nam a mi bibendum, blandit nisl eu, accumsan nunc. Aliquam a ex mauris. Sed nec sem quis arcu dignissim tempus eget et turpis. Ut sed ex nec ipsum ultrices lobortis.
|
||||
|
||||
Pellentesque rhoncus pharetra eros, non mollis nisi pretium non. Mauris accumsan quis odio quis euismod. Maecenas ultrices, augue et aliquam tincidunt, erat tellus ornare ligula, quis ultrices turpis nibh vel justo. Fusce gravida odio tellus. In a congue diam. Mauris consequat ex id leo lacinia dictum. Fusce id sem sodales, ultrices sapien ac, convallis orci. Donec gravida nunc sit amet nisi hendrerit, sed porta enim aliquam. In hac habitasse platea dictumst. Cras a orci felis. Curabitur non felis nec urna maximus auctor ut ut nisi. Curabitur at turpis eleifend, blandit eros at, molestie odio. Phasellus euismod neque augue.
|
||||
|
||||
Integer egestas maximus leo eu facilisis. Nunc rhoncus dignissim lectus eu lacinia. Praesent lacinia urna porttitor aliquam condimentum. Nulla eu eros dictum, dictum nunc vitae, sagittis nibh. Integer ante neque, consequat nec sollicitudin id, consectetur vitae dolor. Nullam volutpat sem orci, quis viverra magna auctor a. Suspendisse potenti. Maecenas commodo sed neque pellentesque vehicula. Sed luctus nisl risus, elementum semper purus interdum vel. Ut pulvinar, massa sit amet venenatis placerat, nunc lacus hendrerit odio, non aliquet nunc risus eu lectus. Maecenas feugiat semper ligula, id lobortis sem porta eu. Integer posuere elit magna, at mollis eros bibendum et. Ut imperdiet purus vel nulla aliquam maximus. Morbi sodales purus tellus, a rhoncus sem rutrum sit amet. Quisque risus sem, laoreet nec convallis nec, rutrum vitae justo.
|
||||
|
||||
# Notes: Characters
|
||||
|
||||
# Nobody Owens
|
||||
|
||||
**Tag:** Bod
|
||||
**Plot:** Main
|
||||
|
||||
Pellentesque nec erat ut nulla posuere commodo. Curabitur nisi augue, imperdiet et porta imperdiet, efficitur id leo. Cras finibus arcu at nibh commodo congue. Proin suscipit placerat condimentum. Aenean ante enim, cursus id lorem a, blandit venenatis nibh. Maecenas suscipit porta elit, sit amet porta felis porttitor eu. Sed a dui nibh. Phasellus sed faucibus dui. Pellentesque felis nulla, ultrices non efficitur quis, rutrum id mi. Mauris tempus auctor nisl, in bibendum enim pellentesque sit amet. Proin nunc lacus, imperdiet nec posuere ac, interdum non lectus.
|
||||
|
||||
Suspendisse faucibus est auctor orci mollis luctus. Praesent quis sodales neque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Donec sodales rutrum mattis. In in sem ornare, consequat nulla ac, convallis arcu. Duis ac metus id felis commodo commodo sit amet eget diam. Curabitur rhoncus lacinia leo at sodales. Etiam finibus porta diam a viverra. Praesent nisi urna, volutpat sit amet odio at, vehicula vehicula leo. In non enim eget nisl luctus commodo. Pellentesque pellentesque at lectus at luctus. Quisque nec felis bibendum, lacinia libero ut, lacinia eros. Integer finibus ultricies nibh sit amet placerat.
|
||||
|
||||
Nullam scelerisque velit et tortor congue vestibulum a at nisi. Vivamus sodales ut turpis a convallis. In dignissim nibh at luctus sodales. Etiam sit amet rhoncus massa. Phasellus ligula magna, sollicitudin non imperdiet sit amet, volutpat vel magna. Nunc vestibulum tempor lectus, sit amet porta nunc hendrerit in. Curabitur non odio sit amet massa tincidunt facilisis. Integer et luctus nunc, eget euismod leo. Praesent faucibus metus sed purus convallis scelerisque. Fusce viverra lorem et placerat malesuada. In at elit malesuada, ullamcorper risus vitae, sodales dolor. Donec quis elementum lectus. Quisque eu eros at dui imperdiet euismod ut id neque.
|
||||
|
||||
# Notes: Plot
|
||||
|
||||
# Main Plot
|
||||
|
||||
**Tag:** Main
|
||||
|
||||
Suspendisse vulputate malesuada pellentesque. Aenean sollicitudin cursus mi, vitae ultricies felis ullamcorper eu. Duis luctus risus mi, in accumsan velit cursus ut. Vestibulum eleifend leo in magna eleifend fermentum. Proin nec ornare elit. Phasellus nec interdum risus. In a volutpat augue, quis egestas justo. Morbi porta mauris mattis bibendum imperdiet.
|
||||
|
||||
Mauris ut erat eu lorem malesuada egestas vel vel urna. Maecenas ac semper quam. Maecenas aliquet metus non interdum mattis. Proin consectetur molestie ligula. Aliquam sollicitudin pulvinar urna a pellentesque. Suspendisse ultrices, est mattis scelerisque porta, nisi nisi laoreet nisl, non condimentum quam ante a velit. Proin scelerisque justo augue, nec laoreet ligula egestas at. Etiam enim quam, ultrices non accumsan hendrerit, elementum vel ligula. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam efficitur odio libero, in vestibulum arcu aliquam at. Cras non vehicula augue. Integer lobortis, est vitae aliquam facilisis, metus ligula aliquet eros, at porttitor sem tortor eget massa. Aliquam varius scelerisque neque sed gravida. Aenean eleifend lorem id ante elementum sollicitudin. Proin commodo massa a quam volutpat, mollis fermentum turpis efficitur.
|
||||
|
||||
# Notes: World
|
||||
|
||||
# Ancient Europe
|
||||
|
||||
**Tag:** Europe
|
||||
|
||||
Vivamus sodales risus ac accumsan posuere. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nunc vel enim felis. Vestibulum dignissim massa nunc, a auctor magna eleifend et. Proin dignissim sodales erat vitae convallis. Aliquam id tellus dui. Curabitur sollicitudin scelerisque ex sit amet posuere. Nam rutrum felis id rhoncus feugiat. Duis sagittis quam quis purus efficitur, quis rutrum odio iaculis. Maecenas semper ante turpis, at vulputate mi consectetur non. Sed rutrum nibh turpis, quis rhoncus purus ornare quis. Vestibulum at rutrum mauris. Integer dolor nisi, tincidunt eget vehicula ac, ultricies at ligula.
|
||||
|
||||
Aenean semper turpis quis varius rhoncus. Vivamus ac mi eget felis euismod vulputate. Nam eu tempus velit. Etiam ut est porta, finibus erat sit amet, consectetur felis. Nullam consequat felis ut lacus pharetra, in lobortis urna mollis. Nulla varius eros nec lorem rhoncus, sed venenatis risus ultrices. Phasellus pellentesque laoreet neque, ut ultricies lacus vulputate quis. In malesuada dui sit amet est interdum, eget consectetur mi gravida. Cras vel bibendum purus. Quisque commodo tempor arcu, non lacinia sem blandit eleifend. Quisque at neque gravida, porttitor metus a, suscipit diam. Quisque convallis sodales lacus et condimentum. Donec a suscipit diam. Pellentesque eget cursus neque.
|
||||
|
||||
Nunc ullamcorper magna quis elit condimentum rhoncus. Aenean dictum pulvinar dolor suscipit interdum. Aliquam elit massa, elementum nec cursus eu, maximus nec ipsum. Donec ullamcorper iaculis dolor eu commodo. Nunc eget tortor quis turpis consectetur varius. Vestibulum nec justo vel tellus venenatis condimentum. Duis auctor iaculis massa. Nunc risus magna, rutrum vitae eros non, tristique mollis enim.
|
||||
|
||||
@@ -0,0 +1,126 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset='utf-8'>
|
||||
<title>Lorem Ipsum</title>
|
||||
</head>
|
||||
<style>
|
||||
body {font-family: 'Arial'; font-size: 12pt;}
|
||||
p {text-align: justify; line-height: 150%; margin-top: 0.00em; margin-bottom: 0.76em;}
|
||||
h1 {color: rgb(66, 113, 174); page-break-after: avoid; margin-top: 1.30em; margin-bottom: 0.65em;}
|
||||
h2 {color: rgb(66, 113, 174); page-break-after: avoid; margin-top: 1.09em; margin-bottom: 0.65em;}
|
||||
h3 {color: rgb(50, 50, 50); page-break-after: avoid; margin-top: 0.76em; margin-bottom: 0.65em;}
|
||||
h4 {color: rgb(50, 50, 50); page-break-after: avoid; margin-top: 0.76em; margin-bottom: 0.65em;}
|
||||
.title {font-size: 2.5em; margin-top: 1.30em; margin-bottom: 0.65em;}
|
||||
.sep, .skip {text-align: center; margin-top: 1.30em; margin-bottom: 1.30em;}
|
||||
a {color: rgb(66, 113, 174);}
|
||||
.tags {color: rgb(245, 135, 31); font-weight: bold;}
|
||||
.break {text-align: left;}
|
||||
.synopsis {font-style: italic;}
|
||||
.comment {font-style: italic; color: rgb(100, 100, 100);}
|
||||
article {width: 800px; margin: 40px auto;}
|
||||
</style>
|
||||
<body>
|
||||
<article>
|
||||
<h1 class='title' style='text-align: center;'>Lorem Ipsum</h1>
|
||||
<p style='text-align: center;'><strong>By lipsum.com</strong></p>
|
||||
<p style='text-align: center;'>“Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit…”</p>
|
||||
<p style='text-align: center;'>“There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…”</p>
|
||||
<p class='comment'><strong>Comment:</strong> Exctracted from the lipsum.com website.</p>
|
||||
<p>Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of “de Finibus Bonorum et Malorum” (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, “Lorem ipsum dolor sit amet..”, comes from a line in section 1.10.32.</p>
|
||||
<p>The standard chunk of Lorem Ipsum used since the 1500s is reproduced below for those interested. Sections 1.10.32 and 1.10.33 from “de Finibus Bonorum et Malorum” by Cicero are also reproduced in their exact original form, accompanied by English versions from the 1914 translation by H. Rackham.</p>
|
||||
<h1 style='page-break-before: always;'>Prologue</h1>
|
||||
<p class='synopsis'><strong>Synopsis:</strong> Explanation from the lipsum.com website.</p>
|
||||
<p><em>Lorem Ipsum</em> is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.</p>
|
||||
<h1 class='title' style='text-align: center; page-break-before: always;'>Title: Act One</h1>
|
||||
<p style='text-align: center;'>“Fusce maximus felis libero”</p>
|
||||
<h1 style='page-break-before: always;'>Chapter: Chapter One</h1>
|
||||
<p style='margin-bottom: 0;'><span class='tags'>Point of View:</span> <a href='#tag_Bod'>Bod</a></p>
|
||||
<p style='margin-bottom: 0; margin-top: 0;'><span class='tags'>Plot:</span> <a href='#tag_Main'>Main</a></p>
|
||||
<p style='margin-top: 0;'><span class='tags'>Locations:</span> <a href='#tag_Europe'>Europe</a></p>
|
||||
<p class='synopsis'><strong>Synopsis:</strong> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque at aliquam quam.</p>
|
||||
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque at aliquam quam. Praesent magna nunc, lacinia sit amet quam eget, aliquet ultrices justo. Morbi ornare enim et lorem rutrum finibus ut eu dolor. Aliquam a orci odio. Ut ultrices sem quis massa placerat, eget mollis nisl cursus. Cras vel sagittis justo. Ut non ultricies leo. Maecenas rutrum velit in est varius, et egestas massa pulvinar.</p>
|
||||
<h2>Scene: Scene One</h2>
|
||||
<p style='margin-bottom: 0;'><span class='tags'>Point of View:</span> <a href='#tag_Bod'>Bod</a></p>
|
||||
<p style='margin-bottom: 0; margin-top: 0;'><span class='tags'>Plot:</span> <a href='#tag_Main'>Main</a></p>
|
||||
<p style='margin-top: 0;'><span class='tags'>Locations:</span> <a href='#tag_Europe'>Europe</a></p>
|
||||
<p class='synopsis'><strong>Synopsis:</strong> Aenean ut placerat velit. Etiam laoreet ullamcorper risus, eget lobortis enim scelerisque non. Suspendisse id maximus nunc, et mollis sapien. Curabitur vel semper sapien, non pulvinar dolor. Etiam finibus nisi vel mi molestie consectetur.</p>
|
||||
<p>Aenean ut placerat velit. Etiam laoreet ullamcorper risus, eget lobortis enim scelerisque non. Suspendisse id maximus nunc, et mollis sapien. Curabitur vel semper sapien, non pulvinar dolor. Etiam finibus nisi vel mi molestie consectetur. Donec quis ante nunc. Mauris ut leo ipsum. Vestibulum est neque, hendrerit nec neque a, ullamcorper lobortis tellus. Fusce sollicitudin purus quis congue bibendum. Aliquam condimentum ipsum tristique blandit tristique. Donec pulvinar neque ac suscipit malesuada.</p>
|
||||
<p>Aliquam ut nisl arcu. Ut ultricies, lorem dignissim rutrum convallis, risus orci tempus lectus, congue feugiat sem lectus vitae odio. Duis sit amet justo finibus, hendrerit nulla at, ullamcorper enim. Praesent vel tellus sit amet tellus vulputate bibendum. Morbi eleifend sagittis sem, ac volutpat ante congue non. In hac habitasse platea dictumst. Morbi lobortis fermentum elit, dignissim sagittis ligula volutpat lacinia. Vestibulum eu interdum odio. Integer ac purus commodo metus congue tempor non at urna. Sed eget tortor vel quam viverra egestas. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Donec non convallis mauris, ac feugiat ex.</p>
|
||||
<h3>Section: Scene One, Section Two</h3>
|
||||
<p>Integer vel libero ipsum. Donec varius aliquam libero, sit amet commodo urna hendrerit non. Nullam quis erat mollis nunc viverra volutpat tincidunt in odio. Nam vitae quam sem. Aliquam suscipit nulla non lorem pharetra semper. Ut suscipit erat eu ligula accumsan ultrices. Phasellus nisl tellus, placerat sed laoreet id, consectetur nec dolor. Sed fringilla ipsum id dapibus posuere. Aenean finibus pharetra tincidunt. Ut molestie malesuada nulla, id posuere lorem tincidunt eu. Aliquam tempor eros a est vulputate, scelerisque pulvinar ipsum fermentum. In hac habitasse platea dictumst.</p>
|
||||
<p>Curabitur congue, justo quis interdum fermentum, tellus nulla imperdiet sapien, eu interdum enim tellus condimentum metus. Vivamus nunc velit, dignissim ut ultrices sit amet, ultricies quis enim. Donec ut vestibulum neque. Vivamus semper neque id ex ullamcorper varius. Fusce mattis nibh viverra lorem sagittis, et tempor arcu congue. Suspendisse sit amet felis sed urna facilisis mattis eget vitae arcu. Proin eu magna hendrerit, tristique sem maximus, placerat diam. Nulla tristique sed velit sit amet varius. Etiam vel ornare magna, in vulputate arcu. Cras velit orci, tincidunt sed volutpat cursus, bibendum vel sem. Nunc vulputate pharetra tortor, ac consectetur neque tincidunt sit amet. Nulla ornare mi sed mi dignissim ultricies. Ut tincidunt bibendum mauris, sed elementum ex vulputate vel. Mauris fermentum, felis nec vehicula congue, felis lorem facilisis erat, a dictum dolor augue vitae quam. Maecenas rutrum tortor nec consequat eleifend.</p>
|
||||
<h2>Scene: Scene Two</h2>
|
||||
<p style='margin-bottom: 0;'><span class='tags'>Point of View:</span> <a href='#tag_Bod'>Bod</a></p>
|
||||
<p style='margin-bottom: 0; margin-top: 0;'><span class='tags'>Plot:</span> <a href='#tag_Main'>Main</a></p>
|
||||
<p style='margin-top: 0;'><span class='tags'>Locations:</span> <a href='#tag_Europe'>Europe</a></p>
|
||||
<p class='synopsis'><strong>Synopsis:</strong> Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer sapien nulla, dictum at lacus a, dignissim consectetur dolor. Nunc vel eleifend lacus, eu dapibus orci.</p>
|
||||
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer sapien nulla, dictum at lacus a, dignissim consectetur dolor. Nunc vel eleifend lacus, eu dapibus orci. Vestibulum facilisis bibendum aliquam. Aliquam posuere, turpis ac bibendum varius, sem tellus venenatis risus, in elementum massa enim ac lorem. Integer in sem ac diam blandit ultricies ut in nulla. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam sit amet erat est. Curabitur vitae cursus justo, sit amet placerat dolor. Vivamus eu felis hendrerit, tincidunt massa rutrum, maximus arcu. Pellentesque commodo justo odio, vel rutrum nulla tincidunt eu. Integer non neque condimentum, convallis diam non, varius ligula. Aliquam eget sapien mauris. Aenean pharetra nunc nisi, vel maximus ante tristique sit amet. Aliquam risus metus, interdum non odio eu, consectetur lacinia sapien.</p>
|
||||
<p>Proin vitae gravida nisl. Integer viverra orci turpis, sit amet pretium ligula facilisis consequat. Nulla interdum commodo metus, mollis consequat dui tincidunt et. Proin consequat bibendum justo id commodo. Fusce fermentum nunc turpis, eu vestibulum risus feugiat ut. Sed scelerisque vel ligula ut interdum. Suspendisse ac blandit ligula, sagittis fringilla dolor. In tincidunt convallis diam et ornare. Aenean id dignissim est, ut rhoncus quam. Donec vitae nisl velit. In convallis nibh ut augue dignissim, eu elementum quam cursus. Phasellus in lectus lorem. Curabitur in pellentesque nisi, at gravida sapien. Sed cursus justo volutpat lacus placerat, sit amet dignissim turpis commodo. Aliquam vitae orci eget nulla posuere condimentum in ut felis.</p>
|
||||
<p>Nulla accumsan ante in pulvinar efficitur. Nulla non velit quis urna hendrerit bibendum. Suspendisse ultrices ante eu justo malesuada, sed fermentum enim rutrum. Nunc fermentum pharetra felis, vitae sollicitudin quam rutrum porta. Aliquam fringilla velit a mi laoreet, et luctus est rutrum. In gravida non ipsum sit amet tempus. Curabitur et eleifend purus. Nulla facilisi.</p>
|
||||
<h3>Section: Scene Two, Section Two</h3>
|
||||
<p>Suspendisse potenti. Fusce tempus lorem nec laoreet suscipit. Fusce vulputate nisl ac diam tincidunt, nec malesuada quam pellentesque. Maecenas congue, tellus quis commodo rutrum, magna leo egestas arcu, quis suscipit ex risus id ligula. Suspendisse potenti. Morbi blandit lacus vitae laoreet vulputate. Donec vitae tellus eleifend, lobortis eros eu, tincidunt enim. Nullam et ullamcorper nisi. Vivamus tellus ex, lobortis quis rutrum ut, dapibus sit amet turpis. Phasellus pellentesque metus diam, commodo tristique ante commodo ac. Ut mollis ipsum nec diam blandit sollicitudin. Duis bibendum lacus nec commodo dapibus. Sed condimentum luctus ante, id ultricies urna varius nec. Nam convallis magna nec bibendum ultrices. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed auctor pharetra quam, vitae porta ex bibendum eu.</p>
|
||||
<p>Vivamus ut venenatis lectus. Phasellus nec elit id sem dictum ornare. Quisque feugiat, diam eget sagittis ultricies, orci turpis efficitur nisi, et fringilla justo odio nec nibh. In hac habitasse platea dictumst. Sed tempus bibendum feugiat. Etiam luctus mauris arcu, non interdum ipsum ultrices id. Vivamus blandit urna sit amet scelerisque vulputate. Quisque in metus eget massa rutrum dictum sit amet sed nulla. Vivamus vel efficitur dolor.</p>
|
||||
<p>Ut et consequat enim, quis ornare nibh. In lectus neque, mollis et suscipit et, vestibulum vitae augue. Praesent id ante sit amet odio venenatis placerat a at erat. Sed sed metus sed nisi dictum varius. Integer tincidunt fermentum purus ac porta. Fusce porttitor non risus eget tristique. Donec augue nunc, maximus at fermentum vel, varius et neque. Ut sed consectetur mauris. Quisque ipsum enim, porttitor vitae imperdiet sit amet, tempor et mauris. Aliquam malesuada tincidunt lectus quis blandit. Sed commodo orci felis, quis ultrices tellus facilisis sed. Nunc vel varius est. Duis ullamcorper eu metus in pulvinar. Morbi at sapien dictum, rutrum mauris eget, interdum tellus.</p>
|
||||
<h1 style='page-break-before: always;'>Why do we use it?</h1>
|
||||
<p class='comment'><strong>Comment:</strong> Exctracted from the lipsum.com website.</p>
|
||||
<p>	It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.</p>
|
||||
<p>	The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English.</p>
|
||||
<p>	Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).</p>
|
||||
<h1 style='page-break-before: always;'>Chapter: Chapter Two</h1>
|
||||
<p style='margin-bottom: 0;'><span class='tags'>Point of View:</span> <a href='#tag_Bod'>Bod</a></p>
|
||||
<p style='margin-bottom: 0; margin-top: 0;'><span class='tags'>Plot:</span> <a href='#tag_Main'>Main</a></p>
|
||||
<p style='margin-top: 0;'><span class='tags'>Locations:</span> <a href='#tag_Europe'>Europe</a></p>
|
||||
<p class='synopsis'><strong>Synopsis:</strong> Curabitur a elit posuere, varius ex et, convallis neque. Phasellus sagittis pharetra sem vitae dapibus. Curabitur varius lorem non pulvinar congue.</p>
|
||||
<p>Curabitur a elit posuere, varius ex et, convallis neque. Phasellus sagittis pharetra sem vitae dapibus. Curabitur varius lorem non pulvinar congue. Vestibulum pharetra fermentum leo, sed faucibus eros placerat quis. In hac habitasse platea dictumst. Donec metus massa, rutrum quis consequat et, tincidunt ac felis. Duis mollis metus ac nunc tincidunt blandit. Ut aliquet velit eu odio pharetra condimentum. Integer rutrum lacus orci, id venenatis libero accumsan at.</p>
|
||||
<h2>Scene: Scene Three</h2>
|
||||
<p style='margin-bottom: 0;'><span class='tags'>Point of View:</span> <a href='#tag_Bod'>Bod</a></p>
|
||||
<p style='margin-bottom: 0; margin-top: 0;'><span class='tags'>Plot:</span> <a href='#tag_Main'>Main</a></p>
|
||||
<p style='margin-top: 0;'><span class='tags'>Locations:</span> <a href='#tag_Europe'>Europe</a></p>
|
||||
<p class='synopsis'><strong>Synopsis:</strong> Aenean ut libero ut lectus porttitor rhoncus vel et massa. Nam pretium, nibh et varius vehicula, urna metus blandit eros, euismod pharetra diam diam et libero. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.</p>
|
||||
<p>Aenean ut libero ut lectus porttitor rhoncus vel et massa. Nam pretium, nibh et varius vehicula, urna metus blandit eros, euismod pharetra diam diam et libero. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aenean tincidunt lacus vitae nibh elementum eleifend. Sed rutrum condimentum sem quis blandit. Duis imperdiet libero metus, quis convallis quam faucibus a. Nulla ligula est, semper quis sollicitudin et, pretium id justo. Curabitur pharetra risus eget consectetur commodo. Duis mattis arcu non est condimentum, id venenatis risus volutpat. Pellentesque aliquet mauris non mauris porttitor ultrices. Phasellus ut vestibulum mi. Suspendisse malesuada metus lorem, a malesuada orci rhoncus a. Praesent euismod convallis ante, lacinia tincidunt ex egestas id. Praesent sit amet efficitur sapien. Morbi tincidunt volutpat nunc sed dictum. Aliquam ultrices metus id fermentum lobortis.</p>
|
||||
<p>Pellentesque id sagittis dui. Praesent ut nisi sit amet libero euismod ornare. Vestibulum vehicula, lorem eget aliquet imperdiet, eros nulla iaculis mi, vel bibendum est dui sed orci. Nullam vitae lorem rutrum, euismod lacus id, ullamcorper lectus. Duis nec commodo mi, a fringilla diam. Vestibulum molestie nibh tristique, viverra augue non, aliquet metus. Phasellus a tellus ac nisl tempor aliquet. Nulla vitae sapien rutrum augue ornare ultrices a quis nisi. Sed pulvinar tincidunt ex. Fusce vel sem vitae ante pellentesque lobortis.</p>
|
||||
<p>Maecenas ullamcorper lacus nec turpis finibus aliquet eget rutrum augue. Integer lorem erat, faucibus non lacus lacinia, pulvinar egestas felis. Proin rutrum nunc eget nulla varius, id blandit mauris tincidunt. Donec sit amet ullamcorper nisi, ut efficitur mi. Aliquam aliquet, nulla eget rhoncus tristique, justo lorem consectetur dui, id ornare leo odio sed tellus. Curabitur interdum velit a turpis condimentum venenatis. Nunc rhoncus sem ac augue auctor, nec malesuada ex fringilla. Vestibulum egestas diam sed leo consectetur vulputate quis eget enim. Nam tincidunt metus sit amet maximus ullamcorper. Sed placerat velit vitae massa efficitur viverra. Etiam eleifend dignissim ante, sed luctus nisl tristique a. In vestibulum pharetra dolor in molestie. Vivamus auctor massa ac magna imperdiet, sit amet iaculis turpis finibus.</p>
|
||||
<p>Aenean dapibus vulputate purus, sit amet tempor nunc suscipit consequat. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Mauris auctor congue eros, non pellentesque neque dapibus ac. Vestibulum non leo nec urna lacinia eleifend quis et diam. Praesent eu nisi magna. Nulla at magna massa. Suspendisse porta varius scelerisque. Duis at auctor dolor, non dapibus urna. Nunc venenatis feugiat magna non molestie. Aliquam non ornare ex. Quisque eu ultrices velit, quis pellentesque eros. Phasellus eleifend, elit id imperdiet aliquam, nulla quam molestie turpis, at egestas odio ante et tortor. Suspendisse fringilla condimentum justo, at aliquet odio aliquam ac.</p>
|
||||
<h2>Scene: Scene Four</h2>
|
||||
<p style='margin-bottom: 0;'><span class='tags'>Point of View:</span> <a href='#tag_Bod'>Bod</a></p>
|
||||
<p style='margin-bottom: 0; margin-top: 0;'><span class='tags'>Plot:</span> <a href='#tag_Main'>Main</a></p>
|
||||
<p style='margin-top: 0;'><span class='tags'>Locations:</span> <a href='#tag_Europe'>Europe</a></p>
|
||||
<p class='synopsis'><strong>Synopsis:</strong> Nam tempor blandit magna laoreet aliquet. Vestibulum auctor posuere leo, ac gravida nisi rhoncus varius. Aenean posuere dolor vitae condimentum volutpat. Donec egestas volutpat risus, quis luctus justo.</p>
|
||||
<p>Nam tempor blandit magna laoreet aliquet. Vestibulum auctor posuere leo, ac gravida nisi rhoncus varius. Aenean posuere dolor vitae condimentum volutpat. Donec egestas volutpat risus, quis luctus justo. Nullam viverra dui et auctor pretium. Ut ullamcorper velit urna, sed imperdiet massa convallis a. Suspendisse efficitur, ipsum nec cursus pulvinar, eros urna posuere diam, nec elementum mi felis vitae sapien.</p>
|
||||
<p>Duis efficitur metus pulvinar, molestie magna eget, feugiat dui. Fusce convallis vehicula ipsum convallis blandit. Duis eros risus, malesuada eu imperdiet in, hendrerit ac metus. Vestibulum id justo gravida, dignissim nibh non, iaculis diam. Fusce accumsan est ut massa porta ultricies. Nulla vitae justo in tortor laoreet mollis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin eu libero justo. Vivamus aliquet placerat est, et auctor eros posuere venenatis. Nunc quam diam, tincidunt ac aliquet in, fermentum sit amet lectus. Proin commodo tincidunt blandit. Quisque erat arcu, semper nec dui non, consectetur gravida ipsum. Nullam pretium consectetur elit at condimentum.</p>
|
||||
<p>Etiam sagittis, erat vitae accumsan tempor, neque augue scelerisque nulla, ut ultrices justo urna sit amet augue. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aenean at pulvinar tortor. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras vel porta quam. Nullam eu mauris mollis, vehicula justo vel, placerat sapien. Phasellus viverra elit et vestibulum pharetra. Vestibulum commodo fermentum leo, eu porta nisi aliquam eget. Nulla tempus porttitor nisi nec mollis. Nam non mollis turpis. Nam finibus leo a bibendum tincidunt. Donec commodo velit magna, ac semper sapien mattis id. Proin sem velit, lobortis quis ultricies id, pharetra et lectus. Vestibulum condimentum neque vitae mi dapibus mollis. Mauris luctus vel sapien vitae hendrerit.</p>
|
||||
<p>Aenean vestibulum magna placerat fermentum tempus. Nam auctor condimentum nunc, in elementum quam ornare a. Etiam in ipsum elit. Proin pharetra, dolor sollicitudin pellentesque congue, lorem dolor ultricies magna, non iaculis risus nisl dictum diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Vivamus vel euismod nibh, et lobortis dolor. Maecenas dui odio, gravida nec molestie ut, feugiat ut arcu. Pellentesque risus sapien, gravida a convallis quis, ullamcorper porttitor sapien.</p>
|
||||
<p>Donec ipsum eros, vestibulum sit amet cursus eget, iaculis quis dolor. Pellentesque magna augue, tristique dapibus mi vitae, molestie venenatis enim. Nam malesuada, turpis volutpat rhoncus ullamcorper, justo est eleifend orci, ut luctus risus ex rutrum arcu. Sed mi elit, feugiat rhoncus ornare sed, porta id leo. Pellentesque feugiat nulla tincidunt erat suscipit, eu congue lacus hendrerit. Morbi pulvinar enim sed consequat auctor. Ut eleifend enim sem, vitae euismod ex ultricies sit amet. Curabitur eu efficitur nisi, suscipit finibus sapien. In sodales blandit erat, vestibulum pulvinar ante volutpat nec. Vivamus dictum non libero at molestie. Donec sit amet neque in ante convallis pretium. Nunc vel iaculis dui.</p>
|
||||
<p>Phasellus eu nunc ut nunc faucibus laoreet. Aliquam at magna risus. Praesent lobortis, risus finibus semper varius, magna purus vestibulum eros, at pulvinar sapien enim a ex. In scelerisque malesuada ex, sit amet egestas neque condimentum sed. Praesent vulputate efficitur massa. Cras at accumsan ligula. In elementum lectus eget blandit dictum. Nam vitae libero ut justo eleifend rutrum ac nec arcu. Aliquam sodales in quam congue vestibulum. Aliquam in accumsan sapien. Quisque lobortis nisl nisi, vitae bibendum turpis efficitur sed. Vestibulum tempor nulla eget nisi convallis, blandit sagittis ipsum convallis. Donec odio nibh, ultrices quis odio in, mollis euismod libero.</p>
|
||||
<h2>Scene: Scene Five</h2>
|
||||
<p style='margin-bottom: 0;'><span class='tags'>Point of View:</span> <a href='#tag_Bod'>Bod</a></p>
|
||||
<p style='margin-bottom: 0; margin-top: 0;'><span class='tags'>Plot:</span> <a href='#tag_Main'>Main</a></p>
|
||||
<p style='margin-top: 0;'><span class='tags'>Locations:</span> <a href='#tag_Europe'>Europe</a></p>
|
||||
<p class='synopsis'><strong>Synopsis:</strong> Praesent eget est porta, dictum ante in, egestas risus. Mauris risus mauris, consequat aliquam mauris et, feugiat iaculis ipsum. Aliquam arcu ipsum, fermentum ut arcu sed, lobortis euismod sem. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</p>
|
||||
<p>Praesent eget est porta, dictum ante in, egestas risus. Mauris risus mauris, consequat aliquam mauris et, feugiat iaculis ipsum. Aliquam arcu ipsum, fermentum ut arcu sed, lobortis euismod sem. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. In sed felis auctor, rhoncus dui ac, consequat dolor. Integer volutpat libero sed nisl aliquet varius. Suspendisse et lorem sapien. Proin id ultrices nibh, ac suscipit diam. Suspendisse placerat varius porttitor. Curabitur elementum sed enim ultrices imperdiet.</p>
|
||||
<p>In ut lobortis lacus, nec luctus arcu. Vivamus condimentum sapien a ipsum malesuada sodales. Donec et vestibulum risus. Integer dictum euismod eros id tincidunt. Aliquam sagittis leo vitae consequat fermentum. Donec maximus ex eu ex iaculis porta. Praesent pharetra lacinia risus, et eleifend diam commodo non. Sed feugiat ipsum ut orci sagittis, quis faucibus lectus blandit. Sed tellus quam, gravida vitae laoreet quis, tempus lobortis dui. Vivamus semper accumsan ullamcorper. Praesent tempus pretium eros, non elementum risus. Pellentesque odio quam, auctor quis ex non, vulputate egestas dolor. Nunc luctus enim ut justo sodales consectetur. Sed aliquet a mauris vel posuere.</p>
|
||||
<p>Donec luctus lectus efficitur, blandit nisi vitae, dignissim tellus. Pellentesque euismod pharetra augue gravida hendrerit. Quisque nisi mi, mattis ac nisi non, maximus malesuada ante. Nulla lobortis, diam eu ornare ornare, tellus enim feugiat arcu, non vestibulum tortor nunc eu justo. Integer blandit felis justo, eu semper est scelerisque vel. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nam ultricies, nisi vel elementum commodo, nisl dolor tincidunt magna, sed varius est nunc at lectus. Aliquam dolor tortor, sodales placerat ultricies quis, sodales quis sapien. Duis ullamcorper sollicitudin risus at mattis. Integer consequat et nunc at condimentum. Pellentesque cursus congue augue, non suscipit lectus sodales ut. Nam a mi bibendum, blandit nisl eu, accumsan nunc. Aliquam a ex mauris. Sed nec sem quis arcu dignissim tempus eget et turpis. Ut sed ex nec ipsum ultrices lobortis.</p>
|
||||
<p>Pellentesque rhoncus pharetra eros, non mollis nisi pretium non. Mauris accumsan quis odio quis euismod. Maecenas ultrices, augue et aliquam tincidunt, erat tellus ornare ligula, quis ultrices turpis nibh vel justo. Fusce gravida odio tellus. In a congue diam. Mauris consequat ex id leo lacinia dictum. Fusce id sem sodales, ultrices sapien ac, convallis orci. Donec gravida nunc sit amet nisi hendrerit, sed porta enim aliquam. In hac habitasse platea dictumst. Cras a orci felis. Curabitur non felis nec urna maximus auctor ut ut nisi. Curabitur at turpis eleifend, blandit eros at, molestie odio. Phasellus euismod neque augue.</p>
|
||||
<p>Integer egestas maximus leo eu facilisis. Nunc rhoncus dignissim lectus eu lacinia. Praesent lacinia urna porttitor aliquam condimentum. Nulla eu eros dictum, dictum nunc vitae, sagittis nibh. Integer ante neque, consequat nec sollicitudin id, consectetur vitae dolor. Nullam volutpat sem orci, quis viverra magna auctor a. Suspendisse potenti. Maecenas commodo sed neque pellentesque vehicula. Sed luctus nisl risus, elementum semper purus interdum vel. Ut pulvinar, massa sit amet venenatis placerat, nunc lacus hendrerit odio, non aliquet nunc risus eu lectus. Maecenas feugiat semper ligula, id lobortis sem porta eu. Integer posuere elit magna, at mollis eros bibendum et. Ut imperdiet purus vel nulla aliquam maximus. Morbi sodales purus tellus, a rhoncus sem rutrum sit amet. Quisque risus sem, laoreet nec convallis nec, rutrum vitae justo.</p>
|
||||
<h1 class='title' style='text-align: center; page-break-before: always;'>Notes: Characters</h1>
|
||||
<h1>Nobody Owens</h1>
|
||||
<p style='margin-bottom: 0;'><span class='tags'>Tag:</span> <a name='tag_Bod'>Bod</a></p>
|
||||
<p style='margin-top: 0;'><span class='tags'>Plot:</span> <a href='#tag_Main'>Main</a></p>
|
||||
<p>Pellentesque nec erat ut nulla posuere commodo. Curabitur nisi augue, imperdiet et porta imperdiet, efficitur id leo. Cras finibus arcu at nibh commodo congue. Proin suscipit placerat condimentum. Aenean ante enim, cursus id lorem a, blandit venenatis nibh. Maecenas suscipit porta elit, sit amet porta felis porttitor eu. Sed a dui nibh. Phasellus sed faucibus dui. Pellentesque felis nulla, ultrices non efficitur quis, rutrum id mi. Mauris tempus auctor nisl, in bibendum enim pellentesque sit amet. Proin nunc lacus, imperdiet nec posuere ac, interdum non lectus.</p>
|
||||
<p>Suspendisse faucibus est auctor orci mollis luctus. Praesent quis sodales neque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Donec sodales rutrum mattis. In in sem ornare, consequat nulla ac, convallis arcu. Duis ac metus id felis commodo commodo sit amet eget diam. Curabitur rhoncus lacinia leo at sodales. Etiam finibus porta diam a viverra. Praesent nisi urna, volutpat sit amet odio at, vehicula vehicula leo. In non enim eget nisl luctus commodo. Pellentesque pellentesque at lectus at luctus. Quisque nec felis bibendum, lacinia libero ut, lacinia eros. Integer finibus ultricies nibh sit amet placerat.</p>
|
||||
<p>Nullam scelerisque velit et tortor congue vestibulum a at nisi. Vivamus sodales ut turpis a convallis. In dignissim nibh at luctus sodales. Etiam sit amet rhoncus massa. Phasellus ligula magna, sollicitudin non imperdiet sit amet, volutpat vel magna. Nunc vestibulum tempor lectus, sit amet porta nunc hendrerit in. Curabitur non odio sit amet massa tincidunt facilisis. Integer et luctus nunc, eget euismod leo. Praesent faucibus metus sed purus convallis scelerisque. Fusce viverra lorem et placerat malesuada. In at elit malesuada, ullamcorper risus vitae, sodales dolor. Donec quis elementum lectus. Quisque eu eros at dui imperdiet euismod ut id neque.</p>
|
||||
<h1 class='title' style='text-align: center; page-break-before: always;'>Notes: Plot</h1>
|
||||
<h1>Main Plot</h1>
|
||||
<p><span class='tags'>Tag:</span> <a name='tag_Main'>Main</a></p>
|
||||
<p>Suspendisse vulputate malesuada pellentesque. Aenean sollicitudin cursus mi, vitae ultricies felis ullamcorper eu. Duis luctus risus mi, in accumsan velit cursus ut. Vestibulum eleifend leo in magna eleifend fermentum. Proin nec ornare elit. Phasellus nec interdum risus. In a volutpat augue, quis egestas justo. Morbi porta mauris mattis bibendum imperdiet.</p>
|
||||
<p>Mauris ut erat eu lorem malesuada egestas vel vel urna. Maecenas ac semper quam. Maecenas aliquet metus non interdum mattis. Proin consectetur molestie ligula. Aliquam sollicitudin pulvinar urna a pellentesque. Suspendisse ultrices, est mattis scelerisque porta, nisi nisi laoreet nisl, non condimentum quam ante a velit. Proin scelerisque justo augue, nec laoreet ligula egestas at. Etiam enim quam, ultrices non accumsan hendrerit, elementum vel ligula. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam efficitur odio libero, in vestibulum arcu aliquam at. Cras non vehicula augue. Integer lobortis, est vitae aliquam facilisis, metus ligula aliquet eros, at porttitor sem tortor eget massa. Aliquam varius scelerisque neque sed gravida. Aenean eleifend lorem id ante elementum sollicitudin. Proin commodo massa a quam volutpat, mollis fermentum turpis efficitur.</p>
|
||||
<h1 class='title' style='text-align: center; page-break-before: always;'>Notes: World</h1>
|
||||
<h1>Ancient Europe</h1>
|
||||
<p><span class='tags'>Tag:</span> <a name='tag_Europe'>Europe</a></p>
|
||||
<p>Vivamus sodales risus ac accumsan posuere. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nunc vel enim felis. Vestibulum dignissim massa nunc, a auctor magna eleifend et. Proin dignissim sodales erat vitae convallis. Aliquam id tellus dui. Curabitur sollicitudin scelerisque ex sit amet posuere. Nam rutrum felis id rhoncus feugiat. Duis sagittis quam quis purus efficitur, quis rutrum odio iaculis. Maecenas semper ante turpis, at vulputate mi consectetur non. Sed rutrum nibh turpis, quis rhoncus purus ornare quis. Vestibulum at rutrum mauris. Integer dolor nisi, tincidunt eget vehicula ac, ultricies at ligula.</p>
|
||||
<p>Aenean semper turpis quis varius rhoncus. Vivamus ac mi eget felis euismod vulputate. Nam eu tempus velit. Etiam ut est porta, finibus erat sit amet, consectetur felis. Nullam consequat felis ut lacus pharetra, in lobortis urna mollis. Nulla varius eros nec lorem rhoncus, sed venenatis risus ultrices. Phasellus pellentesque laoreet neque, ut ultricies lacus vulputate quis. In malesuada dui sit amet est interdum, eget consectetur mi gravida. Cras vel bibendum purus. Quisque commodo tempor arcu, non lacinia sem blandit eleifend. Quisque at neque gravida, porttitor metus a, suscipit diam. Quisque convallis sodales lacus et condimentum. Donec a suscipit diam. Pellentesque eget cursus neque.</p>
|
||||
<p>Nunc ullamcorper magna quis elit condimentum rhoncus. Aenean dictum pulvinar dolor suscipit interdum. Aliquam elit massa, elementum nec cursus eu, maximus nec ipsum. Donec ullamcorper iaculis dolor eu commodo. Nunc eget tortor quis turpis consectetur varius. Vestibulum nec justo vel tellus venenatis condimentum. Duis auctor iaculis massa. Nunc risus magna, rutrum vitae eros non, tristique mollis enim.</p>
|
||||
</article>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,203 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<office:document xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" office:version="1.2" office:mimetype="application/vnd.oasis.opendocument.text">
|
||||
<office:meta>
|
||||
<meta:creation-date>2023-01-11T10:54:59</meta:creation-date>
|
||||
<meta:generator>novelWriter/2.0.3</meta:generator>
|
||||
</office:meta>
|
||||
<office:font-face-decls>
|
||||
<style:font-face style:name="Arial" style:font-pitch="variable"/>
|
||||
</office:font-face-decls>
|
||||
<office:styles>
|
||||
<style:default-style style:family="paragraph">
|
||||
<style:paragraph-properties style:line-break="strict" style:tab-stop-distance="1.251cm" style:writing-mode="page"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="12pt" fo:language="en" fo:country="GB"/>
|
||||
</style:default-style>
|
||||
<style:style style:name="Standard" style:family="paragraph" style:class="text">
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="12pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="Heading" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text_20_body" style:class="text">
|
||||
<style:paragraph-properties fo:margin-top="0.322cm" fo:margin-bottom="0.276cm" fo:keep-with-next="always"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="14pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="Header_20_and_20_Footer" style:display-name="Header and Footer" style:family="paragraph" style:parent-style-name="Standard" style:class="extra"/>
|
||||
<style:style style:name="Text_20_body" style:family="paragraph" style:display-name="Text body" style:parent-style-name="Standard" style:class="text">
|
||||
<style:paragraph-properties fo:margin-top="0.000cm" fo:margin-bottom="0.322cm" fo:line-height="150%" fo:text-align="justify"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="12pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="Text_20_Meta" style:family="paragraph" style:display-name="Text Meta" style:parent-style-name="Standard" style:class="text">
|
||||
<style:paragraph-properties fo:margin-top="0.000cm" fo:margin-bottom="0.322cm" fo:line-height="150%"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="12pt" fo:color="#813709" loext:opacity="100%"/>
|
||||
</style:style>
|
||||
<style:style style:name="Title" style:family="paragraph" style:display-name="Title" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:class="chapter">
|
||||
<style:paragraph-properties fo:margin-top="0.552cm" fo:margin-bottom="0.276cm" fo:text-align="center"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="30pt" fo:font-weight="bold"/>
|
||||
</style:style>
|
||||
<style:style style:name="Heading_20_1" style:family="paragraph" style:display-name="Heading 1" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:default-outline-level="1" style:class="text">
|
||||
<style:paragraph-properties fo:margin-top="0.552cm" fo:margin-bottom="0.276cm"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="24pt" fo:font-weight="bold" fo:color="#2a6099" loext:opacity="100%"/>
|
||||
</style:style>
|
||||
<style:style style:name="Heading_20_2" style:family="paragraph" style:display-name="Heading 2" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:default-outline-level="2" style:class="text">
|
||||
<style:paragraph-properties fo:margin-top="0.461cm" fo:margin-bottom="0.276cm"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="19pt" fo:font-weight="bold" fo:color="#2a6099" loext:opacity="100%"/>
|
||||
</style:style>
|
||||
<style:style style:name="Heading_20_3" style:family="paragraph" style:display-name="Heading 3" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:default-outline-level="3" style:class="text">
|
||||
<style:paragraph-properties fo:margin-top="0.322cm" fo:margin-bottom="0.276cm"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="16pt" fo:font-weight="bold" fo:color="#444444" loext:opacity="100%"/>
|
||||
</style:style>
|
||||
<style:style style:name="Heading_20_4" style:family="paragraph" style:display-name="Heading 4" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:default-outline-level="4" style:class="text">
|
||||
<style:paragraph-properties fo:margin-top="0.322cm" fo:margin-bottom="0.276cm"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-family="Arial" fo:font-size="14pt" fo:font-weight="bold" fo:color="#444444" loext:opacity="100%"/>
|
||||
</style:style>
|
||||
<style:style style:name="Header" style:family="paragraph" style:display-name="Header" style:parent-style-name="Header_20_and_20_Footer">
|
||||
<style:paragraph-properties fo:text-align="right"/>
|
||||
</style:style>
|
||||
</office:styles>
|
||||
<office:automatic-styles>
|
||||
<style:page-layout style:name="PM1">
|
||||
<style:page-layout-properties fo:margin-top="2.000cm" fo:margin-bottom="2.000cm" fo:margin-left="2.000cm" fo:margin-right="2.000cm"/>
|
||||
<style:header-style>
|
||||
<style:header-footer-properties fo:min-height="0.600cm" fo:margin-left="0.000cm" fo:margin-right="0.000cm" fo:margin-bottom="0.500cm"/>
|
||||
</style:header-style>
|
||||
</style:page-layout>
|
||||
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Text_20_body">
|
||||
<style:paragraph-properties fo:text-align="center"/>
|
||||
</style:style>
|
||||
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Text_20_Meta">
|
||||
<style:paragraph-properties fo:break-before="page"/>
|
||||
</style:style>
|
||||
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Heading_20_2">
|
||||
<style:paragraph-properties fo:break-before="page"/>
|
||||
</style:style>
|
||||
<style:style style:name="P4" style:family="paragraph" style:parent-style-name="Heading_20_1">
|
||||
<style:paragraph-properties fo:text-align="center" fo:break-before="page"/>
|
||||
</style:style>
|
||||
<style:style style:name="P5" style:family="paragraph" style:parent-style-name="Text_20_Meta">
|
||||
<style:paragraph-properties fo:margin-bottom="0.000cm"/>
|
||||
</style:style>
|
||||
<style:style style:name="P6" style:family="paragraph" style:parent-style-name="Text_20_Meta">
|
||||
<style:paragraph-properties fo:margin-top="0.000cm" fo:margin-bottom="0.000cm"/>
|
||||
</style:style>
|
||||
<style:style style:name="P7" style:family="paragraph" style:parent-style-name="Title">
|
||||
<style:paragraph-properties fo:text-align="center" fo:break-before="page"/>
|
||||
</style:style>
|
||||
<style:style style:name="T1" style:family="text">
|
||||
<style:text-properties fo:font-weight="bold"/>
|
||||
</style:style>
|
||||
<style:style style:name="T2" style:family="text">
|
||||
<style:text-properties fo:font-style="italic"/>
|
||||
</style:style>
|
||||
</office:automatic-styles>
|
||||
<office:master-styles>
|
||||
<style:master-page style:name="Standard" style:page-layout-name="PM1">
|
||||
<style:header>
|
||||
<text:p text:style-name="Header">Lorem Ipsum / lipsum.com / <text:page-number text:select-page="current">2</text:page-number></text:p>
|
||||
</style:header>
|
||||
<style:header-first>
|
||||
<text:p text:style-name="Header"/>
|
||||
</style:header-first>
|
||||
</style:master-page>
|
||||
</office:master-styles>
|
||||
<office:body>
|
||||
<office:text>
|
||||
<text:h text:style-name="Title">Lorem Ipsum</text:h>
|
||||
<text:p text:style-name="P1"><text:span text:style-name="T1">By lipsum.com</text:span></text:p>
|
||||
<text:p text:style-name="P1">“Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit…”</text:p>
|
||||
<text:p text:style-name="P1">“There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…”</text:p>
|
||||
<text:p text:style-name="P2"><text:span text:style-name="T1">Comment:</text:span> Exctracted from the lipsum.com website.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of “de Finibus Bonorum et Malorum” (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, “Lorem ipsum dolor sit amet..”, comes from a line in section 1.10.32.</text:p>
|
||||
<text:p text:style-name="Text_20_body">The standard chunk of Lorem Ipsum used since the 1500s is reproduced below for those interested. Sections 1.10.32 and 1.10.33 from “de Finibus Bonorum et Malorum” by Cicero are also reproduced in their exact original form, accompanied by English versions from the 1914 translation by H. Rackham.</text:p>
|
||||
<text:h text:style-name="P3" text:outline-level="2">Prologue</text:h>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Synopsis:</text:span> Explanation from the lipsum.com website.</text:p>
|
||||
<text:p text:style-name="Text_20_body"><text:span text:style-name="T2">Lorem Ipsum</text:span> is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.</text:p>
|
||||
<text:h text:style-name="P4" text:outline-level="1">Title: Act One</text:h>
|
||||
<text:p text:style-name="P1">“Fusce maximus felis libero”</text:p>
|
||||
<text:h text:style-name="P3" text:outline-level="2">Chapter: Chapter One</text:h>
|
||||
<text:p text:style-name="P5"><text:span text:style-name="T1">Point of View:</text:span> Bod</text:p>
|
||||
<text:p text:style-name="P6"><text:span text:style-name="T1">Plot:</text:span> Main</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Locations:</text:span> Europe</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Synopsis:</text:span> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque at aliquam quam.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque at aliquam quam. Praesent magna nunc, lacinia sit amet quam eget, aliquet ultrices justo. Morbi ornare enim et lorem rutrum finibus ut eu dolor. Aliquam a orci odio. Ut ultrices sem quis massa placerat, eget mollis nisl cursus. Cras vel sagittis justo. Ut non ultricies leo. Maecenas rutrum velit in est varius, et egestas massa pulvinar.</text:p>
|
||||
<text:h text:style-name="Heading_20_3" text:outline-level="3">Scene: Scene One</text:h>
|
||||
<text:p text:style-name="P5"><text:span text:style-name="T1">Point of View:</text:span> Bod</text:p>
|
||||
<text:p text:style-name="P6"><text:span text:style-name="T1">Plot:</text:span> Main</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Locations:</text:span> Europe</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Synopsis:</text:span> Aenean ut placerat velit. Etiam laoreet ullamcorper risus, eget lobortis enim scelerisque non. Suspendisse id maximus nunc, et mollis sapien. Curabitur vel semper sapien, non pulvinar dolor. Etiam finibus nisi vel mi molestie consectetur.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Aenean ut placerat velit. Etiam laoreet ullamcorper risus, eget lobortis enim scelerisque non. Suspendisse id maximus nunc, et mollis sapien. Curabitur vel semper sapien, non pulvinar dolor. Etiam finibus nisi vel mi molestie consectetur. Donec quis ante nunc. Mauris ut leo ipsum. Vestibulum est neque, hendrerit nec neque a, ullamcorper lobortis tellus. Fusce sollicitudin purus quis congue bibendum. Aliquam condimentum ipsum tristique blandit tristique. Donec pulvinar neque ac suscipit malesuada.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Aliquam ut nisl arcu. Ut ultricies, lorem dignissim rutrum convallis, risus orci tempus lectus, congue feugiat sem lectus vitae odio. Duis sit amet justo finibus, hendrerit nulla at, ullamcorper enim. Praesent vel tellus sit amet tellus vulputate bibendum. Morbi eleifend sagittis sem, ac volutpat ante congue non. In hac habitasse platea dictumst. Morbi lobortis fermentum elit, dignissim sagittis ligula volutpat lacinia. Vestibulum eu interdum odio. Integer ac purus commodo metus congue tempor non at urna. Sed eget tortor vel quam viverra egestas. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Donec non convallis mauris, ac feugiat ex.</text:p>
|
||||
<text:h text:style-name="Heading_20_4" text:outline-level="4">Section: Scene One, Section Two</text:h>
|
||||
<text:p text:style-name="Text_20_body">Integer vel libero ipsum. Donec varius aliquam libero, sit amet commodo urna hendrerit non. Nullam quis erat mollis nunc viverra volutpat tincidunt in odio. Nam vitae quam sem. Aliquam suscipit nulla non lorem pharetra semper. Ut suscipit erat eu ligula accumsan ultrices. Phasellus nisl tellus, placerat sed laoreet id, consectetur nec dolor. Sed fringilla ipsum id dapibus posuere. Aenean finibus pharetra tincidunt. Ut molestie malesuada nulla, id posuere lorem tincidunt eu. Aliquam tempor eros a est vulputate, scelerisque pulvinar ipsum fermentum. In hac habitasse platea dictumst.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Curabitur congue, justo quis interdum fermentum, tellus nulla imperdiet sapien, eu interdum enim tellus condimentum metus. Vivamus nunc velit, dignissim ut ultrices sit amet, ultricies quis enim. Donec ut vestibulum neque. Vivamus semper neque id ex ullamcorper varius. Fusce mattis nibh viverra lorem sagittis, et tempor arcu congue. Suspendisse sit amet felis sed urna facilisis mattis eget vitae arcu. Proin eu magna hendrerit, tristique sem maximus, placerat diam. Nulla tristique sed velit sit amet varius. Etiam vel ornare magna, in vulputate arcu. Cras velit orci, tincidunt sed volutpat cursus, bibendum vel sem. Nunc vulputate pharetra tortor, ac consectetur neque tincidunt sit amet. Nulla ornare mi sed mi dignissim ultricies. Ut tincidunt bibendum mauris, sed elementum ex vulputate vel. Mauris fermentum, felis nec vehicula congue, felis lorem facilisis erat, a dictum dolor augue vitae quam. Maecenas rutrum tortor nec consequat eleifend.</text:p>
|
||||
<text:h text:style-name="Heading_20_3" text:outline-level="3">Scene: Scene Two</text:h>
|
||||
<text:p text:style-name="P5"><text:span text:style-name="T1">Point of View:</text:span> Bod</text:p>
|
||||
<text:p text:style-name="P6"><text:span text:style-name="T1">Plot:</text:span> Main</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Locations:</text:span> Europe</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Synopsis:</text:span> Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer sapien nulla, dictum at lacus a, dignissim consectetur dolor. Nunc vel eleifend lacus, eu dapibus orci.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer sapien nulla, dictum at lacus a, dignissim consectetur dolor. Nunc vel eleifend lacus, eu dapibus orci. Vestibulum facilisis bibendum aliquam. Aliquam posuere, turpis ac bibendum varius, sem tellus venenatis risus, in elementum massa enim ac lorem. Integer in sem ac diam blandit ultricies ut in nulla. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam sit amet erat est. Curabitur vitae cursus justo, sit amet placerat dolor. Vivamus eu felis hendrerit, tincidunt massa rutrum, maximus arcu. Pellentesque commodo justo odio, vel rutrum nulla tincidunt eu. Integer non neque condimentum, convallis diam non, varius ligula. Aliquam eget sapien mauris. Aenean pharetra nunc nisi, vel maximus ante tristique sit amet. Aliquam risus metus, interdum non odio eu, consectetur lacinia sapien.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Proin vitae gravida nisl. Integer viverra orci turpis, sit amet pretium ligula facilisis consequat. Nulla interdum commodo metus, mollis consequat dui tincidunt et. Proin consequat bibendum justo id commodo. Fusce fermentum nunc turpis, eu vestibulum risus feugiat ut. Sed scelerisque vel ligula ut interdum. Suspendisse ac blandit ligula, sagittis fringilla dolor. In tincidunt convallis diam et ornare. Aenean id dignissim est, ut rhoncus quam. Donec vitae nisl velit. In convallis nibh ut augue dignissim, eu elementum quam cursus. Phasellus in lectus lorem. Curabitur in pellentesque nisi, at gravida sapien. Sed cursus justo volutpat lacus placerat, sit amet dignissim turpis commodo. Aliquam vitae orci eget nulla posuere condimentum in ut felis.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Nulla accumsan ante in pulvinar efficitur. Nulla non velit quis urna hendrerit bibendum. Suspendisse ultrices ante eu justo malesuada, sed fermentum enim rutrum. Nunc fermentum pharetra felis, vitae sollicitudin quam rutrum porta. Aliquam fringilla velit a mi laoreet, et luctus est rutrum. In gravida non ipsum sit amet tempus. Curabitur et eleifend purus. Nulla facilisi.</text:p>
|
||||
<text:h text:style-name="Heading_20_4" text:outline-level="4">Section: Scene Two, Section Two</text:h>
|
||||
<text:p text:style-name="Text_20_body">Suspendisse potenti. Fusce tempus lorem nec laoreet suscipit. Fusce vulputate nisl ac diam tincidunt, nec malesuada quam pellentesque. Maecenas congue, tellus quis commodo rutrum, magna leo egestas arcu, quis suscipit ex risus id ligula. Suspendisse potenti. Morbi blandit lacus vitae laoreet vulputate. Donec vitae tellus eleifend, lobortis eros eu, tincidunt enim. Nullam et ullamcorper nisi. Vivamus tellus ex, lobortis quis rutrum ut, dapibus sit amet turpis. Phasellus pellentesque metus diam, commodo tristique ante commodo ac. Ut mollis ipsum nec diam blandit sollicitudin. Duis bibendum lacus nec commodo dapibus. Sed condimentum luctus ante, id ultricies urna varius nec. Nam convallis magna nec bibendum ultrices. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed auctor pharetra quam, vitae porta ex bibendum eu.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Vivamus ut venenatis lectus. Phasellus nec elit id sem dictum ornare. Quisque feugiat, diam eget sagittis ultricies, orci turpis efficitur nisi, et fringilla justo odio nec nibh. In hac habitasse platea dictumst. Sed tempus bibendum feugiat. Etiam luctus mauris arcu, non interdum ipsum ultrices id. Vivamus blandit urna sit amet scelerisque vulputate. Quisque in metus eget massa rutrum dictum sit amet sed nulla. Vivamus vel efficitur dolor.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Ut et consequat enim, quis ornare nibh. In lectus neque, mollis et suscipit et, vestibulum vitae augue. Praesent id ante sit amet odio venenatis placerat a at erat. Sed sed metus sed nisi dictum varius. Integer tincidunt fermentum purus ac porta. Fusce porttitor non risus eget tristique. Donec augue nunc, maximus at fermentum vel, varius et neque. Ut sed consectetur mauris. Quisque ipsum enim, porttitor vitae imperdiet sit amet, tempor et mauris. Aliquam malesuada tincidunt lectus quis blandit. Sed commodo orci felis, quis ultrices tellus facilisis sed. Nunc vel varius est. Duis ullamcorper eu metus in pulvinar. Morbi at sapien dictum, rutrum mauris eget, interdum tellus.</text:p>
|
||||
<text:h text:style-name="P3" text:outline-level="2">Why do we use it?</text:h>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Comment:</text:span> Exctracted from the lipsum.com website.</text:p>
|
||||
<text:p text:style-name="Text_20_body"><text:tab/>It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.</text:p>
|
||||
<text:p text:style-name="Text_20_body"><text:tab/>The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English.</text:p>
|
||||
<text:p text:style-name="Text_20_body"><text:tab/>Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).</text:p>
|
||||
<text:h text:style-name="P3" text:outline-level="2">Chapter: Chapter Two</text:h>
|
||||
<text:p text:style-name="P5"><text:span text:style-name="T1">Point of View:</text:span> Bod</text:p>
|
||||
<text:p text:style-name="P6"><text:span text:style-name="T1">Plot:</text:span> Main</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Locations:</text:span> Europe</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Synopsis:</text:span> Curabitur a elit posuere, varius ex et, convallis neque. Phasellus sagittis pharetra sem vitae dapibus. Curabitur varius lorem non pulvinar congue.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Curabitur a elit posuere, varius ex et, convallis neque. Phasellus sagittis pharetra sem vitae dapibus. Curabitur varius lorem non pulvinar congue. Vestibulum pharetra fermentum leo, sed faucibus eros placerat quis. In hac habitasse platea dictumst. Donec metus massa, rutrum quis consequat et, tincidunt ac felis. Duis mollis metus ac nunc tincidunt blandit. Ut aliquet velit eu odio pharetra condimentum. Integer rutrum lacus orci, id venenatis libero accumsan at.</text:p>
|
||||
<text:h text:style-name="Heading_20_3" text:outline-level="3">Scene: Scene Three</text:h>
|
||||
<text:p text:style-name="P5"><text:span text:style-name="T1">Point of View:</text:span> Bod</text:p>
|
||||
<text:p text:style-name="P6"><text:span text:style-name="T1">Plot:</text:span> Main</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Locations:</text:span> Europe</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Synopsis:</text:span> Aenean ut libero ut lectus porttitor rhoncus vel et massa. Nam pretium, nibh et varius vehicula, urna metus blandit eros, euismod pharetra diam diam et libero. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Aenean ut libero ut lectus porttitor rhoncus vel et massa. Nam pretium, nibh et varius vehicula, urna metus blandit eros, euismod pharetra diam diam et libero. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aenean tincidunt lacus vitae nibh elementum eleifend. Sed rutrum condimentum sem quis blandit. Duis imperdiet libero metus, quis convallis quam faucibus a. Nulla ligula est, semper quis sollicitudin et, pretium id justo. Curabitur pharetra risus eget consectetur commodo. Duis mattis arcu non est condimentum, id venenatis risus volutpat. Pellentesque aliquet mauris non mauris porttitor ultrices. Phasellus ut vestibulum mi. Suspendisse malesuada metus lorem, a malesuada orci rhoncus a. Praesent euismod convallis ante, lacinia tincidunt ex egestas id. Praesent sit amet efficitur sapien. Morbi tincidunt volutpat nunc sed dictum. Aliquam ultrices metus id fermentum lobortis.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Pellentesque id sagittis dui. Praesent ut nisi sit amet libero euismod ornare. Vestibulum vehicula, lorem eget aliquet imperdiet, eros nulla iaculis mi, vel bibendum est dui sed orci. Nullam vitae lorem rutrum, euismod lacus id, ullamcorper lectus. Duis nec commodo mi, a fringilla diam. Vestibulum molestie nibh tristique, viverra augue non, aliquet metus. Phasellus a tellus ac nisl tempor aliquet. Nulla vitae sapien rutrum augue ornare ultrices a quis nisi. Sed pulvinar tincidunt ex. Fusce vel sem vitae ante pellentesque lobortis.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Maecenas ullamcorper lacus nec turpis finibus aliquet eget rutrum augue. Integer lorem erat, faucibus non lacus lacinia, pulvinar egestas felis. Proin rutrum nunc eget nulla varius, id blandit mauris tincidunt. Donec sit amet ullamcorper nisi, ut efficitur mi. Aliquam aliquet, nulla eget rhoncus tristique, justo lorem consectetur dui, id ornare leo odio sed tellus. Curabitur interdum velit a turpis condimentum venenatis. Nunc rhoncus sem ac augue auctor, nec malesuada ex fringilla. Vestibulum egestas diam sed leo consectetur vulputate quis eget enim. Nam tincidunt metus sit amet maximus ullamcorper. Sed placerat velit vitae massa efficitur viverra. Etiam eleifend dignissim ante, sed luctus nisl tristique a. In vestibulum pharetra dolor in molestie. Vivamus auctor massa ac magna imperdiet, sit amet iaculis turpis finibus.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Aenean dapibus vulputate purus, sit amet tempor nunc suscipit consequat. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Mauris auctor congue eros, non pellentesque neque dapibus ac. Vestibulum non leo nec urna lacinia eleifend quis et diam. Praesent eu nisi magna. Nulla at magna massa. Suspendisse porta varius scelerisque. Duis at auctor dolor, non dapibus urna. Nunc venenatis feugiat magna non molestie. Aliquam non ornare ex. Quisque eu ultrices velit, quis pellentesque eros. Phasellus eleifend, elit id imperdiet aliquam, nulla quam molestie turpis, at egestas odio ante et tortor. Suspendisse fringilla condimentum justo, at aliquet odio aliquam ac.</text:p>
|
||||
<text:h text:style-name="Heading_20_3" text:outline-level="3">Scene: Scene Four</text:h>
|
||||
<text:p text:style-name="P5"><text:span text:style-name="T1">Point of View:</text:span> Bod</text:p>
|
||||
<text:p text:style-name="P6"><text:span text:style-name="T1">Plot:</text:span> Main</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Locations:</text:span> Europe</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Synopsis:</text:span> Nam tempor blandit magna laoreet aliquet. Vestibulum auctor posuere leo, ac gravida nisi rhoncus varius. Aenean posuere dolor vitae condimentum volutpat. Donec egestas volutpat risus, quis luctus justo.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Nam tempor blandit magna laoreet aliquet. Vestibulum auctor posuere leo, ac gravida nisi rhoncus varius. Aenean posuere dolor vitae condimentum volutpat. Donec egestas volutpat risus, quis luctus justo. Nullam viverra dui et auctor pretium. Ut ullamcorper velit urna, sed imperdiet massa convallis a. Suspendisse efficitur, ipsum nec cursus pulvinar, eros urna posuere diam, nec elementum mi felis vitae sapien.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Duis efficitur metus pulvinar, molestie magna eget, feugiat dui. Fusce convallis vehicula ipsum convallis blandit. Duis eros risus, malesuada eu imperdiet in, hendrerit ac metus. Vestibulum id justo gravida, dignissim nibh non, iaculis diam. Fusce accumsan est ut massa porta ultricies. Nulla vitae justo in tortor laoreet mollis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin eu libero justo. Vivamus aliquet placerat est, et auctor eros posuere venenatis. Nunc quam diam, tincidunt ac aliquet in, fermentum sit amet lectus. Proin commodo tincidunt blandit. Quisque erat arcu, semper nec dui non, consectetur gravida ipsum. Nullam pretium consectetur elit at condimentum.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Etiam sagittis, erat vitae accumsan tempor, neque augue scelerisque nulla, ut ultrices justo urna sit amet augue. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aenean at pulvinar tortor. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras vel porta quam. Nullam eu mauris mollis, vehicula justo vel, placerat sapien. Phasellus viverra elit et vestibulum pharetra. Vestibulum commodo fermentum leo, eu porta nisi aliquam eget. Nulla tempus porttitor nisi nec mollis. Nam non mollis turpis. Nam finibus leo a bibendum tincidunt. Donec commodo velit magna, ac semper sapien mattis id. Proin sem velit, lobortis quis ultricies id, pharetra et lectus. Vestibulum condimentum neque vitae mi dapibus mollis. Mauris luctus vel sapien vitae hendrerit.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Aenean vestibulum magna placerat fermentum tempus. Nam auctor condimentum nunc, in elementum quam ornare a. Etiam in ipsum elit. Proin pharetra, dolor sollicitudin pellentesque congue, lorem dolor ultricies magna, non iaculis risus nisl dictum diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Vivamus vel euismod nibh, et lobortis dolor. Maecenas dui odio, gravida nec molestie ut, feugiat ut arcu. Pellentesque risus sapien, gravida a convallis quis, ullamcorper porttitor sapien.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Donec ipsum eros, vestibulum sit amet cursus eget, iaculis quis dolor. Pellentesque magna augue, tristique dapibus mi vitae, molestie venenatis enim. Nam malesuada, turpis volutpat rhoncus ullamcorper, justo est eleifend orci, ut luctus risus ex rutrum arcu. Sed mi elit, feugiat rhoncus ornare sed, porta id leo. Pellentesque feugiat nulla tincidunt erat suscipit, eu congue lacus hendrerit. Morbi pulvinar enim sed consequat auctor. Ut eleifend enim sem, vitae euismod ex ultricies sit amet. Curabitur eu efficitur nisi, suscipit finibus sapien. In sodales blandit erat, vestibulum pulvinar ante volutpat nec. Vivamus dictum non libero at molestie. Donec sit amet neque in ante convallis pretium. Nunc vel iaculis dui.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Phasellus eu nunc ut nunc faucibus laoreet. Aliquam at magna risus. Praesent lobortis, risus finibus semper varius, magna purus vestibulum eros, at pulvinar sapien enim a ex. In scelerisque malesuada ex, sit amet egestas neque condimentum sed. Praesent vulputate efficitur massa. Cras at accumsan ligula. In elementum lectus eget blandit dictum. Nam vitae libero ut justo eleifend rutrum ac nec arcu. Aliquam sodales in quam congue vestibulum. Aliquam in accumsan sapien. Quisque lobortis nisl nisi, vitae bibendum turpis efficitur sed. Vestibulum tempor nulla eget nisi convallis, blandit sagittis ipsum convallis. Donec odio nibh, ultrices quis odio in, mollis euismod libero.</text:p>
|
||||
<text:h text:style-name="Heading_20_3" text:outline-level="3">Scene: Scene Five</text:h>
|
||||
<text:p text:style-name="P5"><text:span text:style-name="T1">Point of View:</text:span> Bod</text:p>
|
||||
<text:p text:style-name="P6"><text:span text:style-name="T1">Plot:</text:span> Main</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Locations:</text:span> Europe</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Synopsis:</text:span> Praesent eget est porta, dictum ante in, egestas risus. Mauris risus mauris, consequat aliquam mauris et, feugiat iaculis ipsum. Aliquam arcu ipsum, fermentum ut arcu sed, lobortis euismod sem. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Praesent eget est porta, dictum ante in, egestas risus. Mauris risus mauris, consequat aliquam mauris et, feugiat iaculis ipsum. Aliquam arcu ipsum, fermentum ut arcu sed, lobortis euismod sem. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. In sed felis auctor, rhoncus dui ac, consequat dolor. Integer volutpat libero sed nisl aliquet varius. Suspendisse et lorem sapien. Proin id ultrices nibh, ac suscipit diam. Suspendisse placerat varius porttitor. Curabitur elementum sed enim ultrices imperdiet.</text:p>
|
||||
<text:p text:style-name="Text_20_body">In ut lobortis lacus, nec luctus arcu. Vivamus condimentum sapien a ipsum malesuada sodales. Donec et vestibulum risus. Integer dictum euismod eros id tincidunt. Aliquam sagittis leo vitae consequat fermentum. Donec maximus ex eu ex iaculis porta. Praesent pharetra lacinia risus, et eleifend diam commodo non. Sed feugiat ipsum ut orci sagittis, quis faucibus lectus blandit. Sed tellus quam, gravida vitae laoreet quis, tempus lobortis dui. Vivamus semper accumsan ullamcorper. Praesent tempus pretium eros, non elementum risus. Pellentesque odio quam, auctor quis ex non, vulputate egestas dolor. Nunc luctus enim ut justo sodales consectetur. Sed aliquet a mauris vel posuere.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Donec luctus lectus efficitur, blandit nisi vitae, dignissim tellus. Pellentesque euismod pharetra augue gravida hendrerit. Quisque nisi mi, mattis ac nisi non, maximus malesuada ante. Nulla lobortis, diam eu ornare ornare, tellus enim feugiat arcu, non vestibulum tortor nunc eu justo. Integer blandit felis justo, eu semper est scelerisque vel. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nam ultricies, nisi vel elementum commodo, nisl dolor tincidunt magna, sed varius est nunc at lectus. Aliquam dolor tortor, sodales placerat ultricies quis, sodales quis sapien. Duis ullamcorper sollicitudin risus at mattis. Integer consequat et nunc at condimentum. Pellentesque cursus congue augue, non suscipit lectus sodales ut. Nam a mi bibendum, blandit nisl eu, accumsan nunc. Aliquam a ex mauris. Sed nec sem quis arcu dignissim tempus eget et turpis. Ut sed ex nec ipsum ultrices lobortis.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Pellentesque rhoncus pharetra eros, non mollis nisi pretium non. Mauris accumsan quis odio quis euismod. Maecenas ultrices, augue et aliquam tincidunt, erat tellus ornare ligula, quis ultrices turpis nibh vel justo. Fusce gravida odio tellus. In a congue diam. Mauris consequat ex id leo lacinia dictum. Fusce id sem sodales, ultrices sapien ac, convallis orci. Donec gravida nunc sit amet nisi hendrerit, sed porta enim aliquam. In hac habitasse platea dictumst. Cras a orci felis. Curabitur non felis nec urna maximus auctor ut ut nisi. Curabitur at turpis eleifend, blandit eros at, molestie odio. Phasellus euismod neque augue.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Integer egestas maximus leo eu facilisis. Nunc rhoncus dignissim lectus eu lacinia. Praesent lacinia urna porttitor aliquam condimentum. Nulla eu eros dictum, dictum nunc vitae, sagittis nibh. Integer ante neque, consequat nec sollicitudin id, consectetur vitae dolor. Nullam volutpat sem orci, quis viverra magna auctor a. Suspendisse potenti. Maecenas commodo sed neque pellentesque vehicula. Sed luctus nisl risus, elementum semper purus interdum vel. Ut pulvinar, massa sit amet venenatis placerat, nunc lacus hendrerit odio, non aliquet nunc risus eu lectus. Maecenas feugiat semper ligula, id lobortis sem porta eu. Integer posuere elit magna, at mollis eros bibendum et. Ut imperdiet purus vel nulla aliquam maximus. Morbi sodales purus tellus, a rhoncus sem rutrum sit amet. Quisque risus sem, laoreet nec convallis nec, rutrum vitae justo.</text:p>
|
||||
<text:h text:style-name="P7">Notes: Characters</text:h>
|
||||
<text:h text:style-name="Heading_20_1" text:outline-level="1">Nobody Owens</text:h>
|
||||
<text:p text:style-name="P5"><text:span text:style-name="T1">Tag:</text:span> Bod</text:p>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Plot:</text:span> Main</text:p>
|
||||
<text:p text:style-name="Text_20_body">Pellentesque nec erat ut nulla posuere commodo. Curabitur nisi augue, imperdiet et porta imperdiet, efficitur id leo. Cras finibus arcu at nibh commodo congue. Proin suscipit placerat condimentum. Aenean ante enim, cursus id lorem a, blandit venenatis nibh. Maecenas suscipit porta elit, sit amet porta felis porttitor eu. Sed a dui nibh. Phasellus sed faucibus dui. Pellentesque felis nulla, ultrices non efficitur quis, rutrum id mi. Mauris tempus auctor nisl, in bibendum enim pellentesque sit amet. Proin nunc lacus, imperdiet nec posuere ac, interdum non lectus.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Suspendisse faucibus est auctor orci mollis luctus. Praesent quis sodales neque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Donec sodales rutrum mattis. In in sem ornare, consequat nulla ac, convallis arcu. Duis ac metus id felis commodo commodo sit amet eget diam. Curabitur rhoncus lacinia leo at sodales. Etiam finibus porta diam a viverra. Praesent nisi urna, volutpat sit amet odio at, vehicula vehicula leo. In non enim eget nisl luctus commodo. Pellentesque pellentesque at lectus at luctus. Quisque nec felis bibendum, lacinia libero ut, lacinia eros. Integer finibus ultricies nibh sit amet placerat.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Nullam scelerisque velit et tortor congue vestibulum a at nisi. Vivamus sodales ut turpis a convallis. In dignissim nibh at luctus sodales. Etiam sit amet rhoncus massa. Phasellus ligula magna, sollicitudin non imperdiet sit amet, volutpat vel magna. Nunc vestibulum tempor lectus, sit amet porta nunc hendrerit in. Curabitur non odio sit amet massa tincidunt facilisis. Integer et luctus nunc, eget euismod leo. Praesent faucibus metus sed purus convallis scelerisque. Fusce viverra lorem et placerat malesuada. In at elit malesuada, ullamcorper risus vitae, sodales dolor. Donec quis elementum lectus. Quisque eu eros at dui imperdiet euismod ut id neque.</text:p>
|
||||
<text:h text:style-name="P7">Notes: Plot</text:h>
|
||||
<text:h text:style-name="Heading_20_1" text:outline-level="1">Main Plot</text:h>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Tag:</text:span> Main</text:p>
|
||||
<text:p text:style-name="Text_20_body">Suspendisse vulputate malesuada pellentesque. Aenean sollicitudin cursus mi, vitae ultricies felis ullamcorper eu. Duis luctus risus mi, in accumsan velit cursus ut. Vestibulum eleifend leo in magna eleifend fermentum. Proin nec ornare elit. Phasellus nec interdum risus. In a volutpat augue, quis egestas justo. Morbi porta mauris mattis bibendum imperdiet.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Mauris ut erat eu lorem malesuada egestas vel vel urna. Maecenas ac semper quam. Maecenas aliquet metus non interdum mattis. Proin consectetur molestie ligula. Aliquam sollicitudin pulvinar urna a pellentesque. Suspendisse ultrices, est mattis scelerisque porta, nisi nisi laoreet nisl, non condimentum quam ante a velit. Proin scelerisque justo augue, nec laoreet ligula egestas at. Etiam enim quam, ultrices non accumsan hendrerit, elementum vel ligula. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam efficitur odio libero, in vestibulum arcu aliquam at. Cras non vehicula augue. Integer lobortis, est vitae aliquam facilisis, metus ligula aliquet eros, at porttitor sem tortor eget massa. Aliquam varius scelerisque neque sed gravida. Aenean eleifend lorem id ante elementum sollicitudin. Proin commodo massa a quam volutpat, mollis fermentum turpis efficitur.</text:p>
|
||||
<text:h text:style-name="P7">Notes: World</text:h>
|
||||
<text:h text:style-name="Heading_20_1" text:outline-level="1">Ancient Europe</text:h>
|
||||
<text:p text:style-name="Text_20_Meta"><text:span text:style-name="T1">Tag:</text:span> Europe</text:p>
|
||||
<text:p text:style-name="Text_20_body">Vivamus sodales risus ac accumsan posuere. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nunc vel enim felis. Vestibulum dignissim massa nunc, a auctor magna eleifend et. Proin dignissim sodales erat vitae convallis. Aliquam id tellus dui. Curabitur sollicitudin scelerisque ex sit amet posuere. Nam rutrum felis id rhoncus feugiat. Duis sagittis quam quis purus efficitur, quis rutrum odio iaculis. Maecenas semper ante turpis, at vulputate mi consectetur non. Sed rutrum nibh turpis, quis rhoncus purus ornare quis. Vestibulum at rutrum mauris. Integer dolor nisi, tincidunt eget vehicula ac, ultricies at ligula.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Aenean semper turpis quis varius rhoncus. Vivamus ac mi eget felis euismod vulputate. Nam eu tempus velit. Etiam ut est porta, finibus erat sit amet, consectetur felis. Nullam consequat felis ut lacus pharetra, in lobortis urna mollis. Nulla varius eros nec lorem rhoncus, sed venenatis risus ultrices. Phasellus pellentesque laoreet neque, ut ultricies lacus vulputate quis. In malesuada dui sit amet est interdum, eget consectetur mi gravida. Cras vel bibendum purus. Quisque commodo tempor arcu, non lacinia sem blandit eleifend. Quisque at neque gravida, porttitor metus a, suscipit diam. Quisque convallis sodales lacus et condimentum. Donec a suscipit diam. Pellentesque eget cursus neque.</text:p>
|
||||
<text:p text:style-name="Text_20_body">Nunc ullamcorper magna quis elit condimentum rhoncus. Aenean dictum pulvinar dolor suscipit interdum. Aliquam elit massa, elementum nec cursus eu, maximus nec ipsum. Donec ullamcorper iaculis dolor eu commodo. Nunc eget tortor quis turpis consectetur varius. Vestibulum nec justo vel tellus venenatis condimentum. Duis auctor iaculis massa. Nunc risus magna, rutrum vitae eros non, tristique mollis enim.</text:p>
|
||||
</office:text>
|
||||
</office:body>
|
||||
</office:document>
|
||||
@@ -0,0 +1,183 @@
|
||||
# Lorem Ipsum
|
||||
|
||||
**By lipsum.com**
|
||||
|
||||
“Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit…”
|
||||
|
||||
“There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…”
|
||||
|
||||
**Comment:** Exctracted from the lipsum.com website.
|
||||
|
||||
Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of “de Finibus Bonorum et Malorum” (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, “Lorem ipsum dolor sit amet..”, comes from a line in section 1.10.32.
|
||||
|
||||
The standard chunk of Lorem Ipsum used since the 1500s is reproduced below for those interested. Sections 1.10.32 and 1.10.33 from “de Finibus Bonorum et Malorum” by Cicero are also reproduced in their exact original form, accompanied by English versions from the 1914 translation by H. Rackham.
|
||||
|
||||
## Prologue
|
||||
|
||||
**Synopsis:** Explanation from the lipsum.com website.
|
||||
|
||||
_Lorem Ipsum_ is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.
|
||||
|
||||
# Title: Act One
|
||||
|
||||
“Fusce maximus felis libero”
|
||||
|
||||
## Chapter: Chapter One
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque at aliquam quam.
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque at aliquam quam. Praesent magna nunc, lacinia sit amet quam eget, aliquet ultrices justo. Morbi ornare enim et lorem rutrum finibus ut eu dolor. Aliquam a orci odio. Ut ultrices sem quis massa placerat, eget mollis nisl cursus. Cras vel sagittis justo. Ut non ultricies leo. Maecenas rutrum velit in est varius, et egestas massa pulvinar.
|
||||
|
||||
### Scene: Scene One
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Aenean ut placerat velit. Etiam laoreet ullamcorper risus, eget lobortis enim scelerisque non. Suspendisse id maximus nunc, et mollis sapien. Curabitur vel semper sapien, non pulvinar dolor. Etiam finibus nisi vel mi molestie consectetur.
|
||||
|
||||
Aenean ut placerat velit. Etiam laoreet ullamcorper risus, eget lobortis enim scelerisque non. Suspendisse id maximus nunc, et mollis sapien. Curabitur vel semper sapien, non pulvinar dolor. Etiam finibus nisi vel mi molestie consectetur. Donec quis ante nunc. Mauris ut leo ipsum. Vestibulum est neque, hendrerit nec neque a, ullamcorper lobortis tellus. Fusce sollicitudin purus quis congue bibendum. Aliquam condimentum ipsum tristique blandit tristique. Donec pulvinar neque ac suscipit malesuada.
|
||||
|
||||
Aliquam ut nisl arcu. Ut ultricies, lorem dignissim rutrum convallis, risus orci tempus lectus, congue feugiat sem lectus vitae odio. Duis sit amet justo finibus, hendrerit nulla at, ullamcorper enim. Praesent vel tellus sit amet tellus vulputate bibendum. Morbi eleifend sagittis sem, ac volutpat ante congue non. In hac habitasse platea dictumst. Morbi lobortis fermentum elit, dignissim sagittis ligula volutpat lacinia. Vestibulum eu interdum odio. Integer ac purus commodo metus congue tempor non at urna. Sed eget tortor vel quam viverra egestas. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Donec non convallis mauris, ac feugiat ex.
|
||||
|
||||
#### Section: Scene One, Section Two
|
||||
|
||||
Integer vel libero ipsum. Donec varius aliquam libero, sit amet commodo urna hendrerit non. Nullam quis erat mollis nunc viverra volutpat tincidunt in odio. Nam vitae quam sem. Aliquam suscipit nulla non lorem pharetra semper. Ut suscipit erat eu ligula accumsan ultrices. Phasellus nisl tellus, placerat sed laoreet id, consectetur nec dolor. Sed fringilla ipsum id dapibus posuere. Aenean finibus pharetra tincidunt. Ut molestie malesuada nulla, id posuere lorem tincidunt eu. Aliquam tempor eros a est vulputate, scelerisque pulvinar ipsum fermentum. In hac habitasse platea dictumst.
|
||||
|
||||
Curabitur congue, justo quis interdum fermentum, tellus nulla imperdiet sapien, eu interdum enim tellus condimentum metus. Vivamus nunc velit, dignissim ut ultrices sit amet, ultricies quis enim. Donec ut vestibulum neque. Vivamus semper neque id ex ullamcorper varius. Fusce mattis nibh viverra lorem sagittis, et tempor arcu congue. Suspendisse sit amet felis sed urna facilisis mattis eget vitae arcu. Proin eu magna hendrerit, tristique sem maximus, placerat diam. Nulla tristique sed velit sit amet varius. Etiam vel ornare magna, in vulputate arcu. Cras velit orci, tincidunt sed volutpat cursus, bibendum vel sem. Nunc vulputate pharetra tortor, ac consectetur neque tincidunt sit amet. Nulla ornare mi sed mi dignissim ultricies. Ut tincidunt bibendum mauris, sed elementum ex vulputate vel. Mauris fermentum, felis nec vehicula congue, felis lorem facilisis erat, a dictum dolor augue vitae quam. Maecenas rutrum tortor nec consequat eleifend.
|
||||
|
||||
### Scene: Scene Two
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer sapien nulla, dictum at lacus a, dignissim consectetur dolor. Nunc vel eleifend lacus, eu dapibus orci.
|
||||
|
||||
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Integer sapien nulla, dictum at lacus a, dignissim consectetur dolor. Nunc vel eleifend lacus, eu dapibus orci. Vestibulum facilisis bibendum aliquam. Aliquam posuere, turpis ac bibendum varius, sem tellus venenatis risus, in elementum massa enim ac lorem. Integer in sem ac diam blandit ultricies ut in nulla. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam sit amet erat est. Curabitur vitae cursus justo, sit amet placerat dolor. Vivamus eu felis hendrerit, tincidunt massa rutrum, maximus arcu. Pellentesque commodo justo odio, vel rutrum nulla tincidunt eu. Integer non neque condimentum, convallis diam non, varius ligula. Aliquam eget sapien mauris. Aenean pharetra nunc nisi, vel maximus ante tristique sit amet. Aliquam risus metus, interdum non odio eu, consectetur lacinia sapien.
|
||||
|
||||
Proin vitae gravida nisl. Integer viverra orci turpis, sit amet pretium ligula facilisis consequat. Nulla interdum commodo metus, mollis consequat dui tincidunt et. Proin consequat bibendum justo id commodo. Fusce fermentum nunc turpis, eu vestibulum risus feugiat ut. Sed scelerisque vel ligula ut interdum. Suspendisse ac blandit ligula, sagittis fringilla dolor. In tincidunt convallis diam et ornare. Aenean id dignissim est, ut rhoncus quam. Donec vitae nisl velit. In convallis nibh ut augue dignissim, eu elementum quam cursus. Phasellus in lectus lorem. Curabitur in pellentesque nisi, at gravida sapien. Sed cursus justo volutpat lacus placerat, sit amet dignissim turpis commodo. Aliquam vitae orci eget nulla posuere condimentum in ut felis.
|
||||
|
||||
Nulla accumsan ante in pulvinar efficitur. Nulla non velit quis urna hendrerit bibendum. Suspendisse ultrices ante eu justo malesuada, sed fermentum enim rutrum. Nunc fermentum pharetra felis, vitae sollicitudin quam rutrum porta. Aliquam fringilla velit a mi laoreet, et luctus est rutrum. In gravida non ipsum sit amet tempus. Curabitur et eleifend purus. Nulla facilisi.
|
||||
|
||||
#### Section: Scene Two, Section Two
|
||||
|
||||
Suspendisse potenti. Fusce tempus lorem nec laoreet suscipit. Fusce vulputate nisl ac diam tincidunt, nec malesuada quam pellentesque. Maecenas congue, tellus quis commodo rutrum, magna leo egestas arcu, quis suscipit ex risus id ligula. Suspendisse potenti. Morbi blandit lacus vitae laoreet vulputate. Donec vitae tellus eleifend, lobortis eros eu, tincidunt enim. Nullam et ullamcorper nisi. Vivamus tellus ex, lobortis quis rutrum ut, dapibus sit amet turpis. Phasellus pellentesque metus diam, commodo tristique ante commodo ac. Ut mollis ipsum nec diam blandit sollicitudin. Duis bibendum lacus nec commodo dapibus. Sed condimentum luctus ante, id ultricies urna varius nec. Nam convallis magna nec bibendum ultrices. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed auctor pharetra quam, vitae porta ex bibendum eu.
|
||||
|
||||
Vivamus ut venenatis lectus. Phasellus nec elit id sem dictum ornare. Quisque feugiat, diam eget sagittis ultricies, orci turpis efficitur nisi, et fringilla justo odio nec nibh. In hac habitasse platea dictumst. Sed tempus bibendum feugiat. Etiam luctus mauris arcu, non interdum ipsum ultrices id. Vivamus blandit urna sit amet scelerisque vulputate. Quisque in metus eget massa rutrum dictum sit amet sed nulla. Vivamus vel efficitur dolor.
|
||||
|
||||
Ut et consequat enim, quis ornare nibh. In lectus neque, mollis et suscipit et, vestibulum vitae augue. Praesent id ante sit amet odio venenatis placerat a at erat. Sed sed metus sed nisi dictum varius. Integer tincidunt fermentum purus ac porta. Fusce porttitor non risus eget tristique. Donec augue nunc, maximus at fermentum vel, varius et neque. Ut sed consectetur mauris. Quisque ipsum enim, porttitor vitae imperdiet sit amet, tempor et mauris. Aliquam malesuada tincidunt lectus quis blandit. Sed commodo orci felis, quis ultrices tellus facilisis sed. Nunc vel varius est. Duis ullamcorper eu metus in pulvinar. Morbi at sapien dictum, rutrum mauris eget, interdum tellus.
|
||||
|
||||
## Why do we use it?
|
||||
|
||||
**Comment:** Exctracted from the lipsum.com website.
|
||||
|
||||
It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.
|
||||
|
||||
The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English.
|
||||
|
||||
Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).
|
||||
|
||||
## Chapter: Chapter Two
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Curabitur a elit posuere, varius ex et, convallis neque. Phasellus sagittis pharetra sem vitae dapibus. Curabitur varius lorem non pulvinar congue.
|
||||
|
||||
Curabitur a elit posuere, varius ex et, convallis neque. Phasellus sagittis pharetra sem vitae dapibus. Curabitur varius lorem non pulvinar congue. Vestibulum pharetra fermentum leo, sed faucibus eros placerat quis. In hac habitasse platea dictumst. Donec metus massa, rutrum quis consequat et, tincidunt ac felis. Duis mollis metus ac nunc tincidunt blandit. Ut aliquet velit eu odio pharetra condimentum. Integer rutrum lacus orci, id venenatis libero accumsan at.
|
||||
|
||||
### Scene: Scene Three
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Aenean ut libero ut lectus porttitor rhoncus vel et massa. Nam pretium, nibh et varius vehicula, urna metus blandit eros, euismod pharetra diam diam et libero. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.
|
||||
|
||||
Aenean ut libero ut lectus porttitor rhoncus vel et massa. Nam pretium, nibh et varius vehicula, urna metus blandit eros, euismod pharetra diam diam et libero. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aenean tincidunt lacus vitae nibh elementum eleifend. Sed rutrum condimentum sem quis blandit. Duis imperdiet libero metus, quis convallis quam faucibus a. Nulla ligula est, semper quis sollicitudin et, pretium id justo. Curabitur pharetra risus eget consectetur commodo. Duis mattis arcu non est condimentum, id venenatis risus volutpat. Pellentesque aliquet mauris non mauris porttitor ultrices. Phasellus ut vestibulum mi. Suspendisse malesuada metus lorem, a malesuada orci rhoncus a. Praesent euismod convallis ante, lacinia tincidunt ex egestas id. Praesent sit amet efficitur sapien. Morbi tincidunt volutpat nunc sed dictum. Aliquam ultrices metus id fermentum lobortis.
|
||||
|
||||
Pellentesque id sagittis dui. Praesent ut nisi sit amet libero euismod ornare. Vestibulum vehicula, lorem eget aliquet imperdiet, eros nulla iaculis mi, vel bibendum est dui sed orci. Nullam vitae lorem rutrum, euismod lacus id, ullamcorper lectus. Duis nec commodo mi, a fringilla diam. Vestibulum molestie nibh tristique, viverra augue non, aliquet metus. Phasellus a tellus ac nisl tempor aliquet. Nulla vitae sapien rutrum augue ornare ultrices a quis nisi. Sed pulvinar tincidunt ex. Fusce vel sem vitae ante pellentesque lobortis.
|
||||
|
||||
Maecenas ullamcorper lacus nec turpis finibus aliquet eget rutrum augue. Integer lorem erat, faucibus non lacus lacinia, pulvinar egestas felis. Proin rutrum nunc eget nulla varius, id blandit mauris tincidunt. Donec sit amet ullamcorper nisi, ut efficitur mi. Aliquam aliquet, nulla eget rhoncus tristique, justo lorem consectetur dui, id ornare leo odio sed tellus. Curabitur interdum velit a turpis condimentum venenatis. Nunc rhoncus sem ac augue auctor, nec malesuada ex fringilla. Vestibulum egestas diam sed leo consectetur vulputate quis eget enim. Nam tincidunt metus sit amet maximus ullamcorper. Sed placerat velit vitae massa efficitur viverra. Etiam eleifend dignissim ante, sed luctus nisl tristique a. In vestibulum pharetra dolor in molestie. Vivamus auctor massa ac magna imperdiet, sit amet iaculis turpis finibus.
|
||||
|
||||
Aenean dapibus vulputate purus, sit amet tempor nunc suscipit consequat. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Mauris auctor congue eros, non pellentesque neque dapibus ac. Vestibulum non leo nec urna lacinia eleifend quis et diam. Praesent eu nisi magna. Nulla at magna massa. Suspendisse porta varius scelerisque. Duis at auctor dolor, non dapibus urna. Nunc venenatis feugiat magna non molestie. Aliquam non ornare ex. Quisque eu ultrices velit, quis pellentesque eros. Phasellus eleifend, elit id imperdiet aliquam, nulla quam molestie turpis, at egestas odio ante et tortor. Suspendisse fringilla condimentum justo, at aliquet odio aliquam ac.
|
||||
|
||||
### Scene: Scene Four
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Nam tempor blandit magna laoreet aliquet. Vestibulum auctor posuere leo, ac gravida nisi rhoncus varius. Aenean posuere dolor vitae condimentum volutpat. Donec egestas volutpat risus, quis luctus justo.
|
||||
|
||||
Nam tempor blandit magna laoreet aliquet. Vestibulum auctor posuere leo, ac gravida nisi rhoncus varius. Aenean posuere dolor vitae condimentum volutpat. Donec egestas volutpat risus, quis luctus justo. Nullam viverra dui et auctor pretium. Ut ullamcorper velit urna, sed imperdiet massa convallis a. Suspendisse efficitur, ipsum nec cursus pulvinar, eros urna posuere diam, nec elementum mi felis vitae sapien.
|
||||
|
||||
Duis efficitur metus pulvinar, molestie magna eget, feugiat dui. Fusce convallis vehicula ipsum convallis blandit. Duis eros risus, malesuada eu imperdiet in, hendrerit ac metus. Vestibulum id justo gravida, dignissim nibh non, iaculis diam. Fusce accumsan est ut massa porta ultricies. Nulla vitae justo in tortor laoreet mollis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin eu libero justo. Vivamus aliquet placerat est, et auctor eros posuere venenatis. Nunc quam diam, tincidunt ac aliquet in, fermentum sit amet lectus. Proin commodo tincidunt blandit. Quisque erat arcu, semper nec dui non, consectetur gravida ipsum. Nullam pretium consectetur elit at condimentum.
|
||||
|
||||
Etiam sagittis, erat vitae accumsan tempor, neque augue scelerisque nulla, ut ultrices justo urna sit amet augue. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aenean at pulvinar tortor. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras vel porta quam. Nullam eu mauris mollis, vehicula justo vel, placerat sapien. Phasellus viverra elit et vestibulum pharetra. Vestibulum commodo fermentum leo, eu porta nisi aliquam eget. Nulla tempus porttitor nisi nec mollis. Nam non mollis turpis. Nam finibus leo a bibendum tincidunt. Donec commodo velit magna, ac semper sapien mattis id. Proin sem velit, lobortis quis ultricies id, pharetra et lectus. Vestibulum condimentum neque vitae mi dapibus mollis. Mauris luctus vel sapien vitae hendrerit.
|
||||
|
||||
Aenean vestibulum magna placerat fermentum tempus. Nam auctor condimentum nunc, in elementum quam ornare a. Etiam in ipsum elit. Proin pharetra, dolor sollicitudin pellentesque congue, lorem dolor ultricies magna, non iaculis risus nisl dictum diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Vivamus vel euismod nibh, et lobortis dolor. Maecenas dui odio, gravida nec molestie ut, feugiat ut arcu. Pellentesque risus sapien, gravida a convallis quis, ullamcorper porttitor sapien.
|
||||
|
||||
Donec ipsum eros, vestibulum sit amet cursus eget, iaculis quis dolor. Pellentesque magna augue, tristique dapibus mi vitae, molestie venenatis enim. Nam malesuada, turpis volutpat rhoncus ullamcorper, justo est eleifend orci, ut luctus risus ex rutrum arcu. Sed mi elit, feugiat rhoncus ornare sed, porta id leo. Pellentesque feugiat nulla tincidunt erat suscipit, eu congue lacus hendrerit. Morbi pulvinar enim sed consequat auctor. Ut eleifend enim sem, vitae euismod ex ultricies sit amet. Curabitur eu efficitur nisi, suscipit finibus sapien. In sodales blandit erat, vestibulum pulvinar ante volutpat nec. Vivamus dictum non libero at molestie. Donec sit amet neque in ante convallis pretium. Nunc vel iaculis dui.
|
||||
|
||||
Phasellus eu nunc ut nunc faucibus laoreet. Aliquam at magna risus. Praesent lobortis, risus finibus semper varius, magna purus vestibulum eros, at pulvinar sapien enim a ex. In scelerisque malesuada ex, sit amet egestas neque condimentum sed. Praesent vulputate efficitur massa. Cras at accumsan ligula. In elementum lectus eget blandit dictum. Nam vitae libero ut justo eleifend rutrum ac nec arcu. Aliquam sodales in quam congue vestibulum. Aliquam in accumsan sapien. Quisque lobortis nisl nisi, vitae bibendum turpis efficitur sed. Vestibulum tempor nulla eget nisi convallis, blandit sagittis ipsum convallis. Donec odio nibh, ultrices quis odio in, mollis euismod libero.
|
||||
|
||||
### Scene: Scene Five
|
||||
|
||||
**Point of View:** Bod
|
||||
**Plot:** Main
|
||||
**Locations:** Europe
|
||||
|
||||
**Synopsis:** Praesent eget est porta, dictum ante in, egestas risus. Mauris risus mauris, consequat aliquam mauris et, feugiat iaculis ipsum. Aliquam arcu ipsum, fermentum ut arcu sed, lobortis euismod sem. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
|
||||
|
||||
Praesent eget est porta, dictum ante in, egestas risus. Mauris risus mauris, consequat aliquam mauris et, feugiat iaculis ipsum. Aliquam arcu ipsum, fermentum ut arcu sed, lobortis euismod sem. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. In sed felis auctor, rhoncus dui ac, consequat dolor. Integer volutpat libero sed nisl aliquet varius. Suspendisse et lorem sapien. Proin id ultrices nibh, ac suscipit diam. Suspendisse placerat varius porttitor. Curabitur elementum sed enim ultrices imperdiet.
|
||||
|
||||
In ut lobortis lacus, nec luctus arcu. Vivamus condimentum sapien a ipsum malesuada sodales. Donec et vestibulum risus. Integer dictum euismod eros id tincidunt. Aliquam sagittis leo vitae consequat fermentum. Donec maximus ex eu ex iaculis porta. Praesent pharetra lacinia risus, et eleifend diam commodo non. Sed feugiat ipsum ut orci sagittis, quis faucibus lectus blandit. Sed tellus quam, gravida vitae laoreet quis, tempus lobortis dui. Vivamus semper accumsan ullamcorper. Praesent tempus pretium eros, non elementum risus. Pellentesque odio quam, auctor quis ex non, vulputate egestas dolor. Nunc luctus enim ut justo sodales consectetur. Sed aliquet a mauris vel posuere.
|
||||
|
||||
Donec luctus lectus efficitur, blandit nisi vitae, dignissim tellus. Pellentesque euismod pharetra augue gravida hendrerit. Quisque nisi mi, mattis ac nisi non, maximus malesuada ante. Nulla lobortis, diam eu ornare ornare, tellus enim feugiat arcu, non vestibulum tortor nunc eu justo. Integer blandit felis justo, eu semper est scelerisque vel. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nam ultricies, nisi vel elementum commodo, nisl dolor tincidunt magna, sed varius est nunc at lectus. Aliquam dolor tortor, sodales placerat ultricies quis, sodales quis sapien. Duis ullamcorper sollicitudin risus at mattis. Integer consequat et nunc at condimentum. Pellentesque cursus congue augue, non suscipit lectus sodales ut. Nam a mi bibendum, blandit nisl eu, accumsan nunc. Aliquam a ex mauris. Sed nec sem quis arcu dignissim tempus eget et turpis. Ut sed ex nec ipsum ultrices lobortis.
|
||||
|
||||
Pellentesque rhoncus pharetra eros, non mollis nisi pretium non. Mauris accumsan quis odio quis euismod. Maecenas ultrices, augue et aliquam tincidunt, erat tellus ornare ligula, quis ultrices turpis nibh vel justo. Fusce gravida odio tellus. In a congue diam. Mauris consequat ex id leo lacinia dictum. Fusce id sem sodales, ultrices sapien ac, convallis orci. Donec gravida nunc sit amet nisi hendrerit, sed porta enim aliquam. In hac habitasse platea dictumst. Cras a orci felis. Curabitur non felis nec urna maximus auctor ut ut nisi. Curabitur at turpis eleifend, blandit eros at, molestie odio. Phasellus euismod neque augue.
|
||||
|
||||
Integer egestas maximus leo eu facilisis. Nunc rhoncus dignissim lectus eu lacinia. Praesent lacinia urna porttitor aliquam condimentum. Nulla eu eros dictum, dictum nunc vitae, sagittis nibh. Integer ante neque, consequat nec sollicitudin id, consectetur vitae dolor. Nullam volutpat sem orci, quis viverra magna auctor a. Suspendisse potenti. Maecenas commodo sed neque pellentesque vehicula. Sed luctus nisl risus, elementum semper purus interdum vel. Ut pulvinar, massa sit amet venenatis placerat, nunc lacus hendrerit odio, non aliquet nunc risus eu lectus. Maecenas feugiat semper ligula, id lobortis sem porta eu. Integer posuere elit magna, at mollis eros bibendum et. Ut imperdiet purus vel nulla aliquam maximus. Morbi sodales purus tellus, a rhoncus sem rutrum sit amet. Quisque risus sem, laoreet nec convallis nec, rutrum vitae justo.
|
||||
|
||||
# Notes: Characters
|
||||
|
||||
# Nobody Owens
|
||||
|
||||
**Tag:** Bod
|
||||
**Plot:** Main
|
||||
|
||||
Pellentesque nec erat ut nulla posuere commodo. Curabitur nisi augue, imperdiet et porta imperdiet, efficitur id leo. Cras finibus arcu at nibh commodo congue. Proin suscipit placerat condimentum. Aenean ante enim, cursus id lorem a, blandit venenatis nibh. Maecenas suscipit porta elit, sit amet porta felis porttitor eu. Sed a dui nibh. Phasellus sed faucibus dui. Pellentesque felis nulla, ultrices non efficitur quis, rutrum id mi. Mauris tempus auctor nisl, in bibendum enim pellentesque sit amet. Proin nunc lacus, imperdiet nec posuere ac, interdum non lectus.
|
||||
|
||||
Suspendisse faucibus est auctor orci mollis luctus. Praesent quis sodales neque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Donec sodales rutrum mattis. In in sem ornare, consequat nulla ac, convallis arcu. Duis ac metus id felis commodo commodo sit amet eget diam. Curabitur rhoncus lacinia leo at sodales. Etiam finibus porta diam a viverra. Praesent nisi urna, volutpat sit amet odio at, vehicula vehicula leo. In non enim eget nisl luctus commodo. Pellentesque pellentesque at lectus at luctus. Quisque nec felis bibendum, lacinia libero ut, lacinia eros. Integer finibus ultricies nibh sit amet placerat.
|
||||
|
||||
Nullam scelerisque velit et tortor congue vestibulum a at nisi. Vivamus sodales ut turpis a convallis. In dignissim nibh at luctus sodales. Etiam sit amet rhoncus massa. Phasellus ligula magna, sollicitudin non imperdiet sit amet, volutpat vel magna. Nunc vestibulum tempor lectus, sit amet porta nunc hendrerit in. Curabitur non odio sit amet massa tincidunt facilisis. Integer et luctus nunc, eget euismod leo. Praesent faucibus metus sed purus convallis scelerisque. Fusce viverra lorem et placerat malesuada. In at elit malesuada, ullamcorper risus vitae, sodales dolor. Donec quis elementum lectus. Quisque eu eros at dui imperdiet euismod ut id neque.
|
||||
|
||||
# Notes: Plot
|
||||
|
||||
# Main Plot
|
||||
|
||||
**Tag:** Main
|
||||
|
||||
Suspendisse vulputate malesuada pellentesque. Aenean sollicitudin cursus mi, vitae ultricies felis ullamcorper eu. Duis luctus risus mi, in accumsan velit cursus ut. Vestibulum eleifend leo in magna eleifend fermentum. Proin nec ornare elit. Phasellus nec interdum risus. In a volutpat augue, quis egestas justo. Morbi porta mauris mattis bibendum imperdiet.
|
||||
|
||||
Mauris ut erat eu lorem malesuada egestas vel vel urna. Maecenas ac semper quam. Maecenas aliquet metus non interdum mattis. Proin consectetur molestie ligula. Aliquam sollicitudin pulvinar urna a pellentesque. Suspendisse ultrices, est mattis scelerisque porta, nisi nisi laoreet nisl, non condimentum quam ante a velit. Proin scelerisque justo augue, nec laoreet ligula egestas at. Etiam enim quam, ultrices non accumsan hendrerit, elementum vel ligula. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam efficitur odio libero, in vestibulum arcu aliquam at. Cras non vehicula augue. Integer lobortis, est vitae aliquam facilisis, metus ligula aliquet eros, at porttitor sem tortor eget massa. Aliquam varius scelerisque neque sed gravida. Aenean eleifend lorem id ante elementum sollicitudin. Proin commodo massa a quam volutpat, mollis fermentum turpis efficitur.
|
||||
|
||||
# Notes: World
|
||||
|
||||
# Ancient Europe
|
||||
|
||||
**Tag:** Europe
|
||||
|
||||
Vivamus sodales risus ac accumsan posuere. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nunc vel enim felis. Vestibulum dignissim massa nunc, a auctor magna eleifend et. Proin dignissim sodales erat vitae convallis. Aliquam id tellus dui. Curabitur sollicitudin scelerisque ex sit amet posuere. Nam rutrum felis id rhoncus feugiat. Duis sagittis quam quis purus efficitur, quis rutrum odio iaculis. Maecenas semper ante turpis, at vulputate mi consectetur non. Sed rutrum nibh turpis, quis rhoncus purus ornare quis. Vestibulum at rutrum mauris. Integer dolor nisi, tincidunt eget vehicula ac, ultricies at ligula.
|
||||
|
||||
Aenean semper turpis quis varius rhoncus. Vivamus ac mi eget felis euismod vulputate. Nam eu tempus velit. Etiam ut est porta, finibus erat sit amet, consectetur felis. Nullam consequat felis ut lacus pharetra, in lobortis urna mollis. Nulla varius eros nec lorem rhoncus, sed venenatis risus ultrices. Phasellus pellentesque laoreet neque, ut ultricies lacus vulputate quis. In malesuada dui sit amet est interdum, eget consectetur mi gravida. Cras vel bibendum purus. Quisque commodo tempor arcu, non lacinia sem blandit eleifend. Quisque at neque gravida, porttitor metus a, suscipit diam. Quisque convallis sodales lacus et condimentum. Donec a suscipit diam. Pellentesque eget cursus neque.
|
||||
|
||||
Nunc ullamcorper magna quis elit condimentum rhoncus. Aenean dictum pulvinar dolor suscipit interdum. Aliquam elit massa, elementum nec cursus eu, maximus nec ipsum. Donec ullamcorper iaculis dolor eu commodo. Nunc eget tortor quis turpis consectetur varius. Vestibulum nec justo vel tellus venenatis condimentum. Duis auctor iaculis massa. Nunc risus magna, rutrum vitae eros non, tristique mollis enim.
|
||||
|
||||
@@ -0,0 +1,282 @@
|
||||
"""
|
||||
novelWriter – Manuscript Builder Class Tests
|
||||
============================================
|
||||
|
||||
This file is a part of novelWriter
|
||||
Copyright 2018–2023, Veronica Berglyd Olsen
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
"""
|
||||
|
||||
import pytest
|
||||
|
||||
from shutil import copyfile
|
||||
|
||||
from mock import causeException, causeOSError
|
||||
from tools import cmpFiles
|
||||
|
||||
from novelwriter.core.project import NWProject
|
||||
from novelwriter.mbuild.docbuild import NWBuildDocument
|
||||
|
||||
BUILD_CONF = {
|
||||
"format.fmtTitle": "Title: %title%",
|
||||
"format.fmtChapter": "Chapter: %title%",
|
||||
"format.fmtUnnumbered": "%title%",
|
||||
"format.fmtScene": "Scene: %title%",
|
||||
"format.fmtSection": "Section: %title%",
|
||||
"format.buildLang": "en_GB",
|
||||
"format.hideScene": False,
|
||||
"format.hideSection": False,
|
||||
"format.textFont": "Arial",
|
||||
"format.textSize": 12,
|
||||
"format.lineHeight": 1.5,
|
||||
"format.justifyText": True,
|
||||
"format.noStyling": False,
|
||||
"format.replaceUCode": False,
|
||||
"filter.includeSynopsis": True,
|
||||
"filter.includeComments": True,
|
||||
"filter.includeKeywords": True,
|
||||
"filter.includeBody": True,
|
||||
"process.replaceTabs": True,
|
||||
}
|
||||
|
||||
|
||||
@pytest.mark.core
|
||||
def testMBuildDocBuild_OpenDocument(monkeypatch, mockGUI, prjLipsum, fncPath, tstPaths):
|
||||
"""Test builing an open document manuscript.
|
||||
"""
|
||||
theProject = NWProject(mockGUI)
|
||||
theProject.openProject(prjLipsum)
|
||||
|
||||
docBuild = NWBuildDocument(theProject)
|
||||
docBuild.setBuildConfig(BUILD_CONF)
|
||||
|
||||
for tItem in theProject.tree:
|
||||
docBuild.addDocument(tItem.itemHandle)
|
||||
|
||||
assert docBuild.buildLength == 21
|
||||
|
||||
# Check FODT Build
|
||||
# ================
|
||||
|
||||
docFile = fncPath / "Lorem Ipsum.fodt"
|
||||
tstFile = tstPaths.outDir / "mBuildDocBuild_OpenDocument_Lorem_Ipsum.fodt"
|
||||
cmpFile = tstPaths.refDir / "mBuildDocBuild_OpenDocument_Lorem_Ipsum.fodt"
|
||||
|
||||
count = 0
|
||||
error = []
|
||||
for _, success in docBuild.iterBuildOpenDocument(docFile, True):
|
||||
count += 1 if success else 0
|
||||
if docBuild.error:
|
||||
error.append(docBuild.error)
|
||||
|
||||
assert count == 21
|
||||
assert error == []
|
||||
|
||||
copyfile(docFile, tstFile)
|
||||
assert cmpFiles(tstFile, cmpFile, ignoreStart="<meta:")
|
||||
|
||||
# Check ODT Build
|
||||
# ===============
|
||||
|
||||
docFile = fncPath / "Lorem Ipsum.odt"
|
||||
|
||||
count = 0
|
||||
error = []
|
||||
for _, success in docBuild.iterBuildOpenDocument(docFile, False):
|
||||
count += 1 if success else 0
|
||||
if docBuild.error:
|
||||
error.append(docBuild.error)
|
||||
|
||||
assert count == 21
|
||||
assert error == []
|
||||
|
||||
assert docFile.is_file()
|
||||
|
||||
# Check Error Handling
|
||||
# ====================
|
||||
|
||||
with monkeypatch.context() as mp:
|
||||
mp.setattr("builtins.open", causeOSError)
|
||||
|
||||
docFile = fncPath / "Lorem Ipsum Err.fodt"
|
||||
for _ in docBuild.iterBuildOpenDocument(docFile, True):
|
||||
pass
|
||||
|
||||
assert docBuild.error == "OSError: Mock OSError"
|
||||
assert not docFile.is_file()
|
||||
|
||||
# Check Build Issues
|
||||
# ==================
|
||||
|
||||
with monkeypatch.context() as mp:
|
||||
mp.setattr("novelwriter.core.toodt.ToOdt.doConvert", causeException)
|
||||
|
||||
docBuild.addDocument("0000000000000")
|
||||
assert docBuild.buildLength == 22
|
||||
|
||||
count = 0
|
||||
error = []
|
||||
docFile = fncPath / "Lorem Ipsum Err.fodt"
|
||||
for _, success in docBuild.iterBuildOpenDocument(docFile, True):
|
||||
count += 1 if success else 0
|
||||
if docBuild.error:
|
||||
error.append(docBuild.error)
|
||||
|
||||
assert count == 3
|
||||
assert error == [
|
||||
"Build: Failed to build '7a992350f3eb6'",
|
||||
"Build: Failed to build '8c58a65414c23'",
|
||||
"Build: Failed to build '88d59a277361b'",
|
||||
"Build: Failed to build 'db7e733775d4d'",
|
||||
"Build: Failed to build 'fb609cd8319dc'",
|
||||
"Build: Failed to build '88243afbe5ed8'",
|
||||
"Build: Failed to build 'f96ec11c6a3da'",
|
||||
"Build: Failed to build '846352075de7d'",
|
||||
"Build: Failed to build '441420a886d82'",
|
||||
"Build: Failed to build 'eb103bc70c90c'",
|
||||
"Build: Failed to build 'f8c0562e50f1b'",
|
||||
"Build: Failed to build '47666c91c7ccf'",
|
||||
"Build: Failed to build '67a8707f2f249'",
|
||||
"Build: Failed to build '4c4f28287af27'",
|
||||
"Build: Failed to build '6c6afb1247750'",
|
||||
"Build: Failed to build '2426c6f0ca922'",
|
||||
"Build: Failed to build '60bdf227455cc'",
|
||||
"Build: Failed to build '04468803b92e1'",
|
||||
"Build: Unknown item '0000000000000'",
|
||||
]
|
||||
|
||||
# END Test testMBuildDocBuild_OpenDocument
|
||||
|
||||
|
||||
@pytest.mark.core
|
||||
def testMBuildDocBuild_HTML(monkeypatch, mockGUI, prjLipsum, fncPath, tstPaths):
|
||||
"""Test builing an HTML manuscript.
|
||||
"""
|
||||
theProject = NWProject(mockGUI)
|
||||
theProject.openProject(prjLipsum)
|
||||
|
||||
docBuild = NWBuildDocument(theProject)
|
||||
docBuild.setBuildConfig(BUILD_CONF)
|
||||
|
||||
for tItem in theProject.tree:
|
||||
docBuild.addDocument(tItem.itemHandle)
|
||||
|
||||
assert docBuild.buildLength == 21
|
||||
|
||||
# Check HTML5 Build
|
||||
# =================
|
||||
|
||||
docFile = fncPath / "Lorem Ipsum.htm"
|
||||
tstFile = tstPaths.outDir / "mBuildDocBuild_HTML5_Lorem_Ipsum.htm"
|
||||
cmpFile = tstPaths.refDir / "mBuildDocBuild_HTML5_Lorem_Ipsum.htm"
|
||||
|
||||
count = 0
|
||||
error = []
|
||||
for _, success in docBuild.iterBuildHTML(docFile):
|
||||
count += 1 if success else 0
|
||||
if docBuild.error:
|
||||
error.append(docBuild.error)
|
||||
|
||||
assert count == 21
|
||||
assert error == []
|
||||
|
||||
copyfile(docFile, tstFile)
|
||||
assert cmpFiles(tstFile, cmpFile)
|
||||
|
||||
# Check Error Handling
|
||||
# ====================
|
||||
|
||||
with monkeypatch.context() as mp:
|
||||
mp.setattr("builtins.open", causeOSError)
|
||||
|
||||
docFile = fncPath / "Lorem Ipsum Err.htm"
|
||||
for _ in docBuild.iterBuildHTML(docFile):
|
||||
pass
|
||||
|
||||
assert docBuild.error == "OSError: Mock OSError"
|
||||
assert not docFile.is_file()
|
||||
|
||||
# END Test testMBuildDocBuild_HTML
|
||||
|
||||
|
||||
@pytest.mark.core
|
||||
def testMBuildDocBuild_Markdown(monkeypatch, mockGUI, prjLipsum, fncPath, tstPaths):
|
||||
"""Test builing an Markdown manuscript.
|
||||
"""
|
||||
theProject = NWProject(mockGUI)
|
||||
theProject.openProject(prjLipsum)
|
||||
|
||||
docBuild = NWBuildDocument(theProject)
|
||||
docBuild.setBuildConfig(BUILD_CONF)
|
||||
|
||||
for tItem in theProject.tree:
|
||||
docBuild.addDocument(tItem.itemHandle)
|
||||
|
||||
assert docBuild.buildLength == 21
|
||||
|
||||
# Check Standard Markdown Build
|
||||
# =============================
|
||||
|
||||
docFile = fncPath / "Lorem Ipsum Standard.md"
|
||||
tstFile = tstPaths.outDir / "mBuildDocBuild_Standard_Markdown_Lorem_Ipsum.md"
|
||||
cmpFile = tstPaths.refDir / "mBuildDocBuild_Standard_Markdown_Lorem_Ipsum.md"
|
||||
|
||||
count = 0
|
||||
error = []
|
||||
for _, success in docBuild.iterBuildMarkdown(docFile, False):
|
||||
count += 1 if success else 0
|
||||
if docBuild.error:
|
||||
error.append(docBuild.error)
|
||||
|
||||
assert count == 21
|
||||
assert error == []
|
||||
|
||||
copyfile(docFile, tstFile)
|
||||
assert cmpFiles(tstFile, cmpFile)
|
||||
|
||||
# Check Extended Markdown Build
|
||||
# =============================
|
||||
|
||||
docFile = fncPath / "Lorem Ipsum Standard.md"
|
||||
tstFile = tstPaths.outDir / "mBuildDocBuild_Extended_Markdown_Lorem_Ipsum.md"
|
||||
cmpFile = tstPaths.refDir / "mBuildDocBuild_Extended_Markdown_Lorem_Ipsum.md"
|
||||
|
||||
count = 0
|
||||
error = []
|
||||
for _, success in docBuild.iterBuildMarkdown(docFile, True):
|
||||
count += 1 if success else 0
|
||||
if docBuild.error:
|
||||
error.append(docBuild.error)
|
||||
|
||||
assert count == 21
|
||||
assert error == []
|
||||
|
||||
copyfile(docFile, tstFile)
|
||||
assert cmpFiles(tstFile, cmpFile)
|
||||
|
||||
# Check Error Handling
|
||||
# ====================
|
||||
|
||||
with monkeypatch.context() as mp:
|
||||
mp.setattr("builtins.open", causeOSError)
|
||||
|
||||
docFile = fncPath / "Lorem Ipsum Err.md"
|
||||
for _ in docBuild.iterBuildMarkdown(docFile, False):
|
||||
pass
|
||||
|
||||
assert docBuild.error == "OSError: Mock OSError"
|
||||
assert not docFile.is_file()
|
||||
|
||||
# END Test testMBuildDocBuild_Markdown
|
||||
Reference in New Issue
Block a user