Cyrillic first names problem with natbib and bibtex

BibTeX is not really suited for UTF-8 encoding. In many cases it works, but it will definitely have problems with extraction of initials, because, for example, a Cyrillic ‘А’ is two bytes (0xD090) and only the first byte is selected.

You can work around this by using the internal representation of the Cyrillic letter:

@book{belyj1913,
  Address = {Москва},
  Author = {{\CYRA}ндрей Белый},
  Publisher = {Наука},
  Title = {Петербург},
  Year = {1981},
}

which will work independently whether only initials or full names are used.

However, sorting by author names is not really guaranteed to be correct. You should try biblatex and biber, which are UTF-8 compliant.


For me, BibTeX works with natbib and russian by using UTF-8 compatible version of bibtex. Just run bibtexu instead of bibtex and it should work.


For BibTeX, @egreg's answer does not help me, so I would like to leave my solution here:

  1. change encoding of your .bib file (suppose it is called references.bib) to CP-1251

  2. in the .tex file, change \bibliography{references} to

    \inputencoding{cp1251}
    \bibliography{references}
    \inputencoding{utf8}
    
  3. compile .bbl file with

    bibtex8 project.aux --csfile "cp1251.csf"
    

As for me, this is handier than @egreg's solution, since you don't have to change your cyrillic letters to {\cyrA}-like representation.