# Some TeX Developments

Coding in the TeX world

## Co-ordinating biblatex style development

Bibliographies formatting is complicated, and over the years this has led to the development of a lot of BibTeX styles and tools like custom-bib. For biblatex users the output style can be altered from within LaTeX, and while there is not yet an equivalent of custom-bib for biblatex there is some excellent advice available for developing new styles.

One of the key ideas of  is to make it possible to address the citation styles in fields where BibTeX could never provide the correct tools. That shows up most obviously in humanities, where the position of citations in the output needs to feed back into how they appear. Life gets even more complicated when you consider areas that need specialised fields included in their bibliographies: a classic example is law. There are already developments under-way to help support these situation, for example Biber-based flexible data model. Addressing the needs of style authors properly requires co-ordination between the core biblatex team and the style creators, and between different style authors. The question of how to achieve this communication came up recently on TeX-sx.

There are at least a couple of obvious ways for people to stay in touch with each other. First, where there is a need for a specific function to be added to biblatex, the package GitHub site is the place to go. Adding issues makes sure that they don’t get lost in direct e-mails, and also ensures that anyone with a point of view can comment. Secondly, for more open discuss TUG have a bibliography mailing list. To date, this has not been very heavy in terms of traffic, but it would be an ideal forum to co-ordinate effort. It’s publicly archived and anyone can join, so there is no danger of loosing important comments.

Of course, there are other ways to communicate too! All of the team are active on TeX-sx, and when we can we pick up biblatex issues and add them to the to do list. Direct e-mail works too, and I’m sure some style authors will go for direct communication. The key thing is to use the power of biblatex to make life easier for the end-user.

Written by Joseph Wright

May 16th, 2012 at 8:19 am

Posted in biblatex

## biblatex: A team to continue the work

I posted a while ago about biblatex, looking for news of the author, Philipp Lehman. He’d been very active in replying to bug reports up to about 5 months ago, since when no-one has heard from him. As I said before, that’s a big concern well beyond LaTeX work, but it’s also left a question over continued development of biblatex.

Philipp Lehman had discussed a number of plans with the lead developer of Biber, Philip Kime. Unsurprisingly, Philip Kime has been keen to make sure that development of biblatex continues, but he wanted some help with the styles and any ‘hard-core’ TeX stuff. So a small team of ‘biblatex maintainers’ has been set up:

• Philip Kime (lead)
• Audrey Boruvka
• Me

We’ve got two separate tasks. First, we want to deal with issues with the current release of biblatex (v1.7). These are tracked on the SourceForge site, and there are a few outstanding which are being looked at. Second, we want to continue the work that Philipp Lehman had planned. That work is taking place on GitHub, and there are some big issues to tackle.

Perhaps the biggest single item on the horizon for biblatex 2.0 is dropping BibTeX support, and going Biber-only. That’s something that Philipp Lehman has been planning for some time: the reality is that supporting BibTeX is increasingly awkward, and it’s making adding new features increasingly complex (and bug-prone). Of course, dropping BibTeX support will be a significant change, but it’s been on the horizon for some time, and will open the way to further extending the data model biblatex (and Biber) user.

Of course, if Philipp Lehman does return (and we hope he does), then the ‘team’ will be very happy to hand back to him. For the moment, sticking with the roadmap seems the best way forward.

Written by Joseph Wright

April 23rd, 2012 at 10:04 pm

Posted in biblatex

## biblatex status

Over the past few years, the biblatex package has been developed by Philipp Lehman to be the leading method for creating bibliographies in LaTeX. The combination of biblatex with Biber is even more powerful: arguably the most complete solution to database-driven bibliographies available.

Philipp Lehman has done a massive amount of work to get us to this position, and has until recently been very reactive to user feedback. However, over the past few months no-one has heard from him. Philip Kime has posted to (de.)comp.text.tex about this: it seems that the TeX community as a whole know very little about Philipp Lehman beyond his e-mail address! (A number of avenues have regrettable given no more information.)  Any information, or indeed contact from Philipp, would be great.

Philip Kime has some patches for biblatex which are not in the CTAN release and which improve interaction with Biber. He’s therefore created a ‘caretaker’ clone of biblatex on GitHub, so that these are no ‘lost’.

What happens next of course depends on whether Philipp Lehman reappears: clearly the best outcome. There are no urgent bug fixes or changes needed at the moment, so until after TeX Live 2012 is finalised there is no appetite to take any further action. That can’t go on for ever, of course, so if there is still no contact by the time of the TeX Live freeze then steps will have to be taken. Anyone interested in volunteering to help if that is needed should get in touch!

Written by Joseph Wright

April 3rd, 2012 at 2:05 pm

Posted in biblatex,LaTeX

Recent changes to biblatex (in v1.6) mean that the biblatex-chem bundle is currently broken. I’ve not released a quick-fix as there are some long-standing issues to address in biblatex-chem. When I initially wrote the code, I started from scratch and defined only what I wanted. That works, but means that any changes in biblatex are not automatically picked up. From biblatex-ieee, I took the alternative approach and worked from the standard biblatex styles to what was needed. That’s a better long-term approach, so it’s the one I’m now bringing to biblatex-chem. It will take a little while, so user might want to keep an eye on the development code.

Written by Joseph Wright

August 14th, 2011 at 9:59 am

Posted in biblatex

Tagged with biblatex-chem

## Physical science styles for biblatex: improvements underway

As regular readers will know, I’m a big fan of the biblatex approach to producing bibliographies, particularly now that we have Biber ‘on tap’. There was a question on the {TeX} site a while ago about an IEEE style, and so I wrote the biblatex-ieee style as a partial answer. Doing that, I realised that my other biblatex styles need a bit of work. I’ve now revised both biblatex-nature and biblatex-science to make them more flexible, and also to improve their documentation. Next on the list is the biblatex-chem bundle: there are four styles in it, so it will take a little while. Once all of that is done, then I will take a look at the requirements for physics, which I’m going to call biblatex-phys.

Written by Joseph Wright

March 13th, 2011 at 12:52 pm

Posted in biblatex,LaTeX

## Biber now in TeX Live 2010

Many readers will be familiar with the Biber program, a replacement for BibTeX which works with the biblatex package. Binaries for common platforms have been available from TLcontrib for a while, but have now been added to the main TeX Live 2010 system. So you can install Biber on the ‘common’ platforms using the TeX Live Manager (or tlmgr from the command line). Yet another reason to move on from BibTeX and switch to biblatex, if you’ve not already!

Written by Joseph Wright

March 10th, 2011 at 7:47 pm

Posted in biblatex,LaTeX

Tagged with biber, biblatex, TeX Live

## biblatex v1.1: dynamic reference sets

The latest version of biblatex, v1.1, appeared on CTAN yesterday. This is a feature release, not just bug fixes, and so there are lots of new things there. At the same time, Biber has been updated to v0.7. If you use TeX Live 2010, you’ll be able to get the new biblatex using tlmgr in a day or so, and can get the Biber update via TLcontrib already.

Many of the new features rely on Biber, and will not work with BibTeX. As Biber has lots of advantages anyway, including UTF-8 support and active development, this is no real hindrance.

I want to focus here on one new feature, as it’s one I requested. In chemistry and physics we tend numerical reference styles and to have lots of references. Often, several of these will be related, and so can be ‘compacted’ into a single number. With traditional BibTeX styles, this can be done using the mciteplus package and a suitable .bst file. biblatex has supported this using ‘reference sets’ for some time, but up to now this has required modification of the database entries. In v1.1, you can define a reference set in the preamble:

\defbibentryset{set1}{key1,key2,key3}


and then cite the set in the document. There is also support for mciteplus-like syntax, but I think it’s probably best to use the native biblatex approach here.

Compressing multiple citations in a dynamic way was really the only problem I had with using biblatex for all of my citations. Now that this is sorted, I’ll be sticking to biblatex all of the time, and I’d urge other physical scientists to do the same: biblatex is a much more flexible approach than the traditional BibTeX citation system.

Written by Joseph Wright

January 6th, 2011 at 7:39 pm

Posted in biblatex,LaTeX

## biblatex reaches version 1.0

Reading through some TeX-related material today, I spotted that the very popular biblatex package has finally reached version 1. Accompanying this release is a version step for the biber BibTeX-replacement program, which reaches version 0.6. Both are now considered non-beta, and the biblatex release in particular is a big story to me. I’ll be checking on my own biblatex-related packages over the weekend and making sure that they are working with the new release, and if all goes well will move them to v1.0 as well.

A quick look through the documentation for both biblatex and biber shows that the new versions are mainly about stability. There are not a lot of changes listed from the previous testing releases: they’ve proved to be pretty stable and so the time for an official move to release status has obviously arrived.

Written by Joseph Wright

November 19th, 2010 at 11:06 pm

Posted in biblatex,LaTeX

Tagged with biber, biblatex

## biber without building from TLContrib

I’ve written in the past about the biber program, a replacement for BibTeX when using the biblatex system for citations in LaTeX. The biggest stumbling block to using biber to date has been the need to build it from the source. On Windows, that also means getting a working Perl installation, which is a non-standard item on that operating system. However, there is now an alternative approach, at least for people using TeX Live 2010. The new TLContrib system for additions to TeX Live now includes a biber package for Windows, Mac OS X (64 bit) and Linux.

To get biber installed, you’ll need to use the Command Prompt or Terminal. On Windows, you probably need to run the Command Prompt as the Administrator, while on the Mac or Linux you will  probably want to sudo the following. To get biber installed, all you need to type is

tlmgr --repository tlcontrib.metatex.org/2010 install biber

The system will then get on with installing biber, which you can then use as a replacement for BibTeX. I’d then add biber to my graphical editor’s list of programs to make it easy to use: the detail of course depends on which editor you use.

What is particularly interesting here is that it has been possible to build a stand-alone biber. This should mean that at some stage both TeX Live and MiKTeX can integer ate it directly. This will really make biber a viable choice for most people using biblatex: building from the source is not most people’s idea of ‘easy to use’!

Written by Joseph Wright

October 30th, 2010 at 7:40 am

Posted in biblatex,LaTeX

Tagged with biber, biblatex, TeX Live, TLcontrib

## biblatex: numbered citations as footnotes

Most chemistry journals use numbered citation styles, with all of the references appearing at the end of the article in a References section. However, there are some that place the references at the bottom of the page they occur on, as footnotes. This is a bit more awkward to achieve than a simple section, but as biblatex has all of the citation data available from the start of a document I thought it should be easy to do.

It turns out that biblatex has the very handy \footfullcite macro, which nearly does what is needed. This macro will print the reference as a footnote, but uses LaTeX’s footnote numbering system to do this. The result is that repeating citations, compressing several citations into a range and so on is not so easy. In the end, I decided to drop Philipp Lehman (the author of biblatex) an e-mail for some guidance. He came back with two approaches, one for citations in the text and one for superscript citations:

\documentclass{article}
\usepackage[style=numeric-comp]{biblatex}
\bibliography{biblatex-examples}
\makeatletter

\ExecuteBibliographyOptions{citetracker,sorting=none}

\DeclareCiteCommand{\notefullcite}[\mkbibbrackets]
{\usebibmacro{cite:init}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{notefullcite}%
\usebibmacro{cite:comp}}
{}
{\usebibmacro{cite:dump}%
\usebibmacro{postnote}}

\newbibmacro*{notefullcite}{%
\ifciteseen
{}
{\footnotetext[\thefield{labelnumber}]{%
\usedriver{}{\thefield{entrytype}}.}}}
\DeclareCiteCommand{\superfullcite}[\cbx@superscript]%
{\usebibmacro{cite:init}%
\let\multicitedelim=\supercitedelim
\iffieldundef{prenote}
{}
{\BibliographyWarning{Ignoring prenote argument}}%
\iffieldundef{postnote}
{}
{\BibliographyWarning{Ignoring postnote argument}}}
{\usebibmacro{citeindex}%
\usebibmacro{superfullcite}%
\usebibmacro{cite:comp}}
{}
{\usebibmacro{cite:dump}}

\newbibmacro*{superfullcite}{%
\ifciteseen
{}
{\xappto\cbx@citehook{%
\noexpand\footnotetext[\thefield{labelnumber}]{%
\fullcite{\thefield{entrykey}}.}}}}

\newrobustcmd{\cbx@superscript}[1]{%
\mkbibsuperscript{#1}%
\cbx@citehook
\global\let\cbx@citehook=\empty}
\let\cbx@citehook=\empty

\makeatother
\begin{document}

Some filler text \notefullcite{cotton}, then some more text
\notefullcite{hammond}. Perhaps some more text and the same
citation again \notefullcite{hammond}. Yet another one
\notefullcite{knuth:ct:a}. Now all again
\notefullcite{cotton,hammond,knuth:ct:a}.

Some filler text,\superfullcite{augustine} then some more
text.\superfullcite{companion} Perhaps some more text and the
same citation again.\superfullcite{companion} Yet another
one.\superfullcite{kastenholz} Now all
again.\superfullcite{augustine,companion,kastenholz}

\end{document}


I might add this to my biblatex styles, but I’ll wait to see if Philipp puts the code or some notes into the biblatex core before I do. I should also point out that if you want footnote citations and other footnotes then you’ll need something like the bigfoot package to do the job. But this is a pretty good place to start from.

Written by Joseph Wright

March 8th, 2010 at 8:04 am

Posted in biblatex,LaTeX

« Older Entries
gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.