# Bibulous or Biblatex with Footnote Referencing

I have a rather complicated set of referencing requirements for my thesis. I have references in a variety of languages (Russian, Japanese, Chinese), where the transliteration of author names, translation of titles etc. needs to be placed alongside the original. I need to use footnote referencing, where the first use of the reference shows the full reference in the footnote and following uses on the same page show Ibid. A shorter reference is used for the first use on subsequent pages. I also want to customise the ordering of names:

Western - Last Name, First Name order in the final reference list; First Name, Last Name order in footnotes.

Oriental - Last Name, First Name order in both the final reference list and the footnotes.

I have set up an extra field in the .bib file specifying which entries are western and which entries are oriental (field name is oriental).

The style verbose-inote within biblatex can get me part of the way there, but I am going to have to make modifications. I have recently discovered Bibulous, which looks very attractive as it enables me to specify exactly how I want things to work quite easily. Can Bibulous be used to produce footnote referencing like that provided by verbose-inote? If so, is it possible to specify different styles for the footnote referencing and the final reference list?

Although I would love to see a Bibulous solution, it is probably going to be easier to modify a biblatex solution than to try and implement footnote referencing in Bibulous if it doesn't already exist. I am using XeLaTeX. The name (author/editor) issue is the problem - titles and publishers work fine as is. Sample .bib references are:

@Book{Sofronov:Grammar,
title = {{Grammar of the Tangut Language, 2 volumes }{\russian Грамматика Тангутского Языка}},
author = {\noopsort{Sofronov}Sofronov, {\russian М.В. Софронов}, M.V.},
publisher = {Scientific Publishing House {\russian Издательство наука''}},
year = {1968}
}

@Book{LiFanwen:1997,
editor = {\noopsort{Li}Li, {\chinese 李范文}, Fanwen},
title = {Tangut-Chinese Dictionary {\chinese 夏漢字典}},
publisher = {China Social Science Press {\chinese 中国社会科学出版社}},
year = 1997,
oriental = 1
}


I am planning on using the oriental field to determine how first/last names are ordered.

At the moment I have the author's original name appearing as the middle entry in a three-element name, so I can access it using #7.

I read somewhere that I need to map the oriental field to one of the pre-existing field names, which I am doing at the top of my .tex file:

\usepackage[backend=biber, style=verbose-inote]{biblatex}
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map[overwrite]{
\step[fieldset=oriental, fieldvalue=0]
\step[fieldsource=oriental]
\step[fieldset=usera, origfieldval, append]
}
}
}

\usepackage{fontspec}
\newfontface\russian{Times New Roman}
\newfontface\chinese{AR PL UMing CN}


Not sure what to do from here. I have been playing with adding \DeclareNameFormat in verbose-inote.cbx - something like below (this code doesn't work):

\DeclareNameFormat{author-with-orig}{%
\ifnumcomp{\thefield{usera}}{=}{1}
{#1%
{\ifblank{#3}{}{#3\space}%
#1 \space #7}%
\ifthenelse{\value{listcount}<\value{liststop}}
{}}


and then modifying the following two entries in verbose-inote.cbx to refer to author-with-orig:

\newbibmacro*{cite:full}{%
\usebibmacro{cite:full:citepages}%
\printtext[bibhypertarget]{%
\usedriver
{\DeclareNameAlias{sortname}{author-with-orig}}
{\thefield{entrytype}}}%
\usebibmacro{shorthandintro}}

\newbibmacro*{footcite:full}{%
\usebibmacro{cite:full:citepages}%
\printtext[bibhypertarget]{%
\usedriver
{\DeclareNameAlias{sortname}{author-with-orig}}
{\thefield{entrytype}}}%
\usebibmacro{shorthandintro}}


A MWE is as follows (in the interests of simplicity, I have left out foreign language titles, publishers, etc. as they work fine):

\documentclass[a4paper]{report}

\usepackage{fontspec}
\newfontface\russian{Times New Roman}
\newfontface\chinese{AR PL UMing CN}

\usepackage{filecontents}

\begin{filecontents*}{xixia.bib}
@Book{NonOrientalBook,
title = {Non-Oriental Book},
author = {NonOrientalLast, {\russian Имя}, NonOrientalFirst},
publisher = {Non-Oriental Book Publisher},
year = 1968
}

@Book{OrientalBook,
editor = {OrientalLast, {\chinese 名字}, OrientalFirst},
title = {Oriental Book},
publisher = {Oriental Book Publisher},
year = 1997,
oriental = 1
}
\end{filecontents*}

\usepackage[backend=biber, style=verbose-inote]{biblatex}
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map[overwrite]{
\step[fieldset=oriental, fieldvalue=0]
\step[fieldsource=oriental]
\step[fieldset=usera, origfieldval, append]
}
}
}

\begin{document}
A book by a non-oriental author\footcite{NonOrientalBook}.  A document by an oriental author\footcite{OrientalBook}.

\newpage
\printbibliography
\end{document}


The footnotes should then be:

1. NonOrientalFirst NonOrientalLast Имя ... (title, publisher, etc.)
2. OrientalLast OrientalFirst 名字 ...


The bibliography should contain:

NonOrientalLast NonOrientalFirst Имя ...
OrientalLast OrientalFirst 名字 ...

• If you are interested in a bibulous solution you should probably drop the specific biblatex tag. If you are interested in a biblatex solution a short example .bib entry of how you plan to make western and oriental names known would be appreciated. What are you missing from verbose-inote except for the name handling? – moewe Dec 28 '15 at 13:39

I haven't managed to use the oriental field that I was planning on using (I can't work out how to access this information within \DeclareNameFormat code), but I have managed to come up with a solution by prepending a code XXXORI to the surname of the oriental authors and using the xstring package. I have also added extra authors to the code below to test how multiple authors work.

\documentclass[a4paper]{report}

\usepackage{fontspec}
\newfontface\russian{Times New Roman}
\newfontface\chinese{AR PL UMing CN}

\usepackage{filecontents}
\usepackage{xstring}
\usepackage{intcalc}

\begin{filecontents*}{xixia.bib}
@Book{NonOrientalBook,
title = {Non-Oriental Book},
author = {NonOrientalLast, {\russian Имя}, NonOrientalFirst and NonOrientalLast2, {\russian Имя2}, NonOrientalFirst2},
publisher = {Non-Oriental Book Publisher},
year = 1968
}

@Book{OrientalBook,
editor = {XXXORIOrientalLast, {\chinese 名字}, OrientalFirst and XXXORIOrientalLast2, {\chinese 名字2}, OrientalFirst2 and XXXORIOrientalLast3, {\chinese 名字3}, OrientalFirst3},
title = {Oriental Book},
publisher = {Oriental Book Publisher},
year = 1997
}
\end{filecontents*}

\usepackage[backend=biber, style=verbose-inote]{biblatex}

\DeclareNameFormat{author-with-orig}{%
\IfSubStr{#1}{XXXORI}
{\StrGobbleLeft{#1}{6}\space#3#7}
{#3\space#1#7}
\ifthenelse{\value{listcount}=\intcalcDec{\value{liststop}}}
{and\space}
{\ifthenelse{\value{listcount}<\value{liststop}}
{}}}

\DeclareNameFormat{sortname}{%
\IfSubStr{#1}{XXXORI}
{\StrGobbleLeft{#1}{6}\space#3#7}
{\ifthenelse{\value{listcount}=1}
{#3\space#1#7}}
\ifthenelse{\value{listcount}=\intcalcDec{\value{liststop}}}
{and\space}
{\ifthenelse{\value{listcount}<\value{liststop}}
{}}}

\renewbibmacro*{footcite:full}{%
\usebibmacro{cite:full:citepages}%
\printtext[bibhypertarget]{%
\usedriver
{\DeclareNameAlias{sortname}{author-with-orig}}
{\thefield{entrytype}}}%
\usebibmacro{shorthandintro}}

\begin{document}
A book by a non-oriental author\footcite{NonOrientalBook}.  A document by an oriental author\footcite{OrientalBook}.

\newpage
\printbibliography
\end{document}