Summary of main changes:
+ Added -o/--output and -d/--debug options to pandoc.
+ Modified pandoc to behave differently depending on the name
of the program. For example, if the program name is 'html2latex',
the default reader will be html and the default writer latex.
+ Removed most of the old wrappers, replacing them with symlinks
to pandoc.
+ Rewrote markdown2pdf and created a new wrapper web2markdown,
with the functionality of the old html2markdown script. These
new scripts exploit pandoc's -d option to avoid having to do
complex command-line parsing.
+ Revised man pages and documentation appropriately.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@279 788f1e2b-df1e-0410-8736-df70ead52e1b
the binary distribution of Pandoc. Still to be completed.
Perhaps this should also be hidden in a subdirectory eventually.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@275 788f1e2b-df1e-0410-8736-df70ead52e1b
website, and a link. This is necessary for GPL compliance in binary
distributions (as far as I can see).
git-svn-id: https://pandoc.googlecode.com/svn/trunk@273 788f1e2b-df1e-0410-8736-df70ead52e1b
+ This uncovered an existing bug in the RTF writer, which got indentation
wrong on footnotes occuring in indented blocks like lists. Fixed
this bug.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@263 788f1e2b-df1e-0410-8736-df70ead52e1b
and RST readers). The problem: 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.
'BlockQuoteContext' was also eliminated from ParserContext, as it
isn't used anywhere.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@261 788f1e2b-df1e-0410-8736-df70ead52e1b
and COPYRIGHT (including copyright information and licenses
for other packages used). Modified Pandoc.cabal.in and
README accordingly.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@249 788f1e2b-df1e-0410-8736-df70ead52e1b
heading. The anchors are derived form the text of the section
heading as described in README. This makes it easy to insert
links that jump from one part of a document to another:
for example, '[back to the Introduction](#Introduction)'.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@246 788f1e2b-df1e-0410-8736-df70ead52e1b
'comparing' is from Data.Ord, which is not available in GHC 6.4.
+ Added line break after </li> in HTML footnote output, for easier
inspection of the source.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@245 788f1e2b-df1e-0410-8736-df70ead52e1b
+ Corrected dependencies in Makefiles to ensure that templates
get filled when the relevant files are modified.
+ Changed template placeholders to @xxx@ instead of <xxx>,
for consistency with our practice with the Cabal template.
+ Changed default font for RTF writer (this had been changed earlier,
but in the target rather than the template!)
git-svn-id: https://pandoc.googlecode.com/svn/trunk@235 788f1e2b-df1e-0410-8736-df70ead52e1b
for markdown footnotes. References are now like this[^1]
rather than like this^(1). There are corresponding changes
in the footnotes themselves. See the updated README for
more details.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@230 788f1e2b-df1e-0410-8736-df70ead52e1b
with (single) letters, as well as numbers. The list item marker
may now be terminated either by '.' or by ')'. These extensions
to standard markdown are documented in README.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@211 788f1e2b-df1e-0410-8736-df70ead52e1b
of the readers to make spacing at end of output more consistent.
Modified tests accordingly.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@201 788f1e2b-df1e-0410-8736-df70ead52e1b
It seems that Cabal does not expect these extensions. Better
to handle this in the Makefile.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@191 788f1e2b-df1e-0410-8736-df70ead52e1b
The authoritative version number is now in src/Main.hs, with no
duplication. (This seems a better solution than building Main.hs
from a template.)
git-svn-id: https://pandoc.googlecode.com/svn/trunk@182 788f1e2b-df1e-0410-8736-df70ead52e1b
Included below is a summary of changes committed in the merge of
the wrappers branch (r177):
Refactored wrappers, with the following aims:
+ New command line convention, as follows:
1st form: input files specified
<wrapper> [wrapper_arg...] input_files... [pandoc_option...]
2nd form: using STDIN, no input file is specified
<wrapper> [wrapper_arg...] -- [pandoc_option...]
3rd form: input files specified, optional --
<wrapper> [wrapper_arg...] input_files... -- [pandoc_option...]
- All wrappers except 'html2markdown' and 'latex2markdown' should
accept multiple filenames.
- Use getopts shell builtin for portable option parsing.
+ Remove code duplication and provide consistency across
command line interface.
+ Allow white space in filenames, especially suitable for Mac OSX users
+ Improve html2markdown's web grabber code, making it more robust,
configurable and verbose.
- new function 'grab_url_with' as the wrapper to web grabbers.
- 'grab_url_with' can report errors if the grabber fails.
- new command line option 'n' to avoid automatic web grabbing.
- new command line option 'g' which explicitly selects a grabber and
optionally specifies new options for the selected grabber. Possible
use cases:
# Just use curl.
html2markdown -g 'curl'
# Use wget by setting timeout to 10 seconds and limit retries to 2.
html2markdown -g 'wget --timeout=10 --tries=2'
+ Add 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.
- add a new option '-e' to specify encoding.
+ Better warning messages:
- print warning if iconv not available
- in markdown2latex, print only relevant parts of log when pdflatex
returns an error condition
- in markdown2latex, when 'ucs.sty' is not found, print message
telling where to find the 'unicode' package.
+ Remove PANDOC_OPTS environment variable functionality. It is
no longer necessary, now that pandoc options may be specified on
the command line.
+ Add tests for wrappers' processing of command line arguments:
- new file 'testwrapper.in' to test the parsing code under 'bash',
'dash', 'ksh' and 'zsh' in POSIX mode.
- new makefile target 'test-wrappers' to run 'testwrapper'
+ Document changes in revisions to wrapper syntax in README and man pages.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@178 788f1e2b-df1e-0410-8736-df70ead52e1b
+ added nullBlock to preamble parsing, so we can handle unusual
things like pure TeX
+ modified escapedChar to allow a \ at the end of line to count
as escaped whitespace
+ treat "thanks" commands as footnotes
git-svn-id: https://pandoc.googlecode.com/svn/trunk@146 788f1e2b-df1e-0410-8736-df70ead52e1b
+ LaTeX reader did not parse metadata correctly. Now the title,
author, and date are parsed correctly, and everything else in
the preamble is skipped.
+ Simplified parsing of LaTeX command arguments and options.
The function 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, etc.
+ Added a "try" before "parser" in definition of notFollowedBy'
combinator. Adjusted the code using this combinator accordingly.
+ Changed handling of code blocks. 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.
+ Changed test suite to reflect these changes.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@137 788f1e2b-df1e-0410-8736-df70ead52e1b