[luatex] Kerning (again) and biblatex

Heilmann, Till A. till.heilmann at unibas.ch
Sun Jun 26 21:31:24 CEST 2011


Sorry to bother you again with kerning problems. This time it is  
about citations generated by biblatex. I know that this is not  
exclusively a LuaTeX issue but I think the experts are on this list,  
so here I go anyway: Custom kerns are not inserted at some places  
within citations generated by biblatex (see--quite lengthy--minimal  
example below). It might have to do with mechanisms already discussed  
earlier here, i.e. penalties or glues preventing kerning.

In this particular case, I tracked the problem down to biblatex's  
\printfield and \printtext commands (see the \renewbibmacro*{journal 
+issuetitle+standard} command in the example): Avoiding the  
\printtext command for the output of the date field in articles, for  
example, solves the problem. But I cannot really avoid using these  
commands, of course, and my knowledge of TeX is not sufficient for a  
further analysis of \printfield and \printtext. I asked Philipp  
Lehman about this some time ago but he has not replied so far. Maybe  
someone on this list has an idea.

Thanks and best regards,
Till

\begin{filecontents*}{test.bib}
@article{stiegler.b:2009,
   Author = {Bernard Stiegler},
   Journal = {Theory, Culture~\& Society},
   Number = {2–3},
   Pages = {33-45},
   Title = {Teleologics of the Snail},
   Volume = {26},
   Year = {2009}}
\end{filecontents*}
\begin{filecontents*}{test.fea}
languagesystem DFLT dflt ;
languagesystem latn dflt ;
feature kern {
   pos six slash 500 ;
   pos slash two 500 ;
   pos parenleft two 500 ;
   pos nine parenright 500 ;
} kern ;
\end{filecontents*}
\documentclass{article}
\usepackage{fontspec}
\setmainfont[FeatureFile=test.fea]{TeX Gyre Bonum}
\usepackage[style=authortitle-dw]{biblatex}
\bibliography{test}
\renewcommand*{\jourvolnumsep}{\addslash}
\renewbibmacro*{journal+issuetitle+standard}{%
   \iffieldundef{volume}
     {\iffieldundef{number}
       {}
       {\blxdw at warning{%
         Field 'number' set, but 'volume' is empty
         \MessageBreak at entry '\abx at field@entrykey'.
         The output might not \MessageBreak be correct}}}
     {\setunit{\jourvolnumsep}%
      \printfield{number}}%
   \setunit{\addcomma\space}%
   \printfield{eid}%
   \setunit{\addspace}%
   \iffieldundef{volume}
     {\iffieldundef{month}
       {}
       {\setunit{\addcomma\space}}%
      \usebibmacro{issue+date}}
     {\printtext[parens]{\usebibmacro{issue+date}}}%
%    { (\usebibmacro{issue+date})}% <-- change previous line to this !
   \newunit\newblock
   \usebibmacro{issue}%
   \newunit
   \usebibmacro{byeditor+others}%
   \newunit}
\begin{document}
\fullcite{stiegler.b:2009}\\
26/2–3 (2009)
\end{document}




More information about the luatex mailing list