PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Biblatex \cite zeigt nur [0] bei allen Cites



Shalec
24-11-2016, 19:56
Hallo allerseits,

ich nutze seit kurzem Ubuntu 16.04 LTS mit TexLive. Dort verwende ich Biblatex und Biber. Das Literaturverzeichnis wird ohne Probleme angelegt. Ein \cite{} im Text gibt aber immer [0] (im Stil numeric) aus. Hier ein "Minimalbeispiel" ist beigefügt in einer Code-Umgebung. Ich habe extra alles an Code zur Verfügung gestellt, das irgendwas mit der Literatur anstellt. Dieses Beispiel läuft bei mir fehlerfrei durch und das Literaturverzeichnis wird auch entsprechend angelegt. Die \cite{}'s im Text zeigen mir nur [0] an.

Weiß jemand woran das liegt? Irgendwie glaube ich, dass das nur eine Kleinigkeit ist. :(

Viele Grüße und Vielen Dank für die Hilfe!!!

main.tex


\documentclass[12pt, oneside, a4paper, toc=index]{scrartcl}
\usepackage{textcomp}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[style=german]{csquotes}




\RequirePackage{filecontents}
\begin{filecontents*}{\jobname-bib.bib}
@Inbook{Boneh_Franklin-2001,
author={Boneh, Dan and Franklin, Matt},
editor={Kilian, Joe},
title={Identity-Based Encryption from the Weil Pairing},
bookTitle={Advances in Cryptology --- CRYPTO 2001: 21st Annual International Cryptology Conference, Santa Barbara, California, USA, August 19--23, 2001 Proceedings},
year={2001},
publisher={Springer Berlin Heidelberg},
address={Berlin, Heidelberg},
pages={213--229},
isbn={978-3-540-44647-7},
doi={10.1007/3-540-44647-8_13},
url={http://dx.doi.org/10.1007/3-540-44647-8_13},
urldate = {2016-11-24},
keywords = {print}
}
@Inbook{Boneh_Lynn_Shacham-2001,
author={Boneh, Dan and Lynn, Ben and Shacham, Hovav},
editor={Boyd, Colin},
title={Short Signatures from the Weil Pairing},
bookTitle={Advances in Cryptology --- ASIACRYPT 2001: 7th International Conference on the Theory and Application of Cryptology and Information Security Gold Coast, Australia, December 9--13, 2001 Proceedings},
year={2001},
publisher={Springer Berlin Heidelberg},
address={Berlin, Heidelberg},
pages={514--532},
isbn={978-3-540-45682-7},
doi={10.1007/3-540-45682-1_30},
url={http://dx.doi.org/10.1007/3-540-45682-1_30},
urldate = {2016-11-24},
keywords={print}
}
@Article{Joux-2004,
author={Joux, Antoine},
title={A One Round Protocol for Tripartite Diffie--Hellman},
journal={Journal of Cryptology},
year={2004},
volume={17},
number={4},
pages={263--276},
abstract={In this paper we propose a three participants variation of theDiffie--Hellman protocol. This variation is based on the Weil and Tatepairings on elliptic curves, which were first used in cryptography ascryptanalytic tools for reducing the discrete logarithm problem on someelliptic curves to the discrete logarithm problem in a finite field.},
issn={1432-1378},
doi={10.1007/s00145-004-0312-y},
url={http://dx.doi.org/10.1007/s00145-004-0312-y},
urldate={2016-11-24},
keywords={print}
}
\end{filecontents*}






\usepackage[backend=biber,%
bibencoding=ascii,%
style=numeric,%
natbib=true,% Lädt das Kompatibilitätsmodul, welches Pseudonyme für die Befehle der Literaturverweisregeln des natbib-Pakets zur Verfügung stellt.
maxbibnames=99,% Es werden maximal 5 Namen in der Bibliographie ausgegeben
sorting=nyt,% Name, year, title
giveninits=true,% Vornamen werden abgekürzt
%uniquename=init,% Einzigartige Namen werden abgekürzt
isbn=false,% Isbn wird nicht ausgegeben
doi=false,% doi wird nicht ausgegeben
clearlang=false,% weiß ich nicht
maxcitenames=3,% in Zitationen erscheinen höchstens zwei Autoren
urldate=comp,%
defernumbers=true%
]{biblatex}


\bibliography{\jobname-bib.bib}
\input{Biblatex_numeric}



\begin{document}

Sie behandelten die identitätsbasierten Verschlüsselung (IBE) \cite{Boneh_Franklin-2001}, kurze Signaturen \cite{Boneh_Lynn_Shacham-2001} und einen drei-Parteien Schlüsselaustausch in einer Runde \cite{Joux-2004}.


\begin{refsection}
\nocite{*}
\phantomsection
\addcontentsline{toc}{section}{Literaturverzeichni s} \renewcommand{\linksmarkierung}{Literaturverzeichn is}
\printbibliography[keyword=print]
\end{refsection}
\end{document}



Biblatex_numeric.tex (Konfigurationsdatei)

\defbibheading{Lit}{\chapter*{Literatur}}

%\bfseries{} Fettgedruckt


%%% Autorennennung - last-first
\DeclareNameFormat{author}{%
\nameparts{#1}%
{\ifgiveninits
{%
\usebibmacro{name:given-family}
{\namepartfamily}
{\namepartgiveni}
{\namepartprefix}
{\namepartsuffix}%
}
{%
\usebibmacro{name:given-family}
{\namepartfamily}
{\namepartgiven}
{\namepartprefix}
{\namepartsuffix}%
}
}
\usebibmacro{name:andothers}
}


%%% Darstellung von Büchern:
\DeclareBibliographyDriver{book}{%
\printnames{author}%
\newunit\newblock
\printfield{title}%
\newunit\printfield{series}
\newunit\newblock
\printlist{publisher}%
\newunit
\printlist{location}%
\newunit
\printfield{year}%
\finentry}


%%% Herausgeber mit Hrsg. abkürzen
\DefineBibliographyStrings{german}{%
byeditor ={\unspace\mkbibparens {Hrsg\adddot}},
}


\AtBeginBibliography{%
\renewcommand*\mkbibnamefirst[1]{\bfseries{#1}}
\renewcommand*\mkbibnamelast[1]{\bfseries{#1}}
\renewcommand*\mkbibnameprefix[1]{\bfseries{#1}}
\renewcommand*\mkbibnameaffix[1]{\bfseries{#1}}
\DeclareFieldFormat{parens}{\bfseries{\mkbibparens {#1}}}
\DeclareFieldFormat{date}{#1}
}

\renewbibmacro*{issue+date}{%
\setunit{\addcomma\space}% NEW
% \printtext[parens]{% DELETED
\iffieldundef{issue}
{\usebibmacro{date}}
{\printfield{issue}%
\setunit*{\addspace}%
% \usebibmacro{date}}}% DELETED
\usebibmacro{date}}% NEW
\newunit}

%Article
\DeclareFieldFormat[article, booklet, online, book, misc, inbook]{title}{#1\isdot}
\DeclareFieldFormat[inbook]{booktitle}{#1\isdot}

\DeclareFieldFormat[article]{journaltitle}{#1}

rais
24-11-2016, 23:32
Weder \phantomsection noch \linksmarkierung sind hier definiert.
Wie dem auch sei, Du setzt den \printbibliography in einer refsection-Umgebung, die selbst allerdings gar keine Zitierbefehle beinhaltet (deshalb bliebe dieses Literaturverzeichnis ohne den \nocite* auch leer); die Zitierbefehle hingegen befinden sich außerhalb dieser refsection-Umgebung.
Zieh den \begin{refsection} _vor_ Deine Zitierbefehle, dann brauchst Du auch den \nocite* nicht mehr und die Zitierbefehle liefern Dir auch was anders als [0].

BTW: statt \bibliography wird in Verbindung mit biblatex die Verwendung von \addbibresource empfohlen.

VG

Shalec
25-11-2016, 09:12
Hey,
ich dachte ich hätte die beiden Befehle entfernt. Auch bin ich der Meinung, dass ich gestern auch das Kompilieren ohne "refsection" versucht hätte... So kann man sich irren :D

Danke es funktioniert.