summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfiddlosopher <fiddlosopher@788f1e2b-df1e-0410-8736-df70ead52e1b>2008-09-06 18:49:46 +0000
committerfiddlosopher <fiddlosopher@788f1e2b-df1e-0410-8736-df70ead52e1b>2008-09-06 18:49:46 +0000
commit27b3146bceb5261f90606445cf40af2f5bb3bdb7 (patch)
tree5c7e1235318180729e31b8501be6068a67735953
parent2cecca73ea76f4c18ddd64be738ad709a321a30c (diff)
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
-rw-r--r--[l---------]COPYRIGHT90
-rw-r--r--INSTALL1
-rw-r--r--Makefile28
-rw-r--r--[l---------]changelog1382
-rw-r--r--debian/changelog1381
-rw-r--r--debian/compat1
-rw-r--r--debian/control90
-rw-r--r--debian/copyright89
-rw-r--r--debian/pandoc-doc.doc-base11
-rw-r--r--debian/pandoc-doc.docs1
-rw-r--r--debian/pandoc.dirs1
-rwxr-xr-xdebian/rules124
12 files changed, 1472 insertions, 1727 deletions
diff --git a/COPYRIGHT b/COPYRIGHT
index 9060ce820..b87bcaa64 120000..100644
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -1 +1,89 @@
-debian/copyright \ No newline at end of file
+Pandoc
+Copyright (C) 2006-8 John MacFarlane <jgm at berkeley dot edu>
+
+This code is released under the [GPL], version 2 or later:
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+The GNU General Public License is available in the file COPYING in
+the source distribution. On Debian systems, the complete text of the
+GPL can be found in `/usr/share/common-licenses/GPL`.
+
+[GPL]: http://www.gnu.org/copyleft/gpl.html
+
+Pandoc's complete source code is available from the [Pandoc home page].
+
+[Pandoc home page]: http://johnmacfarlane.net/pandoc/
+
+Pandoc includes some code from other authors. The copyright and license
+statements for these sources are included below. All are GPL-compatible
+licenses.
+
+----------------------------------------------------------------------
+Text/Pandoc/Writers/Texinfo.hs
+Copyright (C) 2008 John MacFarlane and Peter Wang
+
+Released under the GPL.
+
+----------------------------------------------------------------------
+Text/Pandoc/Writers/OpenDocument.hs
+Copyright (C) 2008 Andrea Rossato
+
+Released under the GPL.
+
+----------------------------------------------------------------------
+ASCIIMathML.js
+Copyright 2005, Peter Jipsen, Chapman University
+<http://www1.chapman.edu/~jipsen/mathml/asciimath.html>
+
+Released under the GPL.
+
+----------------------------------------------------------------------
+S5 slides.js and css files
+by Eric A. Meyer
+<http://meyerweb.com/eric/tools/s5
+
+Released under an explicit Public Domain License
+
+------------------------------------------------------------------------
+Diff.hs in tests/
+from the Diff package v 0.1.2 (Data.Algorithm.Diff)
+Copyright (c) Stering Clover 2008
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+3. Neither the name of the author nor the names of his contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGE.
diff --git a/INSTALL b/INSTALL
index f97301aa1..dc3977504 100644
--- a/INSTALL
+++ b/INSTALL
@@ -228,7 +228,6 @@ but are documented here for packagers and developers:
### Packaging
* `tarball`: Creates a source tarball for distribution.
-* `deb`: Creates debian packages in `..` directory.
* `macport`: Creates MacPorts Portfile in `macports` directory.
* `freebsd`: Creates freebsd Makefile and distinfo in `freebsd` directory.
* `win-pkg`: Creates a Windows binary package (presupposes `pandoc.exe`,
diff --git a/Makefile b/Makefile
index 4b009441c..7ee6ef40d 100644
--- a/Makefile
+++ b/Makefile
@@ -266,30 +266,6 @@ $(tarball):
$(BUILDCMD) sdist
cp $(BUILDDIR)/$(tarball) .
-.PHONY: deb
-deb_name:=$(shell grep ^Package debian/control | cut -d' ' -f2 | head -n 1)
-deb_version:=$(shell head -n 1 debian/changelog | cut -f2 -d' ' | tr -d '()')
-deb_arch:=i386
-deb_main:=$(deb_name)_$(deb_version)_$(deb_arch).deb
-deb: debian
- @[ -x /usr/bin/fakeroot ] || { \
- echo >&2 "*** Please install fakeroot package. ***"; \
- exit 1; \
- }
- @[ -x /usr/bin/dpkg-buildpackage ] || { \
- echo >&2 "*** Please install dpkg-dev package. ***"; \
- exit 1; \
- }
- mv $(BUILDVARS) $(BUILDVARS).old 2>/dev/null ||: # backup settings
- if [ -x /usr/bin/debuild ]; then \
- debuild -uc -us -i.svn -I.svn -i_darcs -I_darcs --lintian-opts -i; \
- else \
- echo >&2 "*** Please install devscripts package. ***"; \
- echo >&2 "*** Using dpkg-buildpackage for package building. ***"; \
- dpkg-buildpackage -rfakeroot -uc -us -i.svn -I.svn -i_darcs -I_darcs; \
- fi
- mv $(BUILDVARS).old $(BUILDVARS) 2>/dev/null ||: # restore
-
.PHONY: website
web_src:=web
web_dest:=pandoc-website
@@ -297,7 +273,7 @@ make_page:=./$(MAIN) -s -S -B $(web_src)/header.html \
-A $(web_src)/footer.html \
-H $(web_src)/css
cleanup_files+=$(web_dest)
-$(web_dest) : html $(wildcard $(web_src)/*) debian/changelog \
+$(web_dest) : html $(wildcard $(web_src)/*) changelog \
INSTALL $(MANPAGES) $(MANDIR)/man1/pandoc.1.md README
rm -rf $(web_dest) && { \
mkdir $(web_dest); \
@@ -305,7 +281,7 @@ $(web_dest) : html $(wildcard $(web_src)/*) debian/changelog \
cp $(web_src)/* $(web_dest)/; \
sed -e 's#@VERSION@#$(VERSION)#g' $(web_src)/index.txt.in > \
$(web_dest)/index.txt; \
- cp debian/changelog $(web_dest)/changelog.txt ; \
+ cp changelog $(web_dest)/changelog.txt ; \
cp README $(web_dest)/ ; \
cp INSTALL $(web_dest)/ ; \
cp $(MANDIR)/man1/pandoc.1.md $(web_dest)/ ; \
diff --git a/changelog b/changelog
index d526672ce..2643b7637 120000..100644
--- a/changelog
+++ b/changelog
@@ -1 +1,1381 @@
-debian/changelog \ No newline at end of file
+pandoc (0.47) UNRELEASED; urgency=low
+
+ [ Recai Oktaş ]
+
+ * Debian packaging changes:
+
+ + Migrate to GHC 6.8.2. Closes: #461606
+ + Add new dependencies libghc6-regex-compat-dev and libghc6-uulib-dev.
+ + Remove the code in debian/rules which attempts to remove empty ghc6.6
+ include directory. This code may cause an installation failure for the
+ -dev package. Closes: #460658
+ + Fix doc-base to prevent a lintian warning.
+
+ -- Recai Oktaş <roktas@debian.org> Sat, 09 Feb 2008 04:41:46 +0200
+
+pandoc (0.46) unstable; urgency=low
+
+ [ John MacFarlane ]
+
+ * Made -H, -A, and -B options cumulative: if they are specified
+ multiple times, multiple files will be included.
+
+ * Added optional HTML sanitization using a whitelist.
+ When this option is specified (--sanitize-html on the command line),
+ unsafe HTML tags will be replaced by HTML comments, and unsafe HTML
+ attributes will be removed. This option should be especially useful
+ for those who want to use pandoc libraries in web applications, where
+ users will provide the input.
+
+ + Main.hs: Added --sanitize-html option.
+
+ + Text.Pandoc.Shared: Added stateSanitizeHTML to ParserState.
+
+ + Text.Pandoc.Readers.HTML:
+ - Added whitelists of sanitaryTags and sanitaryAttributes.
+ - Added parsers to check these lists (and state) to see if a given
+ tag or attribute should be counted unsafe.
+ - Modified anyHtmlTag and anyHtmlEndTag to replace unsafe tags
+ with comments.
+ - Modified htmlAttribute to remove unsafe attributes.
+ - Modified htmlScript and htmlStyle to remove these elements if
+ unsafe.
+
+ + Modified README and man pages to document new option.
+
+ * Improved handling of email addresses in markdown and reStructuredText.
+ Consolidated uri and email address parsers. (Resolves Issue #37.)
+
+ + New emailAddress and uri parsers in Text.Pandoc.Shared.
+ - uri parser uses parseURI from Network.URI.
+ - emailAddress parser properly handles email addresses with periods
+ in them.
+
+ + Removed uri and emailAddress parsers from Text.Pandoc.Readers.RST
+ and Text.Pandoc.Readers.Markdown.
+
+ * Markdown reader:
+
+ + Fixed emph parser so that "*hi **there***" is parsed as a Strong
+ nested in an Emph. (A '*' is only recognized as the end of the
+ emphasis if it's not the beginning of a strong emphasis.)
+
+ + Moved blockQuote parser before list parsers for performance.
+
+ + Modified 'source' parser to allow backslash-escapes in URLs.
+ So, for example, [my](/url\(1\)) yields a link to /url(1).
+ Resolves Issue #34.
+
+ + Disallowed links within links. (Resolves Issue #35.)
+ - Replaced inlinesInBalanced with inlinesInBalancedBrackets, which
+ instead of hard-coding the inline parser takes an inline parser
+ as a parameter.
+ - Modified reference and inlineNote to use inlinesInBalancedBrackets.
+ - Removed unneeded inlineString function.
+ - Added inlineNonLink parser, which is now used in the definition of
+ reference.
+ - Added inlineParsers list and redefined inline and inlineNonLink parsers
+ in terms of it.
+ - Added failIfLink parser.
+
+ + Better handling of parentheses in URLs and quotation marks in titles.
+ - 'source' parser first tries to parse URL with balanced parentheses;
+ if that doesn't work, it tries to parse everything beginning with
+ '(' and ending with ')'.
+ - source parser now uses an auxiliary function source'.
+ - linkTitle parser simplified and improved, under assumption that it
+ will be called in context of source'.
+
+ + Make 'block' conditional on strictness state, instead of using
+ failIfStrict in block parsers. Use a different ordering of parsers
+ in strict mode (raw HTML block before paragraph) for performance.
+ In non-strict mode use rawHtmlBlocks instead of htmlBlock.
+ Simplified htmlBlock, since we know it's only called in strict
+ mode.
+
+ + Improved handling of raw HTML. (Resolves Issue #36.)
+ - Tags that can be either block or inline (e.g. <ins>) should
+ be treated as block when appropriate and as inline when
+ appropriate. Thus, for example,
+ <ins>hi</ins>
+ should be treated as a paragraph with inline <ins> tags, while
+ <ins>
+ hi
+ </ins>
+ should be treated as a paragraph within <ins> tags.
+ - Moved htmlBlock after para in list of block parsers. This ensures
+ that tags that can be either block or inline get parsed as inline
+ when appropriate.
+ - Modified rawHtmlInline' so that block elements aren't treated as
+ inline.
+ - Modified para parser so that paragraphs containing only HTML tags and
+ blank space are not allowed. Treat these as raw HTML blocks instead.
+
+ + Fixed bug wherein HTML preceding a code block could cause it to
+ be parsed as a paragraph. The problem is that the HTML parser
+ used to eat all blank space after an HTML block, including the
+ indentation of the code block. (Resolves Issue #39.)
+ - In Text.Pandoc.Readers.HTML, removed parsing of following space
+ from rawHtmlBlock.
+ - In Text.Pandoc.Readers.Markdown, modified rawHtmlBlocks so that
+ indentation is eaten *only* on the first line after the HTML
+ block. This means that in
+ <div>
+ foo
+ <div>
+ the foo won't be treated as a code block, but in
+ <div>
+
+ foo
+
+ </div>
+ it will. This seems the right approach for least surprise.
+
+ * RST reader:
+
+ + Fixed bug in parsing explicit links (resolves Issue #44).
+ The problem was that we were looking for inlines until a '<' character
+ signaled the start of the URL; so, if you hit a reference-style link,
+ it would keep looking til the end of the document. Fix: change
+ inline => (notFollowedBy (char '`') >> inline). Note that this won't
+ allow code inlines in links, but these aren't allowed in resT anyway.
+
+ + Cleaned up parsing of reference names in key blocks and links.
+ Allow nonquoted reference links to contain isolated '.', '-', '_', so
+ so that strings like 'a_b_' count as links.
+
+ + Removed unnecessary check for following link in str.
+ This is unnecessary now that link is above str in the definition of
+ 'inline'.
+
+ * HTML reader:
+
+ + Modified rawHtmlBlock so it parses </html> and </body> tags.
+ This allows these tags to be handled correctly in Markdown.
+ HTML reader now uses rawHtmlBlock', which excludes </html> and </body>,
+ since these are handled in parseHtml. (Resolves Issue #38.)
+
+ + Fixed bug (emph parser was looking for <IT> tag, not <I>).
+
+ + Don't interpret contents of style tags as markdown.
+ (Resolves Issue #40.)
+ - Added htmlStyle, analagous to htmlScript.
+ - Use htmlStyle in htmlBlockElement and rawHtmlInline.
+ - Moved "script" from the list of tags that can be either block or
+ inline to the list of block tags.
+
+ + Modified rawHtmlBlock to use anyHtmlBlockTag instead of anyHtmlTag
+ and anyHtmlEndTag. This fixes a bug in markdown parsing, where
+ inline tags would be included in raw HTML blocks.
+
+ + Modified anyHtmlBlockTag to test for (not inline) rather than
+ directly for block. This allows us to handle e.g. docbook in
+ the markdown reader.
+
+ * LaTeX reader: Properly recognize --parse-raw in rawLaTeXInline.
+ Updated LaTeX reader test to use --parse-raw.
+
+ * HTML writer:
+
+ + Modified rules for automatic HTML header identifiers to
+ ensure that identifiers begin with an alphabetic character.
+ The new rules are described in README. (Resolves Issue #33.)
+
+ + Changed handling of titles in HTML writer so you don't get
+ "titleprefix - " followed by nothing.
+
+ * ConTeXt writer: Use wrappers around Doc elements to ensure proper
+ spacing. Each block element is wrapped with either Pad or Reg.
+ Pad'ed elements are guaranteed to have a blank line in between.
+
+ * RST writer:
+
+ + Refactored RST writer to use a record instead of a tuple for state,
+ and to include options in state so it doesn't need to be passed as
+ a parameter.
+
+ + Use an interpreted text role to render math in restructuredText.
+ See http://www.american.edu/econ/itex2mml/mathhack.rst for the
+ strategy.
+
+ [ Recai Oktaş ]
+
+ * Debian packaging changes:
+
+ + Remove the empty 'include' directory in -dev package, which lintian
+ complains about.
+ + Bump Standarts-Version to 3.7.3.
+ + Use new 'Homepage:' field to specify the upstream URL on suggestion of
+ lintian.
+
+ -- Recai Oktaş <roktas@debian.org> Tue, 08 Jan 2008 05:13:31 +0200
+
+pandoc (0.45) unstable; urgency=low
+
+ [ John MacFarlane ]
+
+ * Simplified parsing of reference keys and notes in markdown and RST
+ readers: The Reference data structure from Text.Pandoc.Shared is no
+ longer needed, since referenceKey and noteBlock parses return strings
+ (as many blank lines as were occupied by the key or note) and update
+ state themselves. getPosition and setPosition are now used to ensure
+ that error messages will give the correct line number. This yields
+ cleaner (and slightly faster) code, with more accurate parsing error
+ messages.
+
+ * Added new Math inline element:
+
+ + Markdown and LaTeX readers now convert TeX math into Math elements,
+ not TeX.
+ + This allows math to be treated differently from raw TeX in output.
+ TeX elements are no longer printed in output formats other than
+ Markdown, LaTeX, and ConTeXt. But Math elements are always printed.
+
+ * New default handling of math in writers:
+
+ + New module Text.Pandoc.Readers.TeXMath exports readTeXMath, which
+ parses raw TeX math and outputs a string of Pandoc inlines that
+ tries to render it as far as possible using unicode characters,
+ lapsing into literal TeX when needed.
+ + readTeXMath is now used for default HTML output in HTML, S5, RTF,
+ and Docbook, if no other method for displaying math in HTML is
+ specified. Enclosing $'s are no longer printed by default.
+ + By default, math is put inside <span class="math">. This way it can be
+ distinguished from the surrounding text, e.g. put in a different
+ font.
+
+ * New --gladtex and --mimetex options for display of math in HTML:
+
+ + If --gladtex is specified, math is output between <eq> tags, so
+ it can be processed by gladTeX.
+ + If --mimetex is specified, math is put in <img> tags with a link
+ to the mimetex CGI script (or any other script that takes TeX math
+ as input and outputs an image). The URL of the script may be
+ specified, but defaults to /cgi-bin/mimetex.cgi.
+ + HTMLMathMethod structure in WriterOptions keeps track of how to
+ display math in HTML output.
+ + Updated README with a description of the four options for displaying
+ math in HTML.
+
+ * HTML reader:
+
+ + Fixed bug: parser for minimized attributes should not swallow
+ trailing spaces.
+ + Simplified HTML attribute parsing.
+ + Changed parsing of code blocks in HTML reader: <code> tag is no
+ longer needed. <pre> suffices. All HTML tags in the code block
+ (e.g. for syntax highlighting) are skipped, because they are not
+ portable to other output formats. A <code>...</code> block not
+ surrounded by <pre> now counts as inline HTML, not a code block.
+ + Remove just one leading and one trailing newline from contents of
+ <pre>...</pre> in codeBlock parser.
+
+ * Markdown reader:
+
+ + Removed support for box-style block quotes.
+ + Require space before title in links and references.
+ This fixes a bug in parsing URLs like http://silly/url(withparen).
+ + Improved and simplified setextHeader parser.
+ + Fixed logic in smart quote parsing, adding some needed 'try'
+ statements.
+ + Fixed smart quote parsing so that unicode characters 8216 and 8217
+ are recognized as single quotes, and 8220 and 8221 as double quotes.
+
+ * RST reader:
+
+ + Fixed bug in parsing of code blocks. Previously a full tab indent
+ was required, but RST allows code to be indented any amount.
+ Resolves Issue #27.
+ + Allow field lists to be indented.
+ + Parse the contents of field lists instead of treating as a raw string.
+ + Represent field lists as definition lists instead of blockquotes.
+ + Fixed bug in which metadata would be overridden if the document
+ contained multiple field lists.
+ + Parse fields associated with '.. image::' blocks, and use 'alt'
+ field, if given, for image alt and title attributes.
+
+ * LaTeX reader:
+
+ + Modified specialChar so that '"' characters are parsed.
+ + Fixed a bug in parsing of \[ \] math blocks (thanks to Mark Kalderon).
+
+ * HTML writer:
+
+ + Changes in handling of math (see above).
+ + Don't produce HTML for table of contents if there are
+ no headers. (This would be an empty list, which is invalid XHTML.)
+
+ * Markdown writer:
+
+ + Don't print title attribute if title is empty. (This differs from
+ the behavior of Markdown.pl, and agrees with PHP Markdown. But John
+ Gruber has indicated that he prefers this behavior.) Adjusted test
+ suite accordingly.
+ + Fixed incorrect line wrapping in paragraphs including hard line
+ breaks. Resolves Issue #25.
+ + Fixed bug in markdown writer: If an ordered list item began with
+ a marker greater than 3 characters in width, and the item took more
+ than one line, it would appear on the line after the list marker,
+ e.g.:
+
+ (12)
+ My list item.
+ Multiline.
+
+ Now it works as follows:
+
+ (12) My list item.
+ Multiline.
+
+ * RST writer
+
+ + Fixed bug in RST writer's handling of ordered lists. Previously,
+ list items with multiple lines would not always line up with
+ single-line list items. Now, list items are nested the length of
+ the list marker + 1. This looks better and ensures that list items
+ all line up. (Note that list markers are padded to the length of
+ the longest list marker in the series.)
+ + Use 3-space indent for unordered lists.
+ + If label for a link reference contains a colon, surround it by `
+ signs so it won't be interpreted as the end of the link label.
+
+ * LaTeX writer:
+
+ + Cleaner output for footnotes. Footnotes now always begin on a new
+ line, and the final } is on a line by itself only when it needs to
+ be (i.e. only when the note ends with a Verbatim environment).
+ + Added writer options to state, so state doesn't need to be passed as
+ a parameter.
+ + Text wrapping now provided, using wrapTeXIfNeeded.
+
+ * ConTeXt writer: many improvements for more idiomatic ConTeXt output
+ (thanks to Idris Samawi Hamid for suggestions).
+
+ + PrettyPrint module now used for output.
+ + Writer options are now in state, so they don't have to be passed as
+ a parameter.
+ + Text wrapping now provided, using wrapTeXIfNeeded.
+ + Better treatment of footnotes: footnotes are always on lines by
+ themselves, and the final } is on a line by itself only when
+ it needs to be (after \stoptyping).
+ + Use \subject, \subsubject, ... or \section, \subsection, ... for headings,
+ depending on whether --number-sections option is selected.
+ + Extra blank line inserted after \stopitemize
+ + Use new, "official" definition of blockquote environment. Also, use
+ blank line after \startblockquote to balance blank line at the end.
+ + Both itemized and enumerated lists are now generated using
+ \start-stopitemize, with appropriate options. Removed definitions
+ of ltxenum and ltxitem, which are no longer needed. Provided
+ defaults for itemized lists in the preamble. State keeps track of
+ ordered list level, so that when default numbering is specified,
+ the appropriate scheme can be used.
+ + Changed \useurl to \useURL.
+ + Changed link color from red to blue.
+ + Use \subsubsubsubsection etc., since these are supported
+ (up to at least sub x 5).
+
+ * Text.Pandoc.Shared:
+
+ + Save and restore position in parseFromString, so that accurate
+ error messages can be given.
+ + Improved efficiency of romanNumeral parser.
+ + Added wrappedTeX and wrapTeXIfNeeded functions. These ensure
+ that footnotes occur on lines by themselves (to make them
+ easier to see and move) and do not screw up line wrapping.
+
+ * Text.Pandoc.UTF8: modified fromUTF8 to strip out the BOM
+ if present. Windows Notepad and other applications insert a
+ BOM at the beginning of a UTF8 file.
+
+ * Main.hs (tabFilter): Treat '\r' at end of line as newline (in
+ addition to "\r\n" and '\n').
+
+ * Added a writer option for wrapped text and a command-line option
+ '--no-wrap', which disables text wrapping and minimizes whitespace
+ in HTML. (Resolves Issue #26.)
+
+ + Added support for '--no-wrap' to Main.hs.
+ + Added wrapIfNeeded function to Text.Pandoc.Shared.
+ + Use wrapIfNeeded instead of wrapped in the RST, Man, Docbook, and
+ Markdown writers.
+ + Added render and renderFragment helpers to HTML writer.
+
+ * Modified html2markdown to run tidy only if the HTML cannot be
+ parsed. Previously html2markdown piped all input through tidy
+ before passing it to pandoc. This caused problems on certain pages
+ (e.g. http://daringfireball.com/markdown) which have well-formed
+ XHTML that causes tidy to choke. The solution is to pipe through
+ tidy only if pandoc cannot parse the input by itself. This means
+ that a temp file is now always used, even when input comes from a
+ local file or standard input.
+
+ * Removed 'version' constant from Main.hs; added 'pandocVersion' to
+ Text.Pandoc library.
+
+ * pandoc.cabal:
+
+ + Modified to work with GHC 6.8 and Cabal configurations. (For GHC
+ 6.8, pretty and containers must be added to Build-Depends, and it
+ is desirable to use the -O2 compiler option.) Cabal configurations
+ allows one to select options depending on the compiler version.
+ For GHC 6.6, the splitBase option can be disabled.
+ + pandoc.cabal.ghc66 is provided for users with older versions of
+ Cabal, which do not support configurations.
+ + Use Ghc-Prof-Options to ensure that '-auto-all' is used when
+ '--enable-(executable|library)-profiling' is specified. Updated
+ PROFILING instructions accordingly.
+
+ * Makefile:
+
+ + Makefile now checks GHC version. If GHC is 6.6, pandoc.cabal.ghc66
+ is copied to pandoc.cabal, and the old pandoc.cabal is copied
+ to pandoc.cabal.orig. Otherwise, pandoc.cabal is copied to
+ pandoc.cabal.orig but otherwise unmodified. This way, the Makefile
+ will work properly with either GHC 6.6 or 6.8.
+ + Changed BUILDCONF to point to dist/setup-config, not .setup-config.
+ This is where current versions of Cabal put it.
+ + Added $(BUILDCMD) target, so setup doesn't get compiled every time.
+ + Removed dependency of templates on ./templates, which is circular
+ now that templates is a subdirectory of the top-level.
+
+ * MacPorts Portfile:
+
+ + Modified to install the pandoc library in addition to programs.
+ + Installation must be done manually rather than using Makefile's
+ install-all.
+ + Note that the library must be registered in the activate phase,
+ after the library files have been copied out of the destroot.
+ Cabal generates a 'register.sh' script that will do this.
+
+ * debian/control: Added libghc6-network-dev, libghc6-xhtml-dev, and
+ libghc6-mtl-dev as dependencies for libghc6-pandoc-dev.
+ Closes: #445235
+
+ * debian/rules: Converted to UTF-8.
+
+ * Changed pandoc home page to http://johnmacfarlane.net/pandoc/.
+
+ * Updated ASCIIMathML.js to latest version.
+
+ * Directory structure:
+
+ + Moved everything from src into the top-level directory.
+ + Changed references to source directory in Makefile and
+ pandoc.cabal.*.
+ + Moved ASCIIMathML.js, headers, and ui into templates directory.
+ + Modified fillTemplates.pl to reflect new paths.
+
+ [ Recai Oktaş ]
+
+ * Makefile: Fixed the issue of having two copies of the library
+ documentation under some usage scenarios.
+
+ * Replaced 'ghc' with '$(GHC)' in Makefile, and made GHC
+ and GHC_PKG configurable through the environment, to support
+ unusual ghc installations. For example:
+ GHC=/opt/ghc/bin/ghc GHC_PKG=/opt/ghc/bin/ghc-pkg make
+
+ -- Recai Oktaş <roktas@debian.org> Sun, 07 Oct 2007 20:51:43 +0300
+
+pandoc (0.44) unstable; urgency=low
+
+ [ John MacFarlane ]
+
+ * Fixed bug in HTML writer: when --toc was used, anchors were put around
+ headers, which is invalid XHTML (block content within inline element).
+ Now the anchors are put inside the header tags. Resolves Issue #23.
+
+ * Added xmlns attribute to html element in html writer tests.
+ This attribute is added by more recent versions of the
+ xhtml library (>= 3000), and is required for valid XHTML.
+
+ [ Recai Oktaş ]
+
+ * On configure, compile 'Setup.hs' to 'setup' and use 'setup' as the build
+ command instead of 'runhaskell', which, on some platforms (such as s390,
+ alpha, m68k), throws the following error:
+
+ runhaskell Setup.hs configure --prefix=/usr
+ ghc-6.6.1: not built for interactive use
+
+ This causes a serious FTBFS bug. Closes: #440668.
+
+ -- Recai Oktaş <roktas@debian.org> Mon, 03 Sep 2007 18:24:02 +0300
+
+pandoc (0.43) unstable; urgency=low
+
+ [ John MacFarlane ]
+
+ * The focus of this release is performance. The markdown parser
+ is about five times faster than in 0.42, based on benchmarks
+ with the TextMate manual.
+
+ * Main.hs: Replaced CRFilter and tabFilter with single function
+ tabFilter, which operates on the whole string rather than breaking
+ it into lines, and handles dos-style line-endings as well as tabs.
+
+ * Added separate LaTeX reader and native reader tests; removed
+ round-trip tests.
+
+ * Text.Pandoc.Shared:
+
+ + Removed tabsToSpaces and tabsInLine (they were used only in Main.hs.)
+ + General code cleanup (to elimante warnings when compiling with -Wall.)
+ + Added 'wrapped' function, which helps wrap text into paragraphs,
+ using the prettyprinting library.
+ + Rewrote charsInBalanced and charsInBalanced'.
+ - Documented restriction: open and close must be distinct characters.
+ - Rearranged options for greater efficiency.
+ - Bug fix: Changed inner call to charsInBalanced inside
+ charsInBalanced' to charsInBalanced'.
+ + anyLine now requires that the line end with a newline (not eof).
+ This is a harmless assumption, since we always add newlines to the
+ end of a block before parsing with anyLine, and it yields a 10% speed
+ boost.
+ + Removed unnecessary 'try' in anyLine.
+ + Removed unneeded 'try' from romanNumeral parser.
+ + Use notFollowedBy instead of notFollowedBy' in charsInBalanced.
+ + Removed unneeded 'try' in parseFromString.
+ + Removed unneeded 'try' from stringAnyCase. (Now it behaves
+ like 'string'.)
+ + Changed definition of 'enclosed' in Text.Pandoc.Shared so that
+ 'try' is not automatically applied to the 'end' parser. Added
+ 'try' in calls to 'enclosed' where needed. Slight speed increase.
+
+ * Writers:
+
+ + Replaced individual wrapping routines in RST, Man, and Markdown
+ writers with 'wrapped' from Text.Pandoc.Shared.
+ + Rewrote LaTeX writer to use the prettyprinting library,
+ so we get word wrapping, etc.
+ + Modified latex writer tests for new latex writer using prettyprinter.
+ + Fixed bug in LaTeX writer: autolinks would not cause
+ '\usepackage{url}' to be put in the document header. Also, changes
+ to state in enumerated list items would be overwritten.
+ + In Markdown writer, escape paragraphs that begin with ordered list
+ markers, so they don't get interpreted as ordered lists.
+
+ * Text.Pandoc.Reades.LaTeX:
+
+ + Fixed bug in LaTeX reader, which wrongly assumed that the roman
+ numeral after "enum" in "setcounter" would consist entirely of
+ "i"s. 'enumiv' is legitimate.
+ + LaTeX command and environment names can't contain numbers.
+ + Rearranged order of parsers in inline for slight speed improvement.
+ + Added '`' to special characters and 'unescapedChar'.
+
+ * Text.Pandoc.Readers.RST:
+
+ + Removed unneeded try's in RST reader; also minor code cleanup.
+ + Removed tabchar.
+ + Rearranged parsers in inline (doubled speed).
+
+ * Text.Pandoc.Readers.Markdown:
+
+ + Skip notes parsing if running in strict mode. (This yields a nice
+ speed improvement in strict mode.)
+ + Simplify autolink parsing code, using Network.URI to test for
+ URIs. Added dependency on network library to debian/control and
+ pandoc.cabal.
+ + More perspicuous definition of nonindentSpaces.
+ + Removed unneeded 'try' in 'rawLine'.
+ + Combined linebreak and whitespace into a new whitespace parser, to
+ avoid unnecessary reparsing of space characters.
+ + Removed unnecessary 'try' in 'codeBlock', 'ellipses', 'noteMarker',
+ 'multilineRow', 'dashedLine', 'rawHtmlBlocks'.
+ + Use lookAhead in parsers for setext headers and definition lists
+ to see if the next line begins appropriately; if not, don't waste
+ any more time parsing.
+ + Don't require blank lines after code block. (It's sufficient to
+ end code block with a nonindented line.)
+ + Changed definition of 'emph': italics with '_' must not
+ be followed by an alphanumeric character. This is to help
+ prevent interpretation of e.g. [LC_TYPE]: my_type as
+ '[LC<em>TYPE]:my</em>type'.
+ + Improved Markdown.pl-compatibility in referenceLink: the two parts
+ of a reference-style link may be separated by one space, but not
+ more... [a] [link], [not] [a link].
+ + Fixed markdown inline code parsing so it better accords with
+ Markdown.pl: the marker for the end of the code section is a clump
+ of the same number of `'s with which the section began, followed
+ by a non-` character. So, for example,
+ ` h ``` i ` -> <code>h ``` i</code>.
+ + Split 'title' into 'linkTitle' and 'referenceTitle', since the
+ rules are slightly different.
+ + Rewrote 'para' for greater efficiency.
+ + Rewrote link parsers for greater efficiency.
+ + Removed redundant 'referenceLink' in definition of inline (it's
+ already in 'link').
+ + Refactored escapeChar so it doesn't need 'try'.
+ + Refactored hrule for performance in Markdown reader.
+ + More intelligent rearranging of 'inline' so that most frequently
+ used parsers are tried first.
+ + Removed tabchar parser, as whitespace handles tabs anyway.
+
+ * Text.Pandoc.CharacterReferences:
+
+ + Refactored.
+ + Removed unnecessary 'try's for a speed improvement.
+ + Removed unnecessary '&' and ';' from the entity table.
+
+ * Build process:
+
+ + Makefile: Get VERSION from cabal file, not Main.hs.
+ + Modified MacPorts Portfile:
+ - Depend on haddock
+ - Build and install libraries and library documentation in
+ addition to pandoc executable
+ - Added template item for md5 sum in Portfile.in.
+ - Incorporated changes from MacPorts repository (r28278).
+ + FreeBSD port: Don't try to generate distinfo in Makefile.
+ It can be made using 'make makesum' in FreeBSD.
+ + Make both freebsd and macports targets depend on tarball.
+
+ * Website and documentation:
+
+ + Updated INSTALL instructions.
+ + Added pandocwiki demo to website.
+ + Removed local references to Portfile, since pandoc is now in the
+ MacPorts repository.
+
+ -- Recai Oktaş <roktas@debian.org> Sun, 02 Sep 2007 15:50:11 +0300
+
+pandoc (0.42) unstable; urgency=low
+
+ [ John MacFarlane ]
+
+ * Main.hs: Use utf8 conversion on the extra files loaded with
+ the -H, -C, -B, and -A options. This fixes problems with unicode
+ characters in these files.
+
+ * Exposed Text.Pandoc.ASCIIMathML, since it is imported in
+ Text.Pandoc.Readers.HTML and without it we get a linking error when
+ using the library.
+
+ * Markdown reader:
+
+ + Added new rule for enhanced markdown ordered lists: if the list
+ marker is a capital letter followed by a period (including a
+ single-letter capital roman numeral), then it must be followed by
+ at least two spaces. The point of this is to avoid accidentally
+ treating people's initials as list markers: a paragraph might begin,
+ "B. Russell was an English philosopher," and this shouldn't be
+ treated as a list. Documented change in README.
+ + Blocks that start with "p. " and a digit are no longer treated
+ as ordered lists (it's a page number).
+ + Added a needed 'try' to listItem.
+ + Removed check for a following setext header in endline.
+ A full test is too inefficient (doubles benchmark time), and the
+ substitute we had before is not 100% accurate.
+ + Don't use Code elements for autolinks if --strict specified.
+
+ * LaTeX writer: When a footnote ends with a Verbatim environment, the
+ close } of the footnote cannot occur on the same line or an error occurs.
+ Fixed this by adding a newline before the closing } of every footnote.
+
+ * HTML writer:
+ + Removed incorrect "{}" around style information in HTML tables.
+ Column widths now work properly in HTML.
+ + If --strict option is specified (and --toc is not), don't include
+ identifiers in headers, for better Markdown compatibility.
+
+ * Build process:
+
+ + Separated $(web_dest) and website targets.
+ + In website, index.txt is now constructed from template index.txt.in.
+ + Added freebsd target to Markefile. This creates the freebsd Makefile
+ from Makefile.in, and creates distinfo. Removed Makefile and distinfo
+ from the repository.
+ + Added macport target to Makefile. Portfile is built from template
+ Portfile.in.
+ + Removed OSX package targets. (Too many difficulties involving
+ dependencies on dynamic libraries.)
+ + More complete INSTALL instructions for all architectures.
+
+ * Website:
+ + Added a programming demo, pandocwiki.
+
+ [ Recai Oktaş ]
+
+ * Do not forget to close pandoc's ITP. Closes: #391666
+
+ -- Recai Oktaş <roktas@debian.org> Sun, 26 Aug 2007 22:51:32 +0300
+
+pandoc (0.41) unstable; urgency=low
+
+ [ John MacFarlane ]
+
+ * Fixed bugs in HTML reader:
+ + Skip material at end *only if* </html> is present (previously,
+ only part of the document would be parsed if an error was
+ found; now a proper error message is given).
+ + Added new constant eitherBlockOrInline with elements that may
+ count either as block-level or as inline. Modified isInline and
+ isBlock to take this into account.
+ + Modified rawHtmlBlock to accept any tag (even an inline tag):
+ this is innocuous, because rawHtmlBlock is tried only if a regular
+ inline element can't be parsed.
+ + Added a necessary 'try' in definition of 'para'.
+
+ * Fixed bug in markdown ordered list parsing. The problem was that
+ anyOrderedListStart did not check for a space following the
+ ordered list marker. So in 'A.B. 2007' the parser would be
+ expecting a list item, but would not find one, causing an error.
+ Fixed a similar bug in the RST reader. Resolves Issue #22.
+
+ * Refactored RST and Markdown readers using parseFromString.
+
+ * LaTeX reader will now skip anything after \end{document}.
+
+ * Fixed blockquote output in markdown writer: previously, block
+ quotes in indented contexts would be indented only in the first
+ line.
+
+ * Added note to INSTALL about variations in versions of the xhtml
+ library that can lead to failed tests (thanks to Leif LeBaron).
+
+ -- Recai Oktaş <roktas@debian.org> Sun, 19 Aug 2007 23:26:07 +0300
+
+pandoc (0.4) unstable; urgency=low
+
+ [ John MacFarlane ]
+
+ * Added two new output formats: groff man pages and ConTeXt. By
+ default, output files with extensions ".ctx" and ".context" are
+ assumed to be ConTeXt, and output files with single-digit extensions
+ are assumed to be man pages.
+
+ * Enhanced ordered lists (documented in README, under Lists):
+ + The OrderedList block element now stores information about
+ list number style, list number delimiter, and starting number.
+ + The readers parse this information when possible.
+ + The writers use this information to style ordered lists.
+ + The enhancement can be disabled using the --strict option.
+
+ * Added support for tables (with a new Table block element). Two kinds
+ of tables are supported: a simple table with one-line rows, and a
+ more complex variety with multiline rows. All output formats are
+ supported, but only markdown tables are parsed at the moment. The
+ syntax is documented in README.
+
+ * Added support for definition lists (with a new DefinitionList block
+ element). All output and input formats are supported. The syntax is
+ documented in README.
+
+ * Added support for superscripts and subscripts (with new Superscript
+ and Subscript inline elements). All input and output
+ formats. The syntax is documented in README.
+
+ * Added support for strikeout (with a new Strikeout inline element).
+ All input and output formats are supported. Thanks to Bradley Kuhn,
+ who contributed a patch. The syntax is documented in README. Resolves
+ Issue #18.
+
+ * Added a --toc|--table-of-contents option. This causes an automatically
+ generated table of contents (or an instruction that creates one) to
+ be inserted at the beginning of the document. Not supported in S5,
+ DocBook, or man page writers.
+
+ * Modified the -m|--asciimathml option:
+
+ + If an optional URL argument is provided, a link is inserted
+ instead of the contents of the ASCIIMathML.js script.
+ + Nothing is inserted unless the document actually contains
+ LaTeX math.
+
+ * Removed Blank block element as unnecessary.
+
+ * Removed Key and Note blocks from the Pandoc data structure. All
+ links are now stored as explicit links, and note contents are
+ stored with the (inline) notes.
+
+ + All link Targets are now explicit (URL, title) pairs; there
+ is no longer a 'Ref' target.
+ + Markdown and RST parsers now need to extract data from key and
+ note blocks and insert them into the relevant inline elements.
+ Other parsers have been simplified, since there is no longer any need
+ to construct separate key and note blocks.
+ + Markdown, RST, and HTML writers need to construct lists of
+ notes; Markdown and RST writers need to construct lists of link
+ references (when the --reference-links option is specified); and
+ the RST writer needs to construct a list of image substitution
+ references. All writers have been rewritten to use the State monad
+ when state is required.
+ + Several functions (generateReference, keyTable,
+ replaceReferenceLinks, replaceRefLinksBlockList, and some auxiliaries
+ used by them) have been removed from Text.Pandoc.Shared, since
+ they are no longer needed. New functions and data structures
+ (Reference, isNoteBlock, isKeyBlock, isLineClump) have been
+ added. The functions inTags, selfClosingTag, inTagsSimple, and
+ inTagsIndented have been moved to the DocBook writer, since that
+ is now the only module that uses them. NoteTable is now exported
+ in Text.Pandoc.Shared.
+ + Added stateKeys and stateNotes to ParserState; removed stateKeyBlocks,
+ stateKeysUsed, stateNoteBlocks, stateNoteIdentifiers, stateInlineLinks.
+ + Added writerNotes and writerReferenceLinks to WriterOptions.
+
+ * Added Text.Pandoc module that exports basic readers, writers,
+ definitions, and utility functions. This should export everything
+ needed for most uses of Pandoc libraries. The haddock documentation
+ includes a short example program.
+
+ * Text.Pandoc.ASCIIMathML is no longer an exported module.
+
+ * Added Text.Pandoc.Blocks module to help in printing markdown
+ and RST tables. This module provides functions for working with
+ fixed-width blocks of text--e.g., placing them side by side, as
+ in a table row.
+
+ * Refactored to avoid reliance on Haskell's Text.Regex library, which
+ (a) is slow, and (b) does not properly handle unicode. This fixed
+ some strange bugs, e.g. in parsing S-cedilla, and improved performance.
+
+ + Replaced 'gsub' with a general list function 'substitute'
+ that does not rely on Text.Regex.
+ + Rewrote extractTagType in HTML reader so that it doesn't use
+ regexs.
+ + In Markdown reader, replaced email regex test with a custom email
+ autolink parser (autoLinkEmail). Also replaced selfClosingTag regex
+ with a custom function isSelfClosingTag.
+ + Modified Docbook writer so that it doesn't rely on Text.Regex for
+ detecting 'mailto' links.
+ + Removed escapePreservingRegex and reamped entity-handling
+ functions in Text.Pandoc.Shared and Text.Pandoc.CharacterReferences to
+ avoid reliance on Text.Regex (see below on character reference
+ handling changes).
+
+ * Renamed Text.Pandoc.Entities as Text.Pandoc.CharacterReferences.
+
+ * Changed handling of XML entities. Entities are now parsed (and unicode
+ characters returned) in the Markdown and HTML readers, rather than being
+ handled in the writers. In HTML and Docbook writers, UTF-8 is now used
+ instead of entities for characters above 128. This makes the HTML and
+ DocBook output much more readable and more easily editable.
+
+ + Removed sgmlHexEntity, sgmlDecimalEntity, sgmlNamedEntity, and
+ sgmlCharacterEntity regexes from Text.Pandoc.Shared.
+ + Renamed escapeSGMLChar to escapeCharForXML. Added escapeStringForXML.
+ Moved both functions to Text.Pandoc.Writers.Docbook.
+ + Added characterReference parser to Text.Pandoc.CharacterReferences.
+ This parses a string and return a unicode character.
+ + Rewrote decodeCharacterReferences to use the new parser instead of
+ Text.Regex.
+ + Added new charRef parser for Markdown and HTML, which replaces the
+ old 'entity' parser. Added '&' as a special character in Markdown reader.
+ + Modified HTML and Markdown readers to call decodeEntities on all raw
+ strings (e.g. authors, dates, link titles), to ensure that no
+ unprocessed entities are included in the native representation of
+ the document. (In the HTML reader, most of this work is done by a
+ change in extractAttributeName.)
+ + In XML and Markdown output, escape unicode nonbreaking space as '&nbsp;',
+ since a unicode non-breaking space is impossible to distinguish visually
+ from a regular space. (Resolves Issue #3.)
+ + Removed encodeEntitiesNumerical.
+ + Use Data.Map for entityTable and (new) reverseEntityTable, for a
+ slight performance boost over the old association list.
+ + Removed unneeded decodeEntities from 'str' parser in HTML and
+ Markdown readers.
+
+ * Text.Pandoc.UTF8: Renamed encodeUTF8 to toUTF8, decodeUTF8 to
+ fromUTF8, for clarity.
+
+ * Replaced old haskell98 module names replaced by hierarchical module
+ names, e.g. List by Data.List. Removed haskell98 from dependencies
+ in pandoc.cabal, and added mtl (needed for state monad). Substituted
+ xhtml for html.
+
+ * Refactored and cleaned up character escaping in writers, using
+ backslashEscapes and escapeStringUsing functions.
+
+ * Instead of adding "\n\n" to the end of an input string in Main.hs,
+ this is now done in the readers. This makes the libraries behave
+ the way you'd expect from the pandoc program. Resolves Issue #10.
+
+ * URLs and email addresses in autolinks are now typeset as Code.
+
+ * In Main.hs, changed putStr to putStrLn -- mainly because MacOS X
+ doesn't display the whole output unless there's a line ending.
+
+ * Major code cleanup in all modules, for greater consistency, concision,
+ and readability.
+
+ * HTML reader:
+
+ + Fixed several bugs (extractTagType, attribute parsing).
+ + Remove Null blocks in lists of blocks when possible.
+ + Allow HTML comments as raw HTML inline.
+
+ * Markdown reader:
+
+ + Ordered list items may no longer begin with uppercase letters, or
+ letters greater than 'n'. (This prevents first initials and page
+ reference, e.g. 'p. 400', from being parsed as beginning lists.)
+ Also, numbers beginning list items may no longer end with ')',
+ which is now allowed only after letters. Note: These changes
+ may cause documents to be parsed differently. Users should take
+ care in upgrading.
+ + Changed autoLink parsing to conform better to Markdown.pl's
+ behavior. <google.com> is not treated as a link, but
+ <http://google.com>, <ftp://google.com>, and <mailto:google@google.com>
+ are.
+ + Cleaned up handling of embedded quotes in link titles. Now these are
+ stored as a '"' character, not as '&quot;'.
+ + Use lookAhead parser for the 'first pass' (looking for reference keys),
+ instead of parsing normally, then using setInput to reset input. This
+ yields a slight performance boost.
+ + Fixed several bugs in smart quote recognition.
+ + Fixed bug in indentSpaces (which didn't properly handle
+ cases with mixed spaces and tabs).
+ + Consolidated 'text', 'special', and 'inline' into 'inline'.
+ + Fixed bug which allowed URL and title to be separated by multiple blank
+ lines in links and reference keys. They can be on separate lines but
+ can't have blank lines between them.
+ + Correctly handle bracketed text inside inline footnotes and links,using
+ new function inlinesInBalanced. Resolves Issue #14.
+ + Fixed bug in footnotes: links in footnotes were not being
+ processed. Solution: three-stage parse. First, get all the
+ reference keys and add information to state. Next, get all the
+ notes and add information to state. (Reference keys may be needed
+ at this stage.) Finally, parse everything else.
+ + Replaced named constants like 'emphStart' with literals.
+ + Removed an extra occurance of escapedChar in definition of inline.
+
+ * RST reader:
+
+ + Allow the URI in a RST hyperlink target to start on the line
+ after the reference key.
+ + Added 'try' in front of 'string', where needed, or used a different
+ parser. This fixes a bug where ````` would not be correctly parsed as
+ a verbatim `.
+ + Fixed slow performance in parsing inline literals in RST reader. The
+ problem was that ``#`` was seen by 'inline' as a potential link or image.
+ Fix: inserted 'notFollowedBy (char '`')' in link parsers.
+ Resolves Issue #8.
+ + Use lookAhead instead of getInput/setInput in RST reader. Removed
+ unneeded getState call, since lookAhead automatically saves and
+ restores the parser state.
+ + Allow hyperlink target URIs to be split over multiple lines, and
+ to start on the line after the reference. Resolves Issue #7.
+ + Fixed handling of autolinks.
+
+ * LaTeX reader:
+
+ + Replaced 'choice [(try (string ...), ...]' idiom with 'oneOfStrings',
+ for clarity.
+ + Added clauses for tilde and caret. Tilde is \ensuremath{\sim}, and
+ caret is \^{}, not \^ as before.
+ + Added parsing for \url.
+ + Parse \texttt{} as code, provided there's nothing fancy inside.
+
+ * HTML writer:
+
+ + Modified HTML writer to use the Text.XHtml library. This results
+ in cleaner, faster code, and it makes it easier to use Pandoc in
+ other projects, like wikis, which use Text.XHtml. Two functions are
+ now provided, writeHtml and writeHtmlString: the former outputs an
+ Html structure, the latter a rendered string. The S5 writer is also
+ changed, in parallel ways (writeS5, writeS5String).
+ + The Html header is now written programmatically, so it has been
+ removed from the 'headers' directory. The S5 header is still
+ needed, but the doctype and some of the meta declarations have
+ been removed, since they are written programatically. This change
+ introduces a new dependency on the xhtml package.
+ + Fixed two bugs in email obfuscation involving improper escaping
+ of '&' in the <noscript> section and in --strict mode. Resolves
+ Issue #9.
+ + Fixed another bug in email obfuscation: If the text to be obfuscated
+ contains an entity, this needs to be decoded before obfuscation.
+ Thanks to thsutton for the patch. Resolves Issue #15.
+ + Changed the way the backlink is displayed in HTML footnotes.
+ Instead of appearing on a line by itself, it now generally
+ appears on the last line of the note. (Exception: when the
+ note does not end with a Plain or Para block.) This saves space
+ and looks better.
+ + Added automatic unique identifiers to headers:
+ - The identifier is derived from the header via a scheme
+ documented in README.
+ - WriterState now includes a list of header identifiers and a table
+ of contents in addition to notes.
+ - The function uniqueIdentifiers creates a list of unique identifiers
+ from a list of inline lists (e.g. headers).
+ - This list is part of WriterState and gets consumed by blockToHtml
+ each time a header is encountered.
+ + Include CSS for .strikethrough class in header only if strikethrough
+ text appears in the document.
+ + If the 'strict' option is specified, elements that do not appear in
+ standard markdown (like definition lists) are passed through as
+ raw HTML.
+ + Simplified treatment of autolinks, using pattern matching instead of
+ conditionals.
+
+ * Markdown writer:
+
+ + Links in markdown output are now printed as inline links by default,
+ rather than reference links. A --reference-links option has been added
+ that forces links to be printed as reference links. Resolves Issue #4.
+ + Use autolinks when possible. Instead of [site.com](site.com),
+ use <site.com>.
+
+ * LaTeX writer:
+
+ + Rewrote to use the State monad. The preamble now includes only those
+ packages that are actually required, given the document's content.
+ Thus, for example, if strikeout is not used, ulem is not required.
+ Modified LaTeXHeader accordingly.
+ + Modified LaTeX writer to insert '\,' between consecutive quotes.
+ + Removed unused function tableRowColumnWidths.
+ + Simplified code for escaping special characters.
+ + Leave extra blank line after \maketitle.
+ + Include empty '\author{}' when no author specified to avoid LaTeX
+ errors.
+ + Include fancyvrb code in header only if needed -- that is, only
+ if there is actually code in a footnote.
+ + Use \url{} for autolinks.
+ + Include [mathletters] option in ucs package, so that basic unicode
+ Greek letters will work correctly.
+
+ * RST writer: Force blank line before lists, so that sublists will
+ be handled correctly.
+
+ * Docbook writer: Fixed a bug: email links with text, like
+ [foo](me@bar.baz), were being incorrectly treated as autolinks.
+
+ * Removed Text.ParserCombinators.Pandoc and moved all its functions to
+ Text.Pandoc.Shared.
+
+ * Text.Pandoc.Shared:
+
+ + Added defaultWriterOptions.
+ + Added writerTableOfContents to WriterOptions.
+ + Added writerIgnoreNotes option to WriterOptions. This is needed
+ for processing header blocks for a table of contents, since notes on
+ headers should not appear in the TOC.
+ + Added prettyprinting for native Table format.
+ + Removed some unneeded imports.
+ + Moved escape and nullBlock parsers from
+ Text.ParserCombinators.Pandoc, since the latter is for
+ general-purpose parsers that don't depend on Text.Pandoc.Definition.
+ + Moved isHeaderBlock from Text.Pandoc.Writers.HTML.
+ + Moved Element, headerAtLeast, and hierarchicalize from Docbook
+ writer, because HTML writer now uses these in constructing a table
+ of contents.
+ + Added clauses for new inline elements (Strikeout, Superscript,
+ Subscript) to refsMatch.
+ + Removed backslashEscape; added new functions escapeStringUsing and
+ backslashEscapes.
+ + Moved failIfStrict from markdown reader, since it is now used also
+ by the HTML reader.
+ + Added a 'try' to the definition of indentSpaces.
+ + In definition of 'reference', added check to make sure it's not a note
+ reference.
+ + Added functions: camelCaseToHyphenated, toRomanNumeral,
+ anyOrderedListMarker, orderedListmarker, orderedListMarkers,
+ charsInBalanced', withHorizDisplacement, romanNumeral
+ + Fixed a bug in the anyLine parser. Previously it would parse an empty
+ string "", but it should fail on an empty string, or we get an error
+ when it is used inside "many" combinators.
+ + Removed followedBy' parser, replacing it with the lookAhead parser from
+ Parsec.
+ + Added some needed 'try's before multicharacter parsers, especially in
+ 'option' contexts.
+ + Removed the 'try' from the 'end' parser in 'enclosed', so that
+ 'enclosed' behaves like 'option', 'manyTill', etc.
+ + Added lineClump parser, which parses a raw line block up to and
+ including any following blank lines.
+ + Renamed parseFromStr to parseFromString.
+ + Added a 'try' to the 'end' parser in 'enclosed'. This makes errors in
+ the use of 'enclosed' less likely. Removed some now-unnecessary 'try's
+ in calling code.
+ + Removed unneeded 'try' in blanklines.
+ + Removed endsWith function and rewrote calling functions to use
+ isSuffixOf instead.
+ + Added >>~ combinator.
+ + Fixed bug in normalizeSpaces: Space:Str "":Space should compress to
+ Space.
+
+ * Refactored runtests.pl; added separate tests for tables.
+
+ * Shell scripts:
+
+ + Added -asxhtml flag to tidy in html2markdown. This will
+ perhaps help the parser, which expects closing tags.
+ + Modified markdown2pdf to run pdflatex a second time if --toc or
+ --table-of-contents was specified; otherwise the table of
+ contents won't appear.
+ + Modified markdown2pdf to print a helpful message if the 'ulem'
+ LaTeX package is required and not found.
+
+ * Changes to build process:
+
+ + Dropped support for compilation with GHC 6.4. GHC 6.6 or higher
+ is now required.
+ + Removed cabalize and Pandoc.cabal.in. The repository now contains
+ pandoc.cabal itself.
+ + Pandoc.cabal has been changed to pandoc.cabal, because HackageDB
+ likes the cabal file to have the same name as the tarball.
+ + Expanded and revised the package description in pandoc.cabal.
+ Revised the package synopsis.
+ + The tarball built by 'make tarball' now contains files built from
+ templates (including man pages and shell scripts), so pandoc can
+ be built directly using Cabal tools, without preprocessing.
+ + Executable binaries are now stripped before installing.
+ + Man pages are now generated from markdown sources, using pandoc's
+ man page writer.
+ + Use HTML version of README (instead of RTF) in Mac OS X installer.
+ + Instead of testing for the existence of a pandoc symlink in build-exec,
+ use ln -f.
+
+ * Documentation:
+
+ + Updated README and man pages with information on new features.
+ + Updated INSTALL instructions with some useful clarifications and
+ links.
+ + Updated web content.
+
+ * Added FreeBSD port.
+
+ [ Recai Oktaş ]
+
+ * debian/control:
+
+ + Changed pandoc's Build-Depends to include libghc6-mtl-dev and
+ libghc6-xhtml-dev. Removed libghc6-html-dev.
+ + Suggest texlive-latex-recommended | tetex-extra instead of
+ tetex-bin. This brings in fancyvrb and unicode support.
+
+ -- Recai Oktaş <roktas@debian.org> Tue, 16 Jan 2007 00:37:21 +0200
+
+pandoc (0.3) unstable; urgency=low
+
+ [ John MacFarlane ]
+
+ * Changes in pandoc options:
+
+ + Allow options to follow or precede arguments.
+ + Changed '--smartypants' to '--smart' and adjusted symbols accordingly.
+ + Added '--strict' option.
+ + Added '-o/--output' option.
+ + Added '--dump-args' and '--ignore-args' options (for use in wrappers).
+ + Modified '-v' and '-h' output to go to STDERR, not STDOUT, and return
+ error conditions. This is helpful for writing wrappers.
+ + Added copyright message to '-v' output, modeled after FSF messages.
+ + Reformatted usage message so that it doesn't wrap illegibly.
+ + Removed extra blanks after '-h' and '-D' output.
+
+ * Added docbook writer.
+
+ * Added implicit setting of default input and output format based
+ on input and output filename extensions. These defaults are
+ overridden if explicit input and output formats are specified using
+ '-t', '-f', '-r', or '-w' options. Documented in pandoc(1) man page
+ and README.
+
+ * Allow ordered list items to begin with (single) letters, as well
+ as numbers. The list item marker may now be terminated either by
+ '.' or by ')'. This extension to standard markdown is documented
+ in README.
+
+ * Revised footnote syntax. (See README for full details.) The
+ '[^1]' format now standard in markdown extensions is supported,
+ as are inline footnotes with this syntax: '^[My note.]'.
+ The earlier footnote syntax '^(1)' is no longer supported.
+
+ * Improved HTML representation of footnotes. All footnotes
+ are now auto-numbered and appear in an ordered list at the
+ end of the HTML document. Since the default appearance is now
+ acceptable, the old footnote styles have been removed from the
+ HTML header.
+
+ * Bug fixes:
+
+ + Fixed a serious bug in the markdown, LaTeX, and RST readers.
+ These readers ran 'runParser' on processed chunks of text to handle
+ embedded block lists in lists and quotation blocks. But then
+ any changes made to the parser state in these chunks was lost,
+ as the state is local to the parser. So, for example, footnotes
+ didn't work in quotes or list items. The fix: instead of calling
+ runParser on some raw text, use setInput to make it the input, then
+ parse it, then use setInput to restore the input to what it was
+ before. This is shorter and more elegant, and it fixes the problem.
+ + Fixed bug in notFollowedBy' combinator (adding 'try' before
+ 'parser'). Adjusted code that uses this combinator accordingly.
+ + Fixed bug in RTF writer that caused improper indentation on
+ footnotes occurring in indented blocks like lists.
+ + Fixed parsing of metadata in LaTeX reader. Now the title, author,
+ and date are parsed correctly. Everything else in the preamble
+ is skipped.
+ + Modified escapedChar in LaTeX reader to allow a '\' at the end of a
+ line to count as escaped whitespace.
+ + Modified LaTeX reader to produce inline links rather than reference
+ links. Otherwise, links in footnotes aren't handled properly.
+ + Fixed handling of titles in links in Markdown reader, so that
+ embedded quotation marks are now handled properly.
+ + Fixed Markdown reader's handling of embedded brackets in links.
+ + Fixed Markdown reader so that it only parses bracketed material
+ as a reference link if there is actually a corresponding key.
+ + Revised inline code parsing in Markdown reader to conform to
+ markdown standard. Now any number of `s can begin inline code,
+ which will end with the same number of `s. For example, to
+ have two backticks as code, write ``` `` ```. Modified Markdown
+ writer accordingly.
+ + Fixed bug in text-wrapping routine in Markdown and RST writers.
+ Now LineBreaks no longer cause wrapping problems.
+ + Supported hexadecimal numerical entity references as well as
+ decimal ones.
+ + Fixed bug in Markdown reader's handling of underscores and other
+ inline formatting markers inside reference labels: for example,
+ in '[A_B]: /url/a_b', the material between underscores was being
+ parsed as emphasized inlines.
+ + Changed Markdown reader's handling of backslash escapes so that
+ only non-alphanumeric characters can be escaped. Strict mode
+ follows Markdown.pl in only allowing a select group of punctuation
+ characters to be escaped.
+ + Modified HTML reader to skip a newline following a <br> tag.
+ Otherwise the newline will be treated as a space at the beginning
+ of the next line.
+
+ * Made handling of code blocks more consistent. Previously, some
+ readers allowed trailing newlines, while others stripped them.
+ Now, all readers strip trailing newlines in code blocks. Writers
+ insert a newline at the end of code blocks as needed.
+
+ * Modified readers to make spacing at the end of output more consistent.
+
+ * Minor improvements to LaTeX reader:
+
+ + '\thanks' now treated like a footnote.
+ + Simplified parsing of LaTeX command arguments and options.
+ commandArgs now returns a list of arguments OR options (in
+ whatever order they appear). The brackets are included, and
+ a new stripFirstAndLast function is provided to strip them off
+ when needed. This fixes a problem in dealing with \newcommand
+ and \newenvironment.
+
+ * Revised RTF writer:
+
+ + Default font is now Helvetica.
+ + An '\f0' is added to each '\pard', so that font resizing works
+ correctly.
+
+ * Moved handling of "smart typography" from the writers to the Markdown
+ and LaTeX readers. This allows great simplification of the writers
+ and more accurate smart quotes, dashes, and ellipses. DocBook can
+ now use '<quote>'. The '--smart' option now toggles an option in
+ the parser state rather than a writer option. Several new kinds
+ of inline elements have been added: Quoted, Ellipses, Apostrophe,
+ EmDash, EnDash.
+
+ * Changes in HTML writer:
+
+ + Include title block in header even when title is null.
+ + Made javascript obfuscation of emails even more obfuscatory,
+ by combining it with entity obfuscation.
+
+ * Changed default ASCIIMathML text color to black.
+
+ * Test suite:
+
+ + Added --strip-trailing-cr option to diff in runtests.pl, for
+ compatibility with Windows.
+ + Added regression tests with footnotes in quote blocks and lists.
+
+ * Makefile changes:
+
+ + osx-pkg target creates a Mac OS X package (directory). New osx
+ directory contains files needed for construction of the package.
+ + osx-dmg target creates a compressed disk image containing the package.
+ + win-pkg target creates Windows binary package.
+ + tarball target creates distribution source tarball.
+ + website target generates pandoc's website automatically, including
+ demos. New 'web' directory containts files needed for construction
+ of the website (which will be created as the 'pandoc' subdirectory
+ of 'web').
+ + Makefile checks to see if we're running Windows/Cygwin; if so,
+ a '.exe' extension is added to each executable in EXECS.
+
+ * Removed all wrappers except markdown2pdf and html2markdown.
+
+ * Added new wrapper hsmarkdown, to be used as a drop-in replacement
+ for Markdown.pl. hsmarkdown calls pandoc with the '--strict'
+ option and disables other options.
+
+ * Added code to html2markdown that tries to determine the character
+ encoding of an HTML file, by parsing the "Content-type" meta tag.
+
+ + If the encoding can't be determined, then if the content is local,
+ the local encoding is used; if it comes from a URL, UTF-8 is used
+ by default.
+ + If input is from STDIN, don't try to determine character encoding.
+ + Encoding can be specified explicitly using '-e' option.
+
+ * Improved warning messages in wrappers:
+
+ + Print warning if iconv not available
+ + More user-friendly error messages in markdown2pdf, when
+ pdflatex fails.
+
+ * Code cleanup:
+
+ + Renamed 'Text/Pandoc/HtmlEntities' module to
+ 'Text/Pandoc/Entities'. Also changed function names so as
+ not to be HTML-specific.
+ + Refactored SGML string escaping functions from HTML and Docbook
+ writers into Text/Pandoc/Shared. (escapeSGML, stringToSGML)
+ + Removed 'BlockQuoteContext' from ParserContext, as it isn't
+ used anywhere.
+ + Removed splitBySpace and replaced it with a general, polymorphic
+ splitBy function.
+ + Refactored LaTeX reader for clarity (added isArg function).
+ + Converted some CR's to LF's in src/ui/default/print.css.
+ + Added license text to top of source files.
+ + Added module data for haddock to source files.
+ + Reformatted code for consistency.
+
+ * Rewrote documentation and man pages. Split README into INSTALL
+ and README.
+
+ * Split LICENSE into COPYING and COPYRIGHT.
+
+ * Removed TODO, since we now maintain ToDo on the wiki.
+
+ * Made COPYRIGHT in top level a symlink to debian/copyright, to avoid
+ duplication.
+
+ [ Recai Oktaş ]
+
+ * Revamped build process to conform to debian standards and created
+ a proper debian package. Closes: #391666.
+
+ * Modified build process to support GHC 6.6.
+
+ + The package can still be compiled using GHC 6.4.2, though because
+ of dependencies the "make deb" target works only with GHC 6.6+.
+ + The script 'cabalize' is used to create an appropriate
+ 'Pandoc.cabal' from 'Pandoc.cabal.in', depending on the GHC and
+ Cabal versions.
+
+ * Refactored template processing (fillTemplates.pl).
+
+ * Modified wrapper scripts to make them more robust and portable.
+ To avoid code duplication and ensure consistency, wrappers are
+ generated via a templating system from templates in src/wrappers.
+
+ + Wrappers now accept multiple filenames, when appropriate.
+ + Spaces and tabs allowed in filenames.
+ + getopts shell builtin is used for portable option parsing.
+ + Improved html2markdown's web grabber code, making it more robust,
+ configurable and verbose. Added '-e', '-g' options.
+
+ -- Recai Oktaş <roktas@debian.org> Fri, 05 Jan 2007 09:41:19 +0200
+
+pandoc (0.2) unstable; urgency=low
+
+ * Fixed unicode/utf-8 translation
+
+ -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400
+
+pandoc (0.1) unstable; urgency=low
+
+ * Initial creation of debian package
+
+ -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400
diff --git a/debian/changelog b/debian/changelog
deleted file mode 100644
index 2643b7637..000000000
--- a/debian/changelog
+++ /dev/null
@@ -1,1381 +0,0 @@
-pandoc (0.47) UNRELEASED; urgency=low
-
- [ Recai Oktaş ]
-
- * Debian packaging changes:
-
- + Migrate to GHC 6.8.2. Closes: #461606
- + Add new dependencies libghc6-regex-compat-dev and libghc6-uulib-dev.
- + Remove the code in debian/rules which attempts to remove empty ghc6.6
- include directory. This code may cause an installation failure for the
- -dev package. Closes: #460658
- + Fix doc-base to prevent a lintian warning.
-
- -- Recai Oktaş <roktas@debian.org> Sat, 09 Feb 2008 04:41:46 +0200
-
-pandoc (0.46) unstable; urgency=low
-
- [ John MacFarlane ]
-
- * Made -H, -A, and -B options cumulative: if they are specified
- multiple times, multiple files will be included.
-
- * Added optional HTML sanitization using a whitelist.
- When this option is specified (--sanitize-html on the command line),
- unsafe HTML tags will be replaced by HTML comments, and unsafe HTML
- attributes will be removed. This option should be especially useful
- for those who want to use pandoc libraries in web applications, where
- users will provide the input.
-
- + Main.hs: Added --sanitize-html option.
-
- + Text.Pandoc.Shared: Added stateSanitizeHTML to ParserState.
-
- + Text.Pandoc.Readers.HTML:
- - Added whitelists of sanitaryTags and sanitaryAttributes.
- - Added parsers to check these lists (and state) to see if a given
- tag or attribute should be counted unsafe.
- - Modified anyHtmlTag and anyHtmlEndTag to replace unsafe tags
- with comments.
- - Modified htmlAttribute to remove unsafe attributes.
- - Modified htmlScript and htmlStyle to remove these elements if
- unsafe.
-
- + Modified README and man pages to document new option.
-
- * Improved handling of email addresses in markdown and reStructuredText.
- Consolidated uri and email address parsers. (Resolves Issue #37.)
-
- + New emailAddress and uri parsers in Text.Pandoc.Shared.
- - uri parser uses parseURI from Network.URI.
- - emailAddress parser properly handles email addresses with periods
- in them.
-
- + Removed uri and emailAddress parsers from Text.Pandoc.Readers.RST
- and Text.Pandoc.Readers.Markdown.
-
- * Markdown reader:
-
- + Fixed emph parser so that "*hi **there***" is parsed as a Strong
- nested in an Emph. (A '*' is only recognized as the end of the
- emphasis if it's not the beginning of a strong emphasis.)
-
- + Moved blockQuote parser before list parsers for performance.
-
- + Modified 'source' parser to allow backslash-escapes in URLs.
- So, for example, [my](/url\(1\)) yields a link to /url(1).
- Resolves Issue #34.
-
- + Disallowed links within links. (Resolves Issue #35.)
- - Replaced inlinesInBalanced with inlinesInBalancedBrackets, which
- instead of hard-coding the inline parser takes an inline parser
- as a parameter.
- - Modified reference and inlineNote to use inlinesInBalancedBrackets.
- - Removed unneeded inlineString function.
- - Added inlineNonLink parser, which is now used in the definition of
- reference.
- - Added inlineParsers list and redefined inline and inlineNonLink parsers
- in terms of it.
- - Added failIfLink parser.
-
- + Better handling of parentheses in URLs and quotation marks in titles.
- - 'source' parser first tries to parse URL with balanced parentheses;
- if that doesn't work, it tries to parse everything beginning with
- '(' and ending with ')'.
- - source parser now uses an auxiliary function source'.
- - linkTitle parser simplified and improved, under assumption that it
- will be called in context of source'.
-
- + Make 'block' conditional on strictness state, instead of using
- failIfStrict in block parsers. Use a different ordering of parsers
- in strict mode (raw HTML block before paragraph) for performance.
- In non-strict mode use rawHtmlBlocks instead of htmlBlock.
- Simplified htmlBlock, since we know it's only called in strict
- mode.
-
- + Improved handling of raw HTML. (Resolves Issue #36.)
- - Tags that can be either block or inline (e.g. <ins>) should
- be treated as block when appropriate and as inline when
- appropriate. Thus, for example,
- <ins>hi</ins>
- should be treated as a paragraph with inline <ins> tags, while
- <ins>
- hi
- </ins>
- should be treated as a paragraph within <ins> tags.
- - Moved htmlBlock after para in list of block parsers. This ensures
- that tags that can be either block or inline get parsed as inline
- when appropriate.
- - Modified rawHtmlInline' so that block elements aren't treated as
- inline.
- - Modified para parser so that paragraphs containing only HTML tags and
- blank space are not allowed. Treat these as raw HTML blocks instead.
-
- + Fixed bug wherein HTML preceding a code block could cause it to
- be parsed as a paragraph. The problem is that the HTML parser
- used to eat all blank space after an HTML block, including the
- indentation of the code block. (Resolves Issue #39.)
- - In Text.Pandoc.Readers.HTML, removed parsing of following space
- from rawHtmlBlock.
- - In Text.Pandoc.Readers.Markdown, modified rawHtmlBlocks so that
- indentation is eaten *only* on the first line after the HTML
- block. This means that in
- <div>
- foo
- <div>
- the foo won't be treated as a code block, but in
- <div>
-
- foo
-
- </div>
- it will. This seems the right approach for least surprise.
-
- * RST reader:
-
- + Fixed bug in parsing explicit links (resolves Issue #44).
- The problem was that we were looking for inlines until a '<' character
- signaled the start of the URL; so, if you hit a reference-style link,
- it would keep looking til the end of the document. Fix: change
- inline => (notFollowedBy (char '`') >> inline). Note that this won't
- allow code inlines in links, but these aren't allowed in resT anyway.
-
- + Cleaned up parsing of reference names in key blocks and links.
- Allow nonquoted reference links to contain isolated '.', '-', '_', so
- so that strings like 'a_b_' count as links.
-
- + Removed unnecessary check for following link in str.
- This is unnecessary now that link is above str in the definition of
- 'inline'.
-
- * HTML reader:
-
- + Modified rawHtmlBlock so it parses </html> and </body> tags.
- This allows these tags to be handled correctly in Markdown.
- HTML reader now uses rawHtmlBlock', which excludes </html> and </body>,
- since these are handled in parseHtml. (Resolves Issue #38.)
-
- + Fixed bug (emph parser was looking for <IT> tag, not <I>).
-
- + Don't interpret contents of style tags as markdown.
- (Resolves Issue #40.)
- - Added htmlStyle, analagous to htmlScript.
- - Use htmlStyle in htmlBlockElement and rawHtmlInline.
- - Moved "script" from the list of tags that can be either block or
- inline to the list of block tags.
-
- + Modified rawHtmlBlock to use anyHtmlBlockTag instead of anyHtmlTag
- and anyHtmlEndTag. This fixes a bug in markdown parsing, where
- inline tags would be included in raw HTML blocks.
-
- + Modified anyHtmlBlockTag to test for (not inline) rather than
- directly for block. This allows us to handle e.g. docbook in
- the markdown reader.
-
- * LaTeX reader: Properly recognize --parse-raw in rawLaTeXInline.
- Updated LaTeX reader test to use --parse-raw.
-
- * HTML writer:
-
- + Modified rules for automatic HTML header identifiers to
- ensure that identifiers begin with an alphabetic character.
- The new rules are described in README. (Resolves Issue #33.)
-
- + Changed handling of titles in HTML writer so you don't get
- "titleprefix - " followed by nothing.
-
- * ConTeXt writer: Use wrappers around Doc elements to ensure proper
- spacing. Each block element is wrapped with either Pad or Reg.
- Pad'ed elements are guaranteed to have a blank line in between.
-
- * RST writer:
-
- + Refactored RST writer to use a record instead of a tuple for state,
- and to include options in state so it doesn't need to be passed as
- a parameter.
-
- + Use an interpreted text role to render math in restructuredText.
- See http://www.american.edu/econ/itex2mml/mathhack.rst for the
- strategy.
-
- [ Recai Oktaş ]
-
- * Debian packaging changes:
-
- + Remove the empty 'include' directory in -dev package, which lintian
- complains about.
- + Bump Standarts-Version to 3.7.3.
- + Use new 'Homepage:' field to specify the upstream URL on suggestion of
- lintian.
-
- -- Recai Oktaş <roktas@debian.org> Tue, 08 Jan 2008 05:13:31 +0200
-
-pandoc (0.45) unstable; urgency=low
-
- [ John MacFarlane ]
-
- * Simplified parsing of reference keys and notes in markdown and RST
- readers: The Reference data structure from Text.Pandoc.Shared is no
- longer needed, since referenceKey and noteBlock parses return strings
- (as many blank lines as were occupied by the key or note) and update
- state themselves. getPosition and setPosition are now used to ensure
- that error messages will give the correct line number. This yields
- cleaner (and slightly faster) code, with more accurate parsing error
- messages.
-
- * Added new Math inline element:
-
- + Markdown and LaTeX readers now convert TeX math into Math elements,
- not TeX.
- + This allows math to be treated differently from raw TeX in output.
- TeX elements are no longer printed in output formats other than
- Markdown, LaTeX, and ConTeXt. But Math elements are always printed.
-
- * New default handling of math in writers:
-
- + New module Text.Pandoc.Readers.TeXMath exports readTeXMath, which
- parses raw TeX math and outputs a string of Pandoc inlines that
- tries to render it as far as possible using unicode characters,
- lapsing into literal TeX when needed.
- + readTeXMath is now used for default HTML output in HTML, S5, RTF,
- and Docbook, if no other method for displaying math in HTML is
- specified. Enclosing $'s are no longer printed by default.
- + By default, math is put inside <span class="math">. This way it can be
- distinguished from the surrounding text, e.g. put in a different
- font.
-
- * New --gladtex and --mimetex options for display of math in HTML:
-
- + If --gladtex is specified, math is output between <eq> tags, so
- it can be processed by gladTeX.
- + If --mimetex is specified, math is put in <img> tags with a link
- to the mimetex CGI script (or any other script that takes TeX math
- as input and outputs an image). The URL of the script may be
- specified, but defaults to /cgi-bin/mimetex.cgi.
- + HTMLMathMethod structure in WriterOptions keeps track of how to
- display math in HTML output.
- + Updated README with a description of the four options for displaying
- math in HTML.
-
- * HTML reader:
-
- + Fixed bug: parser for minimized attributes should not swallow
- trailing spaces.
- + Simplified HTML attribute parsing.
- + Changed parsing of code blocks in HTML reader: <code> tag is no
- longer needed. <pre> suffices. All HTML tags in the code block
- (e.g. for syntax highlighting) are skipped, because they are not
- portable to other output formats. A <code>...</code> block not
- surrounded by <pre> now counts as inline HTML, not a code block.
- + Remove just one leading and one trailing newline from contents of
- <pre>...</pre> in codeBlock parser.
-
- * Markdown reader:
-
- + Removed support for box-style block quotes.
- + Require space before title in links and references.
- This fixes a bug in parsing URLs like http://silly/url(withparen).
- + Improved and simplified setextHeader parser.
- + Fixed logic in smart quote parsing, adding some needed 'try'
- statements.
- + Fixed smart quote parsing so that unicode characters 8216 and 8217
- are recognized as single quotes, and 8220 and 8221 as double quotes.
-
- * RST reader:
-
- + Fixed bug in parsing of code blocks. Previously a full tab indent
- was required, but RST allows code to be indented any amount.
- Resolves Issue #27.
- + Allow field lists to be indented.
- + Parse the contents of field lists instead of treating as a raw string.
- + Represent field lists as definition lists instead of blockquotes.
- + Fixed bug in which metadata would be overridden if the document
- contained multiple field lists.
- + Parse fields associated with '.. image::' blocks, and use 'alt'
- field, if given, for image alt and title attributes.
-
- * LaTeX reader:
-
- + Modified specialChar so that '"' characters are parsed.
- + Fixed a bug in parsing of \[ \] math blocks (thanks to Mark Kalderon).
-
- * HTML writer:
-
- + Changes in handling of math (see above).
- + Don't produce HTML for table of contents if there are
- no headers. (This would be an empty list, which is invalid XHTML.)
-
- * Markdown writer:
-
- + Don't print title attribute if title is empty. (This differs from
- the behavior of Markdown.pl, and agrees with PHP Markdown. But John
- Gruber has indicated that he prefers this behavior.) Adjusted test
- suite accordingly.
- + Fixed incorrect line wrapping in paragraphs including hard line
- breaks. Resolves Issue #25.
- + Fixed bug in markdown writer: If an ordered list item began with
- a marker greater than 3 characters in width, and the item took more
- than one line, it would appear on the line after the list marker,
- e.g.:
-
- (12)
- My list item.
- Multiline.
-
- Now it works as follows:
-
- (12) My list item.
- Multiline.
-
- * RST writer
-
- + Fixed bug in RST writer's handling of ordered lists. Previously,
- list items with multiple lines would not always line up with
- single-line list items. Now, list items are nested the length of
- the list marker + 1. This looks better and ensures that list items
- all line up. (Note that list markers are padded to the length of
- the longest list marker in the series.)
- + Use 3-space indent for unordered lists.
- + If label for a link reference contains a colon, surround it by `
- signs so it won't be interpreted as the end of the link label.
-
- * LaTeX writer:
-
- + Cleaner output for footnotes. Footnotes now always begin on a new
- line, and the final } is on a line by itself only when it needs to
- be (i.e. only when the note ends with a Verbatim environment).
- + Added writer options to state, so state doesn't need to be passed as
- a parameter.
- + Text wrapping now provided, using wrapTeXIfNeeded.
-
- * ConTeXt writer: many improvements for more idiomatic ConTeXt output
- (thanks to Idris Samawi Hamid for suggestions).
-
- + PrettyPrint module now used for output.
- + Writer options are now in state, so they don't have to be passed as
- a parameter.
- + Text wrapping now provided, using wrapTeXIfNeeded.
- + Better treatment of footnotes: footnotes are always on lines by
- themselves, and the final } is on a line by itself only when
- it needs to be (after \stoptyping).
- + Use \subject, \subsubject, ... or \section, \subsection, ... for headings,
- depending on whether --number-sections option is selected.
- + Extra blank line inserted after \stopitemize
- + Use new, "official" definition of blockquote environment. Also, use
- blank line after \startblockquote to balance blank line at the end.
- + Both itemized and enumerated lists are now generated using
- \start-stopitemize, with appropriate options. Removed definitions
- of ltxenum and ltxitem, which are no longer needed. Provided
- defaults for itemized lists in the preamble. State keeps track of
- ordered list level, so that when default numbering is specified,
- the appropriate scheme can be used.
- + Changed \useurl to \useURL.
- + Changed link color from red to blue.
- + Use \subsubsubsubsection etc., since these are supported
- (up to at least sub x 5).
-
- * Text.Pandoc.Shared:
-
- + Save and restore position in parseFromString, so that accurate
- error messages can be given.
- + Improved efficiency of romanNumeral parser.
- + Added wrappedTeX and wrapTeXIfNeeded functions. These ensure
- that footnotes occur on lines by themselves (to make them
- easier to see and move) and do not screw up line wrapping.
-
- * Text.Pandoc.UTF8: modified fromUTF8 to strip out the BOM
- if present. Windows Notepad and other applications insert a
- BOM at the beginning of a UTF8 file.
-
- * Main.hs (tabFilter): Treat '\r' at end of line as newline (in
- addition to "\r\n" and '\n').
-
- * Added a writer option for wrapped text and a command-line option
- '--no-wrap', which disables text wrapping and minimizes whitespace
- in HTML. (Resolves Issue #26.)
-
- + Added support for '--no-wrap' to Main.hs.
- + Added wrapIfNeeded function to Text.Pandoc.Shared.
- + Use wrapIfNeeded instead of wrapped in the RST, Man, Docbook, and
- Markdown writers.
- + Added render and renderFragment helpers to HTML writer.
-
- * Modified html2markdown to run tidy only if the HTML cannot be
- parsed. Previously html2markdown piped all input through tidy
- before passing it to pandoc. This caused problems on certain pages
- (e.g. http://daringfireball.com/markdown) which have well-formed
- XHTML that causes tidy to choke. The solution is to pipe through
- tidy only if pandoc cannot parse the input by itself. This means
- that a temp file is now always used, even when input comes from a
- local file or standard input.
-
- * Removed 'version' constant from Main.hs; added 'pandocVersion' to
- Text.Pandoc library.
-
- * pandoc.cabal:
-
- + Modified to work with GHC 6.8 and Cabal configurations. (For GHC
- 6.8, pretty and containers must be added to Build-Depends, and it
- is desirable to use the -O2 compiler option.) Cabal configurations
- allows one to select options depending on the compiler version.
- For GHC 6.6, the splitBase option can be disabled.
- + pandoc.cabal.ghc66 is provided for users with older versions of
- Cabal, which do not support configurations.
- + Use Ghc-Prof-Options to ensure that '-auto-all' is used when
- '--enable-(executable|library)-profiling' is specified. Updated
- PROFILING instructions accordingly.
-
- * Makefile:
-
- + Makefile now checks GHC version. If GHC is 6.6, pandoc.cabal.ghc66
- is copied to pandoc.cabal, and the old pandoc.cabal is copied
- to pandoc.cabal.orig. Otherwise, pandoc.cabal is copied to
- pandoc.cabal.orig but otherwise unmodified. This way, the Makefile
- will work properly with either GHC 6.6 or 6.8.
- + Changed BUILDCONF to point to dist/setup-config, not .setup-config.
- This is where current versions of Cabal put it.
- + Added $(BUILDCMD) target, so setup doesn't get compiled every time.
- + Removed dependency of templates on ./templates, which is circular
- now that templates is a subdirectory of the top-level.
-
- * MacPorts Portfile:
-
- + Modified to install the pandoc library in addition to programs.
- + Installation must be done manually rather than using Makefile's
- install-all.
- + Note that the library must be registered in the activate phase,
- after the library files have been copied out of the destroot.
- Cabal generates a 'register.sh' script that will do this.
-
- * debian/control: Added libghc6-network-dev, libghc6-xhtml-dev, and
- libghc6-mtl-dev as dependencies for libghc6-pandoc-dev.
- Closes: #445235
-
- * debian/rules: Converted to UTF-8.
-
- * Changed pandoc home page to http://johnmacfarlane.net/pandoc/.
-
- * Updated ASCIIMathML.js to latest version.
-
- * Directory structure:
-
- + Moved everything from src into the top-level directory.
- + Changed references to source directory in Makefile and
- pandoc.cabal.*.
- + Moved ASCIIMathML.js, headers, and ui into templates directory.
- + Modified fillTemplates.pl to reflect new paths.
-
- [ Recai Oktaş ]
-
- * Makefile: Fixed the issue of having two copies of the library
- documentation under some usage scenarios.
-
- * Replaced 'ghc' with '$(GHC)' in Makefile, and made GHC
- and GHC_PKG configurable through the environment, to support
- unusual ghc installations. For example:
- GHC=/opt/ghc/bin/ghc GHC_PKG=/opt/ghc/bin/ghc-pkg make
-
- -- Recai Oktaş <roktas@debian.org> Sun, 07 Oct 2007 20:51:43 +0300
-
-pandoc (0.44) unstable; urgency=low
-
- [ John MacFarlane ]
-
- * Fixed bug in HTML writer: when --toc was used, anchors were put around
- headers, which is invalid XHTML (block content within inline element).
- Now the anchors are put inside the header tags. Resolves Issue #23.
-
- * Added xmlns attribute to html element in html writer tests.
- This attribute is added by more recent versions of the
- xhtml library (>= 3000), and is required for valid XHTML.
-
- [ Recai Oktaş ]
-
- * On configure, compile 'Setup.hs' to 'setup' and use 'setup' as the build
- command instead of 'runhaskell', which, on some platforms (such as s390,
- alpha, m68k), throws the following error:
-
- runhaskell Setup.hs configure --prefix=/usr
- ghc-6.6.1: not built for interactive use
-
- This causes a serious FTBFS bug. Closes: #440668.
-
- -- Recai Oktaş <roktas@debian.org> Mon, 03 Sep 2007 18:24:02 +0300
-
-pandoc (0.43) unstable; urgency=low
-
- [ John MacFarlane ]
-
- * The focus of this release is performance. The markdown parser
- is about five times faster than in 0.42, based on benchmarks
- with the TextMate manual.
-
- * Main.hs: Replaced CRFilter and tabFilter with single function
- tabFilter, which operates on the whole string rather than breaking
- it into lines, and handles dos-style line-endings as well as tabs.
-
- * Added separate LaTeX reader and native reader tests; removed
- round-trip tests.
-
- * Text.Pandoc.Shared:
-
- + Removed tabsToSpaces and tabsInLine (they were used only in Main.hs.)
- + General code cleanup (to elimante warnings when compiling with -Wall.)
- + Added 'wrapped' function, which helps wrap text into paragraphs,
- using the prettyprinting library.
- + Rewrote charsInBalanced and charsInBalanced'.
- - Documented restriction: open and close must be distinct characters.
- - Rearranged options for greater efficiency.
- - Bug fix: Changed inner call to charsInBalanced inside
- charsInBalanced' to charsInBalanced'.
- + anyLine now requires that the line end with a newline (not eof).
- This is a harmless assumption, since we always add newlines to the
- end of a block before parsing with anyLine, and it yields a 10% speed
- boost.
- + Removed unnecessary 'try' in anyLine.
- + Removed unneeded 'try' from romanNumeral parser.
- + Use notFollowedBy instead of notFollowedBy' in charsInBalanced.
- + Removed unneeded 'try' in parseFromString.
- + Removed unneeded 'try' from stringAnyCase. (Now it behaves
- like 'string'.)
- + Changed definition of 'enclosed' in Text.Pandoc.Shared so that
- 'try' is not automatically applied to the 'end' parser. Added
- 'try' in calls to 'enclosed' where needed. Slight speed increase.
-
- * Writers:
-
- + Replaced individual wrapping routines in RST, Man, and Markdown
- writers with 'wrapped' from Text.Pandoc.Shared.
- + Rewrote LaTeX writer to use the prettyprinting library,
- so we get word wrapping, etc.
- + Modified latex writer tests for new latex writer using prettyprinter.
- + Fixed bug in LaTeX writer: autolinks would not cause
- '\usepackage{url}' to be put in the document header. Also, changes
- to state in enumerated list items would be overwritten.
- + In Markdown writer, escape paragraphs that begin with ordered list
- markers, so they don't get interpreted as ordered lists.
-
- * Text.Pandoc.Reades.LaTeX:
-
- + Fixed bug in LaTeX reader, which wrongly assumed that the roman
- numeral after "enum" in "setcounter" would consist entirely of
- "i"s. 'enumiv' is legitimate.
- + LaTeX command and environment names can't contain numbers.
- + Rearranged order of parsers in inline for slight speed improvement.
- + Added '`' to special characters and 'unescapedChar'.
-
- * Text.Pandoc.Readers.RST:
-
- + Removed unneeded try's in RST reader; also minor code cleanup.
- + Removed tabchar.
- + Rearranged parsers in inline (doubled speed).
-
- * Text.Pandoc.Readers.Markdown:
-
- + Skip notes parsing if running in strict mode. (This yields a nice
- speed improvement in strict mode.)
- + Simplify autolink parsing code, using Network.URI to test for
- URIs. Added dependency on network library to debian/control and
- pandoc.cabal.
- + More perspicuous definition of nonindentSpaces.
- + Removed unneeded 'try' in 'rawLine'.
- + Combined linebreak and whitespace into a new whitespace parser, to
- avoid unnecessary reparsing of space characters.
- + Removed unnecessary 'try' in 'codeBlock', 'ellipses', 'noteMarker',
- 'multilineRow', 'dashedLine', 'rawHtmlBlocks'.
- + Use lookAhead in parsers for setext headers and definition lists
- to see if the next line begins appropriately; if not, don't waste
- any more time parsing.
- + Don't require blank lines after code block. (It's sufficient to
- end code block with a nonindented line.)
- + Changed definition of 'emph': italics with '_' must not
- be followed by an alphanumeric character. This is to help
- prevent interpretation of e.g. [LC_TYPE]: my_type as
- '[LC<em>TYPE]:my</em>type'.
- + Improved Markdown.pl-compatibility in referenceLink: the two parts
- of a reference-style link may be separated by one space, but not
- more... [a] [link], [not] [a link].
- + Fixed markdown inline code parsing so it better accords with
- Markdown.pl: the marker for the end of the code section is a clump
- of the same number of `'s with which the section began, followed
- by a non-` character. So, for example,
- ` h ``` i ` -> <code>h ``` i</code>.
- + Split 'title' into 'linkTitle' and 'referenceTitle', since the
- rules are slightly different.
- + Rewrote 'para' for greater efficiency.
- + Rewrote link parsers for greater efficiency.
- + Removed redundant 'referenceLink' in definition of inline (it's
- already in 'link').
- + Refactored escapeChar so it doesn't need 'try'.
- + Refactored hrule for performance in Markdown reader.
- + More intelligent rearranging of 'inline' so that most frequently
- used parsers are tried first.
- + Removed tabchar parser, as whitespace handles tabs anyway.
-
- * Text.Pandoc.CharacterReferences:
-
- + Refactored.
- + Removed unnecessary 'try's for a speed improvement.
- + Removed unnecessary '&' and ';' from the entity table.
-
- * Build process:
-
- + Makefile: Get VERSION from cabal file, not Main.hs.
- + Modified MacPorts Portfile:
- - Depend on haddock
- - Build and install libraries and library documentation in
- addition to pandoc executable
- - Added template item for md5 sum in Portfile.in.
- - Incorporated changes from MacPorts repository (r28278).
- + FreeBSD port: Don't try to generate distinfo in Makefile.
- It can be made using 'make makesum' in FreeBSD.
- + Make both freebsd and macports targets depend on tarball.
-
- * Website and documentation:
-
- + Updated INSTALL instructions.
- + Added pandocwiki demo to website.
- + Removed local references to Portfile, since pandoc is now in the
- MacPorts repository.
-
- -- Recai Oktaş <roktas@debian.org> Sun, 02 Sep 2007 15:50:11 +0300
-
-pandoc (0.42) unstable; urgency=low
-
- [ John MacFarlane ]
-
- * Main.hs: Use utf8 conversion on the extra files loaded with
- the -H, -C, -B, and -A options. This fixes problems with unicode
- characters in these files.
-
- * Exposed Text.Pandoc.ASCIIMathML, since it is imported in
- Text.Pandoc.Readers.HTML and without it we get a linking error when
- using the library.
-
- * Markdown reader:
-
- + Added new rule for enhanced markdown ordered lists: if the list
- marker is a capital letter followed by a period (including a
- single-letter capital roman numeral), then it must be followed by
- at least two spaces. The point of this is to avoid accidentally
- treating people's initials as list markers: a paragraph might begin,
- "B. Russell was an English philosopher," and this shouldn't be
- treated as a list. Documented change in README.
- + Blocks that start with "p. " and a digit are no longer treated
- as ordered lists (it's a page number).
- + Added a needed 'try' to listItem.
- + Removed check for a following setext header in endline.
- A full test is too inefficient (doubles benchmark time), and the
- substitute we had before is not 100% accurate.
- + Don't use Code elements for autolinks if --strict specified.
-
- * LaTeX writer: When a footnote ends with a Verbatim environment, the
- close } of the footnote cannot occur on the same line or an error occurs.
- Fixed this by adding a newline before the closing } of every footnote.
-
- * HTML writer:
- + Removed incorrect "{}" around style information in HTML tables.
- Column widths now work properly in HTML.
- + If --strict option is specified (and --toc is not), don't include
- identifiers in headers, for better Markdown compatibility.
-
- * Build process:
-
- + Separated $(web_dest) and website targets.
- + In website, index.txt is now constructed from template index.txt.in.
- + Added freebsd target to Markefile. This creates the freebsd Makefile
- from Makefile.in, and creates distinfo. Removed Makefile and distinfo
- from the repository.
- + Added macport target to Makefile. Portfile is built from template
- Portfile.in.
- + Removed OSX package targets. (Too many difficulties involving
- dependencies on dynamic libraries.)
- + More complete INSTALL instructions for all architectures.
-
- * Website:
- + Added a programming demo, pandocwiki.
-
- [ Recai Oktaş ]
-
- * Do not forget to close pandoc's ITP. Closes: #391666
-
- -- Recai Oktaş <roktas@debian.org> Sun, 26 Aug 2007 22:51:32 +0300
-
-pandoc (0.41) unstable; urgency=low
-
- [ John MacFarlane ]
-
- * Fixed bugs in HTML reader:
- + Skip material at end *only if* </html> is present (previously,
- only part of the document would be parsed if an error was
- found; now a proper error message is given).
- + Added new constant eitherBlockOrInline with elements that may
- count either as block-level or as inline. Modified isInline and
- isBlock to take this into account.
- + Modified rawHtmlBlock to accept any tag (even an inline tag):
- this is innocuous, because rawHtmlBlock is tried only if a regular
- inline element can't be parsed.
- + Added a necessary 'try' in definition of 'para'.
-
- * Fixed bug in markdown ordered list parsing. The problem was that
- anyOrderedListStart did not check for a space following the
- ordered list marker. So in 'A.B. 2007' the parser would be
- expecting a list item, but would not find one, causing an error.
- Fixed a similar bug in the RST reader. Resolves Issue #22.
-
- * Refactored RST and Markdown readers using parseFromString.
-
- * LaTeX reader will now skip anything after \end{document}.
-
- * Fixed blockquote output in markdown writer: previously, block
- quotes in indented contexts would be indented only in the first
- line.
-
- * Added note to INSTALL about variations in versions of the xhtml
- library that can lead to failed tests (thanks to Leif LeBaron).
-
- -- Recai Oktaş <roktas@debian.org> Sun, 19 Aug 2007 23:26:07 +0300
-
-pandoc (0.4) unstable; urgency=low
-
- [ John MacFarlane ]
-
- * Added two new output formats: groff man pages and ConTeXt. By
- default, output files with extensions ".ctx" and ".context" are
- assumed to be ConTeXt, and output files with single-digit extensions
- are assumed to be man pages.
-
- * Enhanced ordered lists (documented in README, under Lists):
- + The OrderedList block element now stores information about
- list number style, list number delimiter, and starting number.
- + The readers parse this information when possible.
- + The writers use this information to style ordered lists.
- + The enhancement can be disabled using the --strict option.
-
- * Added support for tables (with a new Table block element). Two kinds
- of tables are supported: a simple table with one-line rows, and a
- more complex variety with multiline rows. All output formats are
- supported, but only markdown tables are parsed at the moment. The
- syntax is documented in README.
-
- * Added support for definition lists (with a new DefinitionList block
- element). All output and input formats are supported. The syntax is
- documented in README.
-
- * Added support for superscripts and subscripts (with new Superscript
- and Subscript inline elements). All input and output
- formats. The syntax is documented in README.
-
- * Added support for strikeout (with a new Strikeout inline element).
- All input and output formats are supported. Thanks to Bradley Kuhn,
- who contributed a patch. The syntax is documented in README. Resolves
- Issue #18.
-
- * Added a --toc|--table-of-contents option. This causes an automatically
- generated table of contents (or an instruction that creates one) to
- be inserted at the beginning of the document. Not supported in S5,
- DocBook, or man page writers.
-
- * Modified the -m|--asciimathml option:
-
- + If an optional URL argument is provided, a link is inserted
- instead of the contents of the ASCIIMathML.js script.
- + Nothing is inserted unless the document actually contains
- LaTeX math.
-
- * Removed Blank block element as unnecessary.
-
- * Removed Key and Note blocks from the Pandoc data structure. All
- links are now stored as explicit links, and note contents are
- stored with the (inline) notes.
-
- + All link Targets are now explicit (URL, title) pairs; there
- is no longer a 'Ref' target.
- + Markdown and RST parsers now need to extract data from key and
- note blocks and insert them into the relevant inline elements.
- Other parsers have been simplified, since there is no longer any need
- to construct separate key and note blocks.
- + Markdown, RST, and HTML writers need to construct lists of
- notes; Markdown and RST writers need to construct lists of link
- references (when the --reference-links option is specified); and
- the RST writer needs to construct a list of image substitution
- references. All writers have been rewritten to use the State monad
- when state is required.
- + Several functions (generateReference, keyTable,
- replaceReferenceLinks, replaceRefLinksBlockList, and some auxiliaries
- used by them) have been removed from Text.Pandoc.Shared, since
- they are no longer needed. New functions and data structures
- (Reference, isNoteBlock, isKeyBlock, isLineClump) have been
- added. The functions inTags, selfClosingTag, inTagsSimple, and
- inTagsIndented have been moved to the DocBook writer, since that
- is now the only module that uses them. NoteTable is now exported
- in Text.Pandoc.Shared.
- + Added stateKeys and stateNotes to ParserState; removed stateKeyBlocks,
- stateKeysUsed, stateNoteBlocks, stateNoteIdentifiers, stateInlineLinks.
- + Added writerNotes and writerReferenceLinks to WriterOptions.
-
- * Added Text.Pandoc module that exports basic readers, writers,
- definitions, and utility functions. This should export everything
- needed for most uses of Pandoc libraries. The haddock documentation
- includes a short example program.
-
- * Text.Pandoc.ASCIIMathML is no longer an exported module.
-
- * Added Text.Pandoc.Blocks module to help in printing markdown
- and RST tables. This module provides functions for working with
- fixed-width blocks of text--e.g., placing them side by side, as
- in a table row.
-
- * Refactored to avoid reliance on Haskell's Text.Regex library, which
- (a) is slow, and (b) does not properly handle unicode. This fixed
- some strange bugs, e.g. in parsing S-cedilla, and improved performance.
-
- + Replaced 'gsub' with a general list function 'substitute'
- that does not rely on Text.Regex.
- + Rewrote extractTagType in HTML reader so that it doesn't use
- regexs.
- + In Markdown reader, replaced email regex test with a custom email
- autolink parser (autoLinkEmail). Also replaced selfClosingTag regex
- with a custom function isSelfClosingTag.
- + Modified Docbook writer so that it doesn't rely on Text.Regex for
- detecting 'mailto' links.
- + Removed escapePreservingRegex and reamped entity-handling
- functions in Text.Pandoc.Shared and Text.Pandoc.CharacterReferences to
- avoid reliance on Text.Regex (see below on character reference
- handling changes).
-
- * Renamed Text.Pandoc.Entities as Text.Pandoc.CharacterReferences.
-
- * Changed handling of XML entities. Entities are now parsed (and unicode
- characters returned) in the Markdown and HTML readers, rather than being
- handled in the writers. In HTML and Docbook writers, UTF-8 is now used
- instead of entities for characters above 128. This makes the HTML and
- DocBook output much more readable and more easily editable.
-
- + Removed sgmlHexEntity, sgmlDecimalEntity, sgmlNamedEntity, and
- sgmlCharacterEntity regexes from Text.Pandoc.Shared.
- + Renamed escapeSGMLChar to escapeCharForXML. Added escapeStringForXML.
- Moved both functions to Text.Pandoc.Writers.Docbook.
- + Added characterReference parser to Text.Pandoc.CharacterReferences.
- This parses a string and return a unicode character.
- + Rewrote decodeCharacterReferences to use the new parser instead of
- Text.Regex.
- + Added new charRef parser for Markdown and HTML, which replaces the
- old 'entity' parser. Added '&' as a special character in Markdown reader.
- + Modified HTML and Markdown readers to call decodeEntities on all raw
- strings (e.g. authors, dates, link titles), to ensure that no
- unprocessed entities are included in the native representation of
- the document. (In the HTML reader, most of this work is done by a
- change in extractAttributeName.)
- + In XML and Markdown output, escape unicode nonbreaking space as '&nbsp;',
- since a unicode non-breaking space is impossible to distinguish visually
- from a regular space. (Resolves Issue #3.)
- + Removed encodeEntitiesNumerical.
- + Use Data.Map for entityTable and (new) reverseEntityTable, for a
- slight performance boost over the old association list.
- + Removed unneeded decodeEntities from 'str' parser in HTML and
- Markdown readers.
-
- * Text.Pandoc.UTF8: Renamed encodeUTF8 to toUTF8, decodeUTF8 to
- fromUTF8, for clarity.
-
- * Replaced old haskell98 module names replaced by hierarchical module
- names, e.g. List by Data.List. Removed haskell98 from dependencies
- in pandoc.cabal, and added mtl (needed for state monad). Substituted
- xhtml for html.
-
- * Refactored and cleaned up character escaping in writers, using
- backslashEscapes and escapeStringUsing functions.
-
- * Instead of adding "\n\n" to the end of an input string in Main.hs,
- this is now done in the readers. This makes the libraries behave
- the way you'd expect from the pandoc program. Resolves Issue #10.
-
- * URLs and email addresses in autolinks are now typeset as Code.
-
- * In Main.hs, changed putStr to putStrLn -- mainly because MacOS X
- doesn't display the whole output unless there's a line ending.
-
- * Major code cleanup in all modules, for greater consistency, concision,
- and readability.
-
- * HTML reader:
-
- + Fixed several bugs (extractTagType, attribute parsing).
- + Remove Null blocks in lists of blocks when possible.
- + Allow HTML comments as raw HTML inline.
-
- * Markdown reader:
-
- + Ordered list items may no longer begin with uppercase letters, or
- letters greater than 'n'. (This prevents first initials and page
- reference, e.g. 'p. 400', from being parsed as beginning lists.)
- Also, numbers beginning list items may no longer end with ')',
- which is now allowed only after letters. Note: These changes
- may cause documents to be parsed differently. Users should take
- care in upgrading.
- + Changed autoLink parsing to conform better to Markdown.pl's
- behavior. <google.com> is not treated as a link, but
- <http://google.com>, <ftp://google.com>, and <mailto:google@google.com>
- are.
- + Cleaned up handling of embedded quotes in link titles. Now these are
- stored as a '"' character, not as '&quot;'.
- + Use lookAhead parser for the 'first pass' (looking for reference keys),
- instead of parsing normally, then using setInput to reset input. This
- yields a slight performance boost.
- + Fixed several bugs in smart quote recognition.
- + Fixed bug in indentSpaces (which didn't properly handle
- cases with mixed spaces and tabs).
- + Consolidated 'text', 'special', and 'inline' into 'inline'.
- + Fixed bug which allowed URL and title to be separated by multiple blank
- lines in links and reference keys. They can be on separate lines but
- can't have blank lines between them.
- + Correctly handle bracketed text inside inline footnotes and links,using
- new function inlinesInBalanced. Resolves Issue #14.
- + Fixed bug in footnotes: links in footnotes were not being
- processed. Solution: three-stage parse. First, get all the
- reference keys and add information to state. Next, get all the
- notes and add information to state. (Reference keys may be needed
- at this stage.) Finally, parse everything else.
- + Replaced named constants like 'emphStart' with literals.
- + Removed an extra occurance of escapedChar in definition of inline.
-
- * RST reader:
-
- + Allow the URI in a RST hyperlink target to start on the line
- after the reference key.
- + Added 'try' in front of 'string', where needed, or used a different
- parser. This fixes a bug where ````` would not be correctly parsed as
- a verbatim `.
- + Fixed slow performance in parsing inline literals in RST reader. The
- problem was that ``#`` was seen by 'inline' as a potential link or image.
- Fix: inserted 'notFollowedBy (char '`')' in link parsers.
- Resolves Issue #8.
- + Use lookAhead instead of getInput/setInput in RST reader. Removed
- unneeded getState call, since lookAhead automatically saves and
- restores the parser state.
- + Allow hyperlink target URIs to be split over multiple lines, and
- to start on the line after the reference. Resolves Issue #7.
- + Fixed handling of autolinks.
-
- * LaTeX reader:
-
- + Replaced 'choice [(try (string ...), ...]' idiom with 'oneOfStrings',
- for clarity.
- + Added clauses for tilde and caret. Tilde is \ensuremath{\sim}, and
- caret is \^{}, not \^ as before.
- + Added parsing for \url.
- + Parse \texttt{} as code, provided there's nothing fancy inside.
-
- * HTML writer:
-
- + Modified HTML writer to use the Text.XHtml library. This results
- in cleaner, faster code, and it makes it easier to use Pandoc in
- other projects, like wikis, which use Text.XHtml. Two functions are
- now provided, writeHtml and writeHtmlString: the former outputs an
- Html structure, the latter a rendered string. The S5 writer is also
- changed, in parallel ways (writeS5, writeS5String).
- + The Html header is now written programmatically, so it has been
- removed from the 'headers' directory. The S5 header is still
- needed, but the doctype and some of the meta declarations have
- been removed, since they are written programatically. This change
- introduces a new dependency on the xhtml package.
- + Fixed two bugs in email obfuscation involving improper escaping
- of '&' in the <noscript> section and in --strict mode. Resolves
- Issue #9.
- + Fixed another bug in email obfuscation: If the text to be obfuscated
- contains an entity, this needs to be decoded before obfuscation.
- Thanks to thsutton for the patch. Resolves Issue #15.
- + Changed the way the backlink is displayed in HTML footnotes.
- Instead of appearing on a line by itself, it now generally
- appears on the last line of the note. (Exception: when the
- note does not end with a Plain or Para block.) This saves space
- and looks better.
- + Added automatic unique identifiers to headers:
- - The identifier is derived from the header via a scheme
- documented in README.
- - WriterState now includes a list of header identifiers and a table
- of contents in addition to notes.
- - The function uniqueIdentifiers creates a list of unique identifiers
- from a list of inline lists (e.g. headers).
- - This list is part of WriterState and gets consumed by blockToHtml
- each time a header is encountered.
- + Include CSS for .strikethrough class in header only if strikethrough
- text appears in the document.
- + If the 'strict' option is specified, elements that do not appear in
- standard markdown (like definition lists) are passed through as
- raw HTML.
- + Simplified treatment of autolinks, using pattern matching instead of
- conditionals.
-
- * Markdown writer:
-
- + Links in markdown output are now printed as inline links by default,
- rather than reference links. A --reference-links option has been added
- that forces links to be printed as reference links. Resolves Issue #4.
- + Use autolinks when possible. Instead of [site.com](site.com),
- use <site.com>.
-
- * LaTeX writer:
-
- + Rewrote to use the State monad. The preamble now includes only those
- packages that are actually required, given the document's content.
- Thus, for example, if strikeout is not used, ulem is not required.
- Modified LaTeXHeader accordingly.
- + Modified LaTeX writer to insert '\,' between consecutive quotes.
- + Removed unused function tableRowColumnWidths.
- + Simplified code for escaping special characters.
- + Leave extra blank line after \maketitle.
- + Include empty '\author{}' when no author specified to avoid LaTeX
- errors.
- + Include fancyvrb code in header only if needed -- that is, only
- if there is actually code in a footnote.
- + Use \url{} for autolinks.
- + Include [mathletters] option in ucs package, so that basic unicode
- Greek letters will work correctly.
-
- * RST writer: Force blank line before lists, so that sublists will
- be handled correctly.
-
- * Docbook writer: Fixed a bug: email links with text, like
- [foo](me@bar.baz), were being incorrectly treated as autolinks.
-
- * Removed Text.ParserCombinators.Pandoc and moved all its functions to
- Text.Pandoc.Shared.
-
- * Text.Pandoc.Shared:
-
- + Added defaultWriterOptions.
- + Added writerTableOfContents to WriterOptions.
- + Added writerIgnoreNotes option to WriterOptions. This is needed
- for processing header blocks for a table of contents, since notes on
- headers should not appear in the TOC.
- + Added prettyprinting for native Table format.
- + Removed some unneeded imports.
- + Moved escape and nullBlock parsers from
- Text.ParserCombinators.Pandoc, since the latter is for
- general-purpose parsers that don't depend on Text.Pandoc.Definition.
- + Moved isHeaderBlock from Text.Pandoc.Writers.HTML.
- + Moved Element, headerAtLeast, and hierarchicalize from Docbook
- writer, because HTML writer now uses these in constructing a table
- of contents.
- + Added clauses for new inline elements (Strikeout, Superscript,
- Subscript) to refsMatch.
- + Removed backslashEscape; added new functions escapeStringUsing and
- backslashEscapes.
- + Moved failIfStrict from markdown reader, since it is now used also
- by the HTML reader.
- + Added a 'try' to the definition of indentSpaces.
- + In definition of 'reference', added check to make sure it's not a note
- reference.
- + Added functions: camelCaseToHyphenated, toRomanNumeral,
- anyOrderedListMarker, orderedListmarker, orderedListMarkers,
- charsInBalanced', withHorizDisplacement, romanNumeral
- + Fixed a bug in the anyLine parser. Previously it would parse an empty
- string "", but it should fail on an empty string, or we get an error
- when it is used inside "many" combinators.
- + Removed followedBy' parser, replacing it with the lookAhead parser from
- Parsec.
- + Added some needed 'try's before multicharacter parsers, especially in
- 'option' contexts.
- + Removed the 'try' from the 'end' parser in 'enclosed', so that
- 'enclosed' behaves like 'option', 'manyTill', etc.
- + Added lineClump parser, which parses a raw line block up to and
- including any following blank lines.
- + Renamed parseFromStr to parseFromString.
- + Added a 'try' to the 'end' parser in 'enclosed'. This makes errors in
- the use of 'enclosed' less likely. Removed some now-unnecessary 'try's
- in calling code.
- + Removed unneeded 'try' in blanklines.
- + Removed endsWith function and rewrote calling functions to use
- isSuffixOf instead.
- + Added >>~ combinator.
- + Fixed bug in normalizeSpaces: Space:Str "":Space should compress to
- Space.
-
- * Refactored runtests.pl; added separate tests for tables.
-
- * Shell scripts:
-
- + Added -asxhtml flag to tidy in html2markdown. This will
- perhaps help the parser, which expects closing tags.
- + Modified markdown2pdf to run pdflatex a second time if --toc or
- --table-of-contents was specified; otherwise the table of
- contents won't appear.
- + Modified markdown2pdf to print a helpful message if the 'ulem'
- LaTeX package is required and not found.
-
- * Changes to build process:
-
- + Dropped support for compilation with GHC 6.4. GHC 6.6 or higher
- is now required.
- + Removed cabalize and Pandoc.cabal.in. The repository now contains
- pandoc.cabal itself.
- + Pandoc.cabal has been changed to pandoc.cabal, because HackageDB
- likes the cabal file to have the same name as the tarball.
- + Expanded and revised the package description in pandoc.cabal.
- Revised the package synopsis.
- + The tarball built by 'make tarball' now contains files built from
- templates (including man pages and shell scripts), so pandoc can
- be built directly using Cabal tools, without preprocessing.
- + Executable binaries are now stripped before installing.
- + Man pages are now generated from markdown sources, using pandoc's
- man page writer.
- + Use HTML version of README (instead of RTF) in Mac OS X installer.
- + Instead of testing for the existence of a pandoc symlink in build-exec,
- use ln -f.
-
- * Documentation:
-
- + Updated README and man pages with information on new features.
- + Updated INSTALL instructions with some useful clarifications and
- links.
- + Updated web content.
-
- * Added FreeBSD port.
-
- [ Recai Oktaş ]
-
- * debian/control:
-
- + Changed pandoc's Build-Depends to include libghc6-mtl-dev and
- libghc6-xhtml-dev. Removed libghc6-html-dev.
- + Suggest texlive-latex-recommended | tetex-extra instead of
- tetex-bin. This brings in fancyvrb and unicode support.
-
- -- Recai Oktaş <roktas@debian.org> Tue, 16 Jan 2007 00:37:21 +0200
-
-pandoc (0.3) unstable; urgency=low
-
- [ John MacFarlane ]
-
- * Changes in pandoc options:
-
- + Allow options to follow or precede arguments.
- + Changed '--smartypants' to '--smart' and adjusted symbols accordingly.
- + Added '--strict' option.
- + Added '-o/--output' option.
- + Added '--dump-args' and '--ignore-args' options (for use in wrappers).
- + Modified '-v' and '-h' output to go to STDERR, not STDOUT, and return
- error conditions. This is helpful for writing wrappers.
- + Added copyright message to '-v' output, modeled after FSF messages.
- + Reformatted usage message so that it doesn't wrap illegibly.
- + Removed extra blanks after '-h' and '-D' output.
-
- * Added docbook writer.
-
- * Added implicit setting of default input and output format based
- on input and output filename extensions. These defaults are
- overridden if explicit input and output formats are specified using
- '-t', '-f', '-r', or '-w' options. Documented in pandoc(1) man page
- and README.
-
- * Allow ordered list items to begin with (single) letters, as well
- as numbers. The list item marker may now be terminated either by
- '.' or by ')'. This extension to standard markdown is documented
- in README.
-
- * Revised footnote syntax. (See README for full details.) The
- '[^1]' format now standard in markdown extensions is supported,
- as are inline footnotes with this syntax: '^[My note.]'.
- The earlier footnote syntax '^(1)' is no longer supported.
-
- * Improved HTML representation of footnotes. All footnotes
- are now auto-numbered and appear in an ordered list at the
- end of the HTML document. Since the default appearance is now
- acceptable, the old footnote styles have been removed from the
- HTML header.
-
- * Bug fixes:
-
- + Fixed a serious bug in the markdown, LaTeX, and RST readers.
- These readers ran 'runParser' on processed chunks of text to handle
- embedded block lists in lists and quotation blocks. But then
- any changes made to the parser state in these chunks was lost,
- as the state is local to the parser. So, for example, footnotes
- didn't work in quotes or list items. The fix: instead of calling
- runParser on some raw text, use setInput to make it the input, then
- parse it, then use setInput to restore the input to what it was
- before. This is shorter and more elegant, and it fixes the problem.
- + Fixed bug in notFollowedBy' combinator (adding 'try' before
- 'parser'). Adjusted code that uses this combinator accordingly.
- + Fixed bug in RTF writer that caused improper indentation on
- footnotes occurring in indented blocks like lists.
- + Fixed parsing of metadata in LaTeX reader. Now the title, author,
- and date are parsed correctly. Everything else in the preamble
- is skipped.
- + Modified escapedChar in LaTeX reader to allow a '\' at the end of a
- line to count as escaped whitespace.
- + Modified LaTeX reader to produce inline links rather than reference
- links. Otherwise, links in footnotes aren't handled properly.
- + Fixed handling of titles in links in Markdown reader, so that
- embedded quotation marks are now handled properly.
- + Fixed Markdown reader's handling of embedded brackets in links.
- + Fixed Markdown reader so that it only parses bracketed material
- as a reference link if there is actually a corresponding key.
- + Revised inline code parsing in Markdown reader to conform to
- markdown standard. Now any number of `s can begin inline code,
- which will end with the same number of `s. For example, to
- have two backticks as code, write ``` `` ```. Modified Markdown
- writer accordingly.
- + Fixed bug in text-wrapping routine in Markdown and RST writers.
- Now LineBreaks no longer cause wrapping problems.
- + Supported hexadecimal numerical entity references as well as
- decimal ones.
- + Fixed bug in Markdown reader's handling of underscores and other
- inline formatting markers inside reference labels: for example,
- in '[A_B]: /url/a_b', the material between underscores was being
- parsed as emphasized inlines.
- + Changed Markdown reader's handling of backslash escapes so that
- only non-alphanumeric characters can be escaped. Strict mode
- follows Markdown.pl in only allowing a select group of punctuation
- characters to be escaped.
- + Modified HTML reader to skip a newline following a <br> tag.
- Otherwise the newline will be treated as a space at the beginning
- of the next line.
-
- * Made handling of code blocks more consistent. Previously, some
- readers allowed trailing newlines, while others stripped them.
- Now, all readers strip trailing newlines in code blocks. Writers
- insert a newline at the end of code blocks as needed.
-
- * Modified readers to make spacing at the end of output more consistent.
-
- * Minor improvements to LaTeX reader:
-
- + '\thanks' now treated like a footnote.
- + Simplified parsing of LaTeX command arguments and options.
- commandArgs now returns a list of arguments OR options (in
- whatever order they appear). The brackets are included, and
- a new stripFirstAndLast function is provided to strip them off
- when needed. This fixes a problem in dealing with \newcommand
- and \newenvironment.
-
- * Revised RTF writer:
-
- + Default font is now Helvetica.
- + An '\f0' is added to each '\pard', so that font resizing works
- correctly.
-
- * Moved handling of "smart typography" from the writers to the Markdown
- and LaTeX readers. This allows great simplification of the writers
- and more accurate smart quotes, dashes, and ellipses. DocBook can
- now use '<quote>'. The '--smart' option now toggles an option in
- the parser state rather than a writer option. Several new kinds
- of inline elements have been added: Quoted, Ellipses, Apostrophe,
- EmDash, EnDash.
-
- * Changes in HTML writer:
-
- + Include title block in header even when title is null.
- + Made javascript obfuscation of emails even more obfuscatory,
- by combining it with entity obfuscation.
-
- * Changed default ASCIIMathML text color to black.
-
- * Test suite:
-
- + Added --strip-trailing-cr option to diff in runtests.pl, for
- compatibility with Windows.
- + Added regression tests with footnotes in quote blocks and lists.
-
- * Makefile changes:
-
- + osx-pkg target creates a Mac OS X package (directory). New osx
- directory contains files needed for construction of the package.
- + osx-dmg target creates a compressed disk image containing the package.
- + win-pkg target creates Windows binary package.
- + tarball target creates distribution source tarball.
- + website target generates pandoc's website automatically, including
- demos. New 'web' directory containts files needed for construction
- of the website (which will be created as the 'pandoc' subdirectory
- of 'web').
- + Makefile checks to see if we're running Windows/Cygwin; if so,
- a '.exe' extension is added to each executable in EXECS.
-
- * Removed all wrappers except markdown2pdf and html2markdown.
-
- * Added new wrapper hsmarkdown, to be used as a drop-in replacement
- for Markdown.pl. hsmarkdown calls pandoc with the '--strict'
- option and disables other options.
-
- * Added code to html2markdown that tries to determine the character
- encoding of an HTML file, by parsing the "Content-type" meta tag.
-
- + If the encoding can't be determined, then if the content is local,
- the local encoding is used; if it comes from a URL, UTF-8 is used
- by default.
- + If input is from STDIN, don't try to determine character encoding.
- + Encoding can be specified explicitly using '-e' option.
-
- * Improved warning messages in wrappers:
-
- + Print warning if iconv not available
- + More user-friendly error messages in markdown2pdf, when
- pdflatex fails.
-
- * Code cleanup:
-
- + Renamed 'Text/Pandoc/HtmlEntities' module to
- 'Text/Pandoc/Entities'. Also changed function names so as
- not to be HTML-specific.
- + Refactored SGML string escaping functions from HTML and Docbook
- writers into Text/Pandoc/Shared. (escapeSGML, stringToSGML)
- + Removed 'BlockQuoteContext' from ParserContext, as it isn't
- used anywhere.
- + Removed splitBySpace and replaced it with a general, polymorphic
- splitBy function.
- + Refactored LaTeX reader for clarity (added isArg function).
- + Converted some CR's to LF's in src/ui/default/print.css.
- + Added license text to top of source files.
- + Added module data for haddock to source files.
- + Reformatted code for consistency.
-
- * Rewrote documentation and man pages. Split README into INSTALL
- and README.
-
- * Split LICENSE into COPYING and COPYRIGHT.
-
- * Removed TODO, since we now maintain ToDo on the wiki.
-
- * Made COPYRIGHT in top level a symlink to debian/copyright, to avoid
- duplication.
-
- [ Recai Oktaş ]
-
- * Revamped build process to conform to debian standards and created
- a proper debian package. Closes: #391666.
-
- * Modified build process to support GHC 6.6.
-
- + The package can still be compiled using GHC 6.4.2, though because
- of dependencies the "make deb" target works only with GHC 6.6+.
- + The script 'cabalize' is used to create an appropriate
- 'Pandoc.cabal' from 'Pandoc.cabal.in', depending on the GHC and
- Cabal versions.
-
- * Refactored template processing (fillTemplates.pl).
-
- * Modified wrapper scripts to make them more robust and portable.
- To avoid code duplication and ensure consistency, wrappers are
- generated via a templating system from templates in src/wrappers.
-
- + Wrappers now accept multiple filenames, when appropriate.
- + Spaces and tabs allowed in filenames.
- + getopts shell builtin is used for portable option parsing.
- + Improved html2markdown's web grabber code, making it more robust,
- configurable and verbose. Added '-e', '-g' options.
-
- -- Recai Oktaş <roktas@debian.org> Fri, 05 Jan 2007 09:41:19 +0200
-
-pandoc (0.2) unstable; urgency=low
-
- * Fixed unicode/utf-8 translation
-
- -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400
-
-pandoc (0.1) unstable; urgency=low
-
- * Initial creation of debian package
-
- -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400
diff --git a/debian/compat b/debian/compat
deleted file mode 100644
index b8626c4cf..000000000
--- a/debian/compat
+++ /dev/null
@@ -1 +0,0 @@
-4
diff --git a/debian/control b/debian/control
deleted file mode 100644
index 4219d0dd4..000000000
--- a/debian/control
+++ /dev/null
@@ -1,90 +0,0 @@
-Source: pandoc
-Section: text
-Priority: optional
-Maintainer: Recai Oktaş <roktas@debian.org>
-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
-Build-Depends-Indep: haddock
-Standards-Version: 3.7.3
-Homepage: http://johnmacfarlane.net/pandoc/
-XS-Vcs-Svn: http://pandoc.googlecode.com/svn/trunk
-XS-Vcs-Browser: http://pandoc.googlecode.com/svn/trunk
-
-Package: pandoc
-Section: text
-Architecture: any
-Depends: ${shlibs:Depends}, texlive-latex-recommended | tetex-extra
-Suggests: tidy, wget | w3m
-Description: general markup converter
- Pandoc is a Haskell library for converting from one markup format to
- another, and a command-line tool that uses this library. It can read
- markdown and (subsets of) reStructuredText, HTML, and LaTeX, and it
- can write markdown, reStructuredText, HTML, LaTeX, ConTeXt,
- DocBook XML, OpenDocument XML, ODT, RTF, GNU Texinfo, MediaWiki markup,
- groff man pages, and S5 HTML slide shows.
- .
- Pandoc extends standard markdown syntax with footnotes, embedded LaTeX,
- tables, definition lists, and other features. A compatibility mode is
- provided for those who need a drop-in replacement for Markdown.pl.
- Included wrapper scripts make it easy to convert markdown documents to
- PDF and to convert web pages to markdown documents.
- .
- In contrast to existing tools for converting markdown to HTML, which
- use regex substitutions, pandoc has a modular design: it consists of a
- set of readers, which parse text in a given format and produce a native
- representation of the document, and a set of writers, which convert
- this native representation into a target format. Thus, adding an input
- or output format requires only adding a reader or writer.
-
-Package: libghc6-pandoc-dev
-Section: libdevel
-Architecture: any
-Depends: ${haskell:Depends}, libghc6-xhtml-dev, libghc6-mtl-dev, libghc6-network-dev, texlive-latex-recommended | tetex-extra
-Suggests: pandoc-doc
-Description: general markup converter
- Pandoc is a Haskell library for converting from one markup format to
- another, and a command-line tool that uses this library. It can read
- markdown and (subsets of) reStructuredText, HTML, and LaTeX, and it
- can write markdown, reStructuredText, HTML, LaTeX, ConTeXt,
- DocBook XML, OpenDocument XML, ODT, RTF, GNU Texinfo, MediaWiki markup,
- groff man pages, and S5 HTML slide shows.
- .
- Pandoc extends standard markdown syntax with footnotes, embedded LaTeX,
- tables, definition lists, and other features. A compatibility mode is
- provided for those who need a drop-in replacement for Markdown.pl.
- Included wrapper scripts make it easy to convert markdown documents to
- PDF and to convert web pages to markdown documents.
- .
- In contrast to existing tools for converting markdown to HTML, which
- use regex substitutions, pandoc has a modular design: it consists of a
- set of readers, which parse text in a given format and produce a native
- representation of the document, and a set of writers, which convert
- this native representation into a target format. Thus, adding an input
- or output format requires only adding a reader or writer.
- .
- This package contains the libraries compiled for GHC 6.
-
-Package: pandoc-doc
-Section: doc
-Architecture: all
-Description: general markup converter
- Pandoc is a Haskell library for converting from one markup format to
- another, and a command-line tool that uses this library. It can read
- markdown and (subsets of) reStructuredText, HTML, and LaTeX, and it
- can write markdown, reStructuredText, HTML, LaTeX, ConTeXt,
- DocBook XML, OpenDocument XML, ODT, RTF, GNU Texinfo, MediaWiki markup,
- groff man pages, and S5 HTML slide shows.
- .
- Pandoc extends standard markdown syntax with footnotes, embedded LaTeX,
- tables, definition lists, and other features. A compatibility mode is
- provided for those who need a drop-in replacement for Markdown.pl.
- Included wrapper scripts make it easy to convert markdown documents to
- PDF and to convert web pages to markdown documents.
- .
- In contrast to existing tools for converting markdown to HTML, which
- use regex substitutions, pandoc has a modular design: it consists of a
- set of readers, which parse text in a given format and produce a native
- representation of the document, and a set of writers, which convert
- this native representation into a target format. Thus, adding an input
- or output format requires only adding a reader or writer.
- .
- This package contains the library documentation for Pandoc.
diff --git a/debian/copyright b/debian/copyright
deleted file mode 100644
index b87bcaa64..000000000
--- a/debian/copyright
+++ /dev/null
@@ -1,89 +0,0 @@
-Pandoc
-Copyright (C) 2006-8 John MacFarlane <jgm at berkeley dot edu>
-
-This code is released under the [GPL], version 2 or later:
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-The GNU General Public License is available in the file COPYING in
-the source distribution. On Debian systems, the complete text of the
-GPL can be found in `/usr/share/common-licenses/GPL`.
-
-[GPL]: http://www.gnu.org/copyleft/gpl.html
-
-Pandoc's complete source code is available from the [Pandoc home page].
-
-[Pandoc home page]: http://johnmacfarlane.net/pandoc/
-
-Pandoc includes some code from other authors. The copyright and license
-statements for these sources are included below. All are GPL-compatible
-licenses.
-
-----------------------------------------------------------------------
-Text/Pandoc/Writers/Texinfo.hs
-Copyright (C) 2008 John MacFarlane and Peter Wang
-
-Released under the GPL.
-
-----------------------------------------------------------------------
-Text/Pandoc/Writers/OpenDocument.hs
-Copyright (C) 2008 Andrea Rossato
-
-Released under the GPL.
-
-----------------------------------------------------------------------
-ASCIIMathML.js
-Copyright 2005, Peter Jipsen, Chapman University
-<http://www1.chapman.edu/~jipsen/mathml/asciimath.html>
-
-Released under the GPL.
-
-----------------------------------------------------------------------
-S5 slides.js and css files
-by Eric A. Meyer
-<http://meyerweb.com/eric/tools/s5
-
-Released under an explicit Public Domain License
-
-------------------------------------------------------------------------
-Diff.hs in tests/
-from the Diff package v 0.1.2 (Data.Algorithm.Diff)
-Copyright (c) Stering Clover 2008
-
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-3. Neither the name of the author nor the names of his contributors
- may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGE.
diff --git a/debian/pandoc-doc.doc-base b/debian/pandoc-doc.doc-base
deleted file mode 100644
index 6979bc6d3..000000000
--- a/debian/pandoc-doc.doc-base
+++ /dev/null
@@ -1,11 +0,0 @@
-Document: pandoc-doc
-Title: Pandoc documentation
-Author: John MacFarlane
-Abstract: This is the documentation of Pandoc, which includes the API
- documentation of the Pandoc library and documentation for the Pandoc
- tools.
-Section: Apps/Programming
-
-Format: html
-Index: /usr/share/doc/pandoc-doc/html/pandoc/index.html
-Files: /usr/share/doc/pandoc-doc/html/pandoc/*.html
diff --git a/debian/pandoc-doc.docs b/debian/pandoc-doc.docs
deleted file mode 100644
index 1936cc1d4..000000000
--- a/debian/pandoc-doc.docs
+++ /dev/null
@@ -1 +0,0 @@
-html
diff --git a/debian/pandoc.dirs b/debian/pandoc.dirs
deleted file mode 100644
index e77248175..000000000
--- a/debian/pandoc.dirs
+++ /dev/null
@@ -1 +0,0 @@
-usr/bin
diff --git a/debian/rules b/debian/rules
deleted file mode 100755
index 58c192bd2..000000000
--- a/debian/rules
+++ /dev/null
@@ -1,124 +0,0 @@
-#!/usr/bin/make -f
-#
-# debian/rules for pandoc.
-# Copyright © 2006 Recai Oktaş <roktasATdebian.org>
-#
-# This file is based on John Goerzen's Cabal Debian template.
-# See http://www.n-heptane.com/nhlab/repos/cabalDebianTemplate/
-#
-# Licensed under the GNU General Public License, version 2.
-# See the file 'http://www.gnu.org/copyleft/gpl.txt'.
-
-THIS := $(shell sed -ne 's/^Source: \(.*\)/\1/p' debian/control)
-PREFIX := /usr
-DESTDIR := debian/$(THIS)
-DATADIR := $(THIS)
-DOCDIR := doc/$(THIS)
-
-# Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
-
-ifeq (1,$(DH_VERBOSE))
-HCFLAGS+=-v
-endif
-
-# Handle noopt in DEB_BUILD_OPTIONS. Emulate CFLAGS (as HCFLAGS).
-ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
-HCFLAGS+=-O0
-else
-# No optimisation seems optimum.
-HCFLAGS+=-O0
-endif
-
-# Export all variables which will be used in various stages of build process.
-export PREFIX DESTDIR DATADIR DOCDIR HCFLAGS
-
-configure: configure-stamp
-configure-stamp:
- dh_testdir
- $(MAKE) configure
-
- touch $@
-
-build: build-stamp
-build-stamp: configure-stamp
- dh_testdir
-
- touch $@
-
-clean:
- dh_testdir
- dh_testroot
- $(MAKE) clean
- rm -rf setup Setup.hi Setup.ho Setup.o .*config* dist html
- rm -f build-stamp configure-stamp
-
- dh_clean
-
-install: build
- dh_testdir
- dh_testroot
- dh_clean -k
- dh_installdirs -a
-
- dh_haskell -a
-
- # Hack! Cabal builds executables while building libraries. Move these
- # files to top dir where the Makefile install target expects to find.
- # See "BUGS" section at the following document:
- # http://www.n-heptane.com/nhlab/repos/cabalDebianTemplate/INSTRUCTIONS.txt
- find debian/libghc6-$(THIS)-dev -type d -name 'bin' -true | \
- while read bin; do mv $$bin/* .; rm -rf $$bin; done
- $(MAKE) install-program
-
-build-indep: build-indep-stamp
-build-indep-stamp:
- dh_testdir
- $(MAKE) build-lib-doc
-
-install-indep: build-indep
- dh_testdir
- dh_testroot
- dh_clean -k
- dh_installdirs -i
-
- dh_haskell -i
-
-# Build architecture-independent files here.
-binary-indep: build-indep install-indep
- dh_testdir
- dh_testroot
- dh_installchangelogs -i
- dh_installdocs -i
- dh_installexamples -i
- dh_installman -i
- dh_link -i
- dh_strip -i
- dh_compress -i
- dh_fixperms -i
- dh_installdeb -i
- dh_shlibdeps -i
- dh_gencontrol -i
- dh_md5sums -i
- dh_builddeb -i
-
-# Build architecture-dependent files here.
-binary-arch: build install
- dh_testdir
- dh_testroot
- dh_installchangelogs -a
- dh_installdocs -a
- dh_installexamples -a
- dh_installman -a
- dh_link -a
- dh_strip -a -Xhtml2 -Xhsmarkdown -Xmarkdown2
- dh_compress -a
- dh_fixperms -a
- dh_installdeb -a
- dh_shlibdeps -a
- dh_gencontrol -a
- dh_md5sums -a
- dh_builddeb -a
-
-binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary install build-indep install-indep