2009-10-25 7 views
2

Après avoir essayé plusieurs fichiers .bst, je suis toujours satisfait de la disposition du fichier ChicagoReedWeb.bst. Cependant, je n'aime pas le traitement des entrées du même auteur, par exemple:Comment éditer le BibTeX .bst FUNCTION {format.names}?


Example of Chicago Style


Si ont examiné le dossier ChicagoReedWeb.bst mais seulement comprendre certaines des bases. Alors, comment puis-je éditer le code du fichier ChicagoReedWeb.bst de manière à ce qu'il imprime la référence complète de l'auteur au lieu du "--------"?

+0

Je suis toujours étonné par le nombre de personnes qui détestent le Chicago Style du long dash pour les auteurs répétés. Je suppose que les gens qui ne lisent que des livres récents et des documents techniques ne l'ont jamais vu ... –

Répondre

2

OK, c'est bien en dehors de mon expérience avec BibTeX, mais en regardant le fichier, je l'impression que la section name.or.dash remplace le nom d'un tableau de bord si elle est la même chose que le précédent. Je vous conseille d'essayer de remplacer ce code:

FUNCTION {name.or.dash} 
{ 's := 
    oldname empty$ 
    { s 'oldname := s } 
    { s oldname = 
     { "\rule[.6ex]{3em}{.05ex}"} 
     { s 'oldname := s } 
     if$ 
    } 
    if$ 
} 

avec ceci:

FUNCTION {name.or.dash} 
{ 
} 

Si ma compréhension de la syntaxe est correcte, cela ne devrait tout simplement retirer la comparaison et le changement en option, et laisser le nom que vous voulez il.

Une approche légèrement plus ordonnée pourrait être de prendre les appels à name.or.dash dans les endroits que vous ne les voulez pas. Cela vous donnera plus de flexibilité quant à savoir si vous voulez un tiret à la place, par exemple, d'un nom de livre répété.

+0

Je viens d'essayer vos suggestions et ça marche. Merci! – Mike

+0

Ouf, c'est un soulagement! Vous êtes les bienvenus. :-) – Tim

+0

Je laisserais les appels à name.or.dash in: il se peut qu'à un certain moment dans le futur vous souhaitiez traiter différemment des bibitems répétés. Les renommer, pour des raisons de lisibilité, à repeat.name aurait du sens. –