JabRef
v4
v4
  • JabRef Bibliography Management
  • General information about JabRef
    • Entry Editor
    • Best Practices
    • Command line use and options
    • Automatic Backup (.sav and .bak) and Autosave
    • Remote operation
    • Installation
  • About BibTeX and its fields
    • URL and DOI links in JabRef
    • File links in JabRef
    • Links to other entries
    • The 'owner' field
    • Time stamped fileds
    • Journal abbreviations
    • Special Fields
    • Set/clear/rename fields
    • Field content selector
    • Strings
  • Finding, Sorting, and Cleaning Entries
    • Searching within the library
    • Searching externally using Online Services
      • ACM Portal
      • arXiv
      • CiteSeerX
      • DBLP
      • DOAJ
      • Google Scholar
      • GVK
      • IEEEXplore
      • INSPIRE-HEP
      • MathSciNet
      • MEDLINE
      • SAO/NASA Astrophysics Data System
      • Springer
      • Unpaywall
      • zbMATH
    • Searching externally using Publication Identifiers
      • DiVA
      • DOI -- Digital Object Identifier
      • IACR eprint IDs
      • ISBN number
      • Medline
      • RFC document
      • SAO/NASA Astrophysics Data System
      • Title of the paper
    • Add unlinked PDFs including BibTeX data into the database
    • Synchronize file links
    • Cleanup entries
    • Save actions
    • Check integrity
    • Get BibTeX data from DOI
    • Find duplicates
    • Merge entries
    • Groups
    • Replace string
  • Import and Export
    • Import
      • JabRef Browser Extension
      • Custom import filters
      • Import from Microsoft Word -- MS Office Bibliography XML format
      • Import inspection window
      • New subdatabase based on AUX file
      • New entry from plain text
    • Export
      • Custom export filters
      • EndNote Export Filter
      • Export to an External SQL Database
      • Export to Microsoft Word -- MS Office Bibliography XML format
    • Other integrations
      • LaTeX Citations Tab
      • OpenOffice/LibreOffice integration
      • Pushing to external editor application
      • XMP metadata support in JabRef
    • Knowledge
      • Comparison of the Medline (txt), Medline (XML), and RIS format
  • Collaborative Work
    • Sharing a Bib(La)TeX Database
    • Shared SQL Database
    • Migration of pre-3.6 SQL databases into a shared SQL database
  • Configuration of JabRef
    • Customize the BibTeX key generator
    • Customize entry types
    • Customize general fields
    • Customize key bindings
    • Database properties window
    • Entry preview setup
    • Manage external file types
    • Manage protected terms
    • The string editor
  • Frequently Asked Questions and Howtos
    • General FAQs
    • Contributing
    • Sharing
    • How Tos
      • How to expand first names of a BibTeX entry
      • How to Improve the Help Page
      • How to translate the JabRef User Interface
    • FAQs on Operating Systems
      • Linux
      • Mac OS X
      • Windows
Powered by GitBook
On this page
  • Key patterns
  • Default key pattern
  • Special field markers
  • Modifiers
  • Regular expression replace
  • How to configure

Was this helpful?

Edit on GitHub
Export as PDF
  1. Configuration of JabRef

Customize the BibTeX key generator

Some of the key patterns shown below were added at JabRef 5.0

The pattern used in the auto generation of BibTeX labels can be set for each of the standard entry types in Options → Preferences, tab BibTeX key generator. Additionally, if you right click the tab of a database, the menu BibTeX key patterns allows to set specific key patterns for this database.

Key patterns

The key pattern can contain any text you wish, in addition to field markers that indicate that a specific field of the entry should be inserted at that position of the key. A field marker generally consists of the field name enclosed in square braces, e.g. [volume]. If the field is undefined in an entry at the time of key generation, no text will be inserted by the field marker.

Default key pattern

If you have not defined a key pattern for a certain entry type, the Default pattern will be used. You can change the default pattern - its setting is above the list of entry types in the BibTeX key generator section of the Preferences dialog.

The default key pattern is [auth][year], and this could produce keys like e.g. Yared1998 If the key is not unique in the current database, it is made unique by adding one of the letters a-z until a unique key is found. Thus, the labels might look like:

Yared1998 Yared1998a Yared1998b

Special field markers

Several special field markers are offered, which extract only a specific part of a field. Feel free to suggest new special field markers.

Author-related key patterns

  • [auth]: The last name of the first author

  • [authors]: The last name of all authors

  • [authorLast]: The last name of the last author

  • [authorsN]: The last name of up to N authors. If there are more authors, “EtAl” is appended.

  • [authorsAlpha]: Corresponds to the BibTeX style “alpha”. One author: First three letters of the last name. Two to four authors: First letters of last names concatenated. More than four authors: First letters of last names of first three authors concatenated. “+” at the end.

  • [authIniN]: The beginning of each author's last name, using no more than N characters.

  • [authorIni]: The first 5 characters of the first author's last name, and the last name initials of the remaining authors.

  • [authN]: The first N characters of the first author's last name

  • [authN_M]: The first N characters of the Mth author's last name

  • [auth.auth.ea]: The last name of the first two authors, and “.ea” if there are more than two.

  • [auth.etal]: The last name of the first author, and the last name of the second author if there are two authors or “.etal” if there are more than two.

  • [authEtAl]: The last name of the first author, and the last name of the second author if there are two authors or “EtAl” if there are more than two. This is similar to auth.etal. The difference is that the authors are not separated by “.” and in case of more than 2 authors “EtAl” instead of “.etal” is appended.

  • [authshort]: The last name if one author is given; the first character of up to three authors' last names if more than one author is given. A plus character is added, if there are more than three authors.

  • [authForeIni]: The forename initial of the first author.

  • [authorLastForeIni]: The forename initial of the last author.

Note: If there is no author (as in the case of an edited book), then all of the above [auth...] markers will use the editor(s) (if any) as a fallback. Thus, the editor(s) of a book with no author will be treated as the author(s) for label-generation purposes. If you do not want this behaviour, i.e. you require a marker which expands to nothing if there is no author, use pureauth instead of auth in the above codes. For example, [pureauth], or [pureauthors3].

Editor-related key patterns

  • [edtr]: The last name of the first editor

  • [edtrIniN]: The beginning of each editor's last name, using no more than N characters

  • [editors]: The last name of all editors

  • [editorLast]: The last name of the last editor

  • [editorIni]: The first 5 characters of the first editor's last name, and the last name initials of the remaining editors.

  • [edtrN]: The first N characters of the first editor's last name

  • [edtrN_M]: The first N characters of the Mth editor's last name

  • [edtr.edtr.ea]: The last name of the first two editors, and “.ea” if there are more than two.

  • [edtrshort]: The last name if one editor is given; the first character of up to three editors' last names if more than one editor is given. A plus character is added, if there are more than three editors.

  • [edtrForeIni]: The forename initial of the first editor.

  • [editorLastForeIni]: The forename initial of the last editor.

Title-related key patterns

  • [shorttitle]: The first 3 words of the title, ignoring any function words (see below). For example, An awesome paper on JabRef becomes AwesomePaperJabref.

  • [veryshorttitle]: The first word of the title, ignoring any function words (see below). For example, An awesome paper on JabRef becomes Awesome.

  • [camel]: Capitalize and concatenate all the words of the title. For example, An awesome paper on JabRef becomes AnAwesomePaperOnJabref.

  • [title]: Capitalize all the significant words of the title, and concatenate them. For example, An awesome paper on JabRef becomes AnAwesomePaperonJabref.

Other key patterns

  • [firstpage]: The number of the first page of the publication (Caution: this will return the lowest number found in the pages field, since BibTeX allows 7,41,73--97 or 43+.)

  • [pageprefix]: The non-digit prefix of pages (like "L" for L7) or "" if no non-digit prefix exists (like "" for 7,41,73--97) .

  • [keywordN]: Keyword number N from the “keywords” field, assuming keywords are separated by commas or semicolons.

  • [lastpage]: The number of the last page of the publication (See the remark on firstpage)

  • [shortyear]: The last 2 digits of the publication year

Modifiers

A field name (or one of the above pseudo-field names) may optionally be followed by one or more modifiers.

Generally, modifiers are applied in the order they are specified. In the following, we present a list of the most common modifiers alongside a short explanation:

  • :abbr: Abbreviates the text produced by the field name or special field marker. Only the first character and subsequent characters following white space will be included. For example:

    • [journal:abbr] would from the journal name “Journal of Fish Biology” produce “JoFB”.

    • [title:abbr] would from the title “An awesome paper on JabRef” produce “AAPoJ”.

    • [camel:abbr] would from the title “An awesome paper on JabRef” produce “AAPOJ”.

  • :lower: Forces the text inserted by the field marker to be in lowercase. For example, [auth:lower] expands the last name of the first author in lowercase.

  • :upper: Forces the text inserted by the field marker to be in uppercase. For example, [auth:upper] expands the last name of the first author in uppercase.

  • :capitalize: Changes the first character of each word to uppercase, all other characters are converted to lowercase. For example, an example title will be converted to An Example Title

  • :titlecase: Changes the first character of all normal words to uppercase, all function words (see above) are converted to lowercase. Example: example title with An function Word will be converted to Example Title with an Function Word

  • :sentencecase: Changes the first character of the first word to uppercase, all remaining words are converted to lowercase. Example: an Example Title will be converted to An example title

  • :(x): The string between the parentheses will be inserted if the field marker preceding this modifier resolves to an empty value. The placeholder x may be any string. For instance, the marker [volume:(unknown)] will return the entry's volume if set, and the string unknown if the entry's volume field is not set.

Regular expression replace

After the key pattern has been applied to produce a key, you can choose to have the key generator search for occurrences of a specific regular expression, and replace it with a string. The regular expression and replacement string are entered in the text fields below the list of key patterns. If the replacement string is empty, matches of the regular expression will simply be removed from the generated key. For instance, \p{Punct} or [:/%] can be replaced by nothing to remove unwanted characters from the key. This may be useful when naming PDFs according to BibTeX keys.

How to configure

To change the pattern to [authors]:[camel], execute the following steps:

  1. Open the preferences

  2. Navigate to "General"

  3. Untick "Enforce legal characters in BibTeX keys". Note that this is only necessary if you wish to have colons be present in the generated key.

  4. Navigate to "BibTeX key generator"

  5. Change the default pattern to [authors]:[camel].

  6. Press "OK"

Or, if you are using JabRef 5: 6. Press "enter" (forgetting to do this is a leading cause of puzzlement) 7. Click "Save"

PreviousConfiguration of JabRefNextCustomize entry types

Last updated 3 years ago

Was this helpful?

JabRef considers the following words to be : "a", "an", "the", "above", "about", "across", "against", "along", "among", "around", "at", "before", "behind", "below", "beneath", "beside", "between", "beyond", "by", "down", "during", "except", "for", "from", "in", "inside", "into", "like", "near", "of", "off", "on", "onto", "since", "to", "toward", "through", "under", "until", "up", "upon", "with", "within", "without", "and", "but", "for", "nor", "or", "so", "yet".

The modifiers can be divided into the categories converters (such as for converting from HTML to LaTeX), case changers (such as for conversion to lower case), and others. for a comprehensive list of available modifiers.

function words
Click here
BibTeX key generator preferences
BibTeX key generator preferences - authors camel
Options Preferences
General preferences
General preferences - unticked