diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,34 @@
+pandoc-citeproc (0.10)
+
+  * Allow colons in bibtex field names (John MacFarlane, #220).
+  * Set LANG as well as LC_ALL before translating bibtex (John MacFarlane).
+    This ensures that bibtex will use the locale specified
+    in the document, even if the system locale is different.
+  * Data:  Raise CSLLocaleException if locale not found (John MacFarlane).
+    Minor API change:  Export CSLLocaleException.
+  * Added DeriveDataTypeable pragma to Data (John MacFarlane).
+  * Bibtex reader: case-insensitive parsing of month names (John MacFarlane).
+  * Bibtex: Export readBibtexInputString', a pure version of
+    readBibtexInputString (John MacFarlane).
+  * Rename readBibtexInput* -> readBibtex* (John MacFarlane, API change).
+  * unTitleCase now lowercases whole word (#234, John MacFarlane).
+    So, for example, unprotected TeV becomes tev, instead of teV.
+    This mimics bibtex's own behavior.
+  * Added caseTransform parameter on readBibtex* functions (#231, John
+    MacFarlane).  When set to false, the bibtex reader doesn't do the
+    'untitlecase' transformation.  This is used in Text.CSL.Input.Bibutils,
+    when using bibtex as an intermediate format for conversion from mods,
+    ris, or other formats.  Otherwise we get the 'untitlecase' transform
+    when it isn't wanted.
+  * Allow numbers with decimal points to count as "numeric." (#208,
+    John MacFarlane) Thus, we should have "Series 2.2", not "Series, 2.2" with
+    Chicago author-date style.
+  * Fixed capitalization for words following slash (#236, John MacFarlane).
+  * Updated locales.
+  * Fix build failure for --flags=-bibutils mode (Sergei Trofimovich).
+    Reported-by Thomas Beutin https://bugs.gentoo.org/516640.
+  * Add missing -DUSE_BIBUTILS to Cabal build (Vaclav Haisman).
+
 pandoc-citeproc (0.9.1.1)
 
   * Only changed version number (work around for hackage upload error).
diff --git a/locales/locales-ar.xml b/locales/locales-ar.xml
--- a/locales/locales-ar.xml
+++ b/locales/locales-ar.xml
@@ -22,7 +22,7 @@
     <term name="anonymous">مجهول</term>
     <term name="anonymous" form="short">مجهول</term>
     <term name="at">عند</term>
-    <term name="available at">available at</term>
+    <term name="available at">موجود في</term>
     <term name="by">عن طريق</term>
     <term name="circa">حوالي</term>
     <term name="circa" form="short">حو.</term>
@@ -199,8 +199,8 @@
 
     <!-- LONG ROLE FORMS -->
     <term name="director">
-      <single>director</single>
-      <multiple>directors</multiple>
+      <single>مدور</single>
+      <multiple>مدورين</multiple>
     </term>
     <term name="editor">
       <single>محرر</single>
@@ -257,7 +257,7 @@
     <term name="illustrator" form="verb">illustrated by</term>
     <term name="interviewer" form="verb">مقابلة بواسطة</term>
     <term name="recipient" form="verb">مرسل الى</term>
-    <term name="reviewed-author" form="verb">by</term>
+    <term name="reviewed-author" form="verb">بـ</term>
     <term name="translator" form="verb">ترجمة</term>
     <term name="editortranslator" form="verb">اعداد وترجمة</term>
 
diff --git a/locales/locales-cs-CZ.xml b/locales/locales-cs-CZ.xml
--- a/locales/locales-cs-CZ.xml
+++ b/locales/locales-cs-CZ.xml
@@ -54,7 +54,7 @@
       <single>ref.</single>
       <multiple>ref.</multiple>
     </term>
-    <term name="retrieved">dostupné</term>
+    <term name="retrieved">získáno</term>
     <term name="scale">měřítko</term>
     <term name="version">verze</term>
 
diff --git a/locales/locales-da-DK.xml b/locales/locales-da-DK.xml
--- a/locales/locales-da-DK.xml
+++ b/locales/locales-da-DK.xml
@@ -16,7 +16,7 @@
     <date-part name="year"/>
   </date>
   <terms>
-    <term name="accessed">åbnet</term>
+    <term name="accessed">set</term>
     <term name="and">og</term>
     <term name="and others">med flere</term>
     <term name="anonymous">anonym</term>
@@ -26,23 +26,23 @@
     <term name="by">af</term>
     <term name="circa">cirka</term>
     <term name="circa" form="short">ca.</term>
-    <term name="cited">citeret</term>
+    <term name="cited">henvist</term>
     <term name="edition">
       <single>udgave</single>
       <multiple>udgaver</multiple>
     </term>
     <term name="edition" form="short">udg.</term>
-    <term name="et-al">et al.</term>
+    <term name="et-al">m.fl.</term>
     <term name="forthcoming">kommende</term>
     <term name="from">fra</term>
     <term name="ibid">ibid.</term>
     <term name="in">i</term>
-    <term name="in press">i tryk</term>
+    <term name="in press">i trykken</term>
     <term name="internet">internet</term>
     <term name="interview">interview</term>
     <term name="letter">brev</term>
-    <term name="no date">ingen dato</term>
-    <term name="no date" form="short">udateret</term>
+    <term name="no date">uden år</term>
+    <term name="no date" form="short">u.å.</term>
     <term name="online">online</term>
     <term name="presented at">præsenteret ved</term>
     <term name="reference">
@@ -54,16 +54,16 @@
       <multiple>refr.</multiple>
     </term>
     <term name="retrieved">hentet</term>
-    <term name="scale">scale</term>
+    <term name="scale">skala</term>
     <term name="version">version</term>
 
     <!-- ANNO DOMINI; BEFORE CHRIST -->
-    <term name="ad">e.Kr</term>
-    <term name="bc">f.Kr</term>
+    <term name="ad">e.v.t.</term>
+    <term name="bc">f.v.t.</term>
 
     <!-- PUNCTUATION -->
-    <term name="open-quote">«</term>
-    <term name="close-quote">»</term>
+    <term name="open-quote">“</term>
+    <term name="close-quote">”</term>
     <term name="open-inner-quote">‘</term>
     <term name="close-inner-quote">’</term>
     <term name="page-range-delimiter">–</term>
@@ -102,7 +102,7 @@
     </term>
     <term name="folio">
       <single>folio</single>
-      <multiple>folier</multiple>
+      <multiple>folio</multiple>
     </term>
     <term name="issue">
       <single>nummer</single>
@@ -118,7 +118,7 @@
     </term>
     <term name="opus">
       <single>opus</single>
-      <multiple>opuser</multiple>
+      <multiple>opus</multiple>
     </term>
     <term name="page">
       <single>side</single>
@@ -137,12 +137,12 @@
       <multiple>dele</multiple>
     </term>
     <term name="section">
-      <single>sektion</single>
-      <multiple>sektionerne</multiple>
+      <single>paragraf</single>
+      <multiple>paragraffer</multiple>
     </term>
     <term name="sub verbo">
-      <single>sub verbo</single>
-      <multiple>sub verbis</multiple>
+      <single>sub voce</single>
+      <multiple>sub voce</multiple>
     </term>
     <term name="verse">
       <single>vers</single>
@@ -173,10 +173,10 @@
     </term>
     <term name="paragraph" form="short">afs.</term>
     <term name="part" form="short">d.</term>
-    <term name="section" form="short">sekt.</term>
+    <term name="section" form="short">par.</term>
     <term name="sub verbo" form="short">
       <single>s.v.</single>
-      <multiple>s.vv.</multiple>
+      <multiple>s.v.</multiple>
     </term>
     <term name="verse" form="short">
       <single>v.</single>
@@ -199,8 +199,8 @@
 
     <!-- LONG ROLE FORMS -->
     <term name="director">
-      <single>director</single>
-      <multiple>directors</multiple>
+      <single>instruktør</single>
+      <multiple>instruktører</multiple>
     </term>
     <term name="editor">
       <single>redaktør</single>
@@ -225,8 +225,8 @@
 
     <!-- SHORT ROLE FORMS -->
     <term name="director" form="short">
-      <single>dir.</single>
-      <multiple>dirs.</multiple>
+      <single>instr.</single>
+      <multiple>instr.</multiple>
     </term>
     <term name="editor" form="short">
       <single>red.</single>
@@ -251,18 +251,18 @@
 
     <!-- VERB ROLE FORMS -->
     <term name="container-author" form="verb">af</term>
-    <term name="director" form="verb">directed by</term>
+    <term name="director" form="verb">instrueret af</term>
     <term name="editor" form="verb">redigeret af</term>
     <term name="editorial-director" form="verb">redigeret af</term>
     <term name="illustrator" form="verb">illustreret af</term>
     <term name="interviewer" form="verb">interviewet af</term>
     <term name="recipient" form="verb">modtaget af</term>
-    <term name="reviewed-author" form="verb">by</term>
+    <term name="reviewed-author" form="verb">af</term>
     <term name="translator" form="verb">oversat af</term>
     <term name="editortranslator" form="verb">redigeret &amp; oversat af</term>
 
     <!-- SHORT VERB ROLE FORMS -->
-    <term name="director" form="verb-short">dir.</term>
+    <term name="director" form="verb-short">instr.</term>
     <term name="editor" form="verb-short">red.</term>
     <term name="editorial-director" form="verb-short">red.</term>
     <term name="illustrator" form="verb-short">illus.</term>
@@ -270,32 +270,32 @@
     <term name="editortranslator" form="verb-short">red. &amp; overs. af</term>
 
     <!-- LONG MONTH FORMS -->
-    <term name="month-01">Januar</term>
-    <term name="month-02">Februar</term>
-    <term name="month-03">Marts</term>
-    <term name="month-04">April</term>
-    <term name="month-05">Maj</term>
-    <term name="month-06">Juni</term>
-    <term name="month-07">Juli</term>
-    <term name="month-08">August</term>
-    <term name="month-09">September</term>
-    <term name="month-10">Oktober</term>
-    <term name="month-11">November</term>
-    <term name="month-12">December</term>
+    <term name="month-01">januar</term>
+    <term name="month-02">februar</term>
+    <term name="month-03">marts</term>
+    <term name="month-04">april</term>
+    <term name="month-05">maj</term>
+    <term name="month-06">juni</term>
+    <term name="month-07">juli</term>
+    <term name="month-08">august</term>
+    <term name="month-09">september</term>
+    <term name="month-10">oktober</term>
+    <term name="month-11">november</term>
+    <term name="month-12">december</term>
 
     <!-- SHORT MONTH FORMS -->
-    <term name="month-01" form="short">Jan.</term>
-    <term name="month-02" form="short">Feb.</term>
-    <term name="month-03" form="short">Mar.</term>
-    <term name="month-04" form="short">Apr.</term>
-    <term name="month-05" form="short">Maj</term>
-    <term name="month-06" form="short">Jun.</term>
-    <term name="month-07" form="short">Jul.</term>
-    <term name="month-08" form="short">Aug.</term>
-    <term name="month-09" form="short">Sep.</term>
-    <term name="month-10" form="short">Okt.</term>
-    <term name="month-11" form="short">Nov.</term>
-    <term name="month-12" form="short">Dec.</term>
+    <term name="month-01" form="short">jan.</term>
+    <term name="month-02" form="short">feb.</term>
+    <term name="month-03" form="short">mar.</term>
+    <term name="month-04" form="short">apr.</term>
+    <term name="month-05" form="short">maj</term>
+    <term name="month-06" form="short">jun.</term>
+    <term name="month-07" form="short">jul.</term>
+    <term name="month-08" form="short">aug.</term>
+    <term name="month-09" form="short">sep.</term>
+    <term name="month-10" form="short">okt.</term>
+    <term name="month-11" form="short">nov.</term>
+    <term name="month-12" form="short">dec.</term>
 
     <!-- SEASONS -->
     <term name="season-01">Forår</term>
diff --git a/locales/locales-fa-IR.xml b/locales/locales-fa-IR.xml
--- a/locales/locales-fa-IR.xml
+++ b/locales/locales-fa-IR.xml
@@ -69,13 +69,7 @@
     <term name="page-range-delimiter">–</term>
 
     <!-- ORDINALS -->
-    <term name="ordinal">th</term>
-    <term name="ordinal-01">st</term>
-    <term name="ordinal-02">nd</term>
-    <term name="ordinal-03">rd</term>
-    <term name="ordinal-11">th</term>
-    <term name="ordinal-12">th</term>
-    <term name="ordinal-13">th</term>
+    <term name="ordinal"></term>
 
     <!-- LONG ORDINALS -->
     <term name="long-ordinal-01">اول</term>
diff --git a/locales/locales-hr-HR.xml b/locales/locales-hr-HR.xml
--- a/locales/locales-hr-HR.xml
+++ b/locales/locales-hr-HR.xml
@@ -19,13 +19,13 @@
     <term name="accessed">pristupljeno</term>
     <term name="and">i</term>
     <term name="and others">i ostali</term>
-    <term name="anonymous">anonim</term>
+    <term name="anonymous">anonimno</term>
     <term name="anonymous" form="short">anon.</term>
     <term name="at">na</term>
-    <term name="available at">pristupačno na</term>
+    <term name="available at">dostupno na</term>
     <term name="by">od</term>
-    <term name="circa">circa</term>
-    <term name="circa" form="short">c.</term>
+    <term name="circa">oko</term>
+    <term name="circa" form="short">oko</term>
     <term name="cited">citirano</term>
     <term name="edition">
       <single>izdanje</single>
@@ -37,12 +37,12 @@
     <term name="from">od</term>
     <term name="ibid">ibid.</term>
     <term name="in">u</term>
-    <term name="in press">u štampi</term>
+    <term name="in press">u tisku</term>
     <term name="internet">internet</term>
     <term name="interview">intervju</term>
     <term name="letter">pismo</term>
     <term name="no date">bez datuma</term>
-    <term name="no date" form="short">bez datuma</term>
+    <term name="no date" form="short">bez dat.</term>
     <term name="online">na internetu</term>
     <term name="presented at">predstavljeno na</term>
     <term name="reference">
@@ -58,8 +58,8 @@
     <term name="version">verzija</term>
 
     <!-- ANNO DOMINI; BEFORE CHRIST -->
-    <term name="ad">AD</term>
-    <term name="bc">BC</term>
+    <term name="ad"></term>
+    <term name="bc">pr. Kr.</term>
 
     <!-- PUNCTUATION -->
     <term name="open-quote">„</term>
@@ -69,13 +69,7 @@
     <term name="page-range-delimiter">–</term>
 
     <!-- ORDINALS -->
-    <term name="ordinal">th</term>
-    <term name="ordinal-01">st</term>
-    <term name="ordinal-02">nd</term>
-    <term name="ordinal-03">rd</term>
-    <term name="ordinal-11">th</term>
-    <term name="ordinal-12">th</term>
-    <term name="ordinal-13">th</term>
+    <term name="ordinal">.</term>
 
     <!-- LONG ORDINALS -->
     <term name="long-ordinal-01">prvi</term>
@@ -99,8 +93,8 @@
       <multiple>poglavlja</multiple>
     </term>
     <term name="column">
-      <single>kolona</single>
-      <multiple>kolone</multiple>
+      <single>stupac</single>
+      <multiple>stupci</multiple>
     </term>
     <term name="figure">
       <single>crtež</single>
@@ -111,20 +105,20 @@
       <multiple>folije</multiple>
     </term>
     <term name="issue">
-      <single>broj</single>
-      <multiple>brojevi</multiple>
+      <single>izdanje</single>
+      <multiple>izdanja</multiple>
     </term>
     <term name="line">
-      <single>linija</single>
-      <multiple>linije</multiple>
+      <single>red</single>
+      <multiple>redovi</multiple>
     </term>
     <term name="note">
-      <single>beleška</single>
-      <multiple>beleške</multiple>
+      <single>bilješka</single>
+      <multiple>bilješke</multiple>
     </term>
     <term name="opus">
-      <single>opus</single>
-      <multiple>opera</multiple>
+      <single>djelo</single>
+      <multiple>djela</multiple>
     </term>
     <term name="page">
       <single>stranica</single>
@@ -135,40 +129,40 @@
       <multiple>stranice</multiple>
     </term>
     <term name="paragraph">
-      <single>paragraf</single>
-      <multiple>paragrafi</multiple>
+      <single>pasus</single>
+      <multiple>pasusi</multiple>
     </term>
     <term name="part">
-      <single>deo</single>
-      <multiple>delova</multiple>
+      <single>dio</single>
+      <multiple>dijelova</multiple>
     </term>
     <term name="section">
-      <single>odeljak</single>
-      <multiple>odeljaka</multiple>
+      <single>odjeljak</single>
+      <multiple>odjeljci</multiple>
     </term>
     <term name="sub verbo">
       <single>sub verbo</single>
       <multiple>sub verbis</multiple>
     </term>
     <term name="verse">
-      <single>strofa</single>
-      <multiple>strofe</multiple>
+      <single>stih</single>
+      <multiple>stihovi</multiple>
     </term>
     <term name="volume">
-      <single>tom</single>
-      <multiple>tomova</multiple>
+      <single>svezak</single>
+      <multiple>svesci</multiple>
     </term>
 
     <!-- SHORT LOCATOR FORMS -->
-    <term name="book" form="short">knj</term>
-    <term name="chapter" form="short">pog</term>
-    <term name="column" form="short">kol</term>
-    <term name="figure" form="short">црт</term>
-    <term name="folio" form="short">fol</term>
-    <term name="issue" form="short">izd</term>
-    <term name="line" form="short">l</term>
-    <term name="note" form="short">n</term>
-    <term name="opus" form="short">op</term>
+    <term name="book" form="short">knj.</term>
+    <term name="chapter" form="short">pogl.</term>
+    <term name="column" form="short">stup.</term>
+    <term name="figure" form="short">crt.</term>
+    <term name="folio" form="short">fol.</term>
+    <term name="issue" form="short">izd.</term>
+    <term name="line" form="short">red</term>
+    <term name="note" form="short">bilj.</term>
+    <term name="opus" form="short">sv.</term>
     <term name="page" form="short">
       <single>str.</single>
       <multiple>str.</multiple>
@@ -177,20 +171,20 @@
       <single>str.</single>
       <multiple>str.</multiple>
     </term>
-    <term name="paragraph" form="short">par</term>
-    <term name="part" form="short">deo</term>
-    <term name="section" form="short">od</term>
+    <term name="paragraph" form="short">par.</term>
+    <term name="part" form="short">dio</term>
+    <term name="section" form="short">od.</term>
     <term name="sub verbo" form="short">
       <single>s.v.</single>
       <multiple>s.vv.</multiple>
     </term>
     <term name="verse" form="short">
-      <single>s</single>
-      <multiple>s</multiple>
+      <single>st.</single>
+      <multiple>st.</multiple>
     </term>
     <term name="volume" form="short">
-      <single>tom</single>
-      <multiple>tomova</multiple>
+      <single>sv.</single>
+      <multiple>sv.</multiple>
     </term>
 
     <!-- SYMBOL LOCATOR FORMS -->
@@ -205,42 +199,42 @@
 
     <!-- LONG ROLE FORMS -->
     <term name="director">
-      <single>director</single>
-      <multiple>directors</multiple>
+      <single>voditelj</single>
+      <multiple>voditelji</multiple>
     </term>
     <term name="editor">
-      <single>priređivač</single>
-      <multiple>priređivači</multiple>
+      <single>urednik</single>
+      <multiple>urednici</multiple>
     </term>
     <term name="editorial-director">
-      <single>priređivač</single>
-      <multiple>priređivači</multiple>
+      <single>urednik</single>
+      <multiple>urednici</multiple>
     </term>
     <term name="illustrator">
       <single>ilustrator</single>
       <multiple>ilustratori</multiple>
     </term>
     <term name="translator">
-      <single>prevodilac</single>
-      <multiple>prevodioci</multiple>
+      <single>prevoditelj</single>
+      <multiple>prevoditelji</multiple>
     </term>
     <term name="editortranslator">
-      <single>priređivač &amp; prevodilac</single>
-      <multiple>priređivači &amp; prevodioci</multiple>
+      <single>urednik &amp; prevoditelj</single>
+      <multiple>urednici &amp; prevoditelji</multiple>
     </term>
 
     <!-- SHORT ROLE FORMS -->
     <term name="director" form="short">
-      <single>prir.</single>
-      <multiple>prir.</multiple>
+      <single>vod.</single>
+      <multiple>vod.</multiple>
     </term>
     <term name="editor" form="short">
-      <single>prir.</single>
-      <multiple>prir.</multiple>
+      <single>ur.</single>
+      <multiple>ur.</multiple>
     </term>
     <term name="editorial-director" form="short">
-      <single>prir.</single>
-      <multiple>prir.</multiple>
+      <single>ur.-vod.</single>
+      <multiple>ur.-vod.</multiple>
     </term>
     <term name="illustrator" form="short">
       <single>il.</single>
@@ -251,61 +245,61 @@
       <multiple>prev.</multiple>
     </term>
     <term name="editortranslator" form="short">
-      <single>prir. &amp; prev.</single>
-      <multiple>prir. &amp; prev.</multiple>
+      <single>ur. &amp; prev.</single>
+      <multiple>ur. &amp; prev.</multiple>
     </term>
 
     <!-- VERB ROLE FORMS -->
-    <term name="container-author" form="verb">by</term>
-    <term name="director" form="verb">directed by</term>
-    <term name="editor" form="verb">priredio</term>
-    <term name="editorial-director" form="verb">priredio</term>
-    <term name="illustrator" form="verb">ilustrovao</term>
-    <term name="interviewer" form="verb">intervjuisao</term>
-    <term name="recipient" form="verb">prima</term>
-    <term name="reviewed-author" form="verb">od</term>
+    <term name="container-author" form="verb">od</term>
+    <term name="director" form="verb">vodio</term>
+    <term name="editor" form="verb">uredio</term>
+    <term name="editorial-director" form="verb">uredio</term>
+    <term name="illustrator" form="verb">ilustrirao</term>
+    <term name="interviewer" form="verb">intervjuirao</term>
+    <term name="recipient" form="verb">primatelj</term>
+    <term name="reviewed-author" form="verb">pregledao</term>
     <term name="translator" form="verb">preveo</term>
-    <term name="editortranslator" form="verb">priredio &amp; preveo by</term>
+    <term name="editortranslator" form="verb">uredio &amp; preveo</term>
 
     <!-- SHORT VERB ROLE FORMS -->
-    <term name="director" form="verb-short">dir.</term>
-    <term name="editor" form="verb-short">prir.</term>
-    <term name="editorial-director" form="verb-short">prir.</term>
+    <term name="director" form="verb-short">vod.</term>
+    <term name="editor" form="verb-short">ur.</term>
+    <term name="editorial-director" form="verb-short">ur. vod.</term>
     <term name="illustrator" form="verb-short">ilus.</term>
     <term name="translator" form="verb-short">prev.</term>
-    <term name="editortranslator" form="verb-short">prir. &amp; prev. by</term>
+    <term name="editortranslator" form="verb-short">ur. &amp; prev.</term>
 
     <!-- LONG MONTH FORMS -->
-    <term name="month-01">januar</term>
-    <term name="month-02">februar</term>
-    <term name="month-03">mart</term>
-    <term name="month-04">april</term>
-    <term name="month-05">maj</term>
-    <term name="month-06">jun</term>
-    <term name="month-07">jul</term>
-    <term name="month-08">avgust</term>
-    <term name="month-09">septembar</term>
-    <term name="month-10">oktobar</term>
-    <term name="month-11">novembar</term>
-    <term name="month-12">decembar</term>
+    <term name="month-01">siječanj</term>
+    <term name="month-02">veljača</term>
+    <term name="month-03">ožujak</term>
+    <term name="month-04">travanj</term>
+    <term name="month-05">svibanj</term>
+    <term name="month-06">lipanj</term>
+    <term name="month-07">srpanj</term>
+    <term name="month-08">kolovoz</term>
+    <term name="month-09">rujan</term>
+    <term name="month-10">listopad</term>
+    <term name="month-11">studeni</term>
+    <term name="month-12">prosinac</term>
 
     <!-- SHORT MONTH FORMS -->
-    <term name="month-01" form="short">jan.</term>
-    <term name="month-02" form="short">feb.</term>
-    <term name="month-03" form="short">mart</term>
-    <term name="month-04" form="short">apr.</term>
-    <term name="month-05" form="short">maj</term>
-    <term name="month-06" form="short">jun</term>
-    <term name="month-07" form="short">jul</term>
-    <term name="month-08" form="short">avg.</term>
-    <term name="month-09" form="short">sep.</term>
-    <term name="month-10" form="short">okt.</term>
-    <term name="month-11" form="short">nov.</term>
-    <term name="month-12" form="short">dec.</term>
+    <term name="month-01" form="short">sij.</term>
+    <term name="month-02" form="short">velj.</term>
+    <term name="month-03" form="short">ožu.</term>
+    <term name="month-04" form="short">tra.</term>
+    <term name="month-05" form="short">svi.</term>
+    <term name="month-06" form="short">lip.</term>
+    <term name="month-07" form="short">srp.</term>
+    <term name="month-08" form="short">kol.</term>
+    <term name="month-09" form="short">ruj.</term>
+    <term name="month-10" form="short">lis.</term>
+    <term name="month-11" form="short">stu.</term>
+    <term name="month-12" form="short">pros.</term>
 
     <!-- SEASONS -->
-    <term name="season-01">proleće</term>
-    <term name="season-02">leto</term>
+    <term name="season-01">proljeće</term>
+    <term name="season-02">ljeto</term>
     <term name="season-03">jesen</term>
     <term name="season-04">zima</term>
   </terms>
diff --git a/locales/locales-pt-BR.xml b/locales/locales-pt-BR.xml
--- a/locales/locales-pt-BR.xml
+++ b/locales/locales-pt-BR.xml
@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="utf-8"?>
 <locale xmlns="http://purl.org/net/xbiblio/csl" version="1.0" xml:lang="pt-BR">
   <info>
+    <updated>2016-05-16T00:00:00+03:00</updated>
     <rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
-    <updated>2012-07-04T23:31:02+00:00</updated>
   </info>
-  <style-options punctuation-in-quote="false"/>
+  <style-options punctuation-in-quote="false" limit-day-ordinals-to-day-1="true"/>
   <date form="text">
-    <date-part name="day" suffix=" de "/>
+    <date-part name="day" form="ordinal" suffix=" de "/>
     <date-part name="month" suffix=" de "/>
     <date-part name="year"/>
   </date>
@@ -22,7 +22,7 @@
     <term name="anonymous">anônimo</term>
     <term name="anonymous" form="short">anon</term>
     <term name="at">em</term>
-    <term name="available at">available at</term>
+    <term name="available at">disponível em</term>
     <term name="by">por</term>
     <term name="circa">circa</term>
     <term name="circa" form="short">c.</term>
@@ -54,34 +54,46 @@
       <multiple>refs.</multiple>
     </term>
     <term name="retrieved">recuperado</term>
-    <term name="scale">scale</term>
-    <term name="version">version</term>
+    <term name="scale">escala</term>
+    <term name="version">versão</term>
 
     <!-- ANNO DOMINI; BEFORE CHRIST -->
-    <term name="ad">AD</term>
-    <term name="bc">BC</term>
+    <term name="ad">DC</term>
+    <term name="bc">AC</term>
 
     <!-- PUNCTUATION -->
     <term name="open-quote">“</term>
     <term name="close-quote">”</term>
     <term name="open-inner-quote">‘</term>
     <term name="close-inner-quote">’</term>
-    <term name="page-range-delimiter">–</term>
+    <term name="page-range-delimiter">&#8211;</term>
 
     <!-- ORDINALS -->
     <term name="ordinal">º</term>
+    <term name="ordinal-01" gender-form="feminine" match="whole-number">ª</term>
+    <term name="ordinal-01" gender-form="masculine" match="whole-number">º</term>
 
     <!-- LONG ORDINALS -->
-    <term name="long-ordinal-01">primeiro</term>
-    <term name="long-ordinal-02">segundo</term>
-    <term name="long-ordinal-03">terceiro</term>
-    <term name="long-ordinal-04">quarto</term>
-    <term name="long-ordinal-05">quinto</term>
-    <term name="long-ordinal-06">sexto</term>
-    <term name="long-ordinal-07">sétimo</term>
-    <term name="long-ordinal-08">oitavo</term>
-    <term name="long-ordinal-09">nono</term>
-    <term name="long-ordinal-10">décimo</term>
+    <term name="long-ordinal-01" gender-form="masculine">primeiro</term>
+    <term name="long-ordinal-02" gender-form="masculine">segundo</term>
+    <term name="long-ordinal-03" gender-form="masculine">terceiro</term>
+    <term name="long-ordinal-04" gender-form="masculine">quarto</term>
+    <term name="long-ordinal-05" gender-form="masculine">quinto</term>
+    <term name="long-ordinal-06" gender-form="masculine">sexto</term>
+    <term name="long-ordinal-07" gender-form="masculine">sétimo</term>
+    <term name="long-ordinal-08" gender-form="masculine">oitavo</term>
+    <term name="long-ordinal-09" gender-form="masculine">nono</term>
+    <term name="long-ordinal-10" gender-form="masculine">décimo</term>
+    <term name="long-ordinal-01" gender-form="feminine">primeira</term>
+    <term name="long-ordinal-02" gender-form="feminine">segunda</term>
+    <term name="long-ordinal-03" gender-form="feminine">terceira</term>
+    <term name="long-ordinal-04" gender-form="feminine">quarta</term>
+    <term name="long-ordinal-05" gender-form="feminine">quinta</term>
+    <term name="long-ordinal-06" gender-form="feminine">sexta</term>
+    <term name="long-ordinal-07" gender-form="feminine">sétima</term>
+    <term name="long-ordinal-08" gender-form="feminine">oitava</term>
+    <term name="long-ordinal-09" gender-form="feminine">nona</term>
+    <term name="long-ordinal-10" gender-form="feminine">décima</term>
 
     <!-- LONG LOCATOR FORMS -->
     <term name="book">
@@ -199,8 +211,8 @@
 
     <!-- LONG ROLE FORMS -->
     <term name="director">
-      <single>director</single>
-      <multiple>directors</multiple>
+      <single>diretor</single>
+      <multiple>diretores</multiple>
     </term>
     <term name="editor">
       <single>organizador</single>
@@ -208,11 +220,11 @@
     </term>
     <term name="editorial-director">
       <single>editor</single>
-      <multiple>editors</multiple>
+      <multiple>editores</multiple>
     </term>
     <term name="illustrator">
-      <single>illustrator</single>
-      <multiple>illustrators</multiple>
+      <single>ilustrador</single>
+      <multiple>ilustradores</multiple>
     </term>
     <term name="translator">
       <single>tradutor</single>
@@ -237,8 +249,8 @@
       <multiple>eds.</multiple>
     </term>
     <term name="illustrator" form="short">
-      <single>ill.</single>
-      <multiple>ills.</multiple>
+      <single>il.</single>
+      <multiple>ils.</multiple>
     </term>
     <term name="translator" form="short">
       <single>trad.</single>
@@ -251,21 +263,21 @@
 
     <!-- VERB ROLE FORMS -->
     <term name="container-author" form="verb">por</term>
-    <term name="director" form="verb">directed by</term>
+    <term name="director" form="verb">dirigido por</term>
     <term name="editor" form="verb">organizado por</term>
     <term name="editorial-director" form="verb">editado por</term>
-    <term name="illustrator" form="verb">illustrated by</term>
+    <term name="illustrator" form="verb">ilustrado por</term>
     <term name="interviewer" form="verb">entrevista de</term>
     <term name="recipient" form="verb">para</term>
-    <term name="reviewed-author" form="verb">by</term>
+    <term name="reviewed-author" form="verb">por</term>
     <term name="translator" form="verb">traduzido por</term>
-    <term name="editortranslator" form="verb">editado &amp; traduzido por</term>
+    <term name="editortranslator" form="verb">editado e traduzido por</term>
 
     <!-- SHORT VERB ROLE FORMS -->
     <term name="director" form="verb-short">dir.</term>
     <term name="editor" form="verb-short">org.</term>
     <term name="editorial-director" form="verb-short">ed.</term>
-    <term name="illustrator" form="verb-short">illus.</term>
+    <term name="illustrator" form="verb-short">ilus.</term>
     <term name="translator" form="verb-short">trad.</term>
     <term name="editortranslator" form="verb-short">ed. e trad. por</term>
 
diff --git a/locales/locales-zh-CN.xml b/locales/locales-zh-CN.xml
--- a/locales/locales-zh-CN.xml
+++ b/locales/locales-zh-CN.xml
@@ -17,7 +17,7 @@
   </date>
   <terms>
     <term name="accessed">见於</term>
-    <term name="and">及</term>
+    <term name="and">和</term>
     <term name="and others">及其他</term>
     <term name="anonymous">作者不详</term>
     <term name="anonymous" form="short">无名氏</term>
diff --git a/man/man1/pandoc-citeproc.1 b/man/man1/pandoc-citeproc.1
--- a/man/man1/pandoc-citeproc.1
+++ b/man/man1/pandoc-citeproc.1
@@ -1,8 +1,8 @@
 .\"t
-.\" Automatically generated by Pandoc 1.15.1.1
+.\" Automatically generated by Pandoc 1.17.1
 .\"
+.TH "pandoc\-citeproc" "1" "2016-06-04" "pandoc-citeproc 0.10" ""
 .hy
-.TH "pandoc\-citeproc" "1" "2015-11-14" "pandoc-citeproc 0.8.1.3" ""
 .SH NAME
 .PP
 pandoc\-citeproc \- filter to resolve citations in a pandoc document.
diff --git a/pandoc-citeproc.cabal b/pandoc-citeproc.cabal
--- a/pandoc-citeproc.cabal
+++ b/pandoc-citeproc.cabal
@@ -1,5 +1,5 @@
 name:               pandoc-citeproc
-version:            0.9.1.1
+version:            0.10
 cabal-version:      >= 1.12
 synopsis:           Supports using pandoc with citeproc
 
@@ -24,6 +24,7 @@
 
 homepage:           https://github.com/jgm/pandoc-citeproc
 category:           Text
+tested-with:        GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.2, GHC == 8.0.1
 license:            BSD3
 license-file:       LICENSE
 author:             John MacFarlane, Andrea Rossato
@@ -152,6 +153,9 @@
     other-modules:    Paths_pandoc_citeproc
                       Prelude
     default-language: Haskell98
+    if flag(bibutils)
+       default-extensions: CPP
+       cpp-options:     -DUSE_BIBUTILS
 
 executable test-citeproc
   Main-Is:        test-citeproc.hs
diff --git a/pandoc-citeproc.hs b/pandoc-citeproc.hs
--- a/pandoc-citeproc.hs
+++ b/pandoc-citeproc.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
 module Main where
 import Text.CSL.Input.Bibutils (readBiblioString, BibFormat(..))
 import Text.CSL.Reference (Reference(refId), Literal(..))
@@ -73,6 +74,7 @@
   where go "biblatex" = Just BibLatex
         go "bib"      = Just BibLatex
         go "bibtex"   = Just Bibtex
+#ifdef USE_BIBUTILS
         go "ris"      = Just Ris
         go "endnote"  = Just Endnote
         go "enl"      = Just Endnote
@@ -85,6 +87,7 @@
         go "json"     = Just Json
         go "mods"     = Just Mods
         go "yaml"     = Just Yaml
+#endif
         go _          = Nothing
 
 
diff --git a/src/Text/CSL/Data.hs b/src/Text/CSL/Data.hs
--- a/src/Text/CSL/Data.hs
+++ b/src/Text/CSL/Data.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE CPP #-}
+{-# LANGUAGE DeriveDataTypeable #-}
 -----------------------------------------------------------------------------
 -- |
 -- Module      :  Text.CSL.Data
@@ -13,12 +14,15 @@
 
 module Text.CSL.Data
     ( getLocale
+    , CSLLocaleException(..)
     , getDefaultCSL
     , langBase
     ) where
 
 import System.FilePath ()
+import Data.Typeable
 import qualified Data.ByteString.Lazy as L
+import qualified Control.Exception as E
 #ifdef EMBED_DATA_FILES
 import Data.Maybe (fromMaybe)
 import Text.CSL.Data.Embedded (localeFiles, defaultCSL)
@@ -28,26 +32,36 @@
 import System.Directory  (doesFileExist)
 #endif
 
+data CSLLocaleException =
+    CSLLocaleNotFound String
+  | CSLLocaleReadError E.IOException
+  deriving Typeable
+instance Show CSLLocaleException where
+  show (CSLLocaleNotFound s) = "Could not find locale data for " ++ s
+  show (CSLLocaleReadError e) = show e
+instance E.Exception CSLLocaleException
+
+-- | Raises 'CSLLocaleException' on error.
 getLocale :: String -> IO L.ByteString
 getLocale s = do
 #ifdef EMBED_DATA_FILES
-  f <- case length s of
-         0 -> maybe (return S.empty) return
-              $ lookup "locales-en-US.xml" localeFiles
-         2 -> let fn = ("locales-" ++ fromMaybe s (lookup s langBase) ++ ".xml")
-              in case lookup fn localeFiles of
-                   Just x' -> return x'
-                   _       -> error $ "could not find locale data for " ++ s
-         _ -> case lookup ("locales-" ++ take 5 s ++ ".xml") localeFiles of
-                    Just x' -> return x'
-                    _       -> -- try again with 2-letter locale
-                       let s' = take 2 s in
-                       case lookup ("locales-" ++ fromMaybe s'
-                              (lookup s' langBase) ++ ".xml") localeFiles of
-                             Just x'' -> return x''
-                             _        -> error $
-                                         "could not find locale data for " ++ s
-  return $ L.fromChunks [f]
+  let toLazy x = L.fromChunks [x]
+  case length s of
+      0 -> maybe (E.throwIO $ CSLLocaleNotFound "en-US")
+                 (return . toLazy)
+           $ lookup "locales-en-US.xml" localeFiles
+      2 -> let fn = ("locales-" ++ fromMaybe s (lookup s langBase) ++ ".xml")
+           in case lookup fn localeFiles of
+                Just x' -> return $ toLazy x'
+                _       -> E.throwIO $ CSLLocaleNotFound s
+      _ -> case lookup ("locales-" ++ take 5 s ++ ".xml") localeFiles of
+                 Just x' -> return $ toLazy x'
+                 _       -> -- try again with 2-letter locale
+                    let s' = take 2 s in
+                    case lookup ("locales-" ++ fromMaybe s'
+                           (lookup s' langBase) ++ ".xml") localeFiles of
+                          Just x'' -> return $ toLazy x''
+                          _        -> E.throwIO $ CSLLocaleNotFound s
 #else
   f <- case length s of
              0 -> return "locales/locales-en-US.xml"
@@ -57,7 +71,7 @@
   exists <- doesFileExist f
   if not exists && length s > 2
      then getLocale $ take 2 s  -- try again with base locale
-     else L.readFile f
+     else E.handle (\e -> E.throwIO (CSLLocaleReadError e)) $ L.readFile f
 #endif
 
 getDefaultCSL :: IO L.ByteString
diff --git a/src/Text/CSL/Eval.hs b/src/Text/CSL/Eval.hs
--- a/src/Text/CSL/Eval.hs
+++ b/src/Text/CSL/Eval.hs
@@ -377,10 +377,10 @@
 
 isTransNumber, isSpecialChar,isNumber :: String -> Bool
 isTransNumber = all isDigit
-isSpecialChar = all (`elem` "&-,\x2013")
+isSpecialChar = all (`elem` "&-,.\x2013")
 isNumber   cs = case [c | c <- cs
                         , not (isLetter c)
-                        , not (c `elem` "&-,\x2013")] of
+                        , not (c `elem` "&-.,\x2013")] of
                      []  -> False
                      xs  -> all isDigit xs
 
diff --git a/src/Text/CSL/Input/Bibtex.hs b/src/Text/CSL/Input/Bibtex.hs
--- a/src/Text/CSL/Input/Bibtex.hs
+++ b/src/Text/CSL/Input/Bibtex.hs
@@ -12,8 +12,9 @@
 -----------------------------------------------------------------------------
 
 module Text.CSL.Input.Bibtex
-    ( readBibtexInput
-    , readBibtexInputString
+    ( readBibtex
+    , readBibtexString
+    , readBibtexString'
     )
     where
 
@@ -80,23 +81,33 @@
                 , fields     :: [(String, String)]
                 }
 
-readBibtexInput :: Bool -> FilePath -> IO [Reference]
-readBibtexInput isBibtex f = UTF8.readFile f >>= readBibtexInputString isBibtex
-
-readBibtexInputString :: Bool -> String -> IO [Reference]
-readBibtexInputString isBibtex bibstring = do
+getLangFromEnv :: IO Lang
+getLangFromEnv = do
   env <- getEnvironment
-  let lang = case lookup "LANG" env of
+  return $ case lookup "LANG" env of
                   Just x  -> case splitWhen (\c -> c == '.' || c == '_' || c == '-') x of
                                    (w:z:_)            -> Lang w z
                                    [w] | not (null w) -> Lang w mempty
                                    _                  -> Lang "en" "US"
                   Nothing -> Lang "en" "US"
+
+readBibtex :: Bool -> Bool -> FilePath -> IO [Reference]
+readBibtex isBibtex caseTransform f =
+  UTF8.readFile f >>= readBibtexString isBibtex caseTransform
+
+readBibtexString :: Bool -> Bool -> String -> IO [Reference]
+readBibtexString isBibtex caseTransform contents = do
+  lang <- getLangFromEnv
+  locale <- parseLocale (langToLocale lang)
+  return $ readBibtexString' isBibtex caseTransform lang locale contents
+
+-- pure version of readBibtexString
+readBibtexString' :: Bool -> Bool -> Lang -> Locale -> String -> [Reference]
+readBibtexString' isBibtex caseTransform lang locale bibstring =
   let items = case runParser (bibEntries <* eof) [] "stdin" bibstring of
                    Left err -> error (show err)
                    Right xs -> resolveCrossRefs isBibtex xs
-  locale <- parseLocale (langToLocale lang)
-  return $ mapMaybe (itemToReference lang locale isBibtex) items
+  in  mapMaybe (itemToReference lang locale isBibtex caseTransform) items
 
 type BibParser = Parsec [Char] [(String, String)]
 
@@ -158,7 +169,7 @@
                       ) (char '"')
 
 fieldName :: BibParser String
-fieldName = (map toLower) <$> many1 (letter <|> digit <|> oneOf "-_")
+fieldName = (map toLower) <$> many1 (letter <|> digit <|> oneOf "-_:")
 
 isBibtexKeyChar :: Char -> Bool
 isBibtexKeyChar c = isAlphaNum c || c `elem` ".:;?!`'()/*@_+=-[]*"
@@ -919,7 +930,8 @@
 getOldDates :: String -> Bib [RefDate]
 getOldDates prefix = do
   year' <- fixLeadingDash <$> getRawField (prefix ++ "year")
-  month' <- (parseMonth <$> getRawField (prefix ++ "month")) <|> return ""
+  month' <- ((parseMonth . map toLower)
+              <$> getRawField (prefix ++ "month")) <|> return ""
   day' <- getRawField (prefix ++ "day") <|> return mempty
   endyear' <- fixLeadingDash <$> getRawField (prefix ++ "endyear") <|> return ""
   endmonth' <- getRawField (prefix ++ "endmonth") <|> return ""
@@ -1195,11 +1207,11 @@
           pad0 s   = s
           terms = localeTerms locale
 
-itemToReference :: Lang -> Locale -> Bool -> Item -> Maybe Reference
-itemToReference lang locale bibtex = bib $ do
+itemToReference :: Lang -> Locale -> Bool -> Bool -> Item -> Maybe Reference
+itemToReference lang locale bibtex caseTransform = bib $ do
   modify $ \st -> st{ localeLanguage = lang,
                       untitlecase = case lang of
-                                         Lang "en" _ -> True
+                                         Lang "en" _ -> caseTransform
                                          _           -> False }
   id' <- asks identifier
   et <- asks entryType
@@ -1323,7 +1335,7 @@
   let la = case splitWhen (== '-') hyphenation' of
                       (x:_) -> x
                       []    -> mempty
-  modify $ \s -> s{ untitlecase = la == "en" }
+  modify $ \s -> s{ untitlecase = caseTransform && la == "en" }
 
   title' <- (guard isPeriodical >> getTitle "issuetitle")
             <|> (guard hasMaintitle >> guard (not isChapterlike) >> getTitle "maintitle")
diff --git a/src/Text/CSL/Input/Bibutils.hs b/src/Text/CSL/Input/Bibutils.hs
--- a/src/Text/CSL/Input/Bibutils.hs
+++ b/src/Text/CSL/Input/Bibutils.hs
@@ -48,9 +48,9 @@
     = case getExt f of
         ".json"     -> BL.readFile f >>= either error return . eitherDecode
         ".yaml"     -> UTF8.readFile f >>= either error return . readYamlBib
-        ".bib"      -> readBibtexInput False f
-        ".bibtex"   -> readBibtexInput True f
-        ".biblatex" -> readBibtexInput False f
+        ".bib"      -> readBibtex False True f
+        ".bibtex"   -> readBibtex True True f
+        ".biblatex" -> readBibtex False True f
 #ifdef USE_BIBUTILS
         ".mods"     -> readBiblioFile' f mods_in
         ".ris"      -> readBiblioFile' f ris_in
@@ -62,7 +62,7 @@
         _           -> error $ "citeproc: the format of the bibliographic database could not be recognized\n" ++
                               "using the file extension."
 #else
-        _           -> error $ "citeproc: Bibliography format not supported.\n" ++
+        _           -> error $ "citeproc: Bibliography format not supported.\n"
 #endif
 
 data BibFormat
@@ -84,8 +84,8 @@
 readBiblioString b s
     | Json      <- b = either error return $ eitherDecode $ UTF8.fromStringLazy s
     | Yaml      <- b = either error return $ readYamlBib s
-    | Bibtex    <- b = readBibtexInputString True s
-    | BibLatex  <- b = readBibtexInputString False s
+    | Bibtex    <- b = readBibtexString True True s
+    | BibLatex  <- b = readBibtexString False True s
 #ifdef USE_BIBUTILS
     | Ris       <- b = go ris_in
     | Endnote   <- b = go endnote_in
@@ -107,7 +107,7 @@
 #ifdef USE_BIBUTILS
 readBiblioFile' :: FilePath -> BiblioIn -> IO [Reference]
 readBiblioFile' fin bin
-    | bin == biblatex_in = readBibtexInput False fin
+    | bin == biblatex_in = readBibtex False True fin
     | otherwise      = E.handle handleBibfileError
                        $ withTempDir "citeproc"
                        $ \tdir -> do
@@ -121,7 +121,7 @@
                             _ <- bibl_write param bibl tfile
                             bibl_free bibl
                             bibl_freeparams param
-                            refs <- readBibtexInput True tfile
+                            refs <- readBibtex True False tfile
                             return $! refs
   where handleBibfileError :: E.SomeException -> IO [Reference]
         handleBibfileError e = error $ "Error reading " ++ fin ++ "\n" ++ show e
diff --git a/src/Text/CSL/Pandoc.hs b/src/Text/CSL/Pandoc.hs
--- a/src/Text/CSL/Pandoc.hs
+++ b/src/Text/CSL/Pandoc.hs
@@ -9,6 +9,7 @@
 import Text.HTML.TagSoup.Entity (lookupEntity)
 import qualified Data.ByteString.Lazy as L
 import System.SetEnv (setEnv)
+import System.Environment (getEnv)
 import Control.Applicative ((<|>))
 import Data.Aeson
 import Data.Char ( isDigit, isPunctuation, toLower, isSpace )
@@ -177,9 +178,19 @@
                  localizeCSL mbLocale $ parseCSL' raw
   -- set LANG environment from locale; this affects unicode collation
   -- if pandoc-citeproc compiled with unicode_collation flag
-  setEnv "LC_ALL" $ case styleLocale csl of
-                        (l:_) -> localeLang l
-                        _     -> "en-US"
+  case styleLocale csl of
+       (l:_) -> do
+         setEnv "LC_ALL" (localeLang l)
+         setEnv "LANG"   (localeLang l)
+       []    -> do
+         envlang <- getEnv "LANG"
+         if null envlang
+            then do
+              -- Note that LANG needs to be set for bibtex conversion:
+              setEnv "LANG" "en-US.UTF-8"
+              setEnv "LC_ALL" "en-US.UTF-8"
+            else do
+              setEnv "LC_ALL" envlang
   bibRefs <- getBibRefs $ maybe (MetaList []) id
                         $ lookupMeta "bibliography" meta
   let refs = inlineRefs ++ bibRefs
diff --git a/src/Text/CSL/Parser.hs b/src/Text/CSL/Parser.hs
--- a/src/Text/CSL/Parser.hs
+++ b/src/Text/CSL/Parser.hs
@@ -38,7 +38,7 @@
 parseCSL :: String -> Style
 parseCSL = parseCSL' . fromStringLazy
 
--- | Parse locale.
+-- | Parse locale.  Raises 'CSLLocaleException' on error.
 parseLocale :: String -> IO Locale
 parseLocale locale =
   parseLocaleElement . fromDocument . X.parseLBS_ def <$> getLocale locale
diff --git a/src/Text/CSL/Util.hs b/src/Text/CSL/Util.hs
--- a/src/Text/CSL/Util.hs
+++ b/src/Text/CSL/Util.hs
@@ -193,7 +193,7 @@
           case (w, st) of
                (y, NoBoundary) -> return y
                (Str (x:xs), WordBoundary) | isUpper x ->
-                 return $ Str (toLower x : xs)
+                 return $ Str (map toLower (x:xs))
                (Str (x:xs), SentenceBoundary) | isLower x ->
                  return $ Str (toUpper x : xs)
                (Span ("",[],[]) xs, _) | hasLowercaseWord xs ->
@@ -248,7 +248,7 @@
                put WordBoundary
                return $ Space : acc
         go acc (Str [c])
-          | c `elem` "-\2013\2014\160" = do
+          | c `elem` "-/\2013\2014\160" = do
                put WordBoundary
                return $ Str [c] : acc
           | isPunctuation c = do
diff --git a/stack.yaml b/stack.yaml
--- a/stack.yaml
+++ b/stack.yaml
@@ -8,4 +8,4 @@
 packages:
 - '.'
 extra-deps: []
-resolver: lts-5.8
+resolver: lts-6.1
diff --git a/tests/issue65.expected.native b/tests/issue65.expected.native
--- a/tests/issue65.expected.native
+++ b/tests/issue65.expected.native
@@ -1,3 +1,3 @@
 Pandoc (Meta {unMeta = fromList [("references",MetaList [MetaMap (fromList [("ISBN",MetaInlines [Str "3406493556"]),("author",MetaList [MetaMap (fromList [("family",MetaInlines [Str "Stotz"]),("given",MetaInlines [Str "Peter"])])]),("call-number",MetaInlines [Str "PA25",Space,Str "PA2616",Space,Str ".H24",Space,Str "Abt.",Space,Str "2,",Space,Str "T.",Space,Str "5,",Space,Str "Bd.",Space,Str "2,",Space,Str "etc"]),("collection-number",MetaInlines [Str "2.5"]),("collection-title",MetaInlines [Str "Handbuch",Space,Str "der",Space,Str "Altertumswissenschaft"]),("event-place",MetaInlines [Str "Munich"]),("first-reference-note-number",MetaString "1"),("id",MetaInlines [Str "stotz:1996handbuch"]),("issued",MetaMap (fromList [("literal",MetaInlines [Str "1996_2004"])])),("language",MetaInlines [Str "German"]),("number-of-volumes",MetaInlines [Str "5"]),("publisher",MetaInlines [Str "Beck"]),("publisher-place",MetaInlines [Str "Munich"]),("source",MetaInlines [Str "Library",Space,Str "of",Space,Str "Congress",Space,Str "ISBN"]),("title",MetaInlines [Str "Handbuch",Space,Str "zur",Space,Str "lateinischen",Space,Str "Sprache",Space,Str "des",Space,Str "Mittelalters"]),("title-short",MetaInlines [Str "Handbuch"]),("type",MetaInlines [Str "book"])])])]})
 [Para [Cite [Citation {citationId = "stotz:1996handbuch", citationPrefix = [], citationSuffix = [], citationMode = NormalCitation, citationNoteNum = 0, citationHash = 1}] [Str "(Stotz",Space,Str "1996\8211\&2004)"]]
-,Div ("refs",["references"],[]) [Div ("ref-stotz:1996handbuch",[],[]) [Para [Str "Stotz,",Space,Str "Peter.",Space,Str "1996\8211\&2004.",Space,Emph [Str "Handbuch",Space,Str "zur",Space,Str "lateinischen",Space,Str "Sprache",Space,Str "des",Space,Str "Mittelalters"],Str ".",Space,Str "5",Space,Str "vols.",Space,Str "Handbuch",Space,Str "der",Space,Str "Altertumswissenschaft,",Space,Str "2.5.",Space,Str "Munich:",Space,Str "Beck."]]]]
+,Div ("refs",["references"],[]) [Div ("ref-stotz:1996handbuch",[],[]) [Para [Str "Stotz,",Space,Str "Peter.",Space,Str "1996\8211\&2004.",Space,Emph [Str "Handbuch",Space,Str "zur",Space,Str "lateinischen",Space,Str "Sprache",Space,Str "des",Space,Str "Mittelalters"],Str ".",Space,Str "5",Space,Str "vols.",Space,Str "Handbuch",Space,Str "der",Space,Str "Altertumswissenschaft",Space,Str "2.5.",Space,Str "Munich:",Space,Str "Beck."]]]]
