required before an attribute. Previously, <a.b>
would be parsed as an HTML tag with an attribute!
git-svn-id: https://pandoc.googlecode.com/svn/trunk@509 788f1e2b-df1e-0410-8736-df70ead52e1b
So, instead of [site.com](site.com) we get <site.com>.
Changed test suite accordingly.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@508 788f1e2b-df1e-0410-8736-df70ead52e1b
+ LaTeX writer now handles consecutive quotes properly:
for example, ``\,`hello'\,''
+ LaTeX reader now parses '\,' as empty Str
+ normalizeSpaces function in Shared now removes empty Str elements
+ Modified tests accordingly
git-svn-id: https://pandoc.googlecode.com/svn/trunk@506 788f1e2b-df1e-0410-8736-df70ead52e1b
list function that can be used to substitute one substring
for another in a string, like 'gsub' except without regular
expressions.
+ Use 'substitute' instead of 'gsub' in the LaTeX writer. This
avoids what appears to be a bug in Text.Regex, whereby "\\^"
matches "\350". There seems to be a slight speed improvement
as well. (Note: If this works, it would be good to replace
other uses of gsub that don't employ regexs with 'substitute'.)
git-svn-id: https://pandoc.googlecode.com/svn/trunk@500 788f1e2b-df1e-0410-8736-df70ead52e1b
start if followed by 's' and then a non-alphanumeric. (Yes,
this is English-centric, I'm afraid. But it does help, and I
can't think of a language in which 's' by itself is a word.)
git-svn-id: https://pandoc.googlecode.com/svn/trunk@498 788f1e2b-df1e-0410-8736-df70ead52e1b
DocBook, and HTML writers. The syntax is documented in
README. Tests have been added to the test suite.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@493 788f1e2b-df1e-0410-8736-df70ead52e1b
one gets an error creating the output file in the /tmp directory.
I haven't tracked this one down, but this should serve as a
workaround.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@481 788f1e2b-df1e-0410-8736-df70ead52e1b
an error condition when it gives warnings, so instead we grep
for warnings or error messages to see if we need to print the
log.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@476 788f1e2b-df1e-0410-8736-df70ead52e1b
+ Exit if pandoc fails (second time through) -- no need to store the log for this.
+ Run pdflatex up to three times, if needed to resolve references. Also
run bibtex as needed.
+ Minor reformatting.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@469 788f1e2b-df1e-0410-8736-df70ead52e1b
characters Markdown escapes are escaped in strict mode.
When not in strict mode, Pandoc allows all non-alphanumeric
characters to be escaped.
+ Added documentation of backslash escapes to README.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@461 788f1e2b-df1e-0410-8736-df70ead52e1b
+ Add a trailing ':' to TEXTINPUTS as per the instruction in TeX FAQ:
http://www.tex.ac.uk/cgi-bin/texfaq2html?label=graphicspath
In the lack of it, pdflatex silently fails, for example, with the
following command: 'TEXINPUTS=/tmp markdown2pdf'
+ Put the origdir at the front for the correct directory search order.
+ pdflatex didn't create log file on one occasion (the above command) that
made sed commands failed. Test the existence of log before filtering it.
+ A few non-essential changes.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@459 788f1e2b-df1e-0410-8736-df70ead52e1b
--ignore-args features. This allows a simpler, cleaner design.
Make use of TEXINPUTS environment variable to ensure that
pdflatex will find images and other sources in the working
directory from which markdown2pdf is called.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@456 788f1e2b-df1e-0410-8736-df70ead52e1b
+ removed -d/--debug option
+ added --dump-args option, which prints the name of the output file
(or '-' for STDOUT) and all the command-line arguments (excluding
Pandoc options and their arguments), one per line, then exits. Note
that special wrapper options will be treated as arguments if they
follow '--' at the end of the command line. Thus,
pandoc --dump-args -o foo.html foo.txt -- -e latin1
will print the following to STDOUT:
foo.html
foo.txt
-e
latin1
+ added --ignore-args option, which causes Pandoc to ignore all
(non-option) arguments, including any special options that occur
after '--' at the end of the command line.
+ '-' now means STDIN as the name of an input file, STDOUT as the
name of an output file. So,
pandoc -o - -
will take input from STDIN and print output to STDOUT. Note that
if multiple '-o' options are specified on the same line, the last
one takes precedence. So, in a script,
pandoc "$@" -o -
will guarantee output to STDOUT, even if the '-o' option was used.
+ documented these changes in man pages, README, and changelog.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@454 788f1e2b-df1e-0410-8736-df70ead52e1b
+ Improve sed filter to extract the following error contexts:
1. From a line starting with ! to the next blank line.
2. From a line beginning "LaTeX Warning:" to the next blank line.
3. From a line beginning "Error:" to the next blank line, or EOF.
+ Improve the error message headers (perhaps needs a proof reading).
Prepend the wrapper name to the error headers for easy spotting.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@451 788f1e2b-df1e-0410-8736-df70ead52e1b
/dev/null!
+ Another problem is the sed filter which returns nothing with pdfeTeX
'3.141592-1.21a-2.2 (Web2C 7.5.4)' here. As the first cut towards
fixing, use a somewhat heuristic approach: try to build a short log by
matching against a magic error stamp, dump the whole log if the previous
attempt failed. Note that, there is still room to improve this code.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@450 788f1e2b-df1e-0410-8736-df70ead52e1b
Markdown.pl:
+ title attribute comes after alt attribute
+ title is included even if null
git-svn-id: https://pandoc.googlecode.com/svn/trunk@445 788f1e2b-df1e-0410-8736-df70ead52e1b
+ Replaced skipEndline with "option ' ' newline" where possible.
+ Replaced "notFollowedBy' header" in definition of endline with
a faster but equally accurate test for a folliwng header.
+ Removed check at the beginning of 'reference' for
a noteStart: This is not needed, because note comes before
referenceKey in the definition of block.
+ Replaced check for a following anyHtmlBlockTag in autoLink
with a check for anyHtmlTag or anyHtmlEndTag.
+ Other small code cleanups.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@444 788f1e2b-df1e-0410-8736-df70ead52e1b
inline formatting markers inside reference labels: for example,
in '[A_B]: /url/a_b', the material between underscores was being
parsed as emphasized inlines.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@442 788f1e2b-df1e-0410-8736-df70ead52e1b
Instead of using lookahead to determine whether a single quote
is an apostrophe, we now use state. Inside single quotes,
a ' character won't be recognized as the beginning of a single
quote. 'stateQuoteContext' has been added to keep track of
this.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@437 788f1e2b-df1e-0410-8736-df70ead52e1b
is now handled in the Markdown and LaTeX readers, rather than in
the writers. The HTML writer has been rewritten to use the
prettyprinting library.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@436 788f1e2b-df1e-0410-8736-df70ead52e1b
style of implicit reference link. It now uses [this style][],
not [this style]. Reason: only newer, beta versions of Markdown
allow the single-bracket style.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@419 788f1e2b-df1e-0410-8736-df70ead52e1b
Text/Shared/Pandoc. (escapeSGML, stringToSGML, inTag,
inTagSimple, inTagIndented, selfClosingTag) These can be
used by both the HTML and Docbook writers.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@417 788f1e2b-df1e-0410-8736-df70ead52e1b
LineBreaks no longer cause ugly wrapping in Markdown output.
+ Replaced splitBySpace with the more general, polymorphic function
splitBy (in Text/Pandoc/Shared).
git-svn-id: https://pandoc.googlecode.com/svn/trunk@411 788f1e2b-df1e-0410-8736-df70ead52e1b
Otherwise the newline will be treated as a space at the beginning
of the next line.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@410 788f1e2b-df1e-0410-8736-df70ead52e1b
name = 'hsmarkdown' (e.g. through a symlink, on a system with real
symbolic links), it will translate markdown to HTML in strict mode
and interpret all command-line options as arguments, like Markdown.pl.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@405 788f1e2b-df1e-0410-8736-df70ead52e1b
with our existing build process. There's no harm in having it
be a template, even though there's nothing to fill it.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@400 788f1e2b-df1e-0410-8736-df70ead52e1b
Though XML tools should support unicode, some people will be
using SGML tools, and these do not. Using entities makes the
docbook files more portable.
Also refactored encodeEntities and charToHtmlEntity in
HtmlEntities.hs
git-svn-id: https://pandoc.googlecode.com/svn/trunk@394 788f1e2b-df1e-0410-8736-df70ead52e1b
escaped characters rather than <programlisting> and CDATA.
Reason: XML source more easily editable and readable.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@393 788f1e2b-df1e-0410-8736-df70ead52e1b
writer. The line isn't necessary, since we have a case for
every kind of block element.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@388 788f1e2b-df1e-0410-8736-df70ead52e1b
Markdown.pl. 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
``` `` ```
git-svn-id: https://pandoc.googlecode.com/svn/trunk@360 788f1e2b-df1e-0410-8736-df70ead52e1b
of reference keys is made, is much faster. This gets us a big
performance boost.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@353 788f1e2b-df1e-0410-8736-df70ead52e1b
option to pandoc, which forces it to stay as close as possible
to official Markdown syntax.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@347 788f1e2b-df1e-0410-8736-df70ead52e1b
Cygwin, due to Windows' lack of true symbolic links).
+ Modified the wrappers to use 'pandoc' instead of the symlinks.
+ Modified the Makefile to remove all references to the symlinks.
+ Removed code from Main.hs that made pandoc's behavior depend on the
name of the calling program.
+ Added code to Main.hs that sets default reader and writer based on
extensions of input and output filenames (if provided). (Thanks to
roktas for the idea.)
+ Modified README and man pages accordingly.
+ Removed WINDOWS-README target from Makefile. It is no longer needed
now that we don't have the symlinks.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@295 788f1e2b-df1e-0410-8736-df70ead52e1b
the test suite will work in Windows.
+ Converted some CR's to LF's in print.css and adjusted test suite
accordingly.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@290 788f1e2b-df1e-0410-8736-df70ead52e1b
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
+ 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
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
+ 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
+ Recognize a double hyphen as an Em-dash, even when it occurs next
to punctuation (e.g. a quotation mark).
+ Collapse space around Em-dashes.
+ Process quotes before dashes. This way (foo -- 'bar') will turn into
(foo---`bar') instead of (foo---'bar').
git-svn-id: https://pandoc.googlecode.com/svn/trunk@49 788f1e2b-df1e-0410-8736-df70ead52e1b
+ use Helvetica instead of Times New Roman as default font
+ specify \f0 in every \pard; otherwise font sizes are not registered properly
+ modify test of RTF writer accordingly
git-svn-id: https://pandoc.googlecode.com/svn/trunk@32 788f1e2b-df1e-0410-8736-df70ead52e1b