git.iko.soy/typeable/pandoc
on master help sign in
Pandoc is no longer a native debian package.

It is easier for releases if debian packaging is separate. + Removed debian directory and references to debian in Makefile and INSTALL. + Made COPYRIGHT and changelog standalone files rather than symlinks to debian directory. git-svn-id: https://pandoc.googlecode.com/svn/trunk@1422 788f1e2b-df1e-0410-8736-df70ead52e1b

commit27b3146bceb5261f90606445cf40af2f5bb3bdb7 authorfiddlosopher <fiddlosopher@788f1e2b-df1e-0410-8736-df70ead52e1b> dateSat 6 Sep 2008, 18:49 (18 years ago) parent2cecca7
12 files changed+1472−1727
COPYRIGHT+89−1 INSTALL−1 Makefile+2−26 changelog+1381−1 debian/changelog−1381 debian/compat−1 debian/control−90 debian/copyright−89 debian/pandoc-doc.doc-base−11 debian/pandoc-doc.docs−1 debian/pandoc.dirs−1 debian/rules−124
COPYRIGHTmode 120000 → 100644+89−1
@@ -1 +0,0 @@
1−debian/copyright
@@ -0,0 +1,89 @@
1+Pandoc
2+Copyright (C) 2006-8 John MacFarlane <jgm at berkeley dot edu>
3+
4+This code is released under the [GPL], version 2 or later:
5+
6+ This program is free software; you can redistribute it and/or modify
7+ it under the terms of the GNU General Public License as published by
8+ the Free Software Foundation; either version 2 of the License, or
9+ (at your option) any later version.
10+
11+ This program is distributed in the hope that it will be useful,
12+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14+ GNU General Public License for more details.
15+
16+ You should have received a copy of the GNU General Public License
17+ along with this program; if not, write to the Free Software
18+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19+
20+The GNU General Public License is available in the file COPYING in
21+the source distribution. On Debian systems, the complete text of the
22+GPL can be found in `/usr/share/common-licenses/GPL`.
23+
24+[GPL]: http://www.gnu.org/copyleft/gpl.html
25+
26+Pandoc's complete source code is available from the [Pandoc home page].
27+
28+[Pandoc home page]: http://johnmacfarlane.net/pandoc/
29+
30+Pandoc includes some code from other authors. The copyright and license
31+statements for these sources are included below. All are GPL-compatible
32+licenses.
33+
34+----------------------------------------------------------------------
35+Text/Pandoc/Writers/Texinfo.hs
36+Copyright (C) 2008 John MacFarlane and Peter Wang
37+
38+Released under the GPL.
39+
40+----------------------------------------------------------------------
41+Text/Pandoc/Writers/OpenDocument.hs
42+Copyright (C) 2008 Andrea Rossato
43+
44+Released under the GPL.
45+
46+----------------------------------------------------------------------
47+ASCIIMathML.js
48+Copyright 2005, Peter Jipsen, Chapman University
49+<http://www1.chapman.edu/~jipsen/mathml/asciimath.html>
50+
51+Released under the GPL.
52+
53+----------------------------------------------------------------------
54+S5 slides.js and css files
55+by Eric A. Meyer
56+<http://meyerweb.com/eric/tools/s5
57+
58+Released under an explicit Public Domain License
59+
60+------------------------------------------------------------------------
61+Diff.hs in tests/
62+from the Diff package v 0.1.2 (Data.Algorithm.Diff)
63+Copyright (c) Stering Clover 2008
64+
65+All rights reserved.
66+
67+Redistribution and use in source and binary forms, with or without
68+modification, are permitted provided that the following conditions
69+are met:
70+1. Redistributions of source code must retain the above copyright
71+ notice, this list of conditions and the following disclaimer.
72+2. Redistributions in binary form must reproduce the above copyright
73+ notice, this list of conditions and the following disclaimer in the
74+ documentation and/or other materials provided with the distribution.
75+3. Neither the name of the author nor the names of his contributors
76+ may be used to endorse or promote products derived from this software
77+ without specific prior written permission.
78+
79+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
80+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
81+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
82+ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
83+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
84+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
85+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
86+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
87+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
88+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
89+SUCH DAMAGE.
INSTALL−1
@@ -228,7 +228,6 @@ but are documented here for packagers and developers:
228228### Packaging
229229
230230* `tarball`: Creates a source tarball for distribution.
231−* `deb`: Creates debian packages in `..` directory.
232231* `macport`: Creates MacPorts Portfile in `macports` directory.
233232* `freebsd`: Creates freebsd Makefile and distinfo in `freebsd` directory.
234233* `win-pkg`: Creates a Windows binary package (presupposes `pandoc.exe`,
Makefile+2−26
@@ -266,30 +266,6 @@ $(tarball):
266266 $(BUILDCMD) sdist
267267 cp $(BUILDDIR)/$(tarball) .
268268
269−.PHONY: deb
270−deb_name:=$(shell grep ^Package debian/control | cut -d' ' -f2 | head -n 1)
271−deb_version:=$(shell head -n 1 debian/changelog | cut -f2 -d' ' | tr -d '()')
272−deb_arch:=i386
273−deb_main:=$(deb_name)_$(deb_version)_$(deb_arch).deb
274−deb: debian
275− @[ -x /usr/bin/fakeroot ] || { \
276− echo >&2 "*** Please install fakeroot package. ***"; \
277− exit 1; \
278− }
279− @[ -x /usr/bin/dpkg-buildpackage ] || { \
280− echo >&2 "*** Please install dpkg-dev package. ***"; \
281− exit 1; \
282− }
283− mv $(BUILDVARS) $(BUILDVARS).old 2>/dev/null ||: # backup settings
284− if [ -x /usr/bin/debuild ]; then \
285− debuild -uc -us -i.svn -I.svn -i_darcs -I_darcs --lintian-opts -i; \
286− else \
287− echo >&2 "*** Please install devscripts package. ***"; \
288− echo >&2 "*** Using dpkg-buildpackage for package building. ***"; \
289− dpkg-buildpackage -rfakeroot -uc -us -i.svn -I.svn -i_darcs -I_darcs; \
290− fi
291− mv $(BUILDVARS).old $(BUILDVARS) 2>/dev/null ||: # restore
292−
293269.PHONY: website
294270web_src:=web
295271web_dest:=pandoc-website
@@ -297,7 +273,7 @@ make_page:=./$(MAIN) -s -S -B $(web_src)/header.html \
297273 -A $(web_src)/footer.html \
298274 -H $(web_src)/css
299275cleanup_files+=$(web_dest)
300−$(web_dest) : html $(wildcard $(web_src)/*) debian/changelog \
276+$(web_dest) : html $(wildcard $(web_src)/*) changelog \
301277 INSTALL $(MANPAGES) $(MANDIR)/man1/pandoc.1.md README
302278 rm -rf $(web_dest) && { \
303279 mkdir $(web_dest); \
@@ -305,7 +281,7 @@ $(web_dest) : html $(wildcard $(web_src)/*) debian/changelog \
305281 cp $(web_src)/* $(web_dest)/; \
306282 sed -e 's#@VERSION@#$(VERSION)#g' $(web_src)/index.txt.in > \
307283 $(web_dest)/index.txt; \
308− cp debian/changelog $(web_dest)/changelog.txt ; \
284+ cp changelog $(web_dest)/changelog.txt ; \
309285 cp README $(web_dest)/ ; \
310286 cp INSTALL $(web_dest)/ ; \
311287 cp $(MANDIR)/man1/pandoc.1.md $(web_dest)/ ; \
changelogmode 120000 → 100644+1381−1
@@ -1 +0,0 @@
1−debian/changelog
@@ -0,0 +1,1381 @@
1+pandoc (0.47) UNRELEASED; urgency=low
2+
3+ [ Recai Oktaş ]
4+
5+ * Debian packaging changes:
6+
7+ + Migrate to GHC 6.8.2. Closes: #461606
8+ + Add new dependencies libghc6-regex-compat-dev and libghc6-uulib-dev.
9+ + Remove the code in debian/rules which attempts to remove empty ghc6.6
10+ include directory. This code may cause an installation failure for the
11+ -dev package. Closes: #460658
12+ + Fix doc-base to prevent a lintian warning.
13+
14+ -- Recai Oktaş <roktas@debian.org> Sat, 09 Feb 2008 04:41:46 +0200
15+
16+pandoc (0.46) unstable; urgency=low
17+
18+ [ John MacFarlane ]
19+
20+ * Made -H, -A, and -B options cumulative: if they are specified
21+ multiple times, multiple files will be included.
22+
23+ * Added optional HTML sanitization using a whitelist.
24+ When this option is specified (--sanitize-html on the command line),
25+ unsafe HTML tags will be replaced by HTML comments, and unsafe HTML
26+ attributes will be removed. This option should be especially useful
27+ for those who want to use pandoc libraries in web applications, where
28+ users will provide the input.
29+
30+ + Main.hs: Added --sanitize-html option.
31+
32+ + Text.Pandoc.Shared: Added stateSanitizeHTML to ParserState.
33+
34+ + Text.Pandoc.Readers.HTML:
35+ - Added whitelists of sanitaryTags and sanitaryAttributes.
36+ - Added parsers to check these lists (and state) to see if a given
37+ tag or attribute should be counted unsafe.
38+ - Modified anyHtmlTag and anyHtmlEndTag to replace unsafe tags
39+ with comments.
40+ - Modified htmlAttribute to remove unsafe attributes.
41+ - Modified htmlScript and htmlStyle to remove these elements if
42+ unsafe.
43+
44+ + Modified README and man pages to document new option.
45+
46+ * Improved handling of email addresses in markdown and reStructuredText.
47+ Consolidated uri and email address parsers. (Resolves Issue #37.)
48+
49+ + New emailAddress and uri parsers in Text.Pandoc.Shared.
50+ - uri parser uses parseURI from Network.URI.
51+ - emailAddress parser properly handles email addresses with periods
52+ in them.
53+
54+ + Removed uri and emailAddress parsers from Text.Pandoc.Readers.RST
55+ and Text.Pandoc.Readers.Markdown.
56+
57+ * Markdown reader:
58+
59+ + Fixed emph parser so that "*hi **there***" is parsed as a Strong
60+ nested in an Emph. (A '*' is only recognized as the end of the
61+ emphasis if it's not the beginning of a strong emphasis.)
62+
63+ + Moved blockQuote parser before list parsers for performance.
64+
65+ + Modified 'source' parser to allow backslash-escapes in URLs.
66+ So, for example, [my](/url\(1\)) yields a link to /url(1).
67+ Resolves Issue #34.
68+
69+ + Disallowed links within links. (Resolves Issue #35.)
70+ - Replaced inlinesInBalanced with inlinesInBalancedBrackets, which
71+ instead of hard-coding the inline parser takes an inline parser
72+ as a parameter.
73+ - Modified reference and inlineNote to use inlinesInBalancedBrackets.
74+ - Removed unneeded inlineString function.
75+ - Added inlineNonLink parser, which is now used in the definition of
76+ reference.
77+ - Added inlineParsers list and redefined inline and inlineNonLink parsers
78+ in terms of it.
79+ - Added failIfLink parser.
80+
81+ + Better handling of parentheses in URLs and quotation marks in titles.
82+ - 'source' parser first tries to parse URL with balanced parentheses;
83+ if that doesn't work, it tries to parse everything beginning with
84+ '(' and ending with ')'.
85+ - source parser now uses an auxiliary function source'.
86+ - linkTitle parser simplified and improved, under assumption that it
87+ will be called in context of source'.
88+
89+ + Make 'block' conditional on strictness state, instead of using
90+ failIfStrict in block parsers. Use a different ordering of parsers
91+ in strict mode (raw HTML block before paragraph) for performance.
92+ In non-strict mode use rawHtmlBlocks instead of htmlBlock.
93+ Simplified htmlBlock, since we know it's only called in strict
94+ mode.
95+
96+ + Improved handling of raw HTML. (Resolves Issue #36.)
97+ - Tags that can be either block or inline (e.g. <ins>) should
98+ be treated as block when appropriate and as inline when
99+ appropriate. Thus, for example,
100+ <ins>hi</ins>
101+ should be treated as a paragraph with inline <ins> tags, while
102+ <ins>
103+ hi
104+ </ins>
105+ should be treated as a paragraph within <ins> tags.
106+ - Moved htmlBlock after para in list of block parsers. This ensures
107+ that tags that can be either block or inline get parsed as inline
108+ when appropriate.
109+ - Modified rawHtmlInline' so that block elements aren't treated as
110+ inline.
111+ - Modified para parser so that paragraphs containing only HTML tags and
112+ blank space are not allowed. Treat these as raw HTML blocks instead.
113+
114+ + Fixed bug wherein HTML preceding a code block could cause it to
115+ be parsed as a paragraph. The problem is that the HTML parser
116+ used to eat all blank space after an HTML block, including the
117+ indentation of the code block. (Resolves Issue #39.)
118+ - In Text.Pandoc.Readers.HTML, removed parsing of following space
119+ from rawHtmlBlock.
120+ - In Text.Pandoc.Readers.Markdown, modified rawHtmlBlocks so that
121+ indentation is eaten *only* on the first line after the HTML
122+ block. This means that in
123+ <div>
124+ foo
125+ <div>
126+ the foo won't be treated as a code block, but in
127+ <div>
128+
129+ foo
130+
131+ </div>
132+ it will. This seems the right approach for least surprise.
133+
134+ * RST reader:
135+
136+ + Fixed bug in parsing explicit links (resolves Issue #44).
137+ The problem was that we were looking for inlines until a '<' character
138+ signaled the start of the URL; so, if you hit a reference-style link,
139+ it would keep looking til the end of the document. Fix: change
140+ inline => (notFollowedBy (char '`') >> inline). Note that this won't
141+ allow code inlines in links, but these aren't allowed in resT anyway.
142+
143+ + Cleaned up parsing of reference names in key blocks and links.
144+ Allow nonquoted reference links to contain isolated '.', '-', '_', so
145+ so that strings like 'a_b_' count as links.
146+
147+ + Removed unnecessary check for following link in str.
148+ This is unnecessary now that link is above str in the definition of
149+ 'inline'.
150+
151+ * HTML reader:
152+
153+ + Modified rawHtmlBlock so it parses </html> and </body> tags.
154+ This allows these tags to be handled correctly in Markdown.
155+ HTML reader now uses rawHtmlBlock', which excludes </html> and </body>,
156+ since these are handled in parseHtml. (Resolves Issue #38.)
157+
158+ + Fixed bug (emph parser was looking for <IT> tag, not <I>).
159+
160+ + Don't interpret contents of style tags as markdown.
161+ (Resolves Issue #40.)
162+ - Added htmlStyle, analagous to htmlScript.
163+ - Use htmlStyle in htmlBlockElement and rawHtmlInline.
164+ - Moved "script" from the list of tags that can be either block or
165+ inline to the list of block tags.
166+
167+ + Modified rawHtmlBlock to use anyHtmlBlockTag instead of anyHtmlTag
168+ and anyHtmlEndTag. This fixes a bug in markdown parsing, where
169+ inline tags would be included in raw HTML blocks.
170+
171+ + Modified anyHtmlBlockTag to test for (not inline) rather than
172+ directly for block. This allows us to handle e.g. docbook in
173+ the markdown reader.
174+
175+ * LaTeX reader: Properly recognize --parse-raw in rawLaTeXInline.
176+ Updated LaTeX reader test to use --parse-raw.
177+
178+ * HTML writer:
179+
180+ + Modified rules for automatic HTML header identifiers to
181+ ensure that identifiers begin with an alphabetic character.
182+ The new rules are described in README. (Resolves Issue #33.)
183+
184+ + Changed handling of titles in HTML writer so you don't get
185+ "titleprefix - " followed by nothing.
186+
187+ * ConTeXt writer: Use wrappers around Doc elements to ensure proper
188+ spacing. Each block element is wrapped with either Pad or Reg.
189+ Pad'ed elements are guaranteed to have a blank line in between.
190+
191+ * RST writer:
192+
193+ + Refactored RST writer to use a record instead of a tuple for state,
194+ and to include options in state so it doesn't need to be passed as
195+ a parameter.
196+
197+ + Use an interpreted text role to render math in restructuredText.
198+ See http://www.american.edu/econ/itex2mml/mathhack.rst for the
199+ strategy.
200+
201+ [ Recai Oktaş ]
202+
203+ * Debian packaging changes:
204+
205+ + Remove the empty 'include' directory in -dev package, which lintian
206+ complains about.
207+ + Bump Standarts-Version to 3.7.3.
208+ + Use new 'Homepage:' field to specify the upstream URL on suggestion of
209+ lintian.
210+
211+ -- Recai Oktaş <roktas@debian.org> Tue, 08 Jan 2008 05:13:31 +0200
212+
213+pandoc (0.45) unstable; urgency=low
214+
215+ [ John MacFarlane ]
216+
217+ * Simplified parsing of reference keys and notes in markdown and RST
218+ readers: The Reference data structure from Text.Pandoc.Shared is no
219+ longer needed, since referenceKey and noteBlock parses return strings
220+ (as many blank lines as were occupied by the key or note) and update
221+ state themselves. getPosition and setPosition are now used to ensure
222+ that error messages will give the correct line number. This yields
223+ cleaner (and slightly faster) code, with more accurate parsing error
224+ messages.
225+
226+ * Added new Math inline element:
227+
228+ + Markdown and LaTeX readers now convert TeX math into Math elements,
229+ not TeX.
230+ + This allows math to be treated differently from raw TeX in output.
231+ TeX elements are no longer printed in output formats other than
232+ Markdown, LaTeX, and ConTeXt. But Math elements are always printed.
233+
234+ * New default handling of math in writers:
235+
236+ + New module Text.Pandoc.Readers.TeXMath exports readTeXMath, which
237+ parses raw TeX math and outputs a string of Pandoc inlines that
238+ tries to render it as far as possible using unicode characters,
239+ lapsing into literal TeX when needed.
240+ + readTeXMath is now used for default HTML output in HTML, S5, RTF,
241+ and Docbook, if no other method for displaying math in HTML is
242+ specified. Enclosing $'s are no longer printed by default.
243+ + By default, math is put inside <span class="math">. This way it can be
244+ distinguished from the surrounding text, e.g. put in a different
245+ font.
246+
247+ * New --gladtex and --mimetex options for display of math in HTML:
248+
249+ + If --gladtex is specified, math is output between <eq> tags, so
250+ it can be processed by gladTeX.
251+ + If --mimetex is specified, math is put in <img> tags with a link
252+ to the mimetex CGI script (or any other script that takes TeX math
253+ as input and outputs an image). The URL of the script may be
254+ specified, but defaults to /cgi-bin/mimetex.cgi.
255+ + HTMLMathMethod structure in WriterOptions keeps track of how to
256+ display math in HTML output.
257+ + Updated README with a description of the four options for displaying
258+ math in HTML.
259+
260+ * HTML reader:
261+
262+ + Fixed bug: parser for minimized attributes should not swallow
263+ trailing spaces.
264+ + Simplified HTML attribute parsing.
265+ + Changed parsing of code blocks in HTML reader: <code> tag is no
266+ longer needed. <pre> suffices. All HTML tags in the code block
267+ (e.g. for syntax highlighting) are skipped, because they are not
268+ portable to other output formats. A <code>...</code> block not
269+ surrounded by <pre> now counts as inline HTML, not a code block.
270+ + Remove just one leading and one trailing newline from contents of
271+ <pre>...</pre> in codeBlock parser.
272+
273+ * Markdown reader:
274+
275+ + Removed support for box-style block quotes.
276+ + Require space before title in links and references.
277+ This fixes a bug in parsing URLs like http://silly/url(withparen).
278+ + Improved and simplified setextHeader parser.
279+ + Fixed logic in smart quote parsing, adding some needed 'try'
280+ statements.
281+ + Fixed smart quote parsing so that unicode characters 8216 and 8217
282+ are recognized as single quotes, and 8220 and 8221 as double quotes.
283+
284+ * RST reader:
285+
286+ + Fixed bug in parsing of code blocks. Previously a full tab indent
287+ was required, but RST allows code to be indented any amount.
288+ Resolves Issue #27.
289+ + Allow field lists to be indented.
290+ + Parse the contents of field lists instead of treating as a raw string.
291+ + Represent field lists as definition lists instead of blockquotes.
292+ + Fixed bug in which metadata would be overridden if the document
293+ contained multiple field lists.
294+ + Parse fields associated with '.. image::' blocks, and use 'alt'
295+ field, if given, for image alt and title attributes.
296+
297+ * LaTeX reader:
298+
299+ + Modified specialChar so that '"' characters are parsed.
300+ + Fixed a bug in parsing of \[ \] math blocks (thanks to Mark Kalderon).
301+
302+ * HTML writer:
303+
304+ + Changes in handling of math (see above).
305+ + Don't produce HTML for table of contents if there are
306+ no headers. (This would be an empty list, which is invalid XHTML.)
307+
308+ * Markdown writer:
309+
310+ + Don't print title attribute if title is empty. (This differs from
311+ the behavior of Markdown.pl, and agrees with PHP Markdown. But John
312+ Gruber has indicated that he prefers this behavior.) Adjusted test
313+ suite accordingly.
314+ + Fixed incorrect line wrapping in paragraphs including hard line
315+ breaks. Resolves Issue #25.
316+ + Fixed bug in markdown writer: If an ordered list item began with
317+ a marker greater than 3 characters in width, and the item took more
318+ than one line, it would appear on the line after the list marker,
319+ e.g.:
320+
321+ (12)
322+ My list item.
323+ Multiline.
324+
325+ Now it works as follows:
326+
327+ (12) My list item.
328+ Multiline.
329+
330+ * RST writer
331+
332+ + Fixed bug in RST writer's handling of ordered lists. Previously,
333+ list items with multiple lines would not always line up with
334+ single-line list items. Now, list items are nested the length of
335+ the list marker + 1. This looks better and ensures that list items
336+ all line up. (Note that list markers are padded to the length of
337+ the longest list marker in the series.)
338+ + Use 3-space indent for unordered lists.
339+ + If label for a link reference contains a colon, surround it by `
340+ signs so it won't be interpreted as the end of the link label.
341+
342+ * LaTeX writer:
343+
344+ + Cleaner output for footnotes. Footnotes now always begin on a new
345+ line, and the final } is on a line by itself only when it needs to
346+ be (i.e. only when the note ends with a Verbatim environment).
347+ + Added writer options to state, so state doesn't need to be passed as
348+ a parameter.
349+ + Text wrapping now provided, using wrapTeXIfNeeded.
350+
351+ * ConTeXt writer: many improvements for more idiomatic ConTeXt output
352+ (thanks to Idris Samawi Hamid for suggestions).
353+
354+ + PrettyPrint module now used for output.
355+ + Writer options are now in state, so they don't have to be passed as
356+ a parameter.
357+ + Text wrapping now provided, using wrapTeXIfNeeded.
358+ + Better treatment of footnotes: footnotes are always on lines by
359+ themselves, and the final } is on a line by itself only when
360+ it needs to be (after \stoptyping).
361+ + Use \subject, \subsubject, ... or \section, \subsection, ... for headings,
362+ depending on whether --number-sections option is selected.
363+ + Extra blank line inserted after \stopitemize
364+ + Use new, "official" definition of blockquote environment. Also, use
365+ blank line after \startblockquote to balance blank line at the end.
366+ + Both itemized and enumerated lists are now generated using
367+ \start-stopitemize, with appropriate options. Removed definitions
368+ of ltxenum and ltxitem, which are no longer needed. Provided
369+ defaults for itemized lists in the preamble. State keeps track of
370+ ordered list level, so that when default numbering is specified,
371+ the appropriate scheme can be used.
372+ + Changed \useurl to \useURL.
373+ + Changed link color from red to blue.
374+ + Use \subsubsubsubsection etc., since these are supported
375+ (up to at least sub x 5).
376+
377+ * Text.Pandoc.Shared:
378+
379+ + Save and restore position in parseFromString, so that accurate
380+ error messages can be given.
381+ + Improved efficiency of romanNumeral parser.
382+ + Added wrappedTeX and wrapTeXIfNeeded functions. These ensure
383+ that footnotes occur on lines by themselves (to make them
384+ easier to see and move) and do not screw up line wrapping.
385+
386+ * Text.Pandoc.UTF8: modified fromUTF8 to strip out the BOM
387+ if present. Windows Notepad and other applications insert a
388+ BOM at the beginning of a UTF8 file.
389+
390+ * Main.hs (tabFilter): Treat '\r' at end of line as newline (in
391+ addition to "\r\n" and '\n').
392+
393+ * Added a writer option for wrapped text and a command-line option
394+ '--no-wrap', which disables text wrapping and minimizes whitespace
395+ in HTML. (Resolves Issue #26.)
396+
397+ + Added support for '--no-wrap' to Main.hs.
398+ + Added wrapIfNeeded function to Text.Pandoc.Shared.
399+ + Use wrapIfNeeded instead of wrapped in the RST, Man, Docbook, and
400+ Markdown writers.
401+ + Added render and renderFragment helpers to HTML writer.
402+
403+ * Modified html2markdown to run tidy only if the HTML cannot be
404+ parsed. Previously html2markdown piped all input through tidy
405+ before passing it to pandoc. This caused problems on certain pages
406+ (e.g. http://daringfireball.com/markdown) which have well-formed
407+ XHTML that causes tidy to choke. The solution is to pipe through
408+ tidy only if pandoc cannot parse the input by itself. This means
409+ that a temp file is now always used, even when input comes from a
410+ local file or standard input.
411+
412+ * Removed 'version' constant from Main.hs; added 'pandocVersion' to
413+ Text.Pandoc library.
414+
415+ * pandoc.cabal:
416+
417+ + Modified to work with GHC 6.8 and Cabal configurations. (For GHC
418+ 6.8, pretty and containers must be added to Build-Depends, and it
419+ is desirable to use the -O2 compiler option.) Cabal configurations
420+ allows one to select options depending on the compiler version.
421+ For GHC 6.6, the splitBase option can be disabled.
422+ + pandoc.cabal.ghc66 is provided for users with older versions of
423+ Cabal, which do not support configurations.
424+ + Use Ghc-Prof-Options to ensure that '-auto-all' is used when
425+ '--enable-(executable|library)-profiling' is specified. Updated
426+ PROFILING instructions accordingly.
427+
428+ * Makefile:
429+
430+ + Makefile now checks GHC version. If GHC is 6.6, pandoc.cabal.ghc66
431+ is copied to pandoc.cabal, and the old pandoc.cabal is copied
432+ to pandoc.cabal.orig. Otherwise, pandoc.cabal is copied to
433+ pandoc.cabal.orig but otherwise unmodified. This way, the Makefile
434+ will work properly with either GHC 6.6 or 6.8.
435+ + Changed BUILDCONF to point to dist/setup-config, not .setup-config.
436+ This is where current versions of Cabal put it.
437+ + Added $(BUILDCMD) target, so setup doesn't get compiled every time.
438+ + Removed dependency of templates on ./templates, which is circular
439+ now that templates is a subdirectory of the top-level.
440+
441+ * MacPorts Portfile:
442+
443+ + Modified to install the pandoc library in addition to programs.
444+ + Installation must be done manually rather than using Makefile's
445+ install-all.
446+ + Note that the library must be registered in the activate phase,
447+ after the library files have been copied out of the destroot.
448+ Cabal generates a 'register.sh' script that will do this.
449+
450+ * debian/control: Added libghc6-network-dev, libghc6-xhtml-dev, and
451+ libghc6-mtl-dev as dependencies for libghc6-pandoc-dev.
452+ Closes: #445235
453+
454+ * debian/rules: Converted to UTF-8.
455+
456+ * Changed pandoc home page to http://johnmacfarlane.net/pandoc/.
457+
458+ * Updated ASCIIMathML.js to latest version.
459+
460+ * Directory structure:
461+
462+ + Moved everything from src into the top-level directory.
463+ + Changed references to source directory in Makefile and
464+ pandoc.cabal.*.
465+ + Moved ASCIIMathML.js, headers, and ui into templates directory.
466+ + Modified fillTemplates.pl to reflect new paths.
467+
468+ [ Recai Oktaş ]
469+
470+ * Makefile: Fixed the issue of having two copies of the library
471+ documentation under some usage scenarios.
472+
473+ * Replaced 'ghc' with '$(GHC)' in Makefile, and made GHC
474+ and GHC_PKG configurable through the environment, to support
475+ unusual ghc installations. For example:
476+ GHC=/opt/ghc/bin/ghc GHC_PKG=/opt/ghc/bin/ghc-pkg make
477+
478+ -- Recai Oktaş <roktas@debian.org> Sun, 07 Oct 2007 20:51:43 +0300
479+
480+pandoc (0.44) unstable; urgency=low
481+
482+ [ John MacFarlane ]
483+
484+ * Fixed bug in HTML writer: when --toc was used, anchors were put around
485+ headers, which is invalid XHTML (block content within inline element).
486+ Now the anchors are put inside the header tags. Resolves Issue #23.
487+
488+ * Added xmlns attribute to html element in html writer tests.
489+ This attribute is added by more recent versions of the
490+ xhtml library (>= 3000), and is required for valid XHTML.
491+
492+ [ Recai Oktaş ]
493+
494+ * On configure, compile 'Setup.hs' to 'setup' and use 'setup' as the build
495+ command instead of 'runhaskell', which, on some platforms (such as s390,
496+ alpha, m68k), throws the following error:
497+
498+ runhaskell Setup.hs configure --prefix=/usr
499+ ghc-6.6.1: not built for interactive use
500+
501+ This causes a serious FTBFS bug. Closes: #440668.
502+
503+ -- Recai Oktaş <roktas@debian.org> Mon, 03 Sep 2007 18:24:02 +0300
504+
505+pandoc (0.43) unstable; urgency=low
506+
507+ [ John MacFarlane ]
508+
509+ * The focus of this release is performance. The markdown parser
510+ is about five times faster than in 0.42, based on benchmarks
511+ with the TextMate manual.
512+
513+ * Main.hs: Replaced CRFilter and tabFilter with single function
514+ tabFilter, which operates on the whole string rather than breaking
515+ it into lines, and handles dos-style line-endings as well as tabs.
516+
517+ * Added separate LaTeX reader and native reader tests; removed
518+ round-trip tests.
519+
520+ * Text.Pandoc.Shared:
521+
522+ + Removed tabsToSpaces and tabsInLine (they were used only in Main.hs.)
523+ + General code cleanup (to elimante warnings when compiling with -Wall.)
524+ + Added 'wrapped' function, which helps wrap text into paragraphs,
525+ using the prettyprinting library.
526+ + Rewrote charsInBalanced and charsInBalanced'.
527+ - Documented restriction: open and close must be distinct characters.
528+ - Rearranged options for greater efficiency.
529+ - Bug fix: Changed inner call to charsInBalanced inside
530+ charsInBalanced' to charsInBalanced'.
531+ + anyLine now requires that the line end with a newline (not eof).
532+ This is a harmless assumption, since we always add newlines to the
533+ end of a block before parsing with anyLine, and it yields a 10% speed
534+ boost.
535+ + Removed unnecessary 'try' in anyLine.
536+ + Removed unneeded 'try' from romanNumeral parser.
537+ + Use notFollowedBy instead of notFollowedBy' in charsInBalanced.
538+ + Removed unneeded 'try' in parseFromString.
539+ + Removed unneeded 'try' from stringAnyCase. (Now it behaves
540+ like 'string'.)
541+ + Changed definition of 'enclosed' in Text.Pandoc.Shared so that
542+ 'try' is not automatically applied to the 'end' parser. Added
543+ 'try' in calls to 'enclosed' where needed. Slight speed increase.
544+
545+ * Writers:
546+
547+ + Replaced individual wrapping routines in RST, Man, and Markdown
548+ writers with 'wrapped' from Text.Pandoc.Shared.
549+ + Rewrote LaTeX writer to use the prettyprinting library,
550+ so we get word wrapping, etc.
551+ + Modified latex writer tests for new latex writer using prettyprinter.
552+ + Fixed bug in LaTeX writer: autolinks would not cause
553+ '\usepackage{url}' to be put in the document header. Also, changes
554+ to state in enumerated list items would be overwritten.
555+ + In Markdown writer, escape paragraphs that begin with ordered list
556+ markers, so they don't get interpreted as ordered lists.
557+
558+ * Text.Pandoc.Reades.LaTeX:
559+
560+ + Fixed bug in LaTeX reader, which wrongly assumed that the roman
561+ numeral after "enum" in "setcounter" would consist entirely of
562+ "i"s. 'enumiv' is legitimate.
563+ + LaTeX command and environment names can't contain numbers.
564+ + Rearranged order of parsers in inline for slight speed improvement.
565+ + Added '`' to special characters and 'unescapedChar'.
566+
567+ * Text.Pandoc.Readers.RST:
568+
569+ + Removed unneeded try's in RST reader; also minor code cleanup.
570+ + Removed tabchar.
571+ + Rearranged parsers in inline (doubled speed).
572+
573+ * Text.Pandoc.Readers.Markdown:
574+
575+ + Skip notes parsing if running in strict mode. (This yields a nice
576+ speed improvement in strict mode.)
577+ + Simplify autolink parsing code, using Network.URI to test for
578+ URIs. Added dependency on network library to debian/control and
579+ pandoc.cabal.
580+ + More perspicuous definition of nonindentSpaces.
581+ + Removed unneeded 'try' in 'rawLine'.
582+ + Combined linebreak and whitespace into a new whitespace parser, to
583+ avoid unnecessary reparsing of space characters.
584+ + Removed unnecessary 'try' in 'codeBlock', 'ellipses', 'noteMarker',
585+ 'multilineRow', 'dashedLine', 'rawHtmlBlocks'.
586+ + Use lookAhead in parsers for setext headers and definition lists
587+ to see if the next line begins appropriately; if not, don't waste
588+ any more time parsing.
589+ + Don't require blank lines after code block. (It's sufficient to
590+ end code block with a nonindented line.)
591+ + Changed definition of 'emph': italics with '_' must not
592+ be followed by an alphanumeric character. This is to help
593+ prevent interpretation of e.g. [LC_TYPE]: my_type as
594+ '[LC<em>TYPE]:my</em>type'.
595+ + Improved Markdown.pl-compatibility in referenceLink: the two parts
596+ of a reference-style link may be separated by one space, but not
597+ more... [a] [link], [not] [a link].
598+ + Fixed markdown inline code parsing so it better accords with
599+ Markdown.pl: the marker for the end of the code section is a clump
600+ of the same number of `'s with which the section began, followed
601+ by a non-` character. So, for example,
602+ ` h ``` i ` -> <code>h ``` i</code>.
603+ + Split 'title' into 'linkTitle' and 'referenceTitle', since the
604+ rules are slightly different.
605+ + Rewrote 'para' for greater efficiency.
606+ + Rewrote link parsers for greater efficiency.
607+ + Removed redundant 'referenceLink' in definition of inline (it's
608+ already in 'link').
609+ + Refactored escapeChar so it doesn't need 'try'.
610+ + Refactored hrule for performance in Markdown reader.
611+ + More intelligent rearranging of 'inline' so that most frequently
612+ used parsers are tried first.
613+ + Removed tabchar parser, as whitespace handles tabs anyway.
614+
615+ * Text.Pandoc.CharacterReferences:
616+
617+ + Refactored.
618+ + Removed unnecessary 'try's for a speed improvement.
619+ + Removed unnecessary '&' and ';' from the entity table.
620+
621+ * Build process:
622+
623+ + Makefile: Get VERSION from cabal file, not Main.hs.
624+ + Modified MacPorts Portfile:
625+ - Depend on haddock
626+ - Build and install libraries and library documentation in
627+ addition to pandoc executable
628+ - Added template item for md5 sum in Portfile.in.
629+ - Incorporated changes from MacPorts repository (r28278).
630+ + FreeBSD port: Don't try to generate distinfo in Makefile.
631+ It can be made using 'make makesum' in FreeBSD.
632+ + Make both freebsd and macports targets depend on tarball.
633+
634+ * Website and documentation:
635+
636+ + Updated INSTALL instructions.
637+ + Added pandocwiki demo to website.
638+ + Removed local references to Portfile, since pandoc is now in the
639+ MacPorts repository.
640+
641+ -- Recai Oktaş <roktas@debian.org> Sun, 02 Sep 2007 15:50:11 +0300
642+
643+pandoc (0.42) unstable; urgency=low
644+
645+ [ John MacFarlane ]
646+
647+ * Main.hs: Use utf8 conversion on the extra files loaded with
648+ the -H, -C, -B, and -A options. This fixes problems with unicode
649+ characters in these files.
650+
651+ * Exposed Text.Pandoc.ASCIIMathML, since it is imported in
652+ Text.Pandoc.Readers.HTML and without it we get a linking error when
653+ using the library.
654+
655+ * Markdown reader:
656+
657+ + Added new rule for enhanced markdown ordered lists: if the list
658+ marker is a capital letter followed by a period (including a
659+ single-letter capital roman numeral), then it must be followed by
660+ at least two spaces. The point of this is to avoid accidentally
661+ treating people's initials as list markers: a paragraph might begin,
662+ "B. Russell was an English philosopher," and this shouldn't be
663+ treated as a list. Documented change in README.
664+ + Blocks that start with "p. " and a digit are no longer treated
665+ as ordered lists (it's a page number).
666+ + Added a needed 'try' to listItem.
667+ + Removed check for a following setext header in endline.
668+ A full test is too inefficient (doubles benchmark time), and the
669+ substitute we had before is not 100% accurate.
670+ + Don't use Code elements for autolinks if --strict specified.
671+
672+ * LaTeX writer: When a footnote ends with a Verbatim environment, the
673+ close } of the footnote cannot occur on the same line or an error occurs.
674+ Fixed this by adding a newline before the closing } of every footnote.
675+
676+ * HTML writer:
677+ + Removed incorrect "{}" around style information in HTML tables.
678+ Column widths now work properly in HTML.
679+ + If --strict option is specified (and --toc is not), don't include
680+ identifiers in headers, for better Markdown compatibility.
681+
682+ * Build process:
683+
684+ + Separated $(web_dest) and website targets.
685+ + In website, index.txt is now constructed from template index.txt.in.
686+ + Added freebsd target to Markefile. This creates the freebsd Makefile
687+ from Makefile.in, and creates distinfo. Removed Makefile and distinfo
688+ from the repository.
689+ + Added macport target to Makefile. Portfile is built from template
690+ Portfile.in.
691+ + Removed OSX package targets. (Too many difficulties involving
692+ dependencies on dynamic libraries.)
693+ + More complete INSTALL instructions for all architectures.
694+
695+ * Website:
696+ + Added a programming demo, pandocwiki.
697+
698+ [ Recai Oktaş ]
699+
700+ * Do not forget to close pandoc's ITP. Closes: #391666
701+
702+ -- Recai Oktaş <roktas@debian.org> Sun, 26 Aug 2007 22:51:32 +0300
703+
704+pandoc (0.41) unstable; urgency=low
705+
706+ [ John MacFarlane ]
707+
708+ * Fixed bugs in HTML reader:
709+ + Skip material at end *only if* </html> is present (previously,
710+ only part of the document would be parsed if an error was
711+ found; now a proper error message is given).
712+ + Added new constant eitherBlockOrInline with elements that may
713+ count either as block-level or as inline. Modified isInline and
714+ isBlock to take this into account.
715+ + Modified rawHtmlBlock to accept any tag (even an inline tag):
716+ this is innocuous, because rawHtmlBlock is tried only if a regular
717+ inline element can't be parsed.
718+ + Added a necessary 'try' in definition of 'para'.
719+
720+ * Fixed bug in markdown ordered list parsing. The problem was that
721+ anyOrderedListStart did not check for a space following the
722+ ordered list marker. So in 'A.B. 2007' the parser would be
723+ expecting a list item, but would not find one, causing an error.
724+ Fixed a similar bug in the RST reader. Resolves Issue #22.
725+
726+ * Refactored RST and Markdown readers using parseFromString.
727+
728+ * LaTeX reader will now skip anything after \end{document}.
729+
730+ * Fixed blockquote output in markdown writer: previously, block
731+ quotes in indented contexts would be indented only in the first
732+ line.
733+
734+ * Added note to INSTALL about variations in versions of the xhtml
735+ library that can lead to failed tests (thanks to Leif LeBaron).
736+
737+ -- Recai Oktaş <roktas@debian.org> Sun, 19 Aug 2007 23:26:07 +0300
738+
739+pandoc (0.4) unstable; urgency=low
740+
741+ [ John MacFarlane ]
742+
743+ * Added two new output formats: groff man pages and ConTeXt. By
744+ default, output files with extensions ".ctx" and ".context" are
745+ assumed to be ConTeXt, and output files with single-digit extensions
746+ are assumed to be man pages.
747+
748+ * Enhanced ordered lists (documented in README, under Lists):
749+ + The OrderedList block element now stores information about
750+ list number style, list number delimiter, and starting number.
751+ + The readers parse this information when possible.
752+ + The writers use this information to style ordered lists.
753+ + The enhancement can be disabled using the --strict option.
754+
755+ * Added support for tables (with a new Table block element). Two kinds
756+ of tables are supported: a simple table with one-line rows, and a
757+ more complex variety with multiline rows. All output formats are
758+ supported, but only markdown tables are parsed at the moment. The
759+ syntax is documented in README.
760+
761+ * Added support for definition lists (with a new DefinitionList block
762+ element). All output and input formats are supported. The syntax is
763+ documented in README.
764+
765+ * Added support for superscripts and subscripts (with new Superscript
766+ and Subscript inline elements). All input and output
767+ formats. The syntax is documented in README.
768+
769+ * Added support for strikeout (with a new Strikeout inline element).
770+ All input and output formats are supported. Thanks to Bradley Kuhn,
771+ who contributed a patch. The syntax is documented in README. Resolves
772+ Issue #18.
773+
774+ * Added a --toc|--table-of-contents option. This causes an automatically
775+ generated table of contents (or an instruction that creates one) to
776+ be inserted at the beginning of the document. Not supported in S5,
777+ DocBook, or man page writers.
778+
779+ * Modified the -m|--asciimathml option:
780+
781+ + If an optional URL argument is provided, a link is inserted
782+ instead of the contents of the ASCIIMathML.js script.
783+ + Nothing is inserted unless the document actually contains
784+ LaTeX math.
785+
786+ * Removed Blank block element as unnecessary.
787+
788+ * Removed Key and Note blocks from the Pandoc data structure. All
789+ links are now stored as explicit links, and note contents are
790+ stored with the (inline) notes.
791+
792+ + All link Targets are now explicit (URL, title) pairs; there
793+ is no longer a 'Ref' target.
794+ + Markdown and RST parsers now need to extract data from key and
795+ note blocks and insert them into the relevant inline elements.
796+ Other parsers have been simplified, since there is no longer any need
797+ to construct separate key and note blocks.
798+ + Markdown, RST, and HTML writers need to construct lists of
799+ notes; Markdown and RST writers need to construct lists of link
800+ references (when the --reference-links option is specified); and
801+ the RST writer needs to construct a list of image substitution
802+ references. All writers have been rewritten to use the State monad
803+ when state is required.
804+ + Several functions (generateReference, keyTable,
805+ replaceReferenceLinks, replaceRefLinksBlockList, and some auxiliaries
806+ used by them) have been removed from Text.Pandoc.Shared, since
807+ they are no longer needed. New functions and data structures
808+ (Reference, isNoteBlock, isKeyBlock, isLineClump) have been
809+ added. The functions inTags, selfClosingTag, inTagsSimple, and
810+ inTagsIndented have been moved to the DocBook writer, since that
811+ is now the only module that uses them. NoteTable is now exported
812+ in Text.Pandoc.Shared.
813+ + Added stateKeys and stateNotes to ParserState; removed stateKeyBlocks,
814+ stateKeysUsed, stateNoteBlocks, stateNoteIdentifiers, stateInlineLinks.
815+ + Added writerNotes and writerReferenceLinks to WriterOptions.
816+
817+ * Added Text.Pandoc module that exports basic readers, writers,
818+ definitions, and utility functions. This should export everything
819+ needed for most uses of Pandoc libraries. The haddock documentation
820+ includes a short example program.
821+
822+ * Text.Pandoc.ASCIIMathML is no longer an exported module.
823+
824+ * Added Text.Pandoc.Blocks module to help in printing markdown
825+ and RST tables. This module provides functions for working with
826+ fixed-width blocks of text--e.g., placing them side by side, as
827+ in a table row.
828+
829+ * Refactored to avoid reliance on Haskell's Text.Regex library, which
830+ (a) is slow, and (b) does not properly handle unicode. This fixed
831+ some strange bugs, e.g. in parsing S-cedilla, and improved performance.
832+
833+ + Replaced 'gsub' with a general list function 'substitute'
834+ that does not rely on Text.Regex.
835+ + Rewrote extractTagType in HTML reader so that it doesn't use
836+ regexs.
837+ + In Markdown reader, replaced email regex test with a custom email
838+ autolink parser (autoLinkEmail). Also replaced selfClosingTag regex
839+ with a custom function isSelfClosingTag.
840+ + Modified Docbook writer so that it doesn't rely on Text.Regex for
841+ detecting 'mailto' links.
842+ + Removed escapePreservingRegex and reamped entity-handling
843+ functions in Text.Pandoc.Shared and Text.Pandoc.CharacterReferences to
844+ avoid reliance on Text.Regex (see below on character reference
845+ handling changes).
846+
847+ * Renamed Text.Pandoc.Entities as Text.Pandoc.CharacterReferences.
848+
849+ * Changed handling of XML entities. Entities are now parsed (and unicode
850+ characters returned) in the Markdown and HTML readers, rather than being
851+ handled in the writers. In HTML and Docbook writers, UTF-8 is now used
852+ instead of entities for characters above 128. This makes the HTML and
853+ DocBook output much more readable and more easily editable.
854+
855+ + Removed sgmlHexEntity, sgmlDecimalEntity, sgmlNamedEntity, and
856+ sgmlCharacterEntity regexes from Text.Pandoc.Shared.
857+ + Renamed escapeSGMLChar to escapeCharForXML. Added escapeStringForXML.
858+ Moved both functions to Text.Pandoc.Writers.Docbook.
859+ + Added characterReference parser to Text.Pandoc.CharacterReferences.
860+ This parses a string and return a unicode character.
861+ + Rewrote decodeCharacterReferences to use the new parser instead of
862+ Text.Regex.
863+ + Added new charRef parser for Markdown and HTML, which replaces the
864+ old 'entity' parser. Added '&' as a special character in Markdown reader.
865+ + Modified HTML and Markdown readers to call decodeEntities on all raw
866+ strings (e.g. authors, dates, link titles), to ensure that no
867+ unprocessed entities are included in the native representation of
868+ the document. (In the HTML reader, most of this work is done by a
869+ change in extractAttributeName.)
870+ + In XML and Markdown output, escape unicode nonbreaking space as '&nbsp;',
871+ since a unicode non-breaking space is impossible to distinguish visually
872+ from a regular space. (Resolves Issue #3.)
873+ + Removed encodeEntitiesNumerical.
874+ + Use Data.Map for entityTable and (new) reverseEntityTable, for a
875+ slight performance boost over the old association list.
876+ + Removed unneeded decodeEntities from 'str' parser in HTML and
877+ Markdown readers.
878+
879+ * Text.Pandoc.UTF8: Renamed encodeUTF8 to toUTF8, decodeUTF8 to
880+ fromUTF8, for clarity.
881+
882+ * Replaced old haskell98 module names replaced by hierarchical module
883+ names, e.g. List by Data.List. Removed haskell98 from dependencies
884+ in pandoc.cabal, and added mtl (needed for state monad). Substituted
885+ xhtml for html.
886+
887+ * Refactored and cleaned up character escaping in writers, using
888+ backslashEscapes and escapeStringUsing functions.
889+
890+ * Instead of adding "\n\n" to the end of an input string in Main.hs,
891+ this is now done in the readers. This makes the libraries behave
892+ the way you'd expect from the pandoc program. Resolves Issue #10.
893+
894+ * URLs and email addresses in autolinks are now typeset as Code.
895+
896+ * In Main.hs, changed putStr to putStrLn -- mainly because MacOS X
897+ doesn't display the whole output unless there's a line ending.
898+
899+ * Major code cleanup in all modules, for greater consistency, concision,
900+ and readability.
901+
902+ * HTML reader:
903+
904+ + Fixed several bugs (extractTagType, attribute parsing).
905+ + Remove Null blocks in lists of blocks when possible.
906+ + Allow HTML comments as raw HTML inline.
907+
908+ * Markdown reader:
909+
910+ + Ordered list items may no longer begin with uppercase letters, or
911+ letters greater than 'n'. (This prevents first initials and page
912+ reference, e.g. 'p. 400', from being parsed as beginning lists.)
913+ Also, numbers beginning list items may no longer end with ')',
914+ which is now allowed only after letters. Note: These changes
915+ may cause documents to be parsed differently. Users should take
916+ care in upgrading.
917+ + Changed autoLink parsing to conform better to Markdown.pl's
918+ behavior. <google.com> is not treated as a link, but
919+ <http://google.com>, <ftp://google.com>, and <mailto:google@google.com>
920+ are.
921+ + Cleaned up handling of embedded quotes in link titles. Now these are
922+ stored as a '"' character, not as '&quot;'.
923+ + Use lookAhead parser for the 'first pass' (looking for reference keys),
924+ instead of parsing normally, then using setInput to reset input. This
925+ yields a slight performance boost.
926+ + Fixed several bugs in smart quote recognition.
927+ + Fixed bug in indentSpaces (which didn't properly handle
928+ cases with mixed spaces and tabs).
929+ + Consolidated 'text', 'special', and 'inline' into 'inline'.
930+ + Fixed bug which allowed URL and title to be separated by multiple blank
931+ lines in links and reference keys. They can be on separate lines but
932+ can't have blank lines between them.
933+ + Correctly handle bracketed text inside inline footnotes and links,using
934+ new function inlinesInBalanced. Resolves Issue #14.
935+ + Fixed bug in footnotes: links in footnotes were not being
936+ processed. Solution: three-stage parse. First, get all the
937+ reference keys and add information to state. Next, get all the
938+ notes and add information to state. (Reference keys may be needed
939+ at this stage.) Finally, parse everything else.
940+ + Replaced named constants like 'emphStart' with literals.
941+ + Removed an extra occurance of escapedChar in definition of inline.
942+
943+ * RST reader:
944+
945+ + Allow the URI in a RST hyperlink target to start on the line
946+ after the reference key.
947+ + Added 'try' in front of 'string', where needed, or used a different
948+ parser. This fixes a bug where ````` would not be correctly parsed as
949+ a verbatim `.
950+ + Fixed slow performance in parsing inline literals in RST reader. The
951+ problem was that ``#`` was seen by 'inline' as a potential link or image.
952+ Fix: inserted 'notFollowedBy (char '`')' in link parsers.
953+ Resolves Issue #8.
954+ + Use lookAhead instead of getInput/setInput in RST reader. Removed
955+ unneeded getState call, since lookAhead automatically saves and
956+ restores the parser state.
957+ + Allow hyperlink target URIs to be split over multiple lines, and
958+ to start on the line after the reference. Resolves Issue #7.
959+ + Fixed handling of autolinks.
960+
961+ * LaTeX reader:
962+
963+ + Replaced 'choice [(try (string ...), ...]' idiom with 'oneOfStrings',
964+ for clarity.
965+ + Added clauses for tilde and caret. Tilde is \ensuremath{\sim}, and
966+ caret is \^{}, not \^ as before.
967+ + Added parsing for \url.
968+ + Parse \texttt{} as code, provided there's nothing fancy inside.
969+
970+ * HTML writer:
971+
972+ + Modified HTML writer to use the Text.XHtml library. This results
973+ in cleaner, faster code, and it makes it easier to use Pandoc in
974+ other projects, like wikis, which use Text.XHtml. Two functions are
975+ now provided, writeHtml and writeHtmlString: the former outputs an
976+ Html structure, the latter a rendered string. The S5 writer is also
977+ changed, in parallel ways (writeS5, writeS5String).
978+ + The Html header is now written programmatically, so it has been
979+ removed from the 'headers' directory. The S5 header is still
980+ needed, but the doctype and some of the meta declarations have
981+ been removed, since they are written programatically. This change
982+ introduces a new dependency on the xhtml package.
983+ + Fixed two bugs in email obfuscation involving improper escaping
984+ of '&' in the <noscript> section and in --strict mode. Resolves
985+ Issue #9.
986+ + Fixed another bug in email obfuscation: If the text to be obfuscated
987+ contains an entity, this needs to be decoded before obfuscation.
988+ Thanks to thsutton for the patch. Resolves Issue #15.
989+ + Changed the way the backlink is displayed in HTML footnotes.
990+ Instead of appearing on a line by itself, it now generally
991+ appears on the last line of the note. (Exception: when the
992+ note does not end with a Plain or Para block.) This saves space
993+ and looks better.
994+ + Added automatic unique identifiers to headers:
995+ - The identifier is derived from the header via a scheme
996+ documented in README.
997+ - WriterState now includes a list of header identifiers and a table
998+ of contents in addition to notes.
999+ - The function uniqueIdentifiers creates a list of unique identifiers
1000+ from a list of inline lists (e.g. headers).
1001+ - This list is part of WriterState and gets consumed by blockToHtml
1002+ each time a header is encountered.
1003+ + Include CSS for .strikethrough class in header only if strikethrough
1004+ text appears in the document.
1005+ + If the 'strict' option is specified, elements that do not appear in
1006+ standard markdown (like definition lists) are passed through as
1007+ raw HTML.
1008+ + Simplified treatment of autolinks, using pattern matching instead of
1009+ conditionals.
1010+
1011+ * Markdown writer:
1012+
1013+ + Links in markdown output are now printed as inline links by default,
1014+ rather than reference links. A --reference-links option has been added
1015+ that forces links to be printed as reference links. Resolves Issue #4.
1016+ + Use autolinks when possible. Instead of [site.com](site.com),
1017+ use <site.com>.
1018+
1019+ * LaTeX writer:
1020+
1021+ + Rewrote to use the State monad. The preamble now includes only those
1022+ packages that are actually required, given the document's content.
1023+ Thus, for example, if strikeout is not used, ulem is not required.
1024+ Modified LaTeXHeader accordingly.
1025+ + Modified LaTeX writer to insert '\,' between consecutive quotes.
1026+ + Removed unused function tableRowColumnWidths.
1027+ + Simplified code for escaping special characters.
1028+ + Leave extra blank line after \maketitle.
1029+ + Include empty '\author{}' when no author specified to avoid LaTeX
1030+ errors.
1031+ + Include fancyvrb code in header only if needed -- that is, only
1032+ if there is actually code in a footnote.
1033+ + Use \url{} for autolinks.
1034+ + Include [mathletters] option in ucs package, so that basic unicode
1035+ Greek letters will work correctly.
1036+
1037+ * RST writer: Force blank line before lists, so that sublists will
1038+ be handled correctly.
1039+
1040+ * Docbook writer: Fixed a bug: email links with text, like
1041+ [foo](me@bar.baz), were being incorrectly treated as autolinks.
1042+
1043+ * Removed Text.ParserCombinators.Pandoc and moved all its functions to
1044+ Text.Pandoc.Shared.
1045+
1046+ * Text.Pandoc.Shared:
1047+
1048+ + Added defaultWriterOptions.
1049+ + Added writerTableOfContents to WriterOptions.
1050+ + Added writerIgnoreNotes option to WriterOptions. This is needed
1051+ for processing header blocks for a table of contents, since notes on
1052+ headers should not appear in the TOC.
1053+ + Added prettyprinting for native Table format.
1054+ + Removed some unneeded imports.
1055+ + Moved escape and nullBlock parsers from
1056+ Text.ParserCombinators.Pandoc, since the latter is for
1057+ general-purpose parsers that don't depend on Text.Pandoc.Definition.
1058+ + Moved isHeaderBlock from Text.Pandoc.Writers.HTML.
1059+ + Moved Element, headerAtLeast, and hierarchicalize from Docbook
1060+ writer, because HTML writer now uses these in constructing a table
1061+ of contents.
1062+ + Added clauses for new inline elements (Strikeout, Superscript,
1063+ Subscript) to refsMatch.
1064+ + Removed backslashEscape; added new functions escapeStringUsing and
1065+ backslashEscapes.
1066+ + Moved failIfStrict from markdown reader, since it is now used also
1067+ by the HTML reader.
1068+ + Added a 'try' to the definition of indentSpaces.
1069+ + In definition of 'reference', added check to make sure it's not a note
1070+ reference.
1071+ + Added functions: camelCaseToHyphenated, toRomanNumeral,
1072+ anyOrderedListMarker, orderedListmarker, orderedListMarkers,
1073+ charsInBalanced', withHorizDisplacement, romanNumeral
1074+ + Fixed a bug in the anyLine parser. Previously it would parse an empty
1075+ string "", but it should fail on an empty string, or we get an error
1076+ when it is used inside "many" combinators.
1077+ + Removed followedBy' parser, replacing it with the lookAhead parser from
1078+ Parsec.
1079+ + Added some needed 'try's before multicharacter parsers, especially in
1080+ 'option' contexts.
1081+ + Removed the 'try' from the 'end' parser in 'enclosed', so that
1082+ 'enclosed' behaves like 'option', 'manyTill', etc.
1083+ + Added lineClump parser, which parses a raw line block up to and
1084+ including any following blank lines.
1085+ + Renamed parseFromStr to parseFromString.
1086+ + Added a 'try' to the 'end' parser in 'enclosed'. This makes errors in
1087+ the use of 'enclosed' less likely. Removed some now-unnecessary 'try's
1088+ in calling code.
1089+ + Removed unneeded 'try' in blanklines.
1090+ + Removed endsWith function and rewrote calling functions to use
1091+ isSuffixOf instead.
1092+ + Added >>~ combinator.
1093+ + Fixed bug in normalizeSpaces: Space:Str "":Space should compress to
1094+ Space.
1095+
1096+ * Refactored runtests.pl; added separate tests for tables.
1097+
1098+ * Shell scripts:
1099+
1100+ + Added -asxhtml flag to tidy in html2markdown. This will
1101+ perhaps help the parser, which expects closing tags.
1102+ + Modified markdown2pdf to run pdflatex a second time if --toc or
1103+ --table-of-contents was specified; otherwise the table of
1104+ contents won't appear.
1105+ + Modified markdown2pdf to print a helpful message if the 'ulem'
1106+ LaTeX package is required and not found.
1107+
1108+ * Changes to build process:
1109+
1110+ + Dropped support for compilation with GHC 6.4. GHC 6.6 or higher
1111+ is now required.
1112+ + Removed cabalize and Pandoc.cabal.in. The repository now contains
1113+ pandoc.cabal itself.
1114+ + Pandoc.cabal has been changed to pandoc.cabal, because HackageDB
1115+ likes the cabal file to have the same name as the tarball.
1116+ + Expanded and revised the package description in pandoc.cabal.
1117+ Revised the package synopsis.
1118+ + The tarball built by 'make tarball' now contains files built from
1119+ templates (including man pages and shell scripts), so pandoc can
1120+ be built directly using Cabal tools, without preprocessing.
1121+ + Executable binaries are now stripped before installing.
1122+ + Man pages are now generated from markdown sources, using pandoc's
1123+ man page writer.
1124+ + Use HTML version of README (instead of RTF) in Mac OS X installer.
1125+ + Instead of testing for the existence of a pandoc symlink in build-exec,
1126+ use ln -f.
1127+
1128+ * Documentation:
1129+
1130+ + Updated README and man pages with information on new features.
1131+ + Updated INSTALL instructions with some useful clarifications and
1132+ links.
1133+ + Updated web content.
1134+
1135+ * Added FreeBSD port.
1136+
1137+ [ Recai Oktaş ]
1138+
1139+ * debian/control:
1140+
1141+ + Changed pandoc's Build-Depends to include libghc6-mtl-dev and
1142+ libghc6-xhtml-dev. Removed libghc6-html-dev.
1143+ + Suggest texlive-latex-recommended | tetex-extra instead of
1144+ tetex-bin. This brings in fancyvrb and unicode support.
1145+
1146+ -- Recai Oktaş <roktas@debian.org> Tue, 16 Jan 2007 00:37:21 +0200
1147+
1148+pandoc (0.3) unstable; urgency=low
1149+
1150+ [ John MacFarlane ]
1151+
1152+ * Changes in pandoc options:
1153+
1154+ + Allow options to follow or precede arguments.
1155+ + Changed '--smartypants' to '--smart' and adjusted symbols accordingly.
1156+ + Added '--strict' option.
1157+ + Added '-o/--output' option.
1158+ + Added '--dump-args' and '--ignore-args' options (for use in wrappers).
1159+ + Modified '-v' and '-h' output to go to STDERR, not STDOUT, and return
1160+ error conditions. This is helpful for writing wrappers.
1161+ + Added copyright message to '-v' output, modeled after FSF messages.
1162+ + Reformatted usage message so that it doesn't wrap illegibly.
1163+ + Removed extra blanks after '-h' and '-D' output.
1164+
1165+ * Added docbook writer.
1166+
1167+ * Added implicit setting of default input and output format based
1168+ on input and output filename extensions. These defaults are
1169+ overridden if explicit input and output formats are specified using
1170+ '-t', '-f', '-r', or '-w' options. Documented in pandoc(1) man page
1171+ and README.
1172+
1173+ * Allow ordered list items to begin with (single) letters, as well
1174+ as numbers. The list item marker may now be terminated either by
1175+ '.' or by ')'. This extension to standard markdown is documented
1176+ in README.
1177+
1178+ * Revised footnote syntax. (See README for full details.) The
1179+ '[^1]' format now standard in markdown extensions is supported,
1180+ as are inline footnotes with this syntax: '^[My note.]'.
1181+ The earlier footnote syntax '^(1)' is no longer supported.
1182+
1183+ * Improved HTML representation of footnotes. All footnotes
1184+ are now auto-numbered and appear in an ordered list at the
1185+ end of the HTML document. Since the default appearance is now
1186+ acceptable, the old footnote styles have been removed from the
1187+ HTML header.
1188+
1189+ * Bug fixes:
1190+
1191+ + Fixed a serious bug in the markdown, LaTeX, and RST readers.
1192+ These readers ran 'runParser' on processed chunks of text to handle
1193+ embedded block lists in lists and quotation blocks. But then
1194+ any changes made to the parser state in these chunks was lost,
1195+ as the state is local to the parser. So, for example, footnotes
1196+ didn't work in quotes or list items. The fix: instead of calling
1197+ runParser on some raw text, use setInput to make it the input, then
1198+ parse it, then use setInput to restore the input to what it was
1199+ before. This is shorter and more elegant, and it fixes the problem.
1200+ + Fixed bug in notFollowedBy' combinator (adding 'try' before
1201+ 'parser'). Adjusted code that uses this combinator accordingly.
1202+ + Fixed bug in RTF writer that caused improper indentation on
1203+ footnotes occurring in indented blocks like lists.
1204+ + Fixed parsing of metadata in LaTeX reader. Now the title, author,
1205+ and date are parsed correctly. Everything else in the preamble
1206+ is skipped.
1207+ + Modified escapedChar in LaTeX reader to allow a '\' at the end of a
1208+ line to count as escaped whitespace.
1209+ + Modified LaTeX reader to produce inline links rather than reference
1210+ links. Otherwise, links in footnotes aren't handled properly.
1211+ + Fixed handling of titles in links in Markdown reader, so that
1212+ embedded quotation marks are now handled properly.
1213+ + Fixed Markdown reader's handling of embedded brackets in links.
1214+ + Fixed Markdown reader so that it only parses bracketed material
1215+ as a reference link if there is actually a corresponding key.
1216+ + Revised inline code parsing in Markdown reader to conform to
1217+ markdown standard. Now any number of `s can begin inline code,
1218+ which will end with the same number of `s. For example, to
1219+ have two backticks as code, write ``` `` ```. Modified Markdown
1220+ writer accordingly.
1221+ + Fixed bug in text-wrapping routine in Markdown and RST writers.
1222+ Now LineBreaks no longer cause wrapping problems.
1223+ + Supported hexadecimal numerical entity references as well as
1224+ decimal ones.
1225+ + Fixed bug in Markdown reader's handling of underscores and other
1226+ inline formatting markers inside reference labels: for example,
1227+ in '[A_B]: /url/a_b', the material between underscores was being
1228+ parsed as emphasized inlines.
1229+ + Changed Markdown reader's handling of backslash escapes so that
1230+ only non-alphanumeric characters can be escaped. Strict mode
1231+ follows Markdown.pl in only allowing a select group of punctuation
1232+ characters to be escaped.
1233+ + Modified HTML reader to skip a newline following a <br> tag.
1234+ Otherwise the newline will be treated as a space at the beginning
1235+ of the next line.
1236+
1237+ * Made handling of code blocks more consistent. Previously, some
1238+ readers allowed trailing newlines, while others stripped them.
1239+ Now, all readers strip trailing newlines in code blocks. Writers
1240+ insert a newline at the end of code blocks as needed.
1241+
1242+ * Modified readers to make spacing at the end of output more consistent.
1243+
1244+ * Minor improvements to LaTeX reader:
1245+
1246+ + '\thanks' now treated like a footnote.
1247+ + Simplified parsing of LaTeX command arguments and options.
1248+ commandArgs now returns a list of arguments OR options (in
1249+ whatever order they appear). The brackets are included, and
1250+ a new stripFirstAndLast function is provided to strip them off
1251+ when needed. This fixes a problem in dealing with \newcommand
1252+ and \newenvironment.
1253+
1254+ * Revised RTF writer:
1255+
1256+ + Default font is now Helvetica.
1257+ + An '\f0' is added to each '\pard', so that font resizing works
1258+ correctly.
1259+
1260+ * Moved handling of "smart typography" from the writers to the Markdown
1261+ and LaTeX readers. This allows great simplification of the writers
1262+ and more accurate smart quotes, dashes, and ellipses. DocBook can
1263+ now use '<quote>'. The '--smart' option now toggles an option in
1264+ the parser state rather than a writer option. Several new kinds
1265+ of inline elements have been added: Quoted, Ellipses, Apostrophe,
1266+ EmDash, EnDash.
1267+
1268+ * Changes in HTML writer:
1269+
1270+ + Include title block in header even when title is null.
1271+ + Made javascript obfuscation of emails even more obfuscatory,
1272+ by combining it with entity obfuscation.
1273+
1274+ * Changed default ASCIIMathML text color to black.
1275+
1276+ * Test suite:
1277+
1278+ + Added --strip-trailing-cr option to diff in runtests.pl, for
1279+ compatibility with Windows.
1280+ + Added regression tests with footnotes in quote blocks and lists.
1281+
1282+ * Makefile changes:
1283+
1284+ + osx-pkg target creates a Mac OS X package (directory). New osx
1285+ directory contains files needed for construction of the package.
1286+ + osx-dmg target creates a compressed disk image containing the package.
1287+ + win-pkg target creates Windows binary package.
1288+ + tarball target creates distribution source tarball.
1289+ + website target generates pandoc's website automatically, including
1290+ demos. New 'web' directory containts files needed for construction
1291+ of the website (which will be created as the 'pandoc' subdirectory
1292+ of 'web').
1293+ + Makefile checks to see if we're running Windows/Cygwin; if so,
1294+ a '.exe' extension is added to each executable in EXECS.
1295+
1296+ * Removed all wrappers except markdown2pdf and html2markdown.
1297+
1298+ * Added new wrapper hsmarkdown, to be used as a drop-in replacement
1299+ for Markdown.pl. hsmarkdown calls pandoc with the '--strict'
1300+ option and disables other options.
1301+
1302+ * Added code to html2markdown that tries to determine the character
1303+ encoding of an HTML file, by parsing the "Content-type" meta tag.
1304+
1305+ + If the encoding can't be determined, then if the content is local,
1306+ the local encoding is used; if it comes from a URL, UTF-8 is used
1307+ by default.
1308+ + If input is from STDIN, don't try to determine character encoding.
1309+ + Encoding can be specified explicitly using '-e' option.
1310+
1311+ * Improved warning messages in wrappers:
1312+
1313+ + Print warning if iconv not available
1314+ + More user-friendly error messages in markdown2pdf, when
1315+ pdflatex fails.
1316+
1317+ * Code cleanup:
1318+
1319+ + Renamed 'Text/Pandoc/HtmlEntities' module to
1320+ 'Text/Pandoc/Entities'. Also changed function names so as
1321+ not to be HTML-specific.
1322+ + Refactored SGML string escaping functions from HTML and Docbook
1323+ writers into Text/Pandoc/Shared. (escapeSGML, stringToSGML)
1324+ + Removed 'BlockQuoteContext' from ParserContext, as it isn't
1325+ used anywhere.
1326+ + Removed splitBySpace and replaced it with a general, polymorphic
1327+ splitBy function.
1328+ + Refactored LaTeX reader for clarity (added isArg function).
1329+ + Converted some CR's to LF's in src/ui/default/print.css.
1330+ + Added license text to top of source files.
1331+ + Added module data for haddock to source files.
1332+ + Reformatted code for consistency.
1333+
1334+ * Rewrote documentation and man pages. Split README into INSTALL
1335+ and README.
1336+
1337+ * Split LICENSE into COPYING and COPYRIGHT.
1338+
1339+ * Removed TODO, since we now maintain ToDo on the wiki.
1340+
1341+ * Made COPYRIGHT in top level a symlink to debian/copyright, to avoid
1342+ duplication.
1343+
1344+ [ Recai Oktaş ]
1345+
1346+ * Revamped build process to conform to debian standards and created
1347+ a proper debian package. Closes: #391666.
1348+
1349+ * Modified build process to support GHC 6.6.
1350+
1351+ + The package can still be compiled using GHC 6.4.2, though because
1352+ of dependencies the "make deb" target works only with GHC 6.6+.
1353+ + The script 'cabalize' is used to create an appropriate
1354+ 'Pandoc.cabal' from 'Pandoc.cabal.in', depending on the GHC and
1355+ Cabal versions.
1356+
1357+ * Refactored template processing (fillTemplates.pl).
1358+
1359+ * Modified wrapper scripts to make them more robust and portable.
1360+ To avoid code duplication and ensure consistency, wrappers are
1361+ generated via a templating system from templates in src/wrappers.
1362+
1363+ + Wrappers now accept multiple filenames, when appropriate.
1364+ + Spaces and tabs allowed in filenames.
1365+ + getopts shell builtin is used for portable option parsing.
1366+ + Improved html2markdown's web grabber code, making it more robust,
1367+ configurable and verbose. Added '-e', '-g' options.
1368+
1369+ -- Recai Oktaş <roktas@debian.org> Fri, 05 Jan 2007 09:41:19 +0200
1370+
1371+pandoc (0.2) unstable; urgency=low
1372+
1373+ * Fixed unicode/utf-8 translation
1374+
1375+ -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400
1376+
1377+pandoc (0.1) unstable; urgency=low
1378+
1379+ * Initial creation of debian package
1380+
1381+ -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400
debian/changelogdeleted−1381
@@ -1,1381 +0,0 @@
1−pandoc (0.47) UNRELEASED; urgency=low
2−
3− [ Recai Oktaş ]
4−
5− * Debian packaging changes:
6−
7− + Migrate to GHC 6.8.2. Closes: #461606
8− + Add new dependencies libghc6-regex-compat-dev and libghc6-uulib-dev.
9− + Remove the code in debian/rules which attempts to remove empty ghc6.6
10− include directory. This code may cause an installation failure for the
11− -dev package. Closes: #460658
12− + Fix doc-base to prevent a lintian warning.
13−
14− -- Recai Oktaş <roktas@debian.org> Sat, 09 Feb 2008 04:41:46 +0200
15−
16−pandoc (0.46) unstable; urgency=low
17−
18− [ John MacFarlane ]
19−
20− * Made -H, -A, and -B options cumulative: if they are specified
21− multiple times, multiple files will be included.
22−
23− * Added optional HTML sanitization using a whitelist.
24− When this option is specified (--sanitize-html on the command line),
25− unsafe HTML tags will be replaced by HTML comments, and unsafe HTML
26− attributes will be removed. This option should be especially useful
27− for those who want to use pandoc libraries in web applications, where
28− users will provide the input.
29−
30− + Main.hs: Added --sanitize-html option.
31−
32− + Text.Pandoc.Shared: Added stateSanitizeHTML to ParserState.
33−
34− + Text.Pandoc.Readers.HTML:
35− - Added whitelists of sanitaryTags and sanitaryAttributes.
36− - Added parsers to check these lists (and state) to see if a given
37− tag or attribute should be counted unsafe.
38− - Modified anyHtmlTag and anyHtmlEndTag to replace unsafe tags
39− with comments.
40− - Modified htmlAttribute to remove unsafe attributes.
41− - Modified htmlScript and htmlStyle to remove these elements if
42− unsafe.
43−
44− + Modified README and man pages to document new option.
45−
46− * Improved handling of email addresses in markdown and reStructuredText.
47− Consolidated uri and email address parsers. (Resolves Issue #37.)
48−
49− + New emailAddress and uri parsers in Text.Pandoc.Shared.
50− - uri parser uses parseURI from Network.URI.
51− - emailAddress parser properly handles email addresses with periods
52− in them.
53−
54− + Removed uri and emailAddress parsers from Text.Pandoc.Readers.RST
55− and Text.Pandoc.Readers.Markdown.
56−
57− * Markdown reader:
58−
59− + Fixed emph parser so that "*hi **there***" is parsed as a Strong
60− nested in an Emph. (A '*' is only recognized as the end of the
61− emphasis if it's not the beginning of a strong emphasis.)
62−
63− + Moved blockQuote parser before list parsers for performance.
64−
65− + Modified 'source' parser to allow backslash-escapes in URLs.
66− So, for example, [my](/url\(1\)) yields a link to /url(1).
67− Resolves Issue #34.
68−
69− + Disallowed links within links. (Resolves Issue #35.)
70− - Replaced inlinesInBalanced with inlinesInBalancedBrackets, which
71− instead of hard-coding the inline parser takes an inline parser
72− as a parameter.
73− - Modified reference and inlineNote to use inlinesInBalancedBrackets.
74− - Removed unneeded inlineString function.
75− - Added inlineNonLink parser, which is now used in the definition of
76− reference.
77− - Added inlineParsers list and redefined inline and inlineNonLink parsers
78− in terms of it.
79− - Added failIfLink parser.
80−
81− + Better handling of parentheses in URLs and quotation marks in titles.
82− - 'source' parser first tries to parse URL with balanced parentheses;
83− if that doesn't work, it tries to parse everything beginning with
84− '(' and ending with ')'.
85− - source parser now uses an auxiliary function source'.
86− - linkTitle parser simplified and improved, under assumption that it
87− will be called in context of source'.
88−
89− + Make 'block' conditional on strictness state, instead of using
90− failIfStrict in block parsers. Use a different ordering of parsers
91− in strict mode (raw HTML block before paragraph) for performance.
92− In non-strict mode use rawHtmlBlocks instead of htmlBlock.
93− Simplified htmlBlock, since we know it's only called in strict
94− mode.
95−
96− + Improved handling of raw HTML. (Resolves Issue #36.)
97− - Tags that can be either block or inline (e.g. <ins>) should
98− be treated as block when appropriate and as inline when
99− appropriate. Thus, for example,
100− <ins>hi</ins>
101− should be treated as a paragraph with inline <ins> tags, while
102− <ins>
103− hi
104− </ins>
105− should be treated as a paragraph within <ins> tags.
106− - Moved htmlBlock after para in list of block parsers. This ensures
107− that tags that can be either block or inline get parsed as inline
108− when appropriate.
109− - Modified rawHtmlInline' so that block elements aren't treated as
110− inline.
111− - Modified para parser so that paragraphs containing only HTML tags and
112− blank space are not allowed. Treat these as raw HTML blocks instead.
113−
114− + Fixed bug wherein HTML preceding a code block could cause it to
115− be parsed as a paragraph. The problem is that the HTML parser
116− used to eat all blank space after an HTML block, including the
117− indentation of the code block. (Resolves Issue #39.)
118− - In Text.Pandoc.Readers.HTML, removed parsing of following space
119− from rawHtmlBlock.
120− - In Text.Pandoc.Readers.Markdown, modified rawHtmlBlocks so that
121− indentation is eaten *only* on the first line after the HTML
122− block. This means that in
123− <div>
124− foo
125− <div>
126− the foo won't be treated as a code block, but in
127− <div>
128−
129− foo
130−
131− </div>
132− it will. This seems the right approach for least surprise.
133−
134− * RST reader:
135−
136− + Fixed bug in parsing explicit links (resolves Issue #44).
137− The problem was that we were looking for inlines until a '<' character
138− signaled the start of the URL; so, if you hit a reference-style link,
139− it would keep looking til the end of the document. Fix: change
140− inline => (notFollowedBy (char '`') >> inline). Note that this won't
141− allow code inlines in links, but these aren't allowed in resT anyway.
142−
143− + Cleaned up parsing of reference names in key blocks and links.
144− Allow nonquoted reference links to contain isolated '.', '-', '_', so
145− so that strings like 'a_b_' count as links.
146−
147− + Removed unnecessary check for following link in str.
148− This is unnecessary now that link is above str in the definition of
149− 'inline'.
150−
151− * HTML reader:
152−
153− + Modified rawHtmlBlock so it parses </html> and </body> tags.
154− This allows these tags to be handled correctly in Markdown.
155− HTML reader now uses rawHtmlBlock', which excludes </html> and </body>,
156− since these are handled in parseHtml. (Resolves Issue #38.)
157−
158− + Fixed bug (emph parser was looking for <IT> tag, not <I>).
159−
160− + Don't interpret contents of style tags as markdown.
161− (Resolves Issue #40.)
162− - Added htmlStyle, analagous to htmlScript.
163− - Use htmlStyle in htmlBlockElement and rawHtmlInline.
164− - Moved "script" from the list of tags that can be either block or
165− inline to the list of block tags.
166−
167− + Modified rawHtmlBlock to use anyHtmlBlockTag instead of anyHtmlTag
168− and anyHtmlEndTag. This fixes a bug in markdown parsing, where
169− inline tags would be included in raw HTML blocks.
170−
171− + Modified anyHtmlBlockTag to test for (not inline) rather than
172− directly for block. This allows us to handle e.g. docbook in
173− the markdown reader.
174−
175− * LaTeX reader: Properly recognize --parse-raw in rawLaTeXInline.
176− Updated LaTeX reader test to use --parse-raw.
177−
178− * HTML writer:
179−
180− + Modified rules for automatic HTML header identifiers to
181− ensure that identifiers begin with an alphabetic character.
182− The new rules are described in README. (Resolves Issue #33.)
183−
184− + Changed handling of titles in HTML writer so you don't get
185− "titleprefix - " followed by nothing.
186−
187− * ConTeXt writer: Use wrappers around Doc elements to ensure proper
188− spacing. Each block element is wrapped with either Pad or Reg.
189− Pad'ed elements are guaranteed to have a blank line in between.
190−
191− * RST writer:
192−
193− + Refactored RST writer to use a record instead of a tuple for state,
194− and to include options in state so it doesn't need to be passed as
195− a parameter.
196−
197− + Use an interpreted text role to render math in restructuredText.
198− See http://www.american.edu/econ/itex2mml/mathhack.rst for the
199− strategy.
200−
201− [ Recai Oktaş ]
202−
203− * Debian packaging changes:
204−
205− + Remove the empty 'include' directory in -dev package, which lintian
206− complains about.
207− + Bump Standarts-Version to 3.7.3.
208− + Use new 'Homepage:' field to specify the upstream URL on suggestion of
209− lintian.
210−
211− -- Recai Oktaş <roktas@debian.org> Tue, 08 Jan 2008 05:13:31 +0200
212−
213−pandoc (0.45) unstable; urgency=low
214−
215− [ John MacFarlane ]
216−
217− * Simplified parsing of reference keys and notes in markdown and RST
218− readers: The Reference data structure from Text.Pandoc.Shared is no
219− longer needed, since referenceKey and noteBlock parses return strings
220− (as many blank lines as were occupied by the key or note) and update
221− state themselves. getPosition and setPosition are now used to ensure
222− that error messages will give the correct line number. This yields
223− cleaner (and slightly faster) code, with more accurate parsing error
224− messages.
225−
226− * Added new Math inline element:
227−
228− + Markdown and LaTeX readers now convert TeX math into Math elements,
229− not TeX.
230− + This allows math to be treated differently from raw TeX in output.
231− TeX elements are no longer printed in output formats other than
232− Markdown, LaTeX, and ConTeXt. But Math elements are always printed.
233−
234− * New default handling of math in writers:
235−
236− + New module Text.Pandoc.Readers.TeXMath exports readTeXMath, which
237− parses raw TeX math and outputs a string of Pandoc inlines that
238− tries to render it as far as possible using unicode characters,
239− lapsing into literal TeX when needed.
240− + readTeXMath is now used for default HTML output in HTML, S5, RTF,
241− and Docbook, if no other method for displaying math in HTML is
242− specified. Enclosing $'s are no longer printed by default.
243− + By default, math is put inside <span class="math">. This way it can be
244− distinguished from the surrounding text, e.g. put in a different
245− font.
246−
247− * New --gladtex and --mimetex options for display of math in HTML:
248−
249− + If --gladtex is specified, math is output between <eq> tags, so
250− it can be processed by gladTeX.
251− + If --mimetex is specified, math is put in <img> tags with a link
252− to the mimetex CGI script (or any other script that takes TeX math
253− as input and outputs an image). The URL of the script may be
254− specified, but defaults to /cgi-bin/mimetex.cgi.
255− + HTMLMathMethod structure in WriterOptions keeps track of how to
256− display math in HTML output.
257− + Updated README with a description of the four options for displaying
258− math in HTML.
259−
260− * HTML reader:
261−
262− + Fixed bug: parser for minimized attributes should not swallow
263− trailing spaces.
264− + Simplified HTML attribute parsing.
265− + Changed parsing of code blocks in HTML reader: <code> tag is no
266− longer needed. <pre> suffices. All HTML tags in the code block
267− (e.g. for syntax highlighting) are skipped, because they are not
268− portable to other output formats. A <code>...</code> block not
269− surrounded by <pre> now counts as inline HTML, not a code block.
270− + Remove just one leading and one trailing newline from contents of
271− <pre>...</pre> in codeBlock parser.
272−
273− * Markdown reader:
274−
275− + Removed support for box-style block quotes.
276− + Require space before title in links and references.
277− This fixes a bug in parsing URLs like http://silly/url(withparen).
278− + Improved and simplified setextHeader parser.
279− + Fixed logic in smart quote parsing, adding some needed 'try'
280− statements.
281− + Fixed smart quote parsing so that unicode characters 8216 and 8217
282− are recognized as single quotes, and 8220 and 8221 as double quotes.
283−
284− * RST reader:
285−
286− + Fixed bug in parsing of code blocks. Previously a full tab indent
287− was required, but RST allows code to be indented any amount.
288− Resolves Issue #27.
289− + Allow field lists to be indented.
290− + Parse the contents of field lists instead of treating as a raw string.
291− + Represent field lists as definition lists instead of blockquotes.
292− + Fixed bug in which metadata would be overridden if the document
293− contained multiple field lists.
294− + Parse fields associated with '.. image::' blocks, and use 'alt'
295− field, if given, for image alt and title attributes.
296−
297− * LaTeX reader:
298−
299− + Modified specialChar so that '"' characters are parsed.
300− + Fixed a bug in parsing of \[ \] math blocks (thanks to Mark Kalderon).
301−
302− * HTML writer:
303−
304− + Changes in handling of math (see above).
305− + Don't produce HTML for table of contents if there are
306− no headers. (This would be an empty list, which is invalid XHTML.)
307−
308− * Markdown writer:
309−
310− + Don't print title attribute if title is empty. (This differs from
311− the behavior of Markdown.pl, and agrees with PHP Markdown. But John
312− Gruber has indicated that he prefers this behavior.) Adjusted test
313− suite accordingly.
314− + Fixed incorrect line wrapping in paragraphs including hard line
315− breaks. Resolves Issue #25.
316− + Fixed bug in markdown writer: If an ordered list item began with
317− a marker greater than 3 characters in width, and the item took more
318− than one line, it would appear on the line after the list marker,
319− e.g.:
320−
321− (12)
322− My list item.
323− Multiline.
324−
325− Now it works as follows:
326−
327− (12) My list item.
328− Multiline.
329−
330− * RST writer
331−
332− + Fixed bug in RST writer's handling of ordered lists. Previously,
333− list items with multiple lines would not always line up with
334− single-line list items. Now, list items are nested the length of
335− the list marker + 1. This looks better and ensures that list items
336− all line up. (Note that list markers are padded to the length of
337− the longest list marker in the series.)
338− + Use 3-space indent for unordered lists.
339− + If label for a link reference contains a colon, surround it by `
340− signs so it won't be interpreted as the end of the link label.
341−
342− * LaTeX writer:
343−
344− + Cleaner output for footnotes. Footnotes now always begin on a new
345− line, and the final } is on a line by itself only when it needs to
346− be (i.e. only when the note ends with a Verbatim environment).
347− + Added writer options to state, so state doesn't need to be passed as
348− a parameter.
349− + Text wrapping now provided, using wrapTeXIfNeeded.
350−
351− * ConTeXt writer: many improvements for more idiomatic ConTeXt output
352− (thanks to Idris Samawi Hamid for suggestions).
353−
354− + PrettyPrint module now used for output.
355− + Writer options are now in state, so they don't have to be passed as
356− a parameter.
357− + Text wrapping now provided, using wrapTeXIfNeeded.
358− + Better treatment of footnotes: footnotes are always on lines by
359− themselves, and the final } is on a line by itself only when
360− it needs to be (after \stoptyping).
361− + Use \subject, \subsubject, ... or \section, \subsection, ... for headings,
362− depending on whether --number-sections option is selected.
363− + Extra blank line inserted after \stopitemize
364− + Use new, "official" definition of blockquote environment. Also, use
365− blank line after \startblockquote to balance blank line at the end.
366− + Both itemized and enumerated lists are now generated using
367− \start-stopitemize, with appropriate options. Removed definitions
368− of ltxenum and ltxitem, which are no longer needed. Provided
369− defaults for itemized lists in the preamble. State keeps track of
370− ordered list level, so that when default numbering is specified,
371− the appropriate scheme can be used.
372− + Changed \useurl to \useURL.
373− + Changed link color from red to blue.
374− + Use \subsubsubsubsection etc., since these are supported
375− (up to at least sub x 5).
376−
377− * Text.Pandoc.Shared:
378−
379− + Save and restore position in parseFromString, so that accurate
380− error messages can be given.
381− + Improved efficiency of romanNumeral parser.
382− + Added wrappedTeX and wrapTeXIfNeeded functions. These ensure
383− that footnotes occur on lines by themselves (to make them
384− easier to see and move) and do not screw up line wrapping.
385−
386− * Text.Pandoc.UTF8: modified fromUTF8 to strip out the BOM
387− if present. Windows Notepad and other applications insert a
388− BOM at the beginning of a UTF8 file.
389−
390− * Main.hs (tabFilter): Treat '\r' at end of line as newline (in
391− addition to "\r\n" and '\n').
392−
393− * Added a writer option for wrapped text and a command-line option
394− '--no-wrap', which disables text wrapping and minimizes whitespace
395− in HTML. (Resolves Issue #26.)
396−
397− + Added support for '--no-wrap' to Main.hs.
398− + Added wrapIfNeeded function to Text.Pandoc.Shared.
399− + Use wrapIfNeeded instead of wrapped in the RST, Man, Docbook, and
400− Markdown writers.
401− + Added render and renderFragment helpers to HTML writer.
402−
403− * Modified html2markdown to run tidy only if the HTML cannot be
404− parsed. Previously html2markdown piped all input through tidy
405− before passing it to pandoc. This caused problems on certain pages
406− (e.g. http://daringfireball.com/markdown) which have well-formed
407− XHTML that causes tidy to choke. The solution is to pipe through
408− tidy only if pandoc cannot parse the input by itself. This means
409− that a temp file is now always used, even when input comes from a
410− local file or standard input.
411−
412− * Removed 'version' constant from Main.hs; added 'pandocVersion' to
413− Text.Pandoc library.
414−
415− * pandoc.cabal:
416−
417− + Modified to work with GHC 6.8 and Cabal configurations. (For GHC
418− 6.8, pretty and containers must be added to Build-Depends, and it
419− is desirable to use the -O2 compiler option.) Cabal configurations
420− allows one to select options depending on the compiler version.
421− For GHC 6.6, the splitBase option can be disabled.
422− + pandoc.cabal.ghc66 is provided for users with older versions of
423− Cabal, which do not support configurations.
424− + Use Ghc-Prof-Options to ensure that '-auto-all' is used when
425− '--enable-(executable|library)-profiling' is specified. Updated
426− PROFILING instructions accordingly.
427−
428− * Makefile:
429−
430− + Makefile now checks GHC version. If GHC is 6.6, pandoc.cabal.ghc66
431− is copied to pandoc.cabal, and the old pandoc.cabal is copied
432− to pandoc.cabal.orig. Otherwise, pandoc.cabal is copied to
433− pandoc.cabal.orig but otherwise unmodified. This way, the Makefile
434− will work properly with either GHC 6.6 or 6.8.
435− + Changed BUILDCONF to point to dist/setup-config, not .setup-config.
436− This is where current versions of Cabal put it.
437− + Added $(BUILDCMD) target, so setup doesn't get compiled every time.
438− + Removed dependency of templates on ./templates, which is circular
439− now that templates is a subdirectory of the top-level.
440−
441− * MacPorts Portfile:
442−
443− + Modified to install the pandoc library in addition to programs.
444− + Installation must be done manually rather than using Makefile's
445− install-all.
446− + Note that the library must be registered in the activate phase,
447− after the library files have been copied out of the destroot.
448− Cabal generates a 'register.sh' script that will do this.
449−
450− * debian/control: Added libghc6-network-dev, libghc6-xhtml-dev, and
451− libghc6-mtl-dev as dependencies for libghc6-pandoc-dev.
452− Closes: #445235
453−
454− * debian/rules: Converted to UTF-8.
455−
456− * Changed pandoc home page to http://johnmacfarlane.net/pandoc/.
457−
458− * Updated ASCIIMathML.js to latest version.
459−
460− * Directory structure:
461−
462− + Moved everything from src into the top-level directory.
463− + Changed references to source directory in Makefile and
464− pandoc.cabal.*.
465− + Moved ASCIIMathML.js, headers, and ui into templates directory.
466− + Modified fillTemplates.pl to reflect new paths.
467−
468− [ Recai Oktaş ]
469−
470− * Makefile: Fixed the issue of having two copies of the library
471− documentation under some usage scenarios.
472−
473− * Replaced 'ghc' with '$(GHC)' in Makefile, and made GHC
474− and GHC_PKG configurable through the environment, to support
475− unusual ghc installations. For example:
476− GHC=/opt/ghc/bin/ghc GHC_PKG=/opt/ghc/bin/ghc-pkg make
477−
478− -- Recai Oktaş <roktas@debian.org> Sun, 07 Oct 2007 20:51:43 +0300
479−
480−pandoc (0.44) unstable; urgency=low
481−
482− [ John MacFarlane ]
483−
484− * Fixed bug in HTML writer: when --toc was used, anchors were put around
485− headers, which is invalid XHTML (block content within inline element).
486− Now the anchors are put inside the header tags. Resolves Issue #23.
487−
488− * Added xmlns attribute to html element in html writer tests.
489− This attribute is added by more recent versions of the
490− xhtml library (>= 3000), and is required for valid XHTML.
491−
492− [ Recai Oktaş ]
493−
494− * On configure, compile 'Setup.hs' to 'setup' and use 'setup' as the build
495− command instead of 'runhaskell', which, on some platforms (such as s390,
496− alpha, m68k), throws the following error:
497−
498− runhaskell Setup.hs configure --prefix=/usr
499− ghc-6.6.1: not built for interactive use
500−
501− This causes a serious FTBFS bug. Closes: #440668.
502−
503− -- Recai Oktaş <roktas@debian.org> Mon, 03 Sep 2007 18:24:02 +0300
504−
505−pandoc (0.43) unstable; urgency=low
506−
507− [ John MacFarlane ]
508−
509− * The focus of this release is performance. The markdown parser
510− is about five times faster than in 0.42, based on benchmarks
511− with the TextMate manual.
512−
513− * Main.hs: Replaced CRFilter and tabFilter with single function
514− tabFilter, which operates on the whole string rather than breaking
515− it into lines, and handles dos-style line-endings as well as tabs.
516−
517− * Added separate LaTeX reader and native reader tests; removed
518− round-trip tests.
519−
520− * Text.Pandoc.Shared:
521−
522− + Removed tabsToSpaces and tabsInLine (they were used only in Main.hs.)
523− + General code cleanup (to elimante warnings when compiling with -Wall.)
524− + Added 'wrapped' function, which helps wrap text into paragraphs,
525− using the prettyprinting library.
526− + Rewrote charsInBalanced and charsInBalanced'.
527− - Documented restriction: open and close must be distinct characters.
528− - Rearranged options for greater efficiency.
529− - Bug fix: Changed inner call to charsInBalanced inside
530− charsInBalanced' to charsInBalanced'.
531− + anyLine now requires that the line end with a newline (not eof).
532− This is a harmless assumption, since we always add newlines to the
533− end of a block before parsing with anyLine, and it yields a 10% speed
534− boost.
535− + Removed unnecessary 'try' in anyLine.
536− + Removed unneeded 'try' from romanNumeral parser.
537− + Use notFollowedBy instead of notFollowedBy' in charsInBalanced.
538− + Removed unneeded 'try' in parseFromString.
539− + Removed unneeded 'try' from stringAnyCase. (Now it behaves
540− like 'string'.)
541− + Changed definition of 'enclosed' in Text.Pandoc.Shared so that
542− 'try' is not automatically applied to the 'end' parser. Added
543− 'try' in calls to 'enclosed' where needed. Slight speed increase.
544−
545− * Writers:
546−
547− + Replaced individual wrapping routines in RST, Man, and Markdown
548− writers with 'wrapped' from Text.Pandoc.Shared.
549− + Rewrote LaTeX writer to use the prettyprinting library,
550− so we get word wrapping, etc.
551− + Modified latex writer tests for new latex writer using prettyprinter.
552− + Fixed bug in LaTeX writer: autolinks would not cause
553− '\usepackage{url}' to be put in the document header. Also, changes
554− to state in enumerated list items would be overwritten.
555− + In Markdown writer, escape paragraphs that begin with ordered list
556− markers, so they don't get interpreted as ordered lists.
557−
558− * Text.Pandoc.Reades.LaTeX:
559−
560− + Fixed bug in LaTeX reader, which wrongly assumed that the roman
561− numeral after "enum" in "setcounter" would consist entirely of
562− "i"s. 'enumiv' is legitimate.
563− + LaTeX command and environment names can't contain numbers.
564− + Rearranged order of parsers in inline for slight speed improvement.
565− + Added '`' to special characters and 'unescapedChar'.
566−
567− * Text.Pandoc.Readers.RST:
568−
569− + Removed unneeded try's in RST reader; also minor code cleanup.
570− + Removed tabchar.
571− + Rearranged parsers in inline (doubled speed).
572−
573− * Text.Pandoc.Readers.Markdown:
574−
575− + Skip notes parsing if running in strict mode. (This yields a nice
576− speed improvement in strict mode.)
577− + Simplify autolink parsing code, using Network.URI to test for
578− URIs. Added dependency on network library to debian/control and
579− pandoc.cabal.
580− + More perspicuous definition of nonindentSpaces.
581− + Removed unneeded 'try' in 'rawLine'.
582− + Combined linebreak and whitespace into a new whitespace parser, to
583− avoid unnecessary reparsing of space characters.
584− + Removed unnecessary 'try' in 'codeBlock', 'ellipses', 'noteMarker',
585− 'multilineRow', 'dashedLine', 'rawHtmlBlocks'.
586− + Use lookAhead in parsers for setext headers and definition lists
587− to see if the next line begins appropriately; if not, don't waste
588− any more time parsing.
589− + Don't require blank lines after code block. (It's sufficient to
590− end code block with a nonindented line.)
591− + Changed definition of 'emph': italics with '_' must not
592− be followed by an alphanumeric character. This is to help
593− prevent interpretation of e.g. [LC_TYPE]: my_type as
594− '[LC<em>TYPE]:my</em>type'.
595− + Improved Markdown.pl-compatibility in referenceLink: the two parts
596− of a reference-style link may be separated by one space, but not
597− more... [a] [link], [not] [a link].
598− + Fixed markdown inline code parsing so it better accords with
599− Markdown.pl: the marker for the end of the code section is a clump
600− of the same number of `'s with which the section began, followed
601− by a non-` character. So, for example,
602− ` h ``` i ` -> <code>h ``` i</code>.
603− + Split 'title' into 'linkTitle' and 'referenceTitle', since the
604− rules are slightly different.
605− + Rewrote 'para' for greater efficiency.
606− + Rewrote link parsers for greater efficiency.
607− + Removed redundant 'referenceLink' in definition of inline (it's
608− already in 'link').
609− + Refactored escapeChar so it doesn't need 'try'.
610− + Refactored hrule for performance in Markdown reader.
611− + More intelligent rearranging of 'inline' so that most frequently
612− used parsers are tried first.
613− + Removed tabchar parser, as whitespace handles tabs anyway.
614−
615− * Text.Pandoc.CharacterReferences:
616−
617− + Refactored.
618− + Removed unnecessary 'try's for a speed improvement.
619− + Removed unnecessary '&' and ';' from the entity table.
620−
621− * Build process:
622−
623− + Makefile: Get VERSION from cabal file, not Main.hs.
624− + Modified MacPorts Portfile:
625− - Depend on haddock
626− - Build and install libraries and library documentation in
627− addition to pandoc executable
628− - Added template item for md5 sum in Portfile.in.
629− - Incorporated changes from MacPorts repository (r28278).
630− + FreeBSD port: Don't try to generate distinfo in Makefile.
631− It can be made using 'make makesum' in FreeBSD.
632− + Make both freebsd and macports targets depend on tarball.
633−
634− * Website and documentation:
635−
636− + Updated INSTALL instructions.
637− + Added pandocwiki demo to website.
638− + Removed local references to Portfile, since pandoc is now in the
639− MacPorts repository.
640−
641− -- Recai Oktaş <roktas@debian.org> Sun, 02 Sep 2007 15:50:11 +0300
642−
643−pandoc (0.42) unstable; urgency=low
644−
645− [ John MacFarlane ]
646−
647− * Main.hs: Use utf8 conversion on the extra files loaded with
648− the -H, -C, -B, and -A options. This fixes problems with unicode
649− characters in these files.
650−
651− * Exposed Text.Pandoc.ASCIIMathML, since it is imported in
652− Text.Pandoc.Readers.HTML and without it we get a linking error when
653− using the library.
654−
655− * Markdown reader:
656−
657− + Added new rule for enhanced markdown ordered lists: if the list
658− marker is a capital letter followed by a period (including a
659− single-letter capital roman numeral), then it must be followed by
660− at least two spaces. The point of this is to avoid accidentally
661− treating people's initials as list markers: a paragraph might begin,
662− "B. Russell was an English philosopher," and this shouldn't be
663− treated as a list. Documented change in README.
664− + Blocks that start with "p. " and a digit are no longer treated
665− as ordered lists (it's a page number).
666− + Added a needed 'try' to listItem.
667− + Removed check for a following setext header in endline.
668− A full test is too inefficient (doubles benchmark time), and the
669− substitute we had before is not 100% accurate.
670− + Don't use Code elements for autolinks if --strict specified.
671−
672− * LaTeX writer: When a footnote ends with a Verbatim environment, the
673− close } of the footnote cannot occur on the same line or an error occurs.
674− Fixed this by adding a newline before the closing } of every footnote.
675−
676− * HTML writer:
677− + Removed incorrect "{}" around style information in HTML tables.
678− Column widths now work properly in HTML.
679− + If --strict option is specified (and --toc is not), don't include
680− identifiers in headers, for better Markdown compatibility.
681−
682− * Build process:
683−
684− + Separated $(web_dest) and website targets.
685− + In website, index.txt is now constructed from template index.txt.in.
686− + Added freebsd target to Markefile. This creates the freebsd Makefile
687− from Makefile.in, and creates distinfo. Removed Makefile and distinfo
688− from the repository.
689− + Added macport target to Makefile. Portfile is built from template
690− Portfile.in.
691− + Removed OSX package targets. (Too many difficulties involving
692− dependencies on dynamic libraries.)
693− + More complete INSTALL instructions for all architectures.
694−
695− * Website:
696− + Added a programming demo, pandocwiki.
697−
698− [ Recai Oktaş ]
699−
700− * Do not forget to close pandoc's ITP. Closes: #391666
701−
702− -- Recai Oktaş <roktas@debian.org> Sun, 26 Aug 2007 22:51:32 +0300
703−
704−pandoc (0.41) unstable; urgency=low
705−
706− [ John MacFarlane ]
707−
708− * Fixed bugs in HTML reader:
709− + Skip material at end *only if* </html> is present (previously,
710− only part of the document would be parsed if an error was
711− found; now a proper error message is given).
712− + Added new constant eitherBlockOrInline with elements that may
713− count either as block-level or as inline. Modified isInline and
714− isBlock to take this into account.
715− + Modified rawHtmlBlock to accept any tag (even an inline tag):
716− this is innocuous, because rawHtmlBlock is tried only if a regular
717− inline element can't be parsed.
718− + Added a necessary 'try' in definition of 'para'.
719−
720− * Fixed bug in markdown ordered list parsing. The problem was that
721− anyOrderedListStart did not check for a space following the
722− ordered list marker. So in 'A.B. 2007' the parser would be
723− expecting a list item, but would not find one, causing an error.
724− Fixed a similar bug in the RST reader. Resolves Issue #22.
725−
726− * Refactored RST and Markdown readers using parseFromString.
727−
728− * LaTeX reader will now skip anything after \end{document}.
729−
730− * Fixed blockquote output in markdown writer: previously, block
731− quotes in indented contexts would be indented only in the first
732− line.
733−
734− * Added note to INSTALL about variations in versions of the xhtml
735− library that can lead to failed tests (thanks to Leif LeBaron).
736−
737− -- Recai Oktaş <roktas@debian.org> Sun, 19 Aug 2007 23:26:07 +0300
738−
739−pandoc (0.4) unstable; urgency=low
740−
741− [ John MacFarlane ]
742−
743− * Added two new output formats: groff man pages and ConTeXt. By
744− default, output files with extensions ".ctx" and ".context" are
745− assumed to be ConTeXt, and output files with single-digit extensions
746− are assumed to be man pages.
747−
748− * Enhanced ordered lists (documented in README, under Lists):
749− + The OrderedList block element now stores information about
750− list number style, list number delimiter, and starting number.
751− + The readers parse this information when possible.
752− + The writers use this information to style ordered lists.
753− + The enhancement can be disabled using the --strict option.
754−
755− * Added support for tables (with a new Table block element). Two kinds
756− of tables are supported: a simple table with one-line rows, and a
757− more complex variety with multiline rows. All output formats are
758− supported, but only markdown tables are parsed at the moment. The
759− syntax is documented in README.
760−
761− * Added support for definition lists (with a new DefinitionList block
762− element). All output and input formats are supported. The syntax is
763− documented in README.
764−
765− * Added support for superscripts and subscripts (with new Superscript
766− and Subscript inline elements). All input and output
767− formats. The syntax is documented in README.
768−
769− * Added support for strikeout (with a new Strikeout inline element).
770− All input and output formats are supported. Thanks to Bradley Kuhn,
771− who contributed a patch. The syntax is documented in README. Resolves
772− Issue #18.
773−
774− * Added a --toc|--table-of-contents option. This causes an automatically
775− generated table of contents (or an instruction that creates one) to
776− be inserted at the beginning of the document. Not supported in S5,
777− DocBook, or man page writers.
778−
779− * Modified the -m|--asciimathml option:
780−
781− + If an optional URL argument is provided, a link is inserted
782− instead of the contents of the ASCIIMathML.js script.
783− + Nothing is inserted unless the document actually contains
784− LaTeX math.
785−
786− * Removed Blank block element as unnecessary.
787−
788− * Removed Key and Note blocks from the Pandoc data structure. All
789− links are now stored as explicit links, and note contents are
790− stored with the (inline) notes.
791−
792− + All link Targets are now explicit (URL, title) pairs; there
793− is no longer a 'Ref' target.
794− + Markdown and RST parsers now need to extract data from key and
795− note blocks and insert them into the relevant inline elements.
796− Other parsers have been simplified, since there is no longer any need
797− to construct separate key and note blocks.
798− + Markdown, RST, and HTML writers need to construct lists of
799− notes; Markdown and RST writers need to construct lists of link
800− references (when the --reference-links option is specified); and
801− the RST writer needs to construct a list of image substitution
802− references. All writers have been rewritten to use the State monad
803− when state is required.
804− + Several functions (generateReference, keyTable,
805− replaceReferenceLinks, replaceRefLinksBlockList, and some auxiliaries
806− used by them) have been removed from Text.Pandoc.Shared, since
807− they are no longer needed. New functions and data structures
808− (Reference, isNoteBlock, isKeyBlock, isLineClump) have been
809− added. The functions inTags, selfClosingTag, inTagsSimple, and
810− inTagsIndented have been moved to the DocBook writer, since that
811− is now the only module that uses them. NoteTable is now exported
812− in Text.Pandoc.Shared.
813− + Added stateKeys and stateNotes to ParserState; removed stateKeyBlocks,
814− stateKeysUsed, stateNoteBlocks, stateNoteIdentifiers, stateInlineLinks.
815− + Added writerNotes and writerReferenceLinks to WriterOptions.
816−
817− * Added Text.Pandoc module that exports basic readers, writers,
818− definitions, and utility functions. This should export everything
819− needed for most uses of Pandoc libraries. The haddock documentation
820− includes a short example program.
821−
822− * Text.Pandoc.ASCIIMathML is no longer an exported module.
823−
824− * Added Text.Pandoc.Blocks module to help in printing markdown
825− and RST tables. This module provides functions for working with
826− fixed-width blocks of text--e.g., placing them side by side, as
827− in a table row.
828−
829− * Refactored to avoid reliance on Haskell's Text.Regex library, which
830− (a) is slow, and (b) does not properly handle unicode. This fixed
831− some strange bugs, e.g. in parsing S-cedilla, and improved performance.
832−
833− + Replaced 'gsub' with a general list function 'substitute'
834− that does not rely on Text.Regex.
835− + Rewrote extractTagType in HTML reader so that it doesn't use
836− regexs.
837− + In Markdown reader, replaced email regex test with a custom email
838− autolink parser (autoLinkEmail). Also replaced selfClosingTag regex
839− with a custom function isSelfClosingTag.
840− + Modified Docbook writer so that it doesn't rely on Text.Regex for
841− detecting 'mailto' links.
842− + Removed escapePreservingRegex and reamped entity-handling
843− functions in Text.Pandoc.Shared and Text.Pandoc.CharacterReferences to
844− avoid reliance on Text.Regex (see below on character reference
845− handling changes).
846−
847− * Renamed Text.Pandoc.Entities as Text.Pandoc.CharacterReferences.
848−
849− * Changed handling of XML entities. Entities are now parsed (and unicode
850− characters returned) in the Markdown and HTML readers, rather than being
851− handled in the writers. In HTML and Docbook writers, UTF-8 is now used
852− instead of entities for characters above 128. This makes the HTML and
853− DocBook output much more readable and more easily editable.
854−
855− + Removed sgmlHexEntity, sgmlDecimalEntity, sgmlNamedEntity, and
856− sgmlCharacterEntity regexes from Text.Pandoc.Shared.
857− + Renamed escapeSGMLChar to escapeCharForXML. Added escapeStringForXML.
858− Moved both functions to Text.Pandoc.Writers.Docbook.
859− + Added characterReference parser to Text.Pandoc.CharacterReferences.
860− This parses a string and return a unicode character.
861− + Rewrote decodeCharacterReferences to use the new parser instead of
862− Text.Regex.
863− + Added new charRef parser for Markdown and HTML, which replaces the
864− old 'entity' parser. Added '&' as a special character in Markdown reader.
865− + Modified HTML and Markdown readers to call decodeEntities on all raw
866− strings (e.g. authors, dates, link titles), to ensure that no
867− unprocessed entities are included in the native representation of
868− the document. (In the HTML reader, most of this work is done by a
869− change in extractAttributeName.)
870− + In XML and Markdown output, escape unicode nonbreaking space as '&nbsp;',
871− since a unicode non-breaking space is impossible to distinguish visually
872− from a regular space. (Resolves Issue #3.)
873− + Removed encodeEntitiesNumerical.
874− + Use Data.Map for entityTable and (new) reverseEntityTable, for a
875− slight performance boost over the old association list.
876− + Removed unneeded decodeEntities from 'str' parser in HTML and
877− Markdown readers.
878−
879− * Text.Pandoc.UTF8: Renamed encodeUTF8 to toUTF8, decodeUTF8 to
880− fromUTF8, for clarity.
881−
882− * Replaced old haskell98 module names replaced by hierarchical module
883− names, e.g. List by Data.List. Removed haskell98 from dependencies
884− in pandoc.cabal, and added mtl (needed for state monad). Substituted
885− xhtml for html.
886−
887− * Refactored and cleaned up character escaping in writers, using
888− backslashEscapes and escapeStringUsing functions.
889−
890− * Instead of adding "\n\n" to the end of an input string in Main.hs,
891− this is now done in the readers. This makes the libraries behave
892− the way you'd expect from the pandoc program. Resolves Issue #10.
893−
894− * URLs and email addresses in autolinks are now typeset as Code.
895−
896− * In Main.hs, changed putStr to putStrLn -- mainly because MacOS X
897− doesn't display the whole output unless there's a line ending.
898−
899− * Major code cleanup in all modules, for greater consistency, concision,
900− and readability.
901−
902− * HTML reader:
903−
904− + Fixed several bugs (extractTagType, attribute parsing).
905− + Remove Null blocks in lists of blocks when possible.
906− + Allow HTML comments as raw HTML inline.
907−
908− * Markdown reader:
909−
910− + Ordered list items may no longer begin with uppercase letters, or
911− letters greater than 'n'. (This prevents first initials and page
912− reference, e.g. 'p. 400', from being parsed as beginning lists.)
913− Also, numbers beginning list items may no longer end with ')',
914− which is now allowed only after letters. Note: These changes
915− may cause documents to be parsed differently. Users should take
916− care in upgrading.
917− + Changed autoLink parsing to conform better to Markdown.pl's
918− behavior. <google.com> is not treated as a link, but
919− <http://google.com>, <ftp://google.com>, and <mailto:google@google.com>
920− are.
921− + Cleaned up handling of embedded quotes in link titles. Now these are
922− stored as a '"' character, not as '&quot;'.
923− + Use lookAhead parser for the 'first pass' (looking for reference keys),
924− instead of parsing normally, then using setInput to reset input. This
925− yields a slight performance boost.
926− + Fixed several bugs in smart quote recognition.
927− + Fixed bug in indentSpaces (which didn't properly handle
928− cases with mixed spaces and tabs).
929− + Consolidated 'text', 'special', and 'inline' into 'inline'.
930− + Fixed bug which allowed URL and title to be separated by multiple blank
931− lines in links and reference keys. They can be on separate lines but
932− can't have blank lines between them.
933− + Correctly handle bracketed text inside inline footnotes and links,using
934− new function inlinesInBalanced. Resolves Issue #14.
935− + Fixed bug in footnotes: links in footnotes were not being
936− processed. Solution: three-stage parse. First, get all the
937− reference keys and add information to state. Next, get all the
938− notes and add information to state. (Reference keys may be needed
939− at this stage.) Finally, parse everything else.
940− + Replaced named constants like 'emphStart' with literals.
941− + Removed an extra occurance of escapedChar in definition of inline.
942−
943− * RST reader:
944−
945− + Allow the URI in a RST hyperlink target to start on the line
946− after the reference key.
947− + Added 'try' in front of 'string', where needed, or used a different
948− parser. This fixes a bug where ````` would not be correctly parsed as
949− a verbatim `.
950− + Fixed slow performance in parsing inline literals in RST reader. The
951− problem was that ``#`` was seen by 'inline' as a potential link or image.
952− Fix: inserted 'notFollowedBy (char '`')' in link parsers.
953− Resolves Issue #8.
954− + Use lookAhead instead of getInput/setInput in RST reader. Removed
955− unneeded getState call, since lookAhead automatically saves and
956− restores the parser state.
957− + Allow hyperlink target URIs to be split over multiple lines, and
958− to start on the line after the reference. Resolves Issue #7.
959− + Fixed handling of autolinks.
960−
961− * LaTeX reader:
962−
963− + Replaced 'choice [(try (string ...), ...]' idiom with 'oneOfStrings',
964− for clarity.
965− + Added clauses for tilde and caret. Tilde is \ensuremath{\sim}, and
966− caret is \^{}, not \^ as before.
967− + Added parsing for \url.
968− + Parse \texttt{} as code, provided there's nothing fancy inside.
969−
970− * HTML writer:
971−
972− + Modified HTML writer to use the Text.XHtml library. This results
973− in cleaner, faster code, and it makes it easier to use Pandoc in
974− other projects, like wikis, which use Text.XHtml. Two functions are
975− now provided, writeHtml and writeHtmlString: the former outputs an
976− Html structure, the latter a rendered string. The S5 writer is also
977− changed, in parallel ways (writeS5, writeS5String).
978− + The Html header is now written programmatically, so it has been
979− removed from the 'headers' directory. The S5 header is still
980− needed, but the doctype and some of the meta declarations have
981− been removed, since they are written programatically. This change
982− introduces a new dependency on the xhtml package.
983− + Fixed two bugs in email obfuscation involving improper escaping
984− of '&' in the <noscript> section and in --strict mode. Resolves
985− Issue #9.
986− + Fixed another bug in email obfuscation: If the text to be obfuscated
987− contains an entity, this needs to be decoded before obfuscation.
988− Thanks to thsutton for the patch. Resolves Issue #15.
989− + Changed the way the backlink is displayed in HTML footnotes.
990− Instead of appearing on a line by itself, it now generally
991− appears on the last line of the note. (Exception: when the
992− note does not end with a Plain or Para block.) This saves space
993− and looks better.
994− + Added automatic unique identifiers to headers:
995− - The identifier is derived from the header via a scheme
996− documented in README.
997− - WriterState now includes a list of header identifiers and a table
998− of contents in addition to notes.
999− - The function uniqueIdentifiers creates a list of unique identifiers
1000− from a list of inline lists (e.g. headers).
1001− - This list is part of WriterState and gets consumed by blockToHtml
1002− each time a header is encountered.
1003− + Include CSS for .strikethrough class in header only if strikethrough
1004− text appears in the document.
1005− + If the 'strict' option is specified, elements that do not appear in
1006− standard markdown (like definition lists) are passed through as
1007− raw HTML.
1008− + Simplified treatment of autolinks, using pattern matching instead of
1009− conditionals.
1010−
1011− * Markdown writer:
1012−
1013− + Links in markdown output are now printed as inline links by default,
1014− rather than reference links. A --reference-links option has been added
1015− that forces links to be printed as reference links. Resolves Issue #4.
1016− + Use autolinks when possible. Instead of [site.com](site.com),
1017− use <site.com>.
1018−
1019− * LaTeX writer:
1020−
1021− + Rewrote to use the State monad. The preamble now includes only those
1022− packages that are actually required, given the document's content.
1023− Thus, for example, if strikeout is not used, ulem is not required.
1024− Modified LaTeXHeader accordingly.
1025− + Modified LaTeX writer to insert '\,' between consecutive quotes.
1026− + Removed unused function tableRowColumnWidths.
1027− + Simplified code for escaping special characters.
1028− + Leave extra blank line after \maketitle.
1029− + Include empty '\author{}' when no author specified to avoid LaTeX
1030− errors.
1031− + Include fancyvrb code in header only if needed -- that is, only
1032− if there is actually code in a footnote.
1033− + Use \url{} for autolinks.
1034− + Include [mathletters] option in ucs package, so that basic unicode
1035− Greek letters will work correctly.
1036−
1037− * RST writer: Force blank line before lists, so that sublists will
1038− be handled correctly.
1039−
1040− * Docbook writer: Fixed a bug: email links with text, like
1041− [foo](me@bar.baz), were being incorrectly treated as autolinks.
1042−
1043− * Removed Text.ParserCombinators.Pandoc and moved all its functions to
1044− Text.Pandoc.Shared.
1045−
1046− * Text.Pandoc.Shared:
1047−
1048− + Added defaultWriterOptions.
1049− + Added writerTableOfContents to WriterOptions.
1050− + Added writerIgnoreNotes option to WriterOptions. This is needed
1051− for processing header blocks for a table of contents, since notes on
1052− headers should not appear in the TOC.
1053− + Added prettyprinting for native Table format.
1054− + Removed some unneeded imports.
1055− + Moved escape and nullBlock parsers from
1056− Text.ParserCombinators.Pandoc, since the latter is for
1057− general-purpose parsers that don't depend on Text.Pandoc.Definition.
1058− + Moved isHeaderBlock from Text.Pandoc.Writers.HTML.
1059− + Moved Element, headerAtLeast, and hierarchicalize from Docbook
1060− writer, because HTML writer now uses these in constructing a table
1061− of contents.
1062− + Added clauses for new inline elements (Strikeout, Superscript,
1063− Subscript) to refsMatch.
1064− + Removed backslashEscape; added new functions escapeStringUsing and
1065− backslashEscapes.
1066− + Moved failIfStrict from markdown reader, since it is now used also
1067− by the HTML reader.
1068− + Added a 'try' to the definition of indentSpaces.
1069− + In definition of 'reference', added check to make sure it's not a note
1070− reference.
1071− + Added functions: camelCaseToHyphenated, toRomanNumeral,
1072− anyOrderedListMarker, orderedListmarker, orderedListMarkers,
1073− charsInBalanced', withHorizDisplacement, romanNumeral
1074− + Fixed a bug in the anyLine parser. Previously it would parse an empty
1075− string "", but it should fail on an empty string, or we get an error
1076− when it is used inside "many" combinators.
1077− + Removed followedBy' parser, replacing it with the lookAhead parser from
1078− Parsec.
1079− + Added some needed 'try's before multicharacter parsers, especially in
1080− 'option' contexts.
1081− + Removed the 'try' from the 'end' parser in 'enclosed', so that
1082− 'enclosed' behaves like 'option', 'manyTill', etc.
1083− + Added lineClump parser, which parses a raw line block up to and
1084− including any following blank lines.
1085− + Renamed parseFromStr to parseFromString.
1086− + Added a 'try' to the 'end' parser in 'enclosed'. This makes errors in
1087− the use of 'enclosed' less likely. Removed some now-unnecessary 'try's
1088− in calling code.
1089− + Removed unneeded 'try' in blanklines.
1090− + Removed endsWith function and rewrote calling functions to use
1091− isSuffixOf instead.
1092− + Added >>~ combinator.
1093− + Fixed bug in normalizeSpaces: Space:Str "":Space should compress to
1094− Space.
1095−
1096− * Refactored runtests.pl; added separate tests for tables.
1097−
1098− * Shell scripts:
1099−
1100− + Added -asxhtml flag to tidy in html2markdown. This will
1101− perhaps help the parser, which expects closing tags.
1102− + Modified markdown2pdf to run pdflatex a second time if --toc or
1103− --table-of-contents was specified; otherwise the table of
1104− contents won't appear.
1105− + Modified markdown2pdf to print a helpful message if the 'ulem'
1106− LaTeX package is required and not found.
1107−
1108− * Changes to build process:
1109−
1110− + Dropped support for compilation with GHC 6.4. GHC 6.6 or higher
1111− is now required.
1112− + Removed cabalize and Pandoc.cabal.in. The repository now contains
1113− pandoc.cabal itself.
1114− + Pandoc.cabal has been changed to pandoc.cabal, because HackageDB
1115− likes the cabal file to have the same name as the tarball.
1116− + Expanded and revised the package description in pandoc.cabal.
1117− Revised the package synopsis.
1118− + The tarball built by 'make tarball' now contains files built from
1119− templates (including man pages and shell scripts), so pandoc can
1120− be built directly using Cabal tools, without preprocessing.
1121− + Executable binaries are now stripped before installing.
1122− + Man pages are now generated from markdown sources, using pandoc's
1123− man page writer.
1124− + Use HTML version of README (instead of RTF) in Mac OS X installer.
1125− + Instead of testing for the existence of a pandoc symlink in build-exec,
1126− use ln -f.
1127−
1128− * Documentation:
1129−
1130− + Updated README and man pages with information on new features.
1131− + Updated INSTALL instructions with some useful clarifications and
1132− links.
1133− + Updated web content.
1134−
1135− * Added FreeBSD port.
1136−
1137− [ Recai Oktaş ]
1138−
1139− * debian/control:
1140−
1141− + Changed pandoc's Build-Depends to include libghc6-mtl-dev and
1142− libghc6-xhtml-dev. Removed libghc6-html-dev.
1143− + Suggest texlive-latex-recommended | tetex-extra instead of
1144− tetex-bin. This brings in fancyvrb and unicode support.
1145−
1146− -- Recai Oktaş <roktas@debian.org> Tue, 16 Jan 2007 00:37:21 +0200
1147−
1148−pandoc (0.3) unstable; urgency=low
1149−
1150− [ John MacFarlane ]
1151−
1152− * Changes in pandoc options:
1153−
1154− + Allow options to follow or precede arguments.
1155− + Changed '--smartypants' to '--smart' and adjusted symbols accordingly.
1156− + Added '--strict' option.
1157− + Added '-o/--output' option.
1158− + Added '--dump-args' and '--ignore-args' options (for use in wrappers).
1159− + Modified '-v' and '-h' output to go to STDERR, not STDOUT, and return
1160− error conditions. This is helpful for writing wrappers.
1161− + Added copyright message to '-v' output, modeled after FSF messages.
1162− + Reformatted usage message so that it doesn't wrap illegibly.
1163− + Removed extra blanks after '-h' and '-D' output.
1164−
1165− * Added docbook writer.
1166−
1167− * Added implicit setting of default input and output format based
1168− on input and output filename extensions. These defaults are
1169− overridden if explicit input and output formats are specified using
1170− '-t', '-f', '-r', or '-w' options. Documented in pandoc(1) man page
1171− and README.
1172−
1173− * Allow ordered list items to begin with (single) letters, as well
1174− as numbers. The list item marker may now be terminated either by
1175− '.' or by ')'. This extension to standard markdown is documented
1176− in README.
1177−
1178− * Revised footnote syntax. (See README for full details.) The
1179− '[^1]' format now standard in markdown extensions is supported,
1180− as are inline footnotes with this syntax: '^[My note.]'.
1181− The earlier footnote syntax '^(1)' is no longer supported.
1182−
1183− * Improved HTML representation of footnotes. All footnotes
1184− are now auto-numbered and appear in an ordered list at the
1185− end of the HTML document. Since the default appearance is now
1186− acceptable, the old footnote styles have been removed from the
1187− HTML header.
1188−
1189− * Bug fixes:
1190−
1191− + Fixed a serious bug in the markdown, LaTeX, and RST readers.
1192− These readers ran 'runParser' on processed chunks of text to handle
1193− embedded block lists in lists and quotation blocks. But then
1194− any changes made to the parser state in these chunks was lost,
1195− as the state is local to the parser. So, for example, footnotes
1196− didn't work in quotes or list items. The fix: instead of calling
1197− runParser on some raw text, use setInput to make it the input, then
1198− parse it, then use setInput to restore the input to what it was
1199− before. This is shorter and more elegant, and it fixes the problem.
1200− + Fixed bug in notFollowedBy' combinator (adding 'try' before
1201− 'parser'). Adjusted code that uses this combinator accordingly.
1202− + Fixed bug in RTF writer that caused improper indentation on
1203− footnotes occurring in indented blocks like lists.
1204− + Fixed parsing of metadata in LaTeX reader. Now the title, author,
1205− and date are parsed correctly. Everything else in the preamble
1206− is skipped.
1207− + Modified escapedChar in LaTeX reader to allow a '\' at the end of a
1208− line to count as escaped whitespace.
1209− + Modified LaTeX reader to produce inline links rather than reference
1210− links. Otherwise, links in footnotes aren't handled properly.
1211− + Fixed handling of titles in links in Markdown reader, so that
1212− embedded quotation marks are now handled properly.
1213− + Fixed Markdown reader's handling of embedded brackets in links.
1214− + Fixed Markdown reader so that it only parses bracketed material
1215− as a reference link if there is actually a corresponding key.
1216− + Revised inline code parsing in Markdown reader to conform to
1217− markdown standard. Now any number of `s can begin inline code,
1218− which will end with the same number of `s. For example, to
1219− have two backticks as code, write ``` `` ```. Modified Markdown
1220− writer accordingly.
1221− + Fixed bug in text-wrapping routine in Markdown and RST writers.
1222− Now LineBreaks no longer cause wrapping problems.
1223− + Supported hexadecimal numerical entity references as well as
1224− decimal ones.
1225− + Fixed bug in Markdown reader's handling of underscores and other
1226− inline formatting markers inside reference labels: for example,
1227− in '[A_B]: /url/a_b', the material between underscores was being
1228− parsed as emphasized inlines.
1229− + Changed Markdown reader's handling of backslash escapes so that
1230− only non-alphanumeric characters can be escaped. Strict mode
1231− follows Markdown.pl in only allowing a select group of punctuation
1232− characters to be escaped.
1233− + Modified HTML reader to skip a newline following a <br> tag.
1234− Otherwise the newline will be treated as a space at the beginning
1235− of the next line.
1236−
1237− * Made handling of code blocks more consistent. Previously, some
1238− readers allowed trailing newlines, while others stripped them.
1239− Now, all readers strip trailing newlines in code blocks. Writers
1240− insert a newline at the end of code blocks as needed.
1241−
1242− * Modified readers to make spacing at the end of output more consistent.
1243−
1244− * Minor improvements to LaTeX reader:
1245−
1246− + '\thanks' now treated like a footnote.
1247− + Simplified parsing of LaTeX command arguments and options.
1248− commandArgs now returns a list of arguments OR options (in
1249− whatever order they appear). The brackets are included, and
1250− a new stripFirstAndLast function is provided to strip them off
1251− when needed. This fixes a problem in dealing with \newcommand
1252− and \newenvironment.
1253−
1254− * Revised RTF writer:
1255−
1256− + Default font is now Helvetica.
1257− + An '\f0' is added to each '\pard', so that font resizing works
1258− correctly.
1259−
1260− * Moved handling of "smart typography" from the writers to the Markdown
1261− and LaTeX readers. This allows great simplification of the writers
1262− and more accurate smart quotes, dashes, and ellipses. DocBook can
1263− now use '<quote>'. The '--smart' option now toggles an option in
1264− the parser state rather than a writer option. Several new kinds
1265− of inline elements have been added: Quoted, Ellipses, Apostrophe,
1266− EmDash, EnDash.
1267−
1268− * Changes in HTML writer:
1269−
1270− + Include title block in header even when title is null.
1271− + Made javascript obfuscation of emails even more obfuscatory,
1272− by combining it with entity obfuscation.
1273−
1274− * Changed default ASCIIMathML text color to black.
1275−
1276− * Test suite:
1277−
1278− + Added --strip-trailing-cr option to diff in runtests.pl, for
1279− compatibility with Windows.
1280− + Added regression tests with footnotes in quote blocks and lists.
1281−
1282− * Makefile changes:
1283−
1284− + osx-pkg target creates a Mac OS X package (directory). New osx
1285− directory contains files needed for construction of the package.
1286− + osx-dmg target creates a compressed disk image containing the package.
1287− + win-pkg target creates Windows binary package.
1288− + tarball target creates distribution source tarball.
1289− + website target generates pandoc's website automatically, including
1290− demos. New 'web' directory containts files needed for construction
1291− of the website (which will be created as the 'pandoc' subdirectory
1292− of 'web').
1293− + Makefile checks to see if we're running Windows/Cygwin; if so,
1294− a '.exe' extension is added to each executable in EXECS.
1295−
1296− * Removed all wrappers except markdown2pdf and html2markdown.
1297−
1298− * Added new wrapper hsmarkdown, to be used as a drop-in replacement
1299− for Markdown.pl. hsmarkdown calls pandoc with the '--strict'
1300− option and disables other options.
1301−
1302− * Added code to html2markdown that tries to determine the character
1303− encoding of an HTML file, by parsing the "Content-type" meta tag.
1304−
1305− + If the encoding can't be determined, then if the content is local,
1306− the local encoding is used; if it comes from a URL, UTF-8 is used
1307− by default.
1308− + If input is from STDIN, don't try to determine character encoding.
1309− + Encoding can be specified explicitly using '-e' option.
1310−
1311− * Improved warning messages in wrappers:
1312−
1313− + Print warning if iconv not available
1314− + More user-friendly error messages in markdown2pdf, when
1315− pdflatex fails.
1316−
1317− * Code cleanup:
1318−
1319− + Renamed 'Text/Pandoc/HtmlEntities' module to
1320− 'Text/Pandoc/Entities'. Also changed function names so as
1321− not to be HTML-specific.
1322− + Refactored SGML string escaping functions from HTML and Docbook
1323− writers into Text/Pandoc/Shared. (escapeSGML, stringToSGML)
1324− + Removed 'BlockQuoteContext' from ParserContext, as it isn't
1325− used anywhere.
1326− + Removed splitBySpace and replaced it with a general, polymorphic
1327− splitBy function.
1328− + Refactored LaTeX reader for clarity (added isArg function).
1329− + Converted some CR's to LF's in src/ui/default/print.css.
1330− + Added license text to top of source files.
1331− + Added module data for haddock to source files.
1332− + Reformatted code for consistency.
1333−
1334− * Rewrote documentation and man pages. Split README into INSTALL
1335− and README.
1336−
1337− * Split LICENSE into COPYING and COPYRIGHT.
1338−
1339− * Removed TODO, since we now maintain ToDo on the wiki.
1340−
1341− * Made COPYRIGHT in top level a symlink to debian/copyright, to avoid
1342− duplication.
1343−
1344− [ Recai Oktaş ]
1345−
1346− * Revamped build process to conform to debian standards and created
1347− a proper debian package. Closes: #391666.
1348−
1349− * Modified build process to support GHC 6.6.
1350−
1351− + The package can still be compiled using GHC 6.4.2, though because
1352− of dependencies the "make deb" target works only with GHC 6.6+.
1353− + The script 'cabalize' is used to create an appropriate
1354− 'Pandoc.cabal' from 'Pandoc.cabal.in', depending on the GHC and
1355− Cabal versions.
1356−
1357− * Refactored template processing (fillTemplates.pl).
1358−
1359− * Modified wrapper scripts to make them more robust and portable.
1360− To avoid code duplication and ensure consistency, wrappers are
1361− generated via a templating system from templates in src/wrappers.
1362−
1363− + Wrappers now accept multiple filenames, when appropriate.
1364− + Spaces and tabs allowed in filenames.
1365− + getopts shell builtin is used for portable option parsing.
1366− + Improved html2markdown's web grabber code, making it more robust,
1367− configurable and verbose. Added '-e', '-g' options.
1368−
1369− -- Recai Oktaş <roktas@debian.org> Fri, 05 Jan 2007 09:41:19 +0200
1370−
1371−pandoc (0.2) unstable; urgency=low
1372−
1373− * Fixed unicode/utf-8 translation
1374−
1375− -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400
1376−
1377−pandoc (0.1) unstable; urgency=low
1378−
1379− * Initial creation of debian package
1380−
1381− -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400
debian/compatdeleted−1
@@ -1 +0,0 @@
1−4
debian/controldeleted−90
@@ -1,90 +0,0 @@
1−Source: pandoc
2−Section: text
3−Priority: optional
4−Maintainer: Recai Oktaş <roktas@debian.org>
5−Build-Depends: debhelper (>= 4.0.0), haskell-devscripts (>=0.5.12), ghc6 (>= 6.8.2-1), libghc6-xhtml-dev, libghc6-mtl-dev, libghc6-network-dev
6−Build-Depends-Indep: haddock
7−Standards-Version: 3.7.3
8−Homepage: http://johnmacfarlane.net/pandoc/
9−XS-Vcs-Svn: http://pandoc.googlecode.com/svn/trunk
10−XS-Vcs-Browser: http://pandoc.googlecode.com/svn/trunk
11−
12−Package: pandoc
13−Section: text
14−Architecture: any
15−Depends: ${shlibs:Depends}, texlive-latex-recommended | tetex-extra
16−Suggests: tidy, wget | w3m
17−Description: general markup converter
18− Pandoc is a Haskell library for converting from one markup format to
19− another, and a command-line tool that uses this library. It can read
20− markdown and (subsets of) reStructuredText, HTML, and LaTeX, and it
21− can write markdown, reStructuredText, HTML, LaTeX, ConTeXt,
22− DocBook XML, OpenDocument XML, ODT, RTF, GNU Texinfo, MediaWiki markup,
23− groff man pages, and S5 HTML slide shows.
24− .
25− Pandoc extends standard markdown syntax with footnotes, embedded LaTeX,
26− tables, definition lists, and other features. A compatibility mode is
27− provided for those who need a drop-in replacement for Markdown.pl.
28− Included wrapper scripts make it easy to convert markdown documents to
29− PDF and to convert web pages to markdown documents.
30− .
31− In contrast to existing tools for converting markdown to HTML, which
32− use regex substitutions, pandoc has a modular design: it consists of a
33− set of readers, which parse text in a given format and produce a native
34− representation of the document, and a set of writers, which convert
35− this native representation into a target format. Thus, adding an input
36− or output format requires only adding a reader or writer.
37−
38−Package: libghc6-pandoc-dev
39−Section: libdevel
40−Architecture: any
41−Depends: ${haskell:Depends}, libghc6-xhtml-dev, libghc6-mtl-dev, libghc6-network-dev, texlive-latex-recommended | tetex-extra
42−Suggests: pandoc-doc
43−Description: general markup converter
44− Pandoc is a Haskell library for converting from one markup format to
45− another, and a command-line tool that uses this library. It can read
46− markdown and (subsets of) reStructuredText, HTML, and LaTeX, and it
47− can write markdown, reStructuredText, HTML, LaTeX, ConTeXt,
48− DocBook XML, OpenDocument XML, ODT, RTF, GNU Texinfo, MediaWiki markup,
49− groff man pages, and S5 HTML slide shows.
50− .
51− Pandoc extends standard markdown syntax with footnotes, embedded LaTeX,
52− tables, definition lists, and other features. A compatibility mode is
53− provided for those who need a drop-in replacement for Markdown.pl.
54− Included wrapper scripts make it easy to convert markdown documents to
55− PDF and to convert web pages to markdown documents.
56− .
57− In contrast to existing tools for converting markdown to HTML, which
58− use regex substitutions, pandoc has a modular design: it consists of a
59− set of readers, which parse text in a given format and produce a native
60− representation of the document, and a set of writers, which convert
61− this native representation into a target format. Thus, adding an input
62− or output format requires only adding a reader or writer.
63− .
64− This package contains the libraries compiled for GHC 6.
65−
66−Package: pandoc-doc
67−Section: doc
68−Architecture: all
69−Description: general markup converter
70− Pandoc is a Haskell library for converting from one markup format to
71− another, and a command-line tool that uses this library. It can read
72− markdown and (subsets of) reStructuredText, HTML, and LaTeX, and it
73− can write markdown, reStructuredText, HTML, LaTeX, ConTeXt,
74− DocBook XML, OpenDocument XML, ODT, RTF, GNU Texinfo, MediaWiki markup,
75− groff man pages, and S5 HTML slide shows.
76− .
77− Pandoc extends standard markdown syntax with footnotes, embedded LaTeX,
78− tables, definition lists, and other features. A compatibility mode is
79− provided for those who need a drop-in replacement for Markdown.pl.
80− Included wrapper scripts make it easy to convert markdown documents to
81− PDF and to convert web pages to markdown documents.
82− .
83− In contrast to existing tools for converting markdown to HTML, which
84− use regex substitutions, pandoc has a modular design: it consists of a
85− set of readers, which parse text in a given format and produce a native
86− representation of the document, and a set of writers, which convert
87− this native representation into a target format. Thus, adding an input
88− or output format requires only adding a reader or writer.
89− .
90− This package contains the library documentation for Pandoc.
debian/copyrightdeleted−89
@@ -1,89 +0,0 @@
1−Pandoc
2−Copyright (C) 2006-8 John MacFarlane <jgm at berkeley dot edu>
3−
4−This code is released under the [GPL], version 2 or later:
5−
6− This program is free software; you can redistribute it and/or modify
7− it under the terms of the GNU General Public License as published by
8− the Free Software Foundation; either version 2 of the License, or
9− (at your option) any later version.
10−
11− This program is distributed in the hope that it will be useful,
12− but WITHOUT ANY WARRANTY; without even the implied warranty of
13− MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14− GNU General Public License for more details.
15−
16− You should have received a copy of the GNU General Public License
17− along with this program; if not, write to the Free Software
18− Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19−
20−The GNU General Public License is available in the file COPYING in
21−the source distribution. On Debian systems, the complete text of the
22−GPL can be found in `/usr/share/common-licenses/GPL`.
23−
24−[GPL]: http://www.gnu.org/copyleft/gpl.html
25−
26−Pandoc's complete source code is available from the [Pandoc home page].
27−
28−[Pandoc home page]: http://johnmacfarlane.net/pandoc/
29−
30−Pandoc includes some code from other authors. The copyright and license
31−statements for these sources are included below. All are GPL-compatible
32−licenses.
33−
34−----------------------------------------------------------------------
35−Text/Pandoc/Writers/Texinfo.hs
36−Copyright (C) 2008 John MacFarlane and Peter Wang
37−
38−Released under the GPL.
39−
40−----------------------------------------------------------------------
41−Text/Pandoc/Writers/OpenDocument.hs
42−Copyright (C) 2008 Andrea Rossato
43−
44−Released under the GPL.
45−
46−----------------------------------------------------------------------
47−ASCIIMathML.js
48−Copyright 2005, Peter Jipsen, Chapman University
49−<http://www1.chapman.edu/~jipsen/mathml/asciimath.html>
50−
51−Released under the GPL.
52−
53−----------------------------------------------------------------------
54−S5 slides.js and css files
55−by Eric A. Meyer
56−<http://meyerweb.com/eric/tools/s5
57−
58−Released under an explicit Public Domain License
59−
60−------------------------------------------------------------------------
61−Diff.hs in tests/
62−from the Diff package v 0.1.2 (Data.Algorithm.Diff)
63−Copyright (c) Stering Clover 2008
64−
65−All rights reserved.
66−
67−Redistribution and use in source and binary forms, with or without
68−modification, are permitted provided that the following conditions
69−are met:
70−1. Redistributions of source code must retain the above copyright
71− notice, this list of conditions and the following disclaimer.
72−2. Redistributions in binary form must reproduce the above copyright
73− notice, this list of conditions and the following disclaimer in the
74− documentation and/or other materials provided with the distribution.
75−3. Neither the name of the author nor the names of his contributors
76− may be used to endorse or promote products derived from this software
77− without specific prior written permission.
78−
79−THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
80−ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
81−IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
82−ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
83−FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
84−DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
85−OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
86−HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
87−LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
88−OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
89−SUCH DAMAGE.
debian/pandoc-doc.doc-basedeleted−11
@@ -1,11 +0,0 @@
1−Document: pandoc-doc
2−Title: Pandoc documentation
3−Author: John MacFarlane
4−Abstract: This is the documentation of Pandoc, which includes the API
5− documentation of the Pandoc library and documentation for the Pandoc
6− tools.
7−Section: Apps/Programming
8−
9−Format: html
10−Index: /usr/share/doc/pandoc-doc/html/pandoc/index.html
11−Files: /usr/share/doc/pandoc-doc/html/pandoc/*.html
debian/pandoc-doc.docsdeleted−1
@@ -1 +0,0 @@
1−html
debian/pandoc.dirsdeleted−1
@@ -1 +0,0 @@
1−usr/bin
debian/rulesdeleted−124
@@ -1,124 +0,0 @@
1−#!/usr/bin/make -f
2−#
3−# debian/rules for pandoc.
4−# Copyright © 2006 Recai Oktaş <roktasATdebian.org>
5−#
6−# This file is based on John Goerzen's Cabal Debian template.
7−# See http://www.n-heptane.com/nhlab/repos/cabalDebianTemplate/
8−#
9−# Licensed under the GNU General Public License, version 2.
10−# See the file 'http://www.gnu.org/copyleft/gpl.txt'.
11−
12−THIS := $(shell sed -ne 's/^Source: \(.*\)/\1/p' debian/control)
13−PREFIX := /usr
14−DESTDIR := debian/$(THIS)
15−DATADIR := $(THIS)
16−DOCDIR := doc/$(THIS)
17−
18−# Uncomment this to turn on verbose mode.
19−#export DH_VERBOSE=1
20−
21−ifeq (1,$(DH_VERBOSE))
22−HCFLAGS+=-v
23−endif
24−
25−# Handle noopt in DEB_BUILD_OPTIONS. Emulate CFLAGS (as HCFLAGS).
26−ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
27−HCFLAGS+=-O0
28−else
29−# No optimisation seems optimum.
30−HCFLAGS+=-O0
31−endif
32−
33−# Export all variables which will be used in various stages of build process.
34−export PREFIX DESTDIR DATADIR DOCDIR HCFLAGS
35−
36−configure: configure-stamp
37−configure-stamp:
38− dh_testdir
39− $(MAKE) configure
40−
41− touch $@
42−
43−build: build-stamp
44−build-stamp: configure-stamp
45− dh_testdir
46−
47− touch $@
48−
49−clean:
50− dh_testdir
51− dh_testroot
52− $(MAKE) clean
53− rm -rf setup Setup.hi Setup.ho Setup.o .*config* dist html
54− rm -f build-stamp configure-stamp
55−
56− dh_clean
57−
58−install: build
59− dh_testdir
60− dh_testroot
61− dh_clean -k
62− dh_installdirs -a
63−
64− dh_haskell -a
65−
66− # Hack! Cabal builds executables while building libraries. Move these
67− # files to top dir where the Makefile install target expects to find.
68− # See "BUGS" section at the following document:
69− # http://www.n-heptane.com/nhlab/repos/cabalDebianTemplate/INSTRUCTIONS.txt
70− find debian/libghc6-$(THIS)-dev -type d -name 'bin' -true | \
71− while read bin; do mv $$bin/* .; rm -rf $$bin; done
72− $(MAKE) install-program
73−
74−build-indep: build-indep-stamp
75−build-indep-stamp:
76− dh_testdir
77− $(MAKE) build-lib-doc
78−
79−install-indep: build-indep
80− dh_testdir
81− dh_testroot
82− dh_clean -k
83− dh_installdirs -i
84−
85− dh_haskell -i
86−
87−# Build architecture-independent files here.
88−binary-indep: build-indep install-indep
89− dh_testdir
90− dh_testroot
91− dh_installchangelogs -i
92− dh_installdocs -i
93− dh_installexamples -i
94− dh_installman -i
95− dh_link -i
96− dh_strip -i
97− dh_compress -i
98− dh_fixperms -i
99− dh_installdeb -i
100− dh_shlibdeps -i
101− dh_gencontrol -i
102− dh_md5sums -i
103− dh_builddeb -i
104−
105−# Build architecture-dependent files here.
106−binary-arch: build install
107− dh_testdir
108− dh_testroot
109− dh_installchangelogs -a
110− dh_installdocs -a
111− dh_installexamples -a
112− dh_installman -a
113− dh_link -a
114− dh_strip -a -Xhtml2 -Xhsmarkdown -Xmarkdown2
115− dh_compress -a
116− dh_fixperms -a
117− dh_installdeb -a
118− dh_shlibdeps -a
119− dh_gencontrol -a
120− dh_md5sums -a
121− dh_builddeb -a
122−
123−binary: binary-indep binary-arch
124−.PHONY: build clean binary-indep binary-arch binary install build-indep install-indep