From d29a6238968c963c8fba829d23a605d3e780118e Mon Sep 17 00:00:00 2001
From: John MacFarlane <jgm@berkeley.edu>
Date: Sat, 27 Aug 2016 22:00:42 +0200
Subject: Man writer:  allow section numbers that are not a single digit.

Closes #3089.
---
 src/Text/Pandoc/Writers/Man.hs | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

(limited to 'src')

diff --git a/src/Text/Pandoc/Writers/Man.hs b/src/Text/Pandoc/Writers/Man.hs
index 5c7d760ac..caf26d515 100644
--- a/src/Text/Pandoc/Writers/Man.hs
+++ b/src/Text/Pandoc/Writers/Man.hs
@@ -41,7 +41,6 @@ import Data.Maybe (fromMaybe)
 import Text.Pandoc.Pretty
 import Text.Pandoc.Builder (deleteMeta)
 import Control.Monad.State
-import Data.Char ( isDigit )
 
 type Notes = [[Block]]
 data WriterState = WriterState { stNotes  :: Notes
@@ -62,10 +61,11 @@ pandocToMan opts (Pandoc meta blocks) = do
   let title' = render' titleText
   let setFieldsFromTitle =
        case break (== ' ') title' of
-           (cmdName, rest) -> case reverse cmdName of
-                                   (')':d:'(':xs) | isDigit d ->
-                                     defField "title" (reverse xs) .
-                                     defField "section" [d] .
+           (cmdName, rest) -> case break (=='(') cmdName of
+                                   (xs, '(':ys) | not (null ys) &&
+                                                  last ys == ')' ->
+                                     defField "title" xs .
+                                     defField "section" (init ys) .
                                      case splitBy (=='|') rest of
                                           (ft:hds) ->
                                             defField "footer" (trim ft) .
-- 
cgit v1.2.3