@@ -14,41 +14,24 @@ pandoc (0.4) unstable; urgency=low
1414 syntax is documented in README.
1515
1616 * Added support for definition lists (with a new DefinitionList block
17− element). All output formats are supported, but only markdown
18− definition lists are parsed at the moment. The syntax is documented
19− in README.
17+ element). All output and input formats are supported. The syntax is
18+ documented in README.
19+
20+ * Added support for superscripts and subscripts (with new Superscript
21+ and Subscript inline elements). All input and output
22+ formats. The syntax is documented in README.
23+
24+ * Added support for strikeout (with a new Strikeout inline element).
25+ All input and output formats are supported. Thanks to Bradley Kuhn,
26+ who contributed a patch. The syntax is documented in README. Resolves
27+ Issue #18.
2028
2129 * Added a --toc|--table-of-contents option. This causes an automatically
2230 generated table of contents (or an instruction that creates one) to
2331 be inserted at the beginning of the document. Not supported in S5,
2432 DocBook, or man page writers.
2533
26− * Added Text.Pandoc module that exports basic readers, writers,
27− definitions, and utility functions. This should export everything
28− needed for most uses of Pandoc libraries. The haddock documentation
29− includes a short example program.
30−
31− * Added Text.Pandoc.Blocks module to help in printing markdown
32− and RST tables. This module provides functions for working with
33− fixed-width blocks of text--e.g., placing them side by side, as
34− in a table row.
35−
36− * Refactored to avoid reliance on Haskell's Text.Regex library, which
37− (a) is slow, and (b) does not properly handle unicode. This fixed
38− some strange bugs, e.g. in parsing S-cedilla, and improved performance.
39−
40− + Replaced 'gsub' with a general list function 'substitute'
41− that does not rely on Text.Regex.
42− + Rewrote extractTagType in HTML reader so that it doesn't use
43− regexs.
44− + In Markdown reader, replaced email regex test with a custom email
45− autolink parser (autoLinkEmail). Also replaced selfClosingTag regex
46− with a custom function isSelfClosingTag.
47− + Modified Docbook writer so that it doesn't rely on Text.Regex for
48− detecting 'mailto' links.
49− + Removed escapePreservingRegex and reamped entity-handling
50− functions in Text.Pandoc.Shared and Text.Pandoc.Entities to
51− avoid reliance on Text.Regex (see below on Entity handling changes).
34+ * Removed Blank block element as unnecessary.
5235
5336 * Removed Key and Note blocks from the Pandoc data structure. All
5437 links are now stored as explicit links, and note contents are
@@ -79,6 +62,33 @@ pandoc (0.4) unstable; urgency=low
7962 stateKeysUsed, stateNoteBlocks, stateNoteIdentifiers, stateInlineLinks.
8063 + Added writerNotes and writerReferenceLinks to WriterOptions.
8164
65+ * Added Text.Pandoc module that exports basic readers, writers,
66+ definitions, and utility functions. This should export everything
67+ needed for most uses of Pandoc libraries. The haddock documentation
68+ includes a short example program.
69+
70+ * Added Text.Pandoc.Blocks module to help in printing markdown
71+ and RST tables. This module provides functions for working with
72+ fixed-width blocks of text--e.g., placing them side by side, as
73+ in a table row.
74+
75+ * Refactored to avoid reliance on Haskell's Text.Regex library, which
76+ (a) is slow, and (b) does not properly handle unicode. This fixed
77+ some strange bugs, e.g. in parsing S-cedilla, and improved performance.
78+
79+ + Replaced 'gsub' with a general list function 'substitute'
80+ that does not rely on Text.Regex.
81+ + Rewrote extractTagType in HTML reader so that it doesn't use
82+ regexs.
83+ + In Markdown reader, replaced email regex test with a custom email
84+ autolink parser (autoLinkEmail). Also replaced selfClosingTag regex
85+ with a custom function isSelfClosingTag.
86+ + Modified Docbook writer so that it doesn't rely on Text.Regex for
87+ detecting 'mailto' links.
88+ + Removed escapePreservingRegex and reamped entity-handling
89+ functions in Text.Pandoc.Shared and Text.Pandoc.Entities to
90+ avoid reliance on Text.Regex (see below on Entity handling changes).
91+
8292 * Changed handling of XML entities. Entities are now parsed (and unicode
8393 characters returned) in the Markdown and HTML readers, rather than being
8494 handled in the writers. In HTML and Docbook writers, UTF-8 is now used
@@ -117,41 +127,12 @@ pandoc (0.4) unstable; urgency=low
117127 in pandoc.cabal, and added mtl (needed for state monad). Substituted
118128 xhtml for html.
119129
120− * Removed Blank block element as unnecessary.
121−
122− * HTML writer:
130+ * Refactored and cleaned up character escaping in writers, using
131+ backslashEscapes and escapeStringUsing functions.
123132
124− + Modified HTML writer to use the Text.XHtml library. This results
125− in cleaner, faster code, and it makes it easier to use Pandoc in
126− other projects, like wikis, which use Text.XHtml. Two functions are
127− now provided, writeHtml and writeHtmlString: the former outputs an
128− Html structure, the latter a rendered string. The S5 writer is also
129− changed, in parallel ways (writeS5, writeS5String).
130− + The Html header is now written programmatically, so it has been
131− removed from the 'headers' directory. The S5 header is still
132− needed, but the doctype and some of the meta declarations have
133− been removed, since they are written programatically. This change
134− introduces a new dependency on the xhtml package.
135− + Fixed two bugs in email obfuscation involving improper escaping
136− of '&' in the <noscript> section and in --strict mode. Resolves
137− Issue #9.
138− + Fixed another bug in email obfuscation: If the text to be obfuscated
139− contains an entity, this needs to be decoded before obfuscation.
140− Thanks to thsutton for the patch. Resolves Issue #15.
141− + Changed the way the backlink is displayed in HTML footnotes.
142− Instead of appearing on a line by itself, it now generally
143− appears on the last line of the note. (Exception: when the
144− note does not end with a Plain or Para block.) This saves space
145− and looks better.
146− + Added automatic unique identifiers to headers:
147− - The identifier is derived from the header via a scheme
148− documented in README.
149− - WriterState now includes a list of header identifiers and a table
150− of contents in addition to notes.
151− - The function uniqueIdentifiers creates a list of unique identifiers
152− from a list of inline lists (e.g. headers).
153− - This list is part of WriterState and gets consumed by blockToHtml
154− each time a header is encountered.
133+ * Instead of adding "\n\n" to the end of an input string in Main.hs,
134+ this is now done in the readers. This makes the libraries behave
135+ the way you'd expect from the pandoc program. Resolves Issue #10.
155136
156137 * Fixed several bugs in HTML reader (extractTagType, attribute parsing).
157138
@@ -186,14 +167,8 @@ pandoc (0.4) unstable; urgency=low
186167 reference keys and add information to state. Next, get all the
187168 notes and add information to state. (Reference keys may be needed
188169 at this stage.) Finally, parse everything else.
189−
190− * Markdown writer:
191−
192− + Links in markdown output are now printed as inline links by default,
193− rather than reference links. A --reference-links option has been added
194− that forces links to be printed as reference links. Resolves Issue #4.
195− + Use autolinks when possible. Instead of [site.com](site.com),
196− use <site.com>.
170+ + Replaced named constants like 'emphStart' with literals.
171+ + Removed an extra occurance of escapedChar in definition of inline.
197172
198173 * RST reader:
199174
@@ -212,20 +187,71 @@ pandoc (0.4) unstable; urgency=low
212187 + Allow hyperlink target URIs to be split over multiple lines, and
213188 to start on the line after the reference. Resolves Issue #7.
214189
215− * LaTeX reader: replaced 'choice [(try (string ...), ...]' idiom with
216− 'oneOfStrings' in LaTeX reader, for clarity.
190+ * LaTeX reader:
191+
192+ + Replaced 'choice [(try (string ...), ...]' idiom with 'oneOfStrings',
193+ for clarity.
194+ + Added clauses for tilde and caret. Tilde is \ensuremath{\sim}, and
195+ caret is \^{}, not \^ as before.
196+
197+ * HTML writer:
198+
199+ + Modified HTML writer to use the Text.XHtml library. This results
200+ in cleaner, faster code, and it makes it easier to use Pandoc in
201+ other projects, like wikis, which use Text.XHtml. Two functions are
202+ now provided, writeHtml and writeHtmlString: the former outputs an
203+ Html structure, the latter a rendered string. The S5 writer is also
204+ changed, in parallel ways (writeS5, writeS5String).
205+ + The Html header is now written programmatically, so it has been
206+ removed from the 'headers' directory. The S5 header is still
207+ needed, but the doctype and some of the meta declarations have
208+ been removed, since they are written programatically. This change
209+ introduces a new dependency on the xhtml package.
210+ + Fixed two bugs in email obfuscation involving improper escaping
211+ of '&' in the <noscript> section and in --strict mode. Resolves
212+ Issue #9.
213+ + Fixed another bug in email obfuscation: If the text to be obfuscated
214+ contains an entity, this needs to be decoded before obfuscation.
215+ Thanks to thsutton for the patch. Resolves Issue #15.
216+ + Changed the way the backlink is displayed in HTML footnotes.
217+ Instead of appearing on a line by itself, it now generally
218+ appears on the last line of the note. (Exception: when the
219+ note does not end with a Plain or Para block.) This saves space
220+ and looks better.
221+ + Added automatic unique identifiers to headers:
222+ - The identifier is derived from the header via a scheme
223+ documented in README.
224+ - WriterState now includes a list of header identifiers and a table
225+ of contents in addition to notes.
226+ - The function uniqueIdentifiers creates a list of unique identifiers
227+ from a list of inline lists (e.g. headers).
228+ - This list is part of WriterState and gets consumed by blockToHtml
229+ each time a header is encountered.
230+ + Include CSS for .strikethrough class in header only if strikethrough
231+ text appears in the document.
232+ + If the 'strict' option is specified, elements that do not appear in
233+ standard markdown (like definition lists) are passed through as
234+ raw HTML.
235+
236+ * Markdown writer:
237+
238+ + Links in markdown output are now printed as inline links by default,
239+ rather than reference links. A --reference-links option has been added
240+ that forces links to be printed as reference links. Resolves Issue #4.
241+ + Use autolinks when possible. Instead of [site.com](site.com),
242+ use <site.com>.
217243
218244 * LaTeX writer:
219245
246+ + Rewrote to use the State monad. The preamble now includes only those
247+ packages that are actually required, given the document's content.
248+ Thus, for example, if strikeout is not used, ulem is not required.
249+ Modified LaTeXHeader accordingly.
220250 + Modified LaTeX writer to insert '\,' between consecutive quotes.
221251 + Removed unused function tableRowColumnWidths.
222252 + Simplified code for escaping special characters.
223253 + Leave extra blank line after \maketitle.
224254
225− * Instead of adding "\n\n" to the end of an input string in Main.hs,
226− this is now done in the readers. This makes the libraries behave
227− the way you'd expect from the pandoc program. Resolves Issue #10.
228−
229255 * Text.ParserCombinators.Pandoc:
230256
231257 + Renamed to Text.Pandoc.ParserCombinators, in order to have all the
@@ -241,6 +267,10 @@ pandoc (0.4) unstable; urgency=low
241267 'enclosed' behaves like 'option', 'manyTill', etc.
242268 + Added lineClump parser, which parses a raw line block up to and
243269 including any following blank lines.
270+ + Renamed parseFromStr to parseFromString.
271+ + Added a 'try' to the 'end' parser in 'enclosed'. This makes errors in
272+ the use of 'enclosed' less likely. Removed some now-unnecessary 'try's
273+ in calling code.
244274
245275 * Text.Pandoc.Shared:
246276
@@ -258,6 +288,12 @@ pandoc (0.4) unstable; urgency=low
258288 + Moved Element, headerAtLeast, and hierarchicalize from Docbook
259289 writer, because HTML writer now uses these in constructing a table
260290 of contents.
291+ + Added clauses for new inline elements (Strikeout, Superscript,
292+ Subscript) to refsMatch.
293+ + Removed backslashEscape; added new functions escapeStringUsing and
294+ backslashEscapes.
295+ + Moved failIfStrict from markdown reader, since it is now used also
296+ by the HTML reader.
261297
262298 * Refactored runtests.pl; added separate tests for tables.
263299
@@ -268,6 +304,8 @@ pandoc (0.4) unstable; urgency=low
268304 + Modified markdown2pdf to run pdflatex a second time if --toc or
269305 --table-of-contents was specified; otherwise the table of
270306 contents won't appear.
307+ + Modified markdown2pdf to print a helpful message if the 'ulem'
308+ LaTeX package is required and not found.
271309
272310 * Changes to build process:
273311
@@ -286,6 +324,13 @@ pandoc (0.4) unstable; urgency=low
286324 + Man pages are now generated from markdown sources, using pandoc's
287325 man page writer.
288326
327+ * Documentation:
328+
329+ + Updated README and man pages with information on new features.
330+ + Updated INSTALL instructions with some useful clarifications and
331+ links.
332+ + Updated web content.
333+
289334 * Added FreeBSD port.
290335
291336 [ Recai Oktaş ]