# Customized citation keys with biblatex

I have what follows:

\documentclass{article}
\begin{filecontents*}{mybib.bib}
@ARTICLE{refconf,
author = {author},
title = {title},
keywords = {conference}}
@ARTICLE{refjour,
author = {author},
title = {title},
keywords = {journal}}
@ARTICLE{ref,
author = {author},
title = {title}}
\end{filecontents*}
\usepackage[style=numeric-comp,backend=biber]{biblatex}
\bibliography{mybib}

\begin{document}
\cite{refjour}, \cite{refconf}, \cite{ref}
\subsection{Personal Conference references}
\subsection{Personal Journal references}
\subsection{Other references}
\end{document}


which is not too bad but I need to customize the labels such that \cite{refjour} yields [j.1] (j. for journal) in the main text as well as in the list of references, and that \cite{refconf} yields [c.1], and finally \cite{ref} yields [1].

-

A similar question to this one was recently posted. Prefixes to labelnumber can be easily added using the prefixnumbers option of \printbibliography. This option needs defernumbers enabled globally. For the last reference list, you'll probably want to filter out the previous keywords. The notkeyword filter can be used more than once. All this is demonstrated using your MWE below.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[style=numeric-comp,defernumbers=true]{biblatex}

\begin{filecontents*}{\jobname.bib}
@ARTICLE{refconf,
author = {author},
title = {title},
keywords = {conference}}
@ARTICLE{refjour,
author = {author},
title = {title},
keywords = {journal}}
@ARTICLE{ref,
author = {author},
title = {title}}
\end{filecontents*}

\begin{document}
\cite{refjour}, \cite{refconf}, \cite{ref}

Thanks! I had not seen the similar question. It seems that you do not like the \subsection{Personal conference references} together with \printbibliography[heading=empty] structure: is there a reason for this? –  pluton Oct 17 '11 at 4:47
one problem: if I use \printbibliography[notkeyword=journal,notkeyword=conference] before the two other ones, the numbering will be correct, ie I'll get [1], [c.1], and [j.1]. But if I use it afterwards, I'll get [c.1], [j.1], and [2]. It looks like option defernumbers=true has no effect in the second case? –  pluton Oct 25 '11 at 18:31