Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I am a LaTeX noob and am stuck on how to modify a biblatex style. I tried playing around with an existing style but I have a hard time following in which files all the sub-macros are hidden. My bib needs to look as follows:

Last1 / Last2 Year
(tab)Last1, First_initial1; Last2, First_initial2: Title. Publication, Location, Date.

I started editing an existing desing and it currently looks as follows:

Last1, First1 and First2 Last2 Year
(tab)Last1, First1 and First2 Last2. Title. Publication.

Can anyone help me where I need to look in the varous bbx, cbx and def files to make my bibliography look right?


EDIT

\ProvidesFile{newstyle_bib.bbx}[\abx@bbxid $Id: standard.bbx,v 0.9a 2010/03/19 19:52:15 $] \newtoggle{bbx:isbn}
\newtoggle{bbx:url}
\newtoggle{bbx:doi}
\newtoggle{bbx:eprint}
\DeclareBibliographyOption{isbn}[true]{%
  \settoggle{bbx:isbn}{#1}}
\DeclareBibliographyOption{url}[true]{% 
  \settoggle{bbx:url}{#1}} 
\DeclareBibliographyOption{doi}[true]{%
 \settoggle{bbx:doi}{#1}} 
\DeclareBibliographyOption{eprint}[true]{% 
 \settoggle{bbx:eprint}{#1}} 
\ExecuteBibliographyOptions{isbn,url,doi,eprint}
%%%%%%%%%%%%%%% 
\DeclareBibliographyDriver{book}{% 
 \usebibmacro{author_head}
 \indent %
 \bf\printtext[bibhyperref]{\printfield[citetitle]{labeltitle}}
 \printnames{author}% 
 \newunit\newblock
 \printfield{title}% 
 \newunit\newblock
 \printlist{publisher}%
 \newunit 
 \printlist{location}% 
 \newunit 
 \printfield{year}% 
 \finentry 
 \newline} 

%%%%%%%%%%%%%%% 
%%%%%%%%%%%%%%% 
\DeclareBibliographyDriver{article}{%
 \usebibmacro{author_head}
 \indent %
 \bf\printtext[bibhyperref]{\printfield[citetitle]{labeltitle}} 
 \printnames{author}% \newunit\newblock
share|improve this question
    
Welcome to TeX.sx! Please add a minimal working example (MWE) that illustrates your problem. –  Marco Daniel Aug 5 '12 at 12:44
    
Hi Marco, would it help you if I pasted the bbx and cbx files I am using here? I got the bib working for the most part, what I still cannot figure out however, is how to filter out the last names from the entries and have them listed in boldface separated by slashes (as seen in my first post). –  L3fos Aug 6 '12 at 10:52
    
Do you use your own bbx / cbx file? At the moment I can't test anything. But I think it's helpful showing the bbx and cbx modifications. –  Marco Daniel Aug 6 '12 at 11:41
1  
I copied your code in your original question. You can edit your question too. Please delete the other comments :-) –  Marco Daniel Aug 6 '12 at 12:23
add comment

1 Answer

up vote 4 down vote accepted

You can often avoid modifying each individual bibliography driver by applying edits to the bibliography macros instead. In the standard styles the begentry bibiliography macro appears at the beginning of every driver. This is a good place to add the item "header".

Standard drivers typically print publishing information in the form <location>: <publisher>. For most entry types this order can be swapped by editing the publisher+location+date bibliography macro.

The rest of the problem is handled with edits to biblatex's delimiter/punctuation commands and name formats. Here's an example.

\documentclass{article}
\usepackage[backend=bibtex,style=authortitle,firstinits,terseinits]{biblatex}

\renewbibmacro*{begentry}{%
  \renewcommand*{\finalnamedelim}{\multinamedelim}%
  \renewcommand*{\multinamedelim}{\addspace\slash\space}%
  \printtext[bold]{%
    \printnames{labelname}%
    \setunit*{\addspace}%
    \printfield{year}}%
  \setunit*{\par\nobreak}
  \renewcommand*{\multinamedelim}{\addsemicolon\space}}

\renewbibmacro*{publisher+location+date}{%
  \printlist{publisher}%
  \setunit*{\addcomma\space}%
  \printlist{location}%
  \setunit*{\addcomma\space}%
  \usebibmacro{date}%
  \newunit}

\renewcommand*{\labelnamepunct}{\addcolon\space}

\DeclareNameAlias{sortname}{last-first}

\addbibresource{biblatex-examples.bib}
\begin{document}
\textcite{companion,reese,wassenberg}
\printbibliography
\end{document}

enter image description here

share|improve this answer
    
Did you notice my message in the chat :-( –  Marco Daniel Aug 6 '12 at 17:38
    
@MarcoDaniel Yeah, sorry. I've been hanging back on answering lately, but I guess I should've waited longer for this one. –  Audrey Aug 6 '12 at 18:04
    
I think some combinations are useful. Your way with \setunit is much better. I like my way with \usebibmacro{cite}% and \usepackage{xpatch} \xpatchbibmacro{author}{\usebibmacro{date+extrayear}}{}{}{} ;-) –  Marco Daniel Aug 6 '12 at 18:05
    
Wow, that was quick! Thanks a bunch, the begentry works now, but the author names still do not. I get the following result: <p> Atkinson 1887 <br> <space>AtkinsonAJamesJ: “Gas-Engine”. Patent US 367496 (US). Aug. 1887. <p> Any idea what could be cause this? –  L3fos Aug 7 '12 at 8:19
    
@L3fos I can't tell without further details. Does the example I gave work for you? If so, you're probably making unnecessary edits to the name formats. –  Audrey Aug 7 '12 at 12:50
show 3 more comments

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.