JabRef 5.6 #word#


I used JabRef 2.9 and jumped to JabRef 5.6. Wow, it not the save tool! Anyway, it remains one thing I cannot solve alone: I have many fields in my BiBTex file

field = #word#,

where the BiBTex strings is defined in a macro.bib file (called by the \bibliography LaTeX command). The problem is JabRef replaces (I do not test all the entries yet, but it seems to be ok with month, journal and conference)

school = #word#,


school = {#word#},

and of course the BiBTeX file is corrupted for bibtex. How can I solve this?

Many thanks,

Normal Syntax would be:

school = {word},

I would suggest to select all your entries and use èdit > find an replace (CTRL + R) to find {# and replace the characters with { and to find #} and replace with }

It is known that upgrading from such an old version to JabRef 5.x causes some problems and users need to work around it. For this reason, I would suggest to definitely start with a fresh configuration of JabRef (= do a reset of the configuration via options > preferences > ...) and create a backup of your library files before trying to use them with the newer JabRef version.

Would be delighted to know how you fared Jean-Yves :slight_smile:

Btw. using #word# can have its uses. This syntax makes use of a very specific JabRef feature called “string constants”. See The string editor - JabRef and https://docs.jabref.org/advanced/strings for how to use strings constants. Probably not what is needed here, though :slight_smile:

Edit: Or is this the feature you wanted to use? Sorry. If so, yes then JabRef replacing all the strings with something else is a challenge of course :confused:

Hi, my vocabulary was wrong: I was #string#. So

  1. I added “school” in Options/Preferences/File/“Resolve BiBTeX strings for the following fields”
  2. I can’t used find and replace because it’s not inside a field (I can’t remove { or }), so using regular expression with shell command I removed all {# and #} in my bib files
    and it works now.
1 Like