From e95db67b20163c8ab43f4a652b9b6dc7dc13a230 Mon Sep 17 00:00:00 2001 From: Anthony Fok <foka@debian.org> Date: Wed, 5 Aug 2015 16:39:29 -0600 Subject: [PATCH] Add smartDashes flag for Blackfriday To allow the end users to disable any form of smart dashes (LaTeX-style or not) while keeping the rest of Blackfriday SmartyPants features. Depends on https://github.com/russross/blackfriday/pull/190 "Add HTML_SMARTYPANTS_DASHES for toggling smart dashes" to be accepted by Blackfriday developers. --- docs/content/overview/configuration.md | 13 ++++++++++++- helpers/content.go | 6 ++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/docs/content/overview/configuration.md b/docs/content/overview/configuration.md index 2a3f16f0b..95727f530 100644 --- a/docs/content/overview/configuration.md +++ b/docs/content/overview/configuration.md @@ -179,7 +179,7 @@ But Hugo does expose some options---as listed in the table below, matched with t <tr> <td class="purpose-title">Purpose:</td> <td class="purpose-description" colspan="2">Enable/Disable smart punctuation substitutions such as smart quotes, smart dashes, etc. -May be fine-tuned with the <code>angledQuotes</code>, <code>fractions</code> and <code>latexDashes</code> flags below.</td> +May be fine-tuned with the <code>angledQuotes</code>, <code>fractions</code>, <code>smartDashes</code> and <code>latexDashes</code> flags below.</td> </tr> <tr> @@ -208,6 +208,17 @@ Blackfriday would still convert 1/2, 1/4 and 3/4 to ½ (<code>&frac12;< but only these three.</small></td> </tr> +<tr> +<td><code><strong>smartDashes</strong></code></td> +<td><code>true</code></td> +<td><code>HTML_SMARTYPANTS_DASHES</code></td> +</tr> +<tr> +<td class="purpose-title">Purpose:</td> +<td class="purpose-description" colspan="2">Enable/Disable smart dashes, i.e. turning hyphens into en dash or em dash.<br> +Its behavior can be modified with the <code>latexDashes</code> flag listed below.</td> +</tr> + <tr> <td><code><strong>latexDashes</strong></code></td> <td><code>true</code></td> diff --git a/helpers/content.go b/helpers/content.go index 847d4dcbc..b42efaefe 100644 --- a/helpers/content.go +++ b/helpers/content.go @@ -45,6 +45,7 @@ type Blackfriday struct { AngledQuotes bool Fractions bool HrefTargetBlank bool + SmartDashes bool LatexDashes bool PlainIDAnchors bool Extensions []string @@ -58,6 +59,7 @@ func NewBlackfriday() *Blackfriday { AngledQuotes: false, Fractions: true, HrefTargetBlank: false, + SmartDashes: true, LatexDashes: true, PlainIDAnchors: false, } @@ -169,6 +171,10 @@ func GetHTMLRenderer(defaultFlags int, ctx *RenderingContext) blackfriday.Render htmlFlags |= blackfriday.HTML_HREF_TARGET_BLANK } + if ctx.getConfig().SmartDashes { + htmlFlags |= blackfriday.HTML_SMARTYPANTS_DASHES + } + if ctx.getConfig().LatexDashes { htmlFlags |= blackfriday.HTML_SMARTYPANTS_LATEX_DASHES }