Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
FAQs on JabRef
A: JabRef automatically recognizes a change in the bib
file on disk and notifies the user of it. This is cool for network drives.
If you use version control, a few advices are given for a smoother sharing of a bib file.
In addition, we have many open issues dealing with collaboration.
A: You can either choose to use an SQL database or to share a bib file.
A: You are not obliged to cite JabRef, but we would greatly appreciate it if you do.
A: Yes it is. JabRef is distributed under the MIT License, which allows the following usage.
A: You can try resetting the settings. Depending on your operating system, you may need to pass the command line arguments -d all -n
to JabRef.
(E.g. in Windows this means jabref-X.Y.exe -d all -n
, where X.Y
means the version number of JabRef. If this does not help, run regedit
and delete the folder HKEY_CURRENT_USER\SOFTWARE\JavaSoft\Prefs\net\sf\jabref
. Be careful with regedit
, as you can easily corrupt the basic Windows configuration.)
A: Don't panic. No data should be damaged in your bib library. Since version 5.0 the columns in the main entry table are stored differently internally. You can reset the preferences by command line. See above.
A: We are collecting all publications we hear about at https://github.com/JabRef/jabref/wiki/JabRef-in-the-media.
A: Yes. In Options → Preferences → General set "Default Encoding" to UTF8 and select an alternative user interface language in "Language" if required.
A: In Options → Preferences → Advanced → “Remote operation” put a checkmark to “Listen for remote operation on port”. This option allows new instances of JabRef to detect the instance already running, and pass files to that instead of opening a new window. (Default option since JabRef 3.0).
A: In Library → New entry you can select the type of the identifier in the field "ID type" and enter the identifier in "ID". A click on "Generate" should create the correct entry. If this does not work, try a web search.
A: There are several reasons why JabRef cannot find your identifier online. (E.g. one reason could be that your DOI is not listed in the CrossRef database if you are using the CrossRef fetcher. Another reason could be that the search result for your DOI on DOI.org returns invalid BibTeX which is unable to be read by JabRef.) Try a web search instead.
A: To add this translator field to all entry types, you can use Options → Set up general fields and add a translator field under one of JabRef's general field tabs. To add this translator field to a specific entry type, edit the specific entry type(s) (Options → Customize entry types) and add a translator field under required fields or optional fields, as you like.
A: Open Options → Preferences. In the “File” panel, you will find an option called “Do not wrap the following fields when saving”. This option contains a semicolon-separated list of field names. Any field you add to this list will always be stored without introduction of line breaks.
A: Yes, you can use the parameter --importToOpen bibfile
of the command line.
A: You need to override the default file directory for this specific library. In File → Library properties you can override the Default file directory setting. There, you can either enter the path in General file directory (for it to be valid for all users of the file) or in User-specific file directory (for it to be valid for you only). If you simply enter “.” (a dot, without the quotes), the file directory will be the same as the .bib file directory. To place your files in a subdirectory called subdir, you can enter “./subdir” (without the quotes). Files will automatically be linked with relative paths if the files are placed in the default file directory or in a directory below it.
A: In File → Library properties you can choose a library specific directory in the field “General file directory”. If you want to set a directory only for you (so that other users should use the default directory), use the field “User-specific file directory”.
A: Use File → Export. As “Filter” choose “OpenOffice/LibreOffice CSV (*.csv)”.
A: Select the entries. Right click. Choose “Manage keywords”. There you can manage keywords appearing in all selected entries or in any selected entry. New keywords are added to all selected entries.
A: In Options → Manage external file types you can add arbitrary types.
A: JabRef offers a portable version of the application as a compressed file (.zip or .tar.gz) without an installer. Be sure to activate "Load and Save preferences from/to jabref.xml on start-up (memory stick mode)" in Options → Preferences → General.
A: Use curly braces to tell BibTeX to keep your author field as is: {European Commission}
. In BibLaTeX, you can use label = {EC}
to have EC05
as label for a publication of the European Commission in the year 2005.
A: Take a look at “Bibliographies and citations” at the UK List of TeX Frequently Asked Questions on the Web. For German readers, there is the dante e.V. FAQ.
A: Your JabRef library is already a file in Bib(La)TeX format. To export a specific subset of your library select the entries to be exported and then choose File → Export → Save Selected as plain BibTeX....
A: Upon compilation, LaTeX generates a file with the extension ".aux". This files contains the keys of the cited references (among other things). Using this AUX file, JabRef can extract the relevant entries. Choose the menu Tools → New sublibrary based on AUX file. Select the reference library (among the opened ones) and specify the AUX file.
A: In File → Library properties, you will find a section named "Save actions". After enabling this feature, you can choose which actions should be performed for each field upon saving. That should help you keep your library tidy.
A: Google scholar is blocking "automated" crawls which generate too much traffic in a short time. JabRef already uses a two-step approach (with the prefetched list before crawling the actual BibTeX data) to circumvent this. However, after too much crawls JabRef is being blocked. To solve this issue, see the section Traffic limitations in the Google Scholar help.
A: You have to start vim with the option --servername
(such as vim --servername MyVimServer
). If you get the Unknown option argument
message, it means your version of vim does not include the clientserver feature (you can check with vim --version
). In such a case, you have to install another version of vim
.
A: In JabRef 3.0 plugin support was removed, because the development team cannot keep up plugin support any more. Nevertheless, plugins can be integrated in JabRef. See issue #152 for the current status and discussion. Please contact the author of the respective plugin and ask him to port his plugin into JabRef's code.
A: JabRef does no longer support plugins (since version 3.0). Automatic file renaming is now part of the Quality → Cleanup entries feature. There you can rename attached files based on the BibTeX key. You can change the format (pattern) under Options → Preferences → Import, by altering the pattern under "Default PDF file link action".
A: Download the portable version (file JabRef-X.Y.portable_windows.zip
, JabRef-X.Y.portable_macos.tar.gz
, or JabRef-X.Y.portable_linux.tar.gz
) from https://builds.jabref.org/master/, uncompress it, and run the executable. We recomment a folder such as ~/home/JabRef
or c:\portable-apps\JabRef
to ensure that the portable version does not conflict with the latest release version installed from https://downloads.jabref.org.
In case you want to development version open when double clicking a .bib
file, install the development version and uncompress the portable version of the latest release to a folder.
A: Enter XYZ in the search field located at the upper left-hand corner of the preference window.
Yes, there is. See http://askubuntu.com/a/721387/196423 for details.
JabRef 5.x requires Java 13 (It is included in the native builds)
JabRef requires Java 8
Please follow the steps provided on our installation page. JabRef 4.x does not run under Java 9 or newer. See https://github.com/JabRef/jabref/issues/2594
You might see the error message Error: Could not find or load main class org.jabref.JabRefMain
. This means, you do not have JavaFX support activated in your Java runtime environment. This typically happens if you use OpenJDK, where one needs to setup OpenJFX separately.
You have several Java Virtual Machines installed, and under the command line the wrong one is chosen. Have a look at the previous question that tells you how to change the virtual machine used.
For Ubuntu you may also have a look at the Ubuntu page on Java.
As far as we know, JabRef is not yet running on these free JVMs, due of our dependencies. However, JabRef is reported to run nicely on the IcedTea runtime, which is based on the OpenJDK built with GNU Classpath to fill in missing classes. Some issues have been encountered with the look and feel (see issues #393 and #2003). Please let us know if newer versions give different results. If you have an idea or the expertise to make JabRef work under Classpath, let us know.
In the background, JabRef uses JavaFX. Applications using JavaFX can be scaled via java -Dglass.gtk.uiScale=1.5 -jar <application>.jar
. If you have installed JabRef via a package manager, you probably don't have a .jar
file but a binary file. In this case, you need to find your JabRef.cfg
in your installation folder (possibly located at /opt/JabRef/lib/app/JabRef.cfg
) and add in the section [JavaOptions]
the line -Dglass.gtk.uiScale=1.5
. Then, restart JabRef. Try finding a value that is suitable for you. On high resolution displays, values around 1.5
seem to be reasonable.
JabRef comes with a set of translations into different languages, currently: Chinese (simplified), Danish, Dutch, English, Farsi, French, German, Indonesian, Italian, Japanese, Norwegian, Persian, Portuguese (Brazil), Russian, Spanish, Swedish, Turkish and Vietnamese.
If the JabRef interface already exists in your language, you can help improve it. Otherwise, you can start translating JabRef into your own language.
For each language, there is the file JabRef_xx.properties
(xx
denotes the country code for the language). It contains all translations in a key/value format. In the JabRef source code tree, the property files reside in the /src/main/resources/l10n directory.
We use the service of Crowdin to keep our translations updated. It is a service directly running in the browser and one can quickly join and start translating. Please visit https://translate.jabref.org/ to get started.
Crowdin offers to quickly add a new language. Please contact us so that we add a new language.
Each entry is first given in English, then in the other language, with the two parts separated by an '=' character. For instance, a line can look like this in a German translation file:
Note that each space character is escaped (\
) to make it a valid property key. The translation value does not need any esacpes.
Some entries contain "variables" that are inserted at runtime by JabRef - this can for instance be a file name or a file type name:
A variable is denoted by %0
, %1
, %2
etc. In such entries, simply repeat the same notation in the translated version.
As we can see, there are several "special" characters: the percent sign and the equals sign, along with the colon character. If these characters are to be part of the actual text in an entry, they must be escaped in the English version, as with the colon in the following example:
The character encoding should be UTF-8. Please avoid Unicode escaping such as \u2302
.
To test your translation you must be able to compile the source tree after making your additions. This requires you to install the Java Development Kit. Ensure that you use the most recent version.
Crowdin allows for downloading the current translation file:
Place the downloaded file in the path src/main/resources/l10n
. Then, execute gradlew run
in the root directory and JabRef should start.
For testing a crowdin-contributed translation without having to compile JabRef, one has to wait until the translation is incorporated into the current source code of JabRef.
For a new language to be available within JabRef, a corresponding line must be added in the Java class GUIGlobals (found in the directory /src/main/java/org/jabref/logic/l10n/Languages.java
in the JabRef source code tree). The line is inserted in the static {}
section where the map LANGUAGES
is populated. The code must of course be recompiled after this modification.
Sometimes, one has a BibTeX entry with abbreviated short names:
Now, one wants to have the full first names. In case, there is a DOI available, this is as simple as the following steps:
Determine the DOI: Switch to the "General" tab and click on "Look up DOI"
Fetch BibTeX data from the DOI: Click on "Get BibTeX data from DOI"
A popup appears. Select which data you want to merge into the eixting entry
Now the first names are expaned:
We are really happy that you are interested in contributing to JabRef. Please take your time to look around here. We especially invite you to look into our community members page where members introduce themselves.
Please use the "Edit on GitHub" link at the upper right corner. Then, follow GitHub's guide to edit files in other user's repository.
We encourage you to read about translating the JabRef user interface.
JabRef improves -- and Wikipedia pages should keep up!
Simply click on "Edit" (top right-hand tab).
Currently existing pages are:
Deutsch: https://de.wikipedia.org/wiki/JabRef
English: https://en.wikipedia.org/wiki/JabRef
Español: https://es.wikipedia.org/wiki/JabRef
Français: https://fr.wikipedia.org/wiki/JabRef
Italiano: https://it.wikipedia.org/wiki/JabRef
Русский: https://ru.wikipedia.org/wiki/JabRef
Portuguese: https://pt.wikipedia.org/wiki/JabRef
Svenska: https://sv.wikipedia.org/wiki/JabRef
Українська: https://uk.wikipedia.org/wiki/JabRef
If there is no page for you own language, you can easily create one.
Donations keeps us going! You can use Paypal, Flattr, or bank transfers. Your institution/company can contribute too, through bank transfer for example. All details are provided at https://donations.jabref.org.
Our team consists of volunteers. To provide better support, we are currently trying to get a funded developer on board. Please consider donating money!
Please head to https://devdocs.jabref.org/code-quality to learn about our current efforts to measure and improve code quality.
We collect small issues at https://github.com/JabRef/jabref/labels/good%20first%20issue. In case you do not find something suitable, you are invited to get in touch with us. Comment at the issue, check the the forum or join our chatting channel. For the brave, we also collect issues at https://github.com/koppor/jabref/labels/good%20first%20issue.
After finding something, please check our CONTRIBUTING.md for detailed information and further links.
Look at the discussions in our forum at https://discourse.jabref.org/c/features/6. Find an interesting topic, discuss it and start contributing.
You can talk to the core developers of JabRef in the gitter chat.
You have to change the "compatibility settings" for JabRef to "Disable scaling for high DPI settings". Further information is available at https://www.microsoft.com/surface/en-us/support/apps-and-windows-store/app-display-issues?os=windows-10
Further reading: https://github.com/JabRef/jabref/issues/415 and http://discourse.jabref.org/t/jabref-3-6-on-hires-laptop-screen-messed-up/277.
You can directly use the references in Word's internal reference manager. Short explanation: Export your bibliography in XML format and replace the Sources.xml in %APPDATA%\Roaming\Microsoft\Bibliography
. Long explanation: see Using JabRef references in Word document. See https://www.youtube.com/watch?v=2PpLZTol9_o vor a video explaning the usage.
Another option is to use Bibtex4Word. See https://www.youtube.com/watch?v=9j3g4wfdM00 for a video explaining the usage.
The last option is to use Docear4Word, which is planned to be ported to JabRef (see JabRef4Word).
Use AutoHotkey and JabRef.ahk provided at koppor's autohotkey scripts.
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5.
Start regedit and create the following key: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Prefs
. [source]
A: Currently this is necessary, since our code signing infrastructure is not operational. Ctrl-click
to open the downloaded .dmg
file in Finder to install JabRef.
A: On Mac OS X Lion, it is possible to resolve it by temporarily changing the Gate Keeper security settings under “Security&Privacy” in the system preferences to “Anywhere”. After that you can open the JabRef app. When you have opened it once, you can change the security settings back and you'll still be able to open the app.
A: We were not able to generate a working version of JabRef 2.11 for Mac OS X. Please use the jar of version 2.11, or look at the newer 3.X versions (which fully supports Mac OS X again).
A: Due to the change of the installer for 3.x it is required to perform a clean install of any JabRef 3.x version. You are required to remove any previously installed JabRef 2.x application from the "Applications" folder. Then you can install the latest JabRef 3.x version with the installer. As soon you are running on any JabRef 3.x version, you can use the installer to upgrade JabRef.
A: To override that, Ctrl + Click instead, and choose "open", which gives the same warning but the possibility to override it. then you can install.
A: The problem occurs because you do not have Java 8 installed, and the automatic download and installation is somehow failing... It can be downloaded here manually: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html.
A: This is a problem some users experience in JabRef 4.0 or later on MacOS Sierra. It seems this is a bug in the networking part of Java on MacOS. You can try to add localhost explicitly to /etc/hosts
as described here.
A: This might be a problem related to the font you are using. You can download some other font that supports mathematical alphanumeric symbols, for example, FreeSerif or Cambria Math. A list of fonts supporting Math Unicode blocks is available at http://www.fileformat.info/info/unicode/block/mathematical_alphanumeric_symbols/fontsupport.htm.
Due to the large number of issues with OS X, here is a step by step tutorial how to ensure that you can build and run JabRef under OS X. Since we are at the moment not able to provide a correctly signed and working dmg
that includes the Java Runtime Environment, this guide how you can ensure your Java environment under OS X is correctly set up.
With a correct Java set up, you can either simply run the JabRef.jar
files we provide or you can build your own JabRef from source. For running the JabRef jar
, you only need a Java Runtime Environment (JRE), but since the Java Development Environment (JDK) will contain the correct JRE, we will only show you how to install the JDK. With the JDK, that contains the java compiler javac
, you can build JabRef from sources.
We advise using Oracle Java 1.8.0_161 for JabRef 4.x on OS X. It is available at http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html.
A quick Java check can be done in the terminal. Open Applications -> Utilities -> Terminal.app and type java -version
. Your output should look like this
If you see an error or if you have a different version, you need to install the correct one. This can be done by navigating to the Oracle Download page and scrolling down to the section where you see Java SE 8u161/ 8u162. Click on the button that is labelled "JDK Download". On the next page, make sure you have clicked on the checkbox Accept License Agreement and download the macOS dmg file. After downloading, open it and after it was verified double click again on the installer.
After the installation is finished, you should see the correct version in the Terminal. You probably have to close and re-open the Terminal to apply the changes. If you still see the wrong version, most likely a newer version than 1.8.0_161
, then your system uses the newer version per default, although the correct 1.8.0_161
version is installed.
Assuming you have a working Java installation, you can run JabRef directly from command line. Head over to the JabRef development builds download and download JabRef--master--latest.jar
. The downloads are usually stored in your home directory under Downloads
. In the terminal, you have to change directoy to this folder by typing
The ~
stands for your home directory. Once done, you can use
The advantage of running it from a terminal is that you see log-messages directly in the terminal window. Additionally, you can directly specify which JRE you want to use. With several different Java versions, you need to ensure you are using the correct one. When running JabRef from the terminal, you can always specify the full path of the java
you want to use like it was shown above. The JDK's you have installed should be located under the path
Therefore, on my machine, I can use a specific Java version by running the command
Easier than looking up the full path of the JDK is using the command /usr/libexec/java_home
which helps you to show installed Java versions and run a command on a particular one. You can see all your installed JDK's and the one that is currently selected as default by providing the option -V
like this
You can use this tool to directly start JabRef with the desired version by using
JabRef.jar
by clicking on JabRef.jar
Most users might want to start JabRef by placing the JabRef.jar
on the desktop and double-clicking it. This is only possible if the system-wide Java version is correct.
To check which version of Java your system uses, you can open the System Preferences and click the Java
button at the bottom. If you don't see the Java
button, you can jump directly to "Installing correct Java version".
When you pressed the Java button, a new window will pop up that has several tabs. Select the tab with the name Java
and click the button View
. This will open a window that shows your current Java version
If you see a different version than 1.8.0_161
then JabRef might crash when you simply double-click it.
Here is a quick start guide of how to improve the help page.
Our help pages are hosted at GitBook with an integration to GitHub., which provides version control based on git. In order to edit or create a JabRef help page you need a GitHub account. You can sign up here for free.
If you already have an account, please make sure that you are signed in.
The easiest way to fix small errors or to add additional information is to edit a JabRef help page directly in your browser:
At the top of each help page you can find the GitHub icon. Just click here to show the source of the page.
This leads you to GitHub:
To actually edit the page click on the pencil icon which is highlighted above.
The window to edit the page at GitHub looks like this:
Most text can be simply added in this field as plain text. However, you can style your contribution by using markdown. Markdown is a rather easy way to format text without the need for complex markup as for example in HTML.
You can find an introduction to markdown here or here.
In order to check your changes hit the "Preview Changes" tab:
To save the changes you have to create a so called "Commit" by scrolling down and hitting the button "Propose File Change":
Please note: The message you provide here will be visible in the history of the help page, so please think a second to provide a meaningful description of your changes.
As a last step you have to submit the changes you have made back to us:
Just hit the button "Create Pull Request" and confirm the creation on the next page which is opened by hitting "Create Pull Request".
That's it! We'll review your changes and publish them at docs.jabref.org.
To edit more than one file at a time, to add screenshots, and for other more advanced changes we recommend to checkout this repository locally and to create a PR of your changes using the standard git and GitHub workflow.
The best way to enter tables is to use this Table generator for Markdown. It has the nice feature to generate markdown tables from different sources, e.g. you can directly copy the table from a spreadsheet or upload a csv files. Just copy and paste the generated markdown.