4

I am back where I was when I switched from stock bibtex to biblatex-biber: (cyrillic) non-latin UTF-8 names in the bibliography. It's why I started using biber in the first place, the same would happen with other non-latin alphabets, probably.

The combination of "mwe.tex" and "mwe.bib" below puts a lot of \x{....} macros in "mwe.bbl":

\refsection{0}
  \sortlist{entry}{nty}
    \entry{aam:toa}{inproceedings}{}
      \name{labelname}{1}{}{%
        {{uniquename=0,hash=04494761d938ce066050ccda372dcbfb}{A.A.\bibnamedelimi Markov}{A\bibinitperiod}{}{}{}{}{}{}}%
      }
      \name{author}{1}{}{%
        {{uniquename=0,hash=04494761d938ce066050ccda372dcbfb}{A.A.\bibnamedelimi Markov}{A\bibinitperiod}{}{}{}{}{}{}}%
      }
      \list{location}{1}{%
        {Moscow, Leningrad}%
      }
      \list{publisher}{1}{%
{\x{0420}\x{041e}\x{0421}\x{0421}\x{0418}\u{\x{0418}}\x{0421}\x{041a}\x{0410}\x{042f} \x{0410}\x{041a}\x{0410}\x{0414}\x{0415}\x{041c}\x{0418}\x{042f}~\x{041d}\x{fffd}\x{fffd}\x{0423}\x{041a}}%
      }

giving an equal number of errors:

INFO - Converting UTF-8 to TeX macros on output to .bbl
"\x{0420}" does not map to ascii at /usr/lib64/perl5/vendor_perl/5.16.0/Biber/Output/bbl.pm line 490.
...
"\x{041a}" does not map to ascii at /usr/lib64/perl5/vendor_perl/5.16.0/Biber/Output/bbl.pm line 517.

However, when i edit "mwe.bbl" and replace instead:

      \list{publisher}{1}{%
{РОССИЙСКАЯ АКАДЕМИЯ~НАУК}%

it works as intended.

The "mwe.tex" is:

\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\usepackage{csquotes}
\usepackage[style=reading,safeinputenc=true]{biblatex}
\addbibresource{mwe.bib}
\usepackage{hyperref}
\begin{document}
\nocite{*}
\cite{aam:toa}
\printbibliography
\end{document}

and "mwe.bib":

@PREAMBLE{                 "\RequireBiber[2]"                        }
@String{         РАН   =   {РОССИЙСКАЯ АКАДЕМИЯ~НАУК}                }
@InProceedings{                                              aam:toa ,
              author   =   {A.A.~Markov}                             ,
               title   =   {The Theory of Algorithms}                ,
           booktitle   =   {Trudy Mat. Inst. Steklov}                ,
                year   =   1954                                      ,
              volume   =   42                                        ,
               pages   =   {3--375}                                  ,
             address   =   {Moscow, Leningrad}                       ,
           publisher   =   РАН                                       ,
}

The question is how to make biber handle non-latin UTF-8 names without complaints.

(By the way, I have a translation of that "book", so this BibTeX entry is just to exemplify.)

12
  • 4
    Don't use the option safeinputenc. – Ulrike Fischer Sep 27 '12 at 9:31
  • 1
    Mr Fischer is right, safeinputenc=true will set the input encoding to ascii essentially. This may not work at all until you remove safeinputenc, \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} and switch to LuaTeX or XeTeX. See the biber manual for details on exactly these issues. – PLK Sep 27 '12 at 12:25
  • 1
    @PLK: Mrs. Fischer. – Ulrike Fischer Sep 27 '12 at 12:31
  • 1
    @UlrikeFischer Apologies Mdme, I didn,t register the "e" – PLK Sep 27 '12 at 16:41
  • 1
    An exact problem with my comment is here (tex.stackexchange.com/questions/50635/…). It works for me using \foreignlanguage within BibTeX names. Should this be enough, or is it any biber solution around? – sjb Sep 29 '12 at 14:41