From 3dbd266d21f94aebce5cd458f6d632bac79804ec Mon Sep 17 00:00:00 2001 From: fiddlosopher Date: Mon, 30 Oct 2006 23:15:28 +0000 Subject: [PATCH] Improved LaTeX writer's handling of dashes: + 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 --- src/Text/Pandoc/Writers/LaTeX.hs | 6 +++--- tests/writer.latex | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Text/Pandoc/Writers/LaTeX.hs b/src/Text/Pandoc/Writers/LaTeX.hs index b77789e90..0674652cf 100644 --- a/src/Text/Pandoc/Writers/LaTeX.hs +++ b/src/Text/Pandoc/Writers/LaTeX.hs @@ -78,10 +78,10 @@ escapeSingleQuotes = escapeEllipses = gsub "\\.\\.\\.|\\. \\. \\." "\\ldots{}" escapeDashes = gsub "([0-9])-([0-9])" "\\1--\\2" . - gsub " -- " "---" . - gsub "([^[:punct:][:space:]])--([^[:punct:][:space:]])" "\\1---\\2" + gsub " *--- *" "---" . + gsub "([^-])--([^-])" "\\1---\\2" -escapeSmart = escapeSingleQuotes . escapeDoubleQuotes . escapeDashes . escapeEllipses +escapeSmart = escapeDashes . escapeSingleQuotes . escapeDoubleQuotes . escapeEllipses -- | Escape string for LaTeX (including smart quotes, dashes, ellipses) stringToLaTeX :: String -> String diff --git a/tests/writer.latex b/tests/writer.latex index 6f3efc710..7f632cb6d 100644 --- a/tests/writer.latex +++ b/tests/writer.latex @@ -383,7 +383,7 @@ This is code: \verb!>!, \verb!$!, \verb!\!, \verb!\$!, \verb!!. Here is some quoted `\verb!code!' and a ``\href{http://example.com/?foo=1&bar=2}{quoted link}''. -Some dashes: one---two --- three---four---five. +Some dashes: one---two---three---four---five. Dashes between numbers: 5--7, 255--66, 1987--1999.