New answers tagged

3

This can be done using keywords key in the bibliography field. For example, you can annotate your .bib fields as follows: @online{johnsfirst, title="John", month=November, date=2013, day=10, keywords={john},} @online{johnssecond, title="John", month=November, date=2013, day=10, keywords={john},} @online{tomsfirst, ...


2

Not a direct answer but rather a pointer to a possible route to a solution. Last year I developed a BibTeX style for a book catalogue bookdb.bst which involved extending one of the regular BibTeX files. Run texdoc bookdb to view the User Manual and possibly read bookdb.bst if you want the gory internal details. The User Manual doesn't describe the internal ...


3

The German language files are missing a translation for reprintin, so that is the first thing we need to provide \NewBibliographyString{reprintin} \DefineBibliographyStrings{german}{% reprintin = {Nachdr. in}} If the relatedtype string is not known it is not printed (there is no bold key that warns you of that). But then biblatex-philsophy ...


0

A previous answer by Audrey provides a possessive citation command that works with older versions of Biblatex. However, this code does not work in Biblatex 3.3 due to a recent change to the format of \DeclareNameFormat. The following adaptation of Audrey's code (to which I am grateful to PLK for a slight correction) should work with Biblatex 3.3. According ...


5

biblatex has a host of commands for that. There are (see pp. 199-200 of the biblatex doc) \ifinteger to check if the given argument is a positive integer \ifnumeral to check if the argument is a number given either in the Roman or Arabic system \ifnumerals for ranges of (Roman or Arabic) numerals \ifpages for detection of pages Those commands have a ...


1

A style like this doesn't make much sense to me. You give up the one big advantage of a numeric style: unintrusiveness. Since you add the author and year the citation gets longer, and the numeric label doesn't add any further information that the author-year part can't give you (if done properly, of course). That said, you can just add the name and year to ...


2

I've never heard of a super option. But if you dig into the chem-rsc.cbx code, you'll find these lines: \RequireCitationStyle{numeric-comp} \ExecuteBibliographyOptions { autocite = superscript, autopunct = true , sorting = none } So using \autocite instead of \cite should do the trick.


0

The format of the citation labels in the bibliography is controlled by the labelalphawidth and shorthandwidth formats (for numeric labels there is also labelnumberwidth). So \DeclareFieldFormat{labelalphawidth}{#1} \DeclareFieldFormat{shorthandwidth}{#1} should do it. In the citations the brackets are either hard-coded (as is often the case in the ...


3

You can just save delete the organization field, but save it in a macro for comparison before doing so. \newbibmacro*{author/editor+others/organization}{% 1. \savelistcs*{organization}{savedorg}% \ifboolexpr{% test {\ifnameundef{author}} and test {\ifnameundef{editor}} } {\printlist[uppercase]{organization}% ...


3

Yes, it is possible to link to MathSciNet. This can be done as in Biblatex and Pubmed/Pubmed Central IDs. Either as a manifestation of the eprint feature via \DeclareFieldFormat{eprint:mrnumber}{% MR\addcolon\space \ifhyperref {\href{http://www.ams.org/mathscinet-getitem?mr=1#1}{\nolinkurl{#1}}} {\nolinkurl{#1}}} and then eprint = ...


1

Just add the biblatex option sorting=ynt to your biblatex options since sortcites uses the global sorting scheme. This gives you the order you want. If you want different sorting for the actual bibliography list, you can put your \printbibliography inside a \refsection with a different sorting scheme.


1

Define a new wrapper for backslashes \newrobustcmd{\mkbibbackslashes}[1]{\textbackslash #1\textbackslash} and then use it in the labelalphawidth and shorthandwidth formats (for numeric labels you'd also need labelnumberwidth) \DeclareFieldFormat{labelalphawidth}{\mkbibbackslashes{#1}} \DeclareFieldFormat{shorthandwidth}{\mkbibbackslashes{#1}} Then we ...


3

The problem is the bibmacros bbx:dashcheck and bbx:savehash use the fullhash field. However, fullhash does not exist if there is no name. Thus one has to replace the use of fullhash with a different value. To this end we check if the names (lists) for the organisation is the same at the previous one. We can change the definition of the bbx:dashchek macro ...


1

Rather than implementing this feature in biblatex, one could simply do the following: \newcommand{\urlcite}[3]{\footfullcite{#1}, p.~\href{#2}{#3}} This is a fairly 'dumb' command, of course, and you lose out a lot of the clever functionality of biblatex's citation commands. However, in this case, it is not a big loss because: we know that the citation ...


1

This is not exactly the desired behavior, but it might be preferable to assign the same numbering to the same paper? Either way, it is a good starting point and too long for a comment. \documentclass{scrartcl} \usepackage[ backend=biber, style=numeric, defernumbers=true ]{biblatex} \usepackage{filecontents} \begin{filecontents}{\jobname.bib} ...


1

From the Wikibooks example ( https://en.wikibooks.org/wiki/LaTeX/Bibliography_Management#BibTeX ) Create a file named example.bib (you may name it anything) with the following content @article{AbedonHymanThomas2003, author = "Abedon, S. T. and Hyman, P. and Thomas, C.", year = "2003", title = "Experimental examination of bacteriophage latent-period ...


0

Don't use \brackettext, use \printtext[brackets] instead. \renewbibmacro*{publisher+location+date}{% %\addperiod\addspace \printtext[brackets]{\bibstring{volume}\addcolon\addnbspace\bibstring{number}} \setunit*{\addcomma\space}% \usebibmacro{date}% \newunit} This has to do with how biblatex handles punctuation with its punctuation tracker. You ...


3

Your core problem is to uppercase only a part of a list of words. That's not so difficult (perhaps one needs to make the command robust for the bibliography). \documentclass{article} \makeatletter \newcommand\FirstWordUpper[1]{\@firstwordupper#1 \@nil} \newcommand\@firstwordupper{} \def\@firstwordupper#1 #2\@nil{\MakeUppercase{#1} #2\unskip} \makeatother ...


3

Of course that information is not enough to properly give a full bibliography style, but you can get the label format easily with biblatex. You will need the options minalphanames=3, maxalphanames=4, maxbibnames=999 and then \DeclareLabelalphaTemplate{ \labelelement{ \field[final]{shorthand} \field{label} ...


5

Note that the .bib entry is misclassified, in my opinion. Aristotle's Metaphysics is not a contribution to an edited anthology. It is, rather, a book in its own right. Here, it is simply included in a larger collection of his works. As such @bookinbook strikes me as a more appropriate classification than @incollection. This changes the format of the ...


1

Just add these lines to your preamble: \DefineBibliographyStrings{english}{% bibliography = {Bibliography},% references= {References},% } or whatever names you want. If you don't want a title for your bibliography, to prevent any side effect that might result from redefining these strings as empty strings, it would be better to use the optional ...


0

The latest dev version of bilatex and biber (Thanks @plk) now allow the this source mapping code, which is considerably more elegant: \DeclareSourcemap{ \maps{ \map{ \step[fieldsource=shortseries, final] \step[fieldsource=shorthand, final] \step[fieldsource=entrykey, match=\regexp{(.*)}] \step[fieldset=xref, ...


1

Add \nocite{*} before \printbibliography. By default, references which are not cited in the text do not appear in the bibliography.


2

Well, there are several problems in your code, some related to KOMA-Script, some to called, outdated packages. Your code gives you several warnings you should read and then change your code like this: \documentclass[% listof=totoc, bibliography=totoc, paper=a4, fontsize=12pt, parskip, % <==================== then \parindent not ...


1

Your problem is that you need to change the values of different penaltys to 10000 (not allowed). The easierst way to do that is to patch the relevant commands with package etoolbox and the command \patchcmd{\command-to-be-patched}{search-code}{replace-code}{sucess}{failure} (please see the comments!): \usepackage{etoolbox} % ...


0

This is a temporary bug in biblatex 3.3, it has already been addressed in biblatex 3.4, see issue #373 at the biblatex bug tracker. Indeed, the old system has been replaced by something far fancier. If you want to fix the problem in biblatex 3.3 use the following redefinition. The exact code needed depends on the style, for authoryear you need; the rule of ...


4

You have a 'timing issue'. The command \ExecuteBibliographyOptions applies some settings 'now' (to set defaults) but doesn't pick up any users choices. Those apply after your file has been read. As such \ifbool{bftitle}{ \DeclareFieldFormat{title}{\bfseries{#1}} \DeclareFieldFormat{journaltitle}{\bfseries{#1}} ...


6

The definition of \MakeSentenceCase needs to allow for math mode. A possible fix is \makeatletter \def\blx@mksc@init{% \blx@mkcp@init \def\blx@mkcp@nil{\noexpand\blx@mkcp@nil\noexpand}% \def\i{\blx@mkcp@nil\i}\def\j{\blx@mkcp@nil\j}% \def\do##1{% \ifx##1\relax \else \def##1{\blx@mkcp@nil##1}% \expandafter\do \fi}% ...


1

It should be enough to replicate the code in \AtEveryBibitem in a \AtEveryCitekey block. Just add \AtEveryCitekey{% \ifcategory{important}% {\bfseries\color{red}}% {}}


1

Adding maxbibnames=999 option resolved the issue. Thanks to @moewe.


1

Rather than using authorname et al, use authorname and others. This will be automatically converted to et al. in your document by biblatex.


1

Use \renewbibmacro*{journal+issuetitle}{% \usebibmacro{journal}% \setunit*{\addspace}% \iffieldundef{series} {} {\newunit \printfield{series}% \setunit{\addspace}}% \printfield{volume}% \setunit{\addspace}% \usebibmacro{issue+date}% \setunit{\addcolon\space}% \usebibmacro{issue}% \setunit{\addcomma\space}% ...


1

I can't provide an answer that ›does it for you‹, but what you're describing is very similar to a style I've been working on recently. The idea is to have a full citation in a foot- or endnote the first time, and a short citation (albeit author-year, rather than author-title, but it doesn't really matter) for every instance thereafter. Ibid or not can be ...


1

biblatex provides two indexing macros, one for citations and one for the bibliography, they are by default defined as \renewbibmacro*{citeindex}{% \ifciteindex {\indexnames{labelname}% \indexfield{indextitle}} {}} \newbibmacro*{bibindex}{% \ifbibindex {\indexnames{labelname}% \indexfield{indextitle}} {}} So they index the ...


5

I have no idea whether this answers your question or why you would be disappointed if you could not use .bib files to exploit something. Nor do I understand why Turing completeness is supposed to be a requirement for capacity to be exploited or what your concept of a Turing complete device is. However, if you wish to know whether you can define a macro in ...


1

Since biblatex is used, the bib-file should be specified with addbibresource{...}. \bibliography is 'deprecated` and shouldn't be used any longer. And use biber after pdflatex, compile twice (or better three times!) \documentclass{article} \usepackage[backend=biber]{biblatex} \addbibresource{Ohne-Titel.bib} \begin{document} Test test test ...


0

You're spot-on, Nils, the problem is in the re-definition of citeindex. If you don't redefine at all, i.e. let biblatex follow its native routine, you'll have the titles (which you don't want but can get rid of later) as well as the editors. At least those that are important enough to get their own citation label. The subsidiary ones you can add using ...


1

You saw the error message Category important not declared caused by your code? Just add \DeclareBibliographyCategory{important} to your code. Then there are some more little errors, for example you have to add the key of the new books/articles to \addtocategory. At last I changed bold writing to italic writing (to see it better I colored it red). ...


3

I see no need to defer the loading of biblatex to the end of the preamble at all. \AtEndPreamble won't work here, since \usepackage{biblatex} tries to write settings into .aux which isn't open then. It's \begin{document} that opens .aux, not \documentclass: Here's an excerpt of latex.ltx and the \def\document code, some irrelevant lines deleted here ...


1

You can simply define a new driver with the stripped back output \DeclareBibliographyDriver{#1}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/editor+others/translator+others}% \setunit{\labelnamepunct}\newblock \usebibmacro{title}% \newunit\newblock \usebibmacro{date}% \newunit\newblock ...


0

The solution I currently have is by calling \clearfield, \clearlist and \clearname for everything I find in my .bbl file except author, title, year, and doi. \AtEveryBibitem{% \clearfield{journal}% . . . \clearfield{pages}% }


4

A non-closed conditional is an issue; your input is fine so it's a bug in biblatex (or more specifically the BibTeX-support part). At present (April 2016) work is in an advanced stage for altering how the Biber/BibTeX split is handled and with the development version I don't see the problem. I'd therefore suggest 'wait for the maintenance team to update ...


0

Based on the comment by @samcarter and the answer in Trying to understand the renewbibmacro and DeclareFieldFormat construct I got the effect I desired by adding the following lines after \newrobustcmd: \setbeamercolor{bibliography entry author}{fg=black} \setbeamercolor{bibliography entry title}{fg=black} \setbeamercolor{bibliography entry note}{fg=black} ...


2

With biblatex 3.4/biber 2.5 (both current in DEV), there is a general "annotation" functionality to do things like this, for example: \documentclass{article} \usepackage{biblatex} \usepackage{filecontents} \begin{filecontents}{\jobname.bib} @MISC{test, AUTHOR = {Last1, First1 and Last2, First2 and Last3, First3}, AUTHOR+an = {2=highlight}, } ...


1

Just use the following redefinition of \supercite with just \bibopenbracket and \bibclosebracket sprinkled in. \DeclareCiteCommand{\supercite}[\mkbibsuperscript] {\bibopenbracket \usebibmacro{cite:init}% \let\multicitedelim=\supercitedelim \iffieldundef{prenote} {} {\BibliographyWarning{Ignoring prenote argument}}% ...


0

There is a more general way to handle this now in biblatex 3.4/biber 2.5 through data annotations since this is not an uncommon request and we need a way of allowing ad-hoc attachment of semantic information to pieces of data which doesn't require messing about with internals. Annotation in biblatexml is straighforward and done by XML attributes: ...


2

It is possible to inject commands into the name processing which are only used for certain keys + author counts. For the \textsuperscript it is not necessary but I'm inserting another one anyway as proof of concept. It is probably possible to store the info in the bib-file and one can certainly improve the interface: \documentclass{article} ...


2

I put in a save/restore for all such "bare" counters derived from the datamodel. This doesn't seem to impact anything as far as I can tell - all test docs generate identical output. The problem was larger than \theauthor as the default datamodel also generates \thetitle etc. DEV version 3.4 has this fix.


1

You only need \bibstring if you want to print a localisation string defined by \NewBibliographyString/\DefineBibliographyStrings/the .lbx files. Otherwise you can just insert the characters directly in a \DeclareFieldFormat directive. \DeclareFieldFormat{url}{<url{#1}>} or for slightly different brackets ...


0

i used cb2bib app, it's small, easy, multiplatform, support multilanguage, search for cite. http://www.molspaces.com/d_cb2bib-download.php if you used un latin language, open bib file with any editor like notepad or gedit, then write: Encoding : Cp1256 note: Cp1256 only for arabic, change this number for you language. regards



Top 50 recent answers are included