Commit graph

324 commits

Author SHA1 Message Date
fiddlosopher
da9271c258 Removed unneeded 'try' from stringAnyCase. (Now it behaves
like 'string'.)


git-svn-id: https://pandoc.googlecode.com/svn/trunk@927 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-28 06:00:51 +00:00
fiddlosopher
f04df62db1 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.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@926 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-28 05:58:21 +00:00
fiddlosopher
a6da87f484 Minor code cleanup in Text.Pandoc.Shared.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@925 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-28 03:06:05 +00:00
fiddlosopher
1d8fe2653a Performance improvements:
+ Rearranged parsers in definition of 'inline' so that the most
frequently used would (by and large) be tried first.
+ Removed some unneeded 'try's.
+ Removed tabchar parser, as whitespace handles tabs anyway.
+ All in all, these changes, together with the last two commits,
  cut almost in half the time it takes pandoc to parse a large test file.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@924 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-28 02:33:53 +00:00
fiddlosopher
08fbfa37cc Removed unnecessary 'try' in 'anyLine' (Text.Pandoc.Shared).
git-svn-id: https://pandoc.googlecode.com/svn/trunk@923 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-28 02:31:17 +00:00
fiddlosopher
583536a138 Refactored Text.Pandoc.CharacterReferences.
Removed unnecessary 'try's for a speed improvement.
Removed unnecessary '&' and ';' from the entity table.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@922 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-28 02:30:38 +00:00
fiddlosopher
1163e622ab Don't count
p. 27
at the beginning of a line as an ordered list start, since
it's most likely a page number.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@900 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-26 03:17:40 +00:00
fiddlosopher
f609755cb6 Fixed bug in LaTeX writer. When a footnote ends with a Verbatim
environment, the close } of the footnote needs to occur on the same
line or an error occurs.  Fixed by adding a newline before the close }
in every footnote.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@897 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-25 18:17:01 +00:00
fiddlosopher
3de1f19b43 Removed incorrect "{}" around style information in
HTML tables.  Adjusted test suite accordingly.  Column
widths now work properly in HTML.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@882 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-23 23:20:54 +00:00
fiddlosopher
7bf966f934 Bumped version numbers to 0.42 in anticipation of next
bugfix release.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@881 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-23 04:26:37 +00:00
fiddlosopher
f11360f50e 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 may begin:

    B. Russell was an English philosopher.

and this shouldn't be treated as a list.

Modified Markdown reader and README documentation.
Added a test case.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@880 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-23 04:25:09 +00:00
fiddlosopher
e29e5c5944 Use UTF8 conversion on the extra files loaded in Main.hs
(header, before, after).  This fixes problems with unicode
characters in these files.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@879 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-23 02:16:10 +00:00
fiddlosopher
4a0e02dab7 Added a needed 'try' to listItem in Markdown reader.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@878 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-22 20:19:37 +00:00
fiddlosopher
cc0460f952 Code cleanup in Markdown reader.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@877 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-20 19:21:18 +00:00
fiddlosopher
84aa875bdb Changes to Markdown reader for better conformity to the
Markdown test suite under --strict:
+ 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.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@876 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-20 18:52:49 +00:00
fiddlosopher
57d52c39ec If --strict and not --toc, don't include identifiers in headers.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@875 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-20 18:42:09 +00:00
fiddlosopher
56e2200378 Bump version to 0.41.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@867 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-19 16:07:57 +00:00
fiddlosopher
81eba062f2 Refactor RST and Markdown readers using parseFromString.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@864 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-19 00:18:46 +00:00
fiddlosopher
4e149f898a Added a necessary "try" in definition of "para"
(HTML reader).


git-svn-id: https://pandoc.googlecode.com/svn/trunk@863 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-19 00:06:03 +00:00
fiddlosopher
4399db4fd2 Bug fixes in readers:
+ LaTeX reader:  skip anything after \end{document}
+ HTML reader: fixed bug skipping material after </html> -- previously,
  stuff at the end was skipped even if no </html> was present, which
  meant only part of the file would be parsed and no error issued
+ HTML reader: added new constant eitherBlockOrInline with elements that
  may count either as block-level or 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.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@862 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-18 23:44:26 +00:00
fiddlosopher
e48f046aa0 + Fixed bug in markdown ordered list parsing. The problem was
that anyOrderedListStart did not check for a space following the
  ordered list marker. So, 'A.B. 2007' would be parsed as a list item,
  then fail because of the lack of space after 'A.' (required by
  orderedListStart). Resolves Issue #22.
+ Fixed a similar problem in RST reader.
+ Added regression test.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@861 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-18 15:26:29 +00:00
fiddlosopher
a6f3dd3755 Fixed block quote output in markdown writer: previously,
block quotes in notes would be indented only in the first line.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@859 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-17 18:48:16 +00:00
fiddlosopher
3904078e39 Cosmetic changes.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@851 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-15 21:20:02 +00:00
fiddlosopher
1a4489ef30 LaTeX reader: parse \texttt{} as code, as long as there's
nothing fancy inside.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@846 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-15 17:30:37 +00:00
fiddlosopher
ec0e6e9941 Fixed bug in normalizeSpaces: Space:Str "":Space
should compress to Space.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@845 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-15 17:29:20 +00:00
fiddlosopher
6cc5f6b199 Allow htmlComments as rawHtmlInline in HTML reader.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@844 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-15 17:28:21 +00:00
fiddlosopher
a8e2199034 Major code cleanup in all modules. (Removed unneeded imports,
reformatted, etc.)  More major changes are documented below:

+ Removed Text.Pandoc.ParserCombinators and moved all its definitions
  to Text.Pandoc.Shared.
+ In Text.Pandoc.Shared:
  - Removed unneeded 'try' in blanklines.
  - Removed endsWith function and rewrote functions to use isSuffixOf instead.
  - Added >>~ combinator.
  - Rewrote stripTrailingNewlines, removeLeadingSpaces.
+ Moved Text.Pandoc.Entities -> Text.Pandoc.CharacterReferences.
  - Removed unneeded functions charToEntity, charToNumericalEntity.
  - Renamed functions using proper terminology (character references,
    not entities).  decodeEntities -> decodeCharacterReferences,
    characterEntity -> characterReference.
  - Moved escapeStringToXML to Docbook writer, which is the only thing
    that uses it.
  - Removed old entity parser in HTML and Markdown readers; replaced with
    new charRef parser in Text.Pandoc.Shared.
+ Fixed accent bug in Text.Pandoc.Readers.LaTeX:  \^{} now correctly
  parses as a '^' character.
+ Text.Pandoc.ASCIIMathML is no longer an exported module.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@835 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-15 06:00:58 +00:00
fiddlosopher
e814a3f6d2 Major change in the way ordered lists are handled:
+ The changes are 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.
+ Test suites have been changed accordingly.

Motivation:  It's often useful to start lists with
numbers other than 1, and to have control over the
style of the list.

Added to Text.Pandoc.Shared:
+ camelCaseToHyphenated
+ toRomanNumeral
+ anyOrderedListMarker
+ orderedListMarker
+ orderedListMarkers

Added to Text.Pandoc.ParserCombinators:
+ charsInBalanced'
+ withHorizDisplacement
+ romanNumeral

RST writer:
+ Force blank line before lists, so that sublists will be handled
  correctly.

LaTeX reader:
+ Fixed bug in parsing of footnotes containing multiple paragraphs,
  introduced by use of charsInBalanced.  Fix: use charsInBalanced'
  instead.

LaTeX header:
+ use mathletters option in ucs package, so that basic unicode Greek
  letters will work properly.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@834 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-08 02:43:15 +00:00
fiddlosopher
22a6538557 Added parsing for \url to LaTeX reader.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@833 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-03 22:44:47 +00:00
fiddlosopher
271c3f987e Use \url{} for autolinks in LaTeX writer.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@832 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-08-03 22:14:32 +00:00
fiddlosopher
ee46ee5fa9 Removed test for examplep in markdown2pdf.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@831 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 19:17:54 +00:00
fiddlosopher
44b136740b Changes to Markdown reader:
+ added try to def of indentSpaces
+ in def of 'reference', check to make sure it's not a note reference
  first.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@827 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 19:14:50 +00:00
fiddlosopher
5e13f8c320 Removed examplep specific stuff in LaTeX reader.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@826 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 18:23:13 +00:00
fiddlosopher
1be1f77569 LaTeX writer:
+ No longer using examplep (too many quirks, too hard to install)
+ Instead, using deVerb function for environments that don't support
  \verb
+ And fancyvrb for footnotes and verbatim environments in footnotes.
+ Add fancyvrb to header if Code inline occurs in a footnote.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@825 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 18:14:40 +00:00
fiddlosopher
9c181f0410 Removed examplep from LaTeX header.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@824 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 18:13:19 +00:00
fiddlosopher
ab6be44b21 Use 11pt font by default in ConTeXt header.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@823 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 18:12:54 +00:00
fiddlosopher
7c8dcc3db6 Cleaned up and fixed autolinks in RST. All that's needed
is a bare email address or URL.  This is now handled with
a separate matching clause in the definition of inlineToRST,
rather than with conditionals.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@821 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 15:33:58 +00:00
fiddlosopher
db0757d65b Don't put autolinks in typewriter font in ConTeXt, since
ConTeXt has its own way of printing links.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@820 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 15:33:04 +00:00
fiddlosopher
f273965e16 Fixed problems with obfuscateLink introduced by last round
of changes.  Changed type so that text parameter is String,
not HTML, which allows easier testing for autolinks.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@819 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 06:38:49 +00:00
fiddlosopher
d3404581d4 Changes in LaTeX reader to accommodate Pandoc's own use of
examplep.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@818 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 05:45:27 +00:00
fiddlosopher
17873d4639 Main: Changed putStr to putStrLn -- mainly because MacOS doesn't display
the whole output unless there's a line ending.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@817 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 05:28:30 +00:00
fiddlosopher
d65f01f467 Man page writer: modified treatment of autolinks,
in accord with recent change from Str to Code.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@816 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 04:14:32 +00:00
fiddlosopher
94ed30cf15 LaTeX writer: include fancyvrb and \VerbatimFootnotes
line in header only if absolutely needed -- that is, only
if there is actually a code block in a footnote.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@815 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 03:58:09 +00:00
fiddlosopher
465c0849ff Simplified HTML writer's treatment of autolinks.
There are now a few different cases for Link, and
less conditional logic needed.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@813 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 02:43:04 +00:00
fiddlosopher
9939b0f07e Make URLs and emails in autolinks appear as Code.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@810 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 02:12:40 +00:00
fiddlosopher
cf87eb854d Fixed a bug in Docbook writer: email links with text were being
incorrectly treated as autolinks.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@809 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 02:11:04 +00:00
fiddlosopher
d488dd0f66 Reinstated dependence on fancyvrb. It is compatible with examplep.
fancyvrb is needed for verbatim environments in footnotes.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@808 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 01:40:48 +00:00
fiddlosopher
b29f221cba Changed LaTeX writer to use the examplep package instead
of fancyvrb. examplep allows verbatim text in places where
fancyvrb does not, e.g. definition list terms, and provides
for line-breaking of verbatim text.
+ examplep code put in LaTeX header instead of being dynamically
  included, since it is frequently used, and people may want to
  customize the options.
+ documented dependency on examplep
+ added texlive-latex-extra as a "Suggested" package in debian/control
+ use examplep's \Q{} is now used instead of \verb:  note that 
  \Q requires backslash- escaping symbols in its scope.
+ modified README so that the verbatim sections will look good at
  shorter line lengths.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@807 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-28 01:10:04 +00:00
fiddlosopher
4283ce3662 Use ` as default character for \verb in LaTeX output.
If ` is in the content to be escaped, another symbol
will be used as before.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@806 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-27 22:52:11 +00:00
fiddlosopher
1f9d2f8fe7 Include empty \author{} in LaTeX preamble if no
author specified; otherwise LaTeX gives an error.


git-svn-id: https://pandoc.googlecode.com/svn/trunk@803 788f1e2b-df1e-0410-8736-df70ead52e1b
2007-07-26 03:49:21 +00:00