@@ -105,20 +105,21 @@ processCitations (Pandoc meta bs) = do
105105 let idpred = if "*" `Set.member` nocites
106106 then const True
107107 else (`Set.member` citeIds)
108− refs <- map (linkifyVariables . legacyDateRanges) <$>
109− case lookupMeta "references" meta of
110− Just (MetaList rs) -> return $ mapMaybe metaValueToReference rs
111− _ ->
112− case lookupMeta "bibliography" meta of
113− Just (MetaList xs) ->
114− mconcat <$>
115− mapM (getRefsFromBib locale idpred)
116− (mapMaybe metaValueToText xs)
117− Just x ->
118− case metaValueToText x of
119− Just fp -> getRefsFromBib locale idpred fp
120− Nothing -> return []
121− Nothing -> return []
108+ let inlineRefs = case lookupMeta "references" meta of
109+ Just (MetaList rs) -> mapMaybe metaValueToReference rs
110+ _ -> []
111+ externalRefs <- case lookupMeta "bibliography" meta of
112+ Just (MetaList xs) ->
113+ mconcat <$>
114+ mapM (getRefsFromBib locale idpred)
115+ (mapMaybe metaValueToText xs)
116+ Just x ->
117+ case metaValueToText x of
118+ Just fp -> getRefsFromBib locale idpred fp
119+ Nothing -> return []
120+ Nothing -> return []
121+ let refs = map (linkifyVariables . legacyDateRanges)
122+ (inlineRefs ++ externalRefs)
122123 let otherIdsMap = foldr (\ref m ->
123124 case T.words . extractText <$>
124125 M.lookup "other-ids"