# Print localization strings in biblatex

I want to print all the localization strings in biblatex for a language, so I can review them in an easier way than looking at the code. How can I achieve this?

-
Is it supposed to be 'pretty printed' into (say) a tabular environment? Otherwise, given that .lbx files are not very 'code' heavy, I'm not sure what you are gaining. –  jon Jul 17 '12 at 19:15
I believe it would be easier if I could see the result of the code. I have experimented with a dummy bib-file to see the strings in action, but it is tricky. –  Håkon Malmedal Jul 17 '12 at 19:41
Can you not just use the example .bib files shipped with biblatex to test the results (just loaded with the right 'new' language in babel)? There are about 80 test 'style' files shipped with the package along with biblatex-examples.bib. –  jon Jul 17 '12 at 19:58
Yes, I have already done that. I have spent a week updating a translation. –  Håkon Malmedal Jul 17 '12 at 20:04
OK. Then perhaps you can edit your question to include what sort of thing you want to see in terms of 'result of the code'. Your first question and your first comment seem to be describing (to me) two different things. –  jon Jul 17 '12 at 20:07

Long and short strings for localization keys can be printed with \biblstring{<key>} and \bibsstring{<key>}, respectively. Many of the strings use punctuation commands, such as \addcomma and \space. All of these biblatex commands are defined only within citations and bibliographies, but we can make them in scope by issuing \blx@bibinit.

The default keys are initialized using a list of \do commands stored in \abx@dostrings. You can redefine \do to print the strings in a document. Here's an example.

\documentclass{article}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage{biblatex}

\begin{document}
\makeatletter
\blx@bibinit
\def\do#1{\item \texttt{#1}: \biblstring{#1}, \bibsstring{#1}}
List of default localization keys (name: long string, short string)
\begin{itemize}
\abx@dostrings
\end{itemize}
\makeatother
\end{document}


Note that this won't print keys initialized elsewhere, but you could append \abx@dostrings with additional keys in the preamble. As of biblatex 2.0 all strings defined in the standard lbx files correspond to default localization keys.

-