packages feed

pandoc-citeproc 0.16.1.3 → 0.16.2

raw patch · 14 files changed

+59/−19 lines, 14 filesdep ~networkdep ~xml-conduitPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: network, xml-conduit

API changes (from Hackage documentation)

+ Text.CSL.Eval.Common: getOptionValWithDefault :: String -> String -> [Option] -> String
+ Text.CSL.Reference: instance GHC.Classes.Ord Text.CSL.Reference.CNum

Files

changelog view
@@ -1,3 +1,18 @@+pandoc-citeproc (0.16.2)++  * Normalize for sorting by padding numerical strings with 0s (#399).+    This is a somewhat ugly fix to #399, and might be wrong+    if there are strings that may be numerical and should not+    be sorted in numerical order.  But this is the best we can+    do right now without major archictectural changes.+  * Add Ord instance for CNum.  [Minor API change.]+  * Allow empty sort-separator.+    Previously this was overridden with the default.+    Text.CSL.Common: export getOptionValWithDefault [API change].+  * Fix omitted phrase in --man documentation (#394, Daniel Himmelstein).+  * Amend fix to #392 (#393).  Initials were being dropped when there were+    more than two unspaced initials.+ pandoc-citeproc (0.16.1.3)    * Correctly handle initials even when
man/man1/pandoc-citeproc.1 view
@@ -1,7 +1,7 @@ .\"t-.\" Automatically generated by Pandoc 2.7+.\" Automatically generated by Pandoc 2.7.1 .\"-.TH "pandoc-citeproc" "1" "2019-03-12" "pandoc-citeproc 0.16.1.3" ""+.TH "pandoc-citeproc" "1" "2019-03-26" "pandoc-citeproc 0.16.1.3" "" .hy .SH NAME .PP@@ -296,7 +296,8 @@ Print the man page in groff man format. To get a plain text version, \f[C]pandoc-citeproc --man | groff -mman -Tutf8\f[R].-To \f[C]pandoc-citeproc --man | groff -mman -Thtml\f[R].+To get an HTML version,+\f[C]pandoc-citeproc --man | groff -mman -Thtml\f[R]. .TP .B \f[C]--license\f[R] Print the license.
pandoc-citeproc.cabal view
@@ -1,5 +1,5 @@ name:               pandoc-citeproc-version:            0.16.1.3+version:            0.16.2 cabal-version:      1.12 synopsis:           Supports using pandoc with citeproc 
src/Text/CSL/Eval/Common.hs view
@@ -134,6 +134,9 @@ getOptionVal :: String -> [Option] -> String getOptionVal s = fromMaybe [] . lookup s +getOptionValWithDefault :: String -> String -> [Option] -> String+getOptionValWithDefault s defvalue = fromMaybe defvalue . lookup s+ isOptionSet :: String -> [Option] -> Bool isOptionSet s = maybe False (not . null) . lookup s 
src/Text/CSL/Eval/Names.hs view
@@ -279,12 +279,9 @@        sortSep g s = when_ g $ separator ++ addAffixes (g <+> s) "given" mempty       separator   = if isByzantineFamily-                       then-                         if null (getOptionVal "sort-separator" ops)-                            then [OPan [Str ",", Space]]-                            else [OPan $ B.toList $ B.text $ getOptionVal "sort-separator" ops]+                       then [OPan (B.toList (B.text+                              (getOptionValWithDefault "sort-separator" ", " ops)))]                        else []-       suff      = if commaSuffix n && nameSuffix n /= mempty                   then suffCom                   else suffNoCom
src/Text/CSL/Reference.hs view
@@ -382,7 +382,8 @@ handleSpecialCases "legal-case"             = "legal_case" handleSpecialCases x                        = x -newtype CNum = CNum { unCNum :: Int } deriving ( Show, Read, Eq, Num, Typeable, Data, Generic )+newtype CNum = CNum { unCNum :: Int }+  deriving ( Show, Read, Eq, Ord, Num, Typeable, Data, Generic )  instance FromJSON CNum where   parseJSON x = CNum `fmap` parseInt x
src/Text/CSL/Style.hs view
@@ -100,7 +100,7 @@ import           Data.Aeson             hiding (Number) import qualified Data.Aeson             as Aeson import           Data.Aeson.Types       (Pair)-import           Data.Char              (isLetter, isPunctuation, isUpper, toLower)+import           Data.Char              (isLetter, isPunctuation, isUpper, toLower, isDigit) import qualified Data.Char              as Char import           Data.Generics          (Data, Typeable) import           Data.List              (intercalate, intersperse, isInfixOf,@@ -491,7 +491,13 @@         (_  ,'-':_)   -> GT         _             -> comp (normalize x) (normalize y)       where-        normalize = map (\c -> if c == ',' || c == '.' then ' ' else c) .+        -- we zero pad numbers so they're sorted numerically, see #399+        zeropad [] = []+        zeropad xs = if all isDigit xs+                        then replicate (10 - length xs) '0' ++ xs+                        else xs+        normalize = zeropad .+                    map (\c -> if c == ',' || c == '.' then ' ' else c) .                     filter (\c -> c == ',' ||                                   not (isPunctuation c || Char.isSpace c                                       -- ayn/hamza in transliterated arabic:
src/Text/CSL/Util.hs view
@@ -544,5 +544,5 @@       | isLetter d       , isLetter c       , isUpper c-      , isUpper d   = Str [c]:Str ".":Space:Str [d]:go xs+      , isUpper d   = Str [c]:Str ".":Space:go (Str [d]:xs)     go (x:xs) = x:go xs
stack.yaml view
@@ -9,11 +9,12 @@ packages: - '.' extra-deps:-- pandoc-2.7-- texmath-0.11.2.1+- pandoc-2.7.2+- texmath-0.11.2.2 - skylighting-core-0.7.7 - skylighting-0.7.7 - ipynb-0.1+- cmark-gfm-0.2.0 ghc-options:    "$locals": -fhide-source-paths-resolver: lts-13.5+resolver: lts-13.9
tests/issue392.expected.native view
@@ -1,7 +1,7 @@-Pandoc (Meta {unMeta = fromList [("csl",MetaInlines [Str "tests/vancouver.csl"]),("references",MetaList [MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "James"]),("given",MetaInlines [Str "M.R."])])]),("id",MetaInlines [Str "james"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "MacFarlane"]),("given",MetaInlines [Str "J.",Space,Str "G."])])]),("id",MetaInlines [Str "macfarlane"])])])]})+Pandoc (Meta {unMeta = fromList [("csl",MetaInlines [Str "tests/vancouver.csl"]),("references",MetaList [MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "James"]),("given",MetaInlines [Str "M.R.C.E.L."])])]),("id",MetaInlines [Str "james"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "MacFarlane"]),("given",MetaInlines [Str "J.",Space,Str "G."])])]),("id",MetaInlines [Str "macfarlane"])])])]}) [Para [Cite [Citation {citationId = "james", citationPrefix = [], citationSuffix = [], citationMode = AuthorInText, citationNoteNum = 0, citationHash = 1}] [Str "(1)"],Str ";",Space,Cite [Citation {citationId = "macfarlane", citationPrefix = [], citationSuffix = [], citationMode = AuthorInText, citationNoteNum = 0, citationHash = 2}] [Str "(2)"]] ,Div ("refs",["references"],[])  [Div ("ref-james",[],[])-  [Para [Str "1.",Space,Str "James",Space,Str "MR.",Space]]+  [Para [Str "1.",Space,Str "James",Space,Str "MRCEL.",Space]]  ,Div ("ref-macfarlane",[],[])   [Para [Str "2.",Space,Str "MacFarlane",Space,Str "JG.",Space]]]]
tests/issue392.in.native view
@@ -1,2 +1,2 @@-Pandoc (Meta {unMeta = fromList [("csl",MetaInlines [Str "tests/vancouver.csl"]),("references",MetaList [MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "James"]),("given",MetaInlines [Str "M.R."])])]),("id",MetaInlines [Str "james"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "MacFarlane"]),("given",MetaInlines [Str "J.",Space,Str "G."])])]),("id",MetaInlines [Str "macfarlane"])])])]})+Pandoc (Meta {unMeta = fromList [("csl",MetaInlines [Str "tests/vancouver.csl"]),("references",MetaList [MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "James"]),("given",MetaInlines [Str "M.R.C.E.L."])])]),("id",MetaInlines [Str "james"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "MacFarlane"]),("given",MetaInlines [Str "J.",Space,Str "G."])])]),("id",MetaInlines [Str "macfarlane"])])])]}) [Para [Cite [Citation {citationId = "james", citationPrefix = [], citationSuffix = [], citationMode = AuthorInText, citationNoteNum = 0, citationHash = 0}] [Str "@james"],Str ";",Space,Cite [Citation {citationId = "macfarlane", citationPrefix = [], citationSuffix = [], citationMode = AuthorInText, citationNoteNum = 0, citationHash = 0}] [Str "@macfarlane"]]]
+ tests/issue399.expected.native view
@@ -0,0 +1,2 @@+Pandoc (Meta {unMeta = fromList [("csl",MetaInlines [Str "tests/style399.csl"]),("references",MetaList [MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "One"])])]),("id",MetaInlines [Str "one"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Two"])])]),("id",MetaInlines [Str "two"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Three"])])]),("id",MetaInlines [Str "three"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Four"])])]),("id",MetaInlines [Str "four"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Five"])])]),("id",MetaInlines [Str "five"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Six"])])]),("id",MetaInlines [Str "six"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Seven"])])]),("id",MetaInlines [Str "seven"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Eight"])])]),("id",MetaInlines [Str "eight"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Nine"])])]),("id",MetaInlines [Str "nine"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Ten"])])]),("id",MetaInlines [Str "ten"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Eleven"])])]),("id",MetaInlines [Str "eleven"])])])]})+[Para [Str "Inline",Space,Str "citation",Space,Cite [Citation {citationId = "one", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 1},Citation {citationId = "two", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 2},Citation {citationId = "three", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 3},Citation {citationId = "four", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 4},Citation {citationId = "five", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 5},Citation {citationId = "six", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 6},Citation {citationId = "seven", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 7},Citation {citationId = "eight", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 8},Citation {citationId = "nine", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 9},Citation {citationId = "ten", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 10},Citation {citationId = "eleven", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 11}] [Str "[1,2,3,4,5,6,7,8,9,10,11]"],Str "."]]
+ tests/issue399.in.native view
@@ -0,0 +1,2 @@+Pandoc (Meta {unMeta = fromList [("csl",MetaInlines [Str "tests/style399.csl"]),("references",MetaList [MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "One"])])]),("id",MetaInlines [Str "one"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Two"])])]),("id",MetaInlines [Str "two"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Three"])])]),("id",MetaInlines [Str "three"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Four"])])]),("id",MetaInlines [Str "four"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Five"])])]),("id",MetaInlines [Str "five"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Six"])])]),("id",MetaInlines [Str "six"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Seven"])])]),("id",MetaInlines [Str "seven"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Eight"])])]),("id",MetaInlines [Str "eight"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Nine"])])]),("id",MetaInlines [Str "nine"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Ten"])])]),("id",MetaInlines [Str "ten"])]),MetaMap (fromList [("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Eleven"])])]),("id",MetaInlines [Str "eleven"])])])]})+[Para [Str "Inline",Space,Str "citation",Space,Cite [Citation {citationId = "one", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "two", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "three", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "four", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "five", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "six", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "seven", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "eight", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "nine", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "ten", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0},Citation {citationId = "eleven", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 0}] [Str "[@one;",Space,Str "@two;",Space,Str "@three;",Space,Str "@four;",Space,Str "@five;",Space,Str "@six;",Space,Str "@seven;",Space,Str "@eight;",Space,Str "@nine;",Space,Str "@ten;",Space,Str "@eleven]"],Str "."]]
+ tests/style399.csl view
@@ -0,0 +1,12 @@+<?xml version="1.0" encoding="utf-8"?>+<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="never" default-locale="en-US">+  <citation>+    <sort>+      <key variable="citation-number"/>+    </sort>+    <layout prefix="[" suffix="]" delimiter=",">+      <text variable="citation-number"/>+    </layout>+  </citation>+</style>+