biblatex und tabellarisches Literaturverzeichnis
Ich möchte in meiner Quellenangabe Zeitschriften tabellarisch aufführen, alles andere soll ganz normal aufgeführt werden. Unter [TeX Stack Exchange][1] habe ich auch einen Ansatz gefunden, weiß jetzt aber nicht weiter. Ich möchte die Titel (`title`) der Zeitschrift links in der Tabelle und Untertitel (`subtitle`) rechts. An welcher Schraube muss ich drehen?
Hier mal der Code:
\documentclass{scrartcl}
\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[autostyle]{csquotes}
\usepackage[useprefix=true,uniquename=init,sorting=nyt,seriesformat=standard,firstfull=true,citedas=true,idemfont=normal,idembib=true,style=authortitle-dw,nopublisher=false,backend=biber,ibidtracker=context]{biblatex}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Folgender Code aus TeX StackExchange:
\makeatletter
% user-level command for printing tabular bibliography
\let\printbibtabular\printbibliography
\patchcmd{\printbibtabular}{\blx@printbibliography}{\bbx@printbibtabular}{}{}
\patchcmd{\printbibtabular}{\blx@printbibliography}{\bbx@printbibtabular}{}{}
\let\bbx@printbibtabular\blx@printbibliography
\patchcmd{\bbx@printbibtabular}{\blx@bibliography}{\bbx@bibtabular}{}{}
\patchcmd{\bbx@printbibtabular}
{\def\blx@theenv{bibliography}}{\def\blx@theenv{bibtabular}}{}{}
% underlying macros
\def\bbx@bibtabular#1{%
\blx@bibheading\blx@theheading\blx@thetitle
\blx@bibnote\blx@theprenote
\begingroup
\blx@bibinit
\let\@noitemerr\@empty
\let\blx@noitem\blx@warn@bibempty
\ifnum\bibinitsep=\z@
\let\blx@initsep\relax
\fi
\ifnum\bibnamesep=\z@
\let\blx@namesep\relax
\fi
\csuse{blx@hook@bibinit}%
% copy filtered list of entries to internal list macro
\def\blx@do##1{%
\blx@ifdata{##1}{%
\begingroup
\blx@getdata{##1}
\blx@bibcheck
\iftoggle{blx@skipentry}{}{%
\global\let\blx@noitem\@empty
\listadd\blx@tempa{##1}}%
\endgroup}{}}
\let\blx@done\relax
\blx@listloop{#1}
% tabular output for each item in list macro
\def\do##1{\bbx@tab@label{##1} & \bbx@tab@item{##1} \\}
\csuse{blx@env@\blx@theenv}%
\dolistloop{\blx@tempa}
\csuse{blx@endenv@\blx@theenv}%
\blx@bibnote\blx@thepostnote
\endgroup}
\def\bbx@tab@label#1{%
\begingroup
\blx@getdata{#1}%
\blx@setoptions@type\abx@field@entrytype
\blx@setoptions@entry
\blx@thelabelnumber
\blx@addprefixnumber
\addtocounter{instcount}\@ne
\csuse{bbx@tabenv@\blx@theenv}\relax
\endgroup}
\def\bbx@tab@item#1{%
\begingroup
\blx@getdata{#1}%
\blx@setoptions@type\abx@field@entrytype
\blx@setoptions@entry
\csuse{blx@item@\blx@theenv}\relax
\blx@initsep
\blx@namesep
\csuse{blx@hook@bibitem}%
\blx@execute
\blx@initunit
\blx@anchor
\blx@beglang
\bibsentence
\blx@pagetracker
\blx@driver\abx@field@entrytype
\blx@postpunct
\blx@endlang
\endgroup}
% user-level command for defining tabular bibliography format
\newrobustcmd*{\defbibtabular}[5]{%
\long\csdef{blx@env@#1}{#2}%
\long\csdef{blx@endenv@#1}{#3}%
\long\csdef{bbx@tabenv@#1}{#4}%
\long\csdef{blx@item@#1}{#5}}
% user-level access to some entry options
\def\useeditorfalse{\togglefalse{blx@useeditor}}
\def\usetranslatorfalse{\togglefalse{blx@usetranslator}}
\makeatother
% sortname labels (a robust style should add provision for missing labelnames)
\newbibmacro*{sortname}{%
\renewcommand*{\multinamedelim}{\addslash\break}%
\let\finalnamedelim\multinamedelim
\printtext[bold]{\printnames[last-first]{labelname}}}
% bibitem hook to suppress redundant sortname list
\newbibmacro*{omitsortname}{%
\ifnameundef{labelname}{}{%
\ifnameundef{author}
{\ifnameundef{editor}
{\ifusetranslator{\clearname{translator}}{}}}
{\clearname{editor}}
{\clearname{author}}%
\useeditorfalse%
\usetranslatorfalse}}
% demo new tabular bibliography format
\defbibtabular{bibtabular}
{\begin{tabular}{p{0.3\textwidth}p{0.7\textwidth}}}
{\end{tabular}}
{\usebibmacro{sortname}}
{\usebibmacro{omitsortname}}
%%%%%%%%%%%%%%% habe ich auskommentiert, um die normale Bibliografie-Umgebung zu erhalten %%%%%%%
% add multiline labels in default bibliography format
%\defbibenvironment{bibliography}
%{\list
%{\usebibmacro{sortname}}
%{\setlength{\labelwidth}{0.3\textwidth}%
%\setlength{\leftmargin}{\labelwidth}%
%\setlength{\labelsep}{\biblabelsep}%
%\addtolength{\leftmargin}{\labelsep}%
%\setlength{\itemsep}{\bibitemsep}%
%\setlength{\parsep}{\bibparsep}}%
%\renewcommand*{\makelabel}[1]{%
%\nobreak\strut\smash{\parbox[t]\labelwidth{\raggedright##1}}}}
%{\endlist}
%{\item\usebibmacro{omitsortname}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{filecontents}
\begin{filecontents}{TestBib.bib}
@book{Dante2007,
author = {Dante Alighieri},
title = {Die Göttliche Kommödie},
gender = {sm},
location = {Stuttgart},
year = {2007},
translator = {Hermann Gmelin},
shorthand = {Alighieri 2007}
}
@periodical{Grundstein,
title = {Der Grundstein -- Wochenblatt für die deutschen Maurer und diesen verwandten Berufsgenossenschaften},
subtitle = {Jahrgänge 1910, 1933},
keywords = {Zeitung}
}
\end{filecontents}
\addbibresource{TestBib.bib}
\DeclareFieldFormat{shorthandinbib}{#1}
\renewcommand*{\shorthandinbibpunct}{\newline}
\setlength{\bibhang}{2em}
\begin{document}
\nocite{Grundstein}
\nocite{Dante2007}
\printbibliography[notkeyword=Zeitung,title={Literatur}]
\printbibtabular[keyword=Zeitung,title={Zeitschriften}]
\end{document}
So sieht es bisher aus:
![alt text][2]
Und so soll es ungefähr aussehen (passt jetzt nicht zum Code):
![alt text][3]
[1]: http://tex.stackexchange.com/questions/71088/tabular-bibliography-with-biblatex
[2]: http://texwelt.de/wissen/upfiles/ZeitschriftTabelle2.jpg
http://texwelt.de/wissen/upfiles/ZeitschriftTabelle2_1.jpg
[3]: http://texwelt.de/wissen/upfiles/ZeitschriftTabelle.jpg