Imported Upstream version 2.9+ds upstream/2.9+ds
authorgregor herrmann <gregoa@debian.org>
Fri, 14 Dec 2012 16:34:21 +0000 (17:34 +0100)
committergregor herrmann <gregoa@debian.org>
Fri, 14 Dec 2012 16:34:21 +0000 (17:34 +0100)
74 files changed:
.idea/.name [deleted file]
.idea/ant.xml [deleted file]
.idea/compiler.xml [deleted file]
.idea/copyright/profiles_settings.xml [deleted file]
.idea/encodings.xml [deleted file]
.idea/libraries/jersey.xml [deleted file]
.idea/libraries/lib.xml [deleted file]
.idea/libraries/oo.xml [deleted file]
.idea/libraries/plugin.xml [deleted file]
.idea/libraries/sciplore.xml [deleted file]
.idea/misc.xml [deleted file]
.idea/modules.xml [deleted file]
.idea/scopes/scope_settings.xml [deleted file]
.idea/uiDesigner.xml [deleted file]
.idea/vcs.xml [deleted file]
.idea/workspace.xml [deleted file]
JabRef - MrDlib.userlibraries [new file with mode: 0644]
Jabref.eml [new file with mode: 0644]
build.gradle [new file with mode: 0644]
build.number
build.xml
buildlib/jalopy-1.0b10.jar [new file with mode: 0644]
buildlib/jalopy-ant-0.6.1.jar [new file with mode: 0644]
buildlib/junit.jar [new file with mode: 0644]
buildlib/licenses.txt [new file with mode: 0644]
combineJournalLists.py [new file with mode: 0644]
deploy [new file with mode: 0644]
src/Jabref.iml [deleted file]
src/help/LabelPatterns.html
src/help/RevisionHistory.html~ [deleted file]
src/help/SearchHelp.html
src/help/fr/ACMPortalHelp.html
src/help/fr/CiteSeerHelp.html
src/help/fr/Contents.html
src/help/fr/DiVAtoBibTeXHelp.html [new file with mode: 0644]
src/help/fr/LabelPatterns.html
src/help/fr/RevisionHistory.html
src/help/fr/SearchHelp.html
src/help/fr/SpecialFieldsHelp.html
src/images/reference_list.xcf [deleted file]
src/images/splash.png
src/java/net/sf/jabref/TableColumnsTab.java
src/java/net/sf/jabref/export/SaveDatabaseAction.java~ [deleted file]
src/java/net/sf/jabref/gui/CleanUpAction.java
src/java/net/sf/jabref/imports/ACMPortalFetcher.java
src/java/net/sf/jabref/imports/CaseKeeper.java
src/java/net/sf/jabref/imports/CaseKeeperList.java
src/java/net/sf/jabref/imports/DOItoBibTeXFetcher.java
src/java/net/sf/jabref/imports/GoogleScholarFetcher.java
src/java/net/sf/jabref/imports/HTMLConverter.java
src/java/net/sf/jabref/imports/IEEEXploreFetcher.java
src/java/net/sf/jabref/imports/fetcher/ISBNtoBibTeXFetcher.java
src/java/net/sf/jabref/oo/AlphanumericComparator.java
src/java/net/sf/jabref/wizard/auximport/AuxSubGenerator.java
src/resource/JabRef_da.properties
src/resource/JabRef_de.properties
src/resource/JabRef_en.properties
src/resource/JabRef_fr.properties
src/resource/JabRef_in.properties
src/resource/JabRef_it.properties
src/resource/JabRef_ja.properties
src/resource/JabRef_nl.properties
src/resource/JabRef_no.properties
src/resource/JabRef_pt_BR.properties
src/resource/JabRef_pt_BR.properties~ [deleted file]
src/resource/JabRef_tr.properties
src/resource/JabRef_vi.properties
src/resource/JabRef_zh.properties
src/resource/Menu_de.properties
src/resource/build.properties
src/resource/project.ppf [deleted file]
src/txt/CHANGELOG
src/txt/README
syncLang.py [new file with mode: 0644]

diff --git a/.idea/.name b/.idea/.name
deleted file mode 100644 (file)
index 0fb0660..0000000
+++ /dev/null
@@ -1 +0,0 @@
-JabRef
\ No newline at end of file
diff --git a/.idea/ant.xml b/.idea/ant.xml
deleted file mode 100644 (file)
index 4674eea..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="AntConfiguration">
-    <defaultAnt bundledAnt="true" />
-    <buildFile url="file://$PROJECT_DIR$/build.xml">
-      <additionalClassPath />
-      <antReference projectDefault="true" />
-      <customJdkName value="" />
-      <maximumHeapSize value="128" />
-      <maximumStackSize value="2" />
-      <properties />
-    </buildFile>
-  </component>
-</project>
-
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
deleted file mode 100644 (file)
index a1b41c5..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="CompilerConfiguration">
-    <option name="DEFAULT_COMPILER" value="Javac" />
-    <resourceExtensions />
-    <wildcardResourcePatterns>
-      <entry name="?*.properties" />
-      <entry name="?*.xml" />
-      <entry name="?*.gif" />
-      <entry name="?*.png" />
-      <entry name="?*.jpeg" />
-      <entry name="?*.jpg" />
-      <entry name="?*.html" />
-      <entry name="?*.dtd" />
-      <entry name="?*.tld" />
-      <entry name="?*.ftl" />
-    </wildcardResourcePatterns>
-    <annotationProcessing enabled="false" useClasspath="true" />
-  </component>
-</project>
-
diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml
deleted file mode 100644 (file)
index 3572571..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<component name="CopyrightManager">
-  <settings default="">
-    <module2copyright />
-  </settings>
-</component>
\ No newline at end of file
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
deleted file mode 100644 (file)
index e206d70..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" />
-</project>
-
diff --git a/.idea/libraries/jersey.xml b/.idea/libraries/jersey.xml
deleted file mode 100644 (file)
index a86f467..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-<component name="libraryTable">
-  <library name="jersey">
-    <CLASSES>
-      <root url="jar://$PROJECT_DIR$/lib/spl/jersey/jersey-multipart-1.1.5.1.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/spl/jersey/jersey-core-1.1.5.1.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/spl/jersey/mimepull-1.3.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/spl/jersey/jersey-client-1.1.5.1.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/spl/jersey/jsr311-api-1.1.1.jar!/" />
-    </CLASSES>
-    <JAVADOC />
-    <SOURCES />
-  </library>
-</component>
\ No newline at end of file
diff --git a/.idea/libraries/lib.xml b/.idea/libraries/lib.xml
deleted file mode 100644 (file)
index ffb7135..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-<component name="libraryTable">
-  <library name="lib">
-    <CLASSES>
-      <root url="jar://$PROJECT_DIR$/lib/mysql-connector-java-5.0.7-bin.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/spin.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/microba.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/antlr.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/glazedlists-1.8.0_java15.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/antlr-3.4-complete.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/fontbox-1.7.1.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/jgoodies-common-1.4.0.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/jgoodies-forms-1.6.0.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/jgoodies-looks-2.5.2.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/pdfbox-1.7.1.jar!/" />
-    </CLASSES>
-    <JAVADOC />
-    <SOURCES />
-  </library>
-</component>
\ No newline at end of file
diff --git a/.idea/libraries/oo.xml b/.idea/libraries/oo.xml
deleted file mode 100644 (file)
index ae80dd4..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<component name="libraryTable">
-  <library name="oo">
-    <CLASSES>
-      <root url="jar://$PROJECT_DIR$/lib/oo/unoil.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/oo/juh.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/oo/jurt.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/oo/ridl.jar!/" />
-    </CLASSES>
-    <JAVADOC />
-    <SOURCES />
-  </library>
-</component>
\ No newline at end of file
diff --git a/.idea/libraries/plugin.xml b/.idea/libraries/plugin.xml
deleted file mode 100644 (file)
index 529a8de..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<component name="libraryTable">
-  <library name="plugin">
-    <CLASSES>
-      <root url="jar://$PROJECT_DIR$/lib/plugin/JPFCodeGenerator-rt.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/plugin/jpf-boot.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/plugin/commons-logging.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/plugin/jpf.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/plugin/velocity-dep-1.5.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/plugin/JPFCodeGenerator.jar!/" />
-    </CLASSES>
-    <JAVADOC />
-    <SOURCES />
-  </library>
-</component>
\ No newline at end of file
diff --git a/.idea/libraries/sciplore.xml b/.idea/libraries/sciplore.xml
deleted file mode 100644 (file)
index 0c9b450..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<component name="libraryTable">
-  <library name="sciplore">
-    <CLASSES>
-      <root url="jar://$PROJECT_DIR$/lib/spl/sciplore/mrDlib-serialization-api.jar!/" />
-      <root url="jar://$PROJECT_DIR$/lib/spl/sciplore/xstream-1.4.1.jar!/" />
-    </CLASSES>
-    <JAVADOC />
-    <SOURCES />
-  </library>
-</component>
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
deleted file mode 100644 (file)
index b1fa7e1..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="EntryPointsManager">
-    <entry_points version="2.0" />
-  </component>
-  <component name="JavadocGenerationManager">
-    <option name="OUTPUT_DIRECTORY" />
-    <option name="OPTION_SCOPE" value="protected" />
-    <option name="OPTION_HIERARCHY" value="true" />
-    <option name="OPTION_NAVIGATOR" value="true" />
-    <option name="OPTION_INDEX" value="true" />
-    <option name="OPTION_SEPARATE_INDEX" value="true" />
-    <option name="OPTION_DOCUMENT_TAG_USE" value="false" />
-    <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
-    <option name="OPTION_DOCUMENT_TAG_VERSION" value="false" />
-    <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" />
-    <option name="OPTION_DEPRECATED_LIST" value="true" />
-    <option name="OTHER_OPTIONS" value="" />
-    <option name="HEAP_SIZE" />
-    <option name="LOCALE" />
-    <option name="OPEN_IN_BROWSER" value="true" />
-  </component>
-  <component name="ProjectResources">
-    <default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype>
-  </component>
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_5" assert-keyword="true" jdk-15="true" project-jdk-name="1.7" project-jdk-type="JavaSDK">
-    <output url="file://$PROJECT_DIR$/out" />
-  </component>
-</project>
-
diff --git a/.idea/modules.xml b/.idea/modules.xml
deleted file mode 100644 (file)
index 603f0d9..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="ProjectModuleManager">
-    <modules>
-      <module fileurl="file://$PROJECT_DIR$/src/Jabref.iml" filepath="$PROJECT_DIR$/src/Jabref.iml" />
-    </modules>
-  </component>
-</project>
-
diff --git a/.idea/scopes/scope_settings.xml b/.idea/scopes/scope_settings.xml
deleted file mode 100644 (file)
index 922003b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<component name="DependencyValidationManager">
-  <state>
-    <option name="SKIP_IMPORT_STATEMENTS" value="false" />
-  </state>
-</component>
\ No newline at end of file
diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml
deleted file mode 100644 (file)
index 3b00020..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="Palette2">
-    <group name="Swing">
-      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
-        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
-      </item>
-      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
-        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
-      </item>
-      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
-        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
-      </item>
-      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
-        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
-      </item>
-      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
-        <initial-values>
-          <property name="text" value="Button" />
-        </initial-values>
-      </item>
-      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
-        <initial-values>
-          <property name="text" value="RadioButton" />
-        </initial-values>
-      </item>
-      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
-        <initial-values>
-          <property name="text" value="CheckBox" />
-        </initial-values>
-      </item>
-      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
-        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
-        <initial-values>
-          <property name="text" value="Label" />
-        </initial-values>
-      </item>
-      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
-          <preferred-size width="150" height="-1" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
-          <preferred-size width="150" height="-1" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
-          <preferred-size width="150" height="-1" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
-        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
-      </item>
-      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
-          <preferred-size width="200" height="200" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
-        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
-          <preferred-size width="200" height="200" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
-      </item>
-      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
-      </item>
-      <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
-      </item>
-      <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
-      </item>
-      <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
-          <preferred-size width="-1" height="20" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
-        <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
-      </item>
-      <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
-        <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
-      </item>
-    </group>
-  </component>
-</project>
-
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
deleted file mode 100644 (file)
index 2e0588c..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="VcsDirectoryMappings">
-    <mapping directory="" vcs="" />
-    <mapping directory="$PROJECT_DIR$/.." vcs="Git" />
-  </component>
-</project>
-
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
deleted file mode 100644 (file)
index 31026f0..0000000
+++ /dev/null
@@ -1,779 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="ChangeListManager">
-    <list default="true" id="110fad89-c760-4067-8a03-8bd14c0eb411" name="Default" comment="" />
-    <ignored path="JabRef.iws" />
-    <ignored path=".idea/workspace.xml" />
-    <option name="TRACKING_ENABLED" value="true" />
-    <option name="SHOW_DIALOG" value="false" />
-    <option name="HIGHLIGHT_CONFLICTS" value="true" />
-    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
-    <option name="LAST_RESOLUTION" value="IGNORE" />
-  </component>
-  <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
-  <component name="CreatePatchCommitExecutor">
-    <option name="PATCH_PATH" value="" />
-  </component>
-  <component name="DaemonCodeAnalyzer">
-    <disable_hints />
-  </component>
-  <component name="DebuggerManager">
-    <breakpoint_any>
-      <breakpoint>
-        <option name="NOTIFY_CAUGHT" value="true" />
-        <option name="NOTIFY_UNCAUGHT" value="true" />
-        <option name="ENABLED" value="false" />
-        <option name="LOG_ENABLED" value="false" />
-        <option name="LOG_EXPRESSION_ENABLED" value="false" />
-        <option name="SUSPEND_POLICY" value="SuspendAll" />
-        <option name="COUNT_FILTER_ENABLED" value="false" />
-        <option name="COUNT_FILTER" value="0" />
-        <option name="CONDITION_ENABLED" value="false" />
-        <option name="CLASS_FILTERS_ENABLED" value="false" />
-        <option name="INSTANCE_FILTERS_ENABLED" value="false" />
-        <option name="CONDITION" value="" />
-        <option name="LOG_MESSAGE" value="" />
-      </breakpoint>
-      <breakpoint>
-        <option name="NOTIFY_CAUGHT" value="true" />
-        <option name="NOTIFY_UNCAUGHT" value="true" />
-        <option name="ENABLED" value="false" />
-        <option name="LOG_ENABLED" value="false" />
-        <option name="LOG_EXPRESSION_ENABLED" value="false" />
-        <option name="SUSPEND_POLICY" value="SuspendAll" />
-        <option name="COUNT_FILTER_ENABLED" value="false" />
-        <option name="COUNT_FILTER" value="0" />
-        <option name="CONDITION_ENABLED" value="false" />
-        <option name="CLASS_FILTERS_ENABLED" value="false" />
-        <option name="INSTANCE_FILTERS_ENABLED" value="false" />
-        <option name="CONDITION" value="" />
-        <option name="LOG_MESSAGE" value="" />
-      </breakpoint>
-    </breakpoint_any>
-    <breakpoint_rules />
-    <ui_properties />
-  </component>
-  <component name="FavoritesManager">
-    <favorites_list name="JabRef" />
-  </component>
-  <component name="FileEditorManager">
-    <leaf>
-      <file leaf-file-name="_JabRefPlugin.java" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/plugin/core/generated/_JabRefPlugin.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="178" column="32" selection-start="6134" selection-end="6134" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="JabRefPlugin.java" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/plugin/core/JabRefPlugin.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="29" column="13" selection-start="1222" selection-end="1222" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="PluginCore.java" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/plugin/PluginCore.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="83" column="10" selection-start="3097" selection-end="3097" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="BibtexParser.java" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/imports/BibtexParser.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="378" column="46" selection-start="11423" selection-end="11423" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="Globals.java" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/Globals.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="1020" column="42" selection-start="39393" selection-end="39393" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="JabRef.java" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/JabRef.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="100" column="33" selection-start="3911" selection-end="3911" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="Util.java" pinned="false" current="true" current-in-tab="true">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/Util.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="3168" column="16" selection-start="106476" selection-end="106476" vertical-scroll-proportion="0.14893617">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="HTMLConverter.java" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/imports/HTMLConverter.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="62" column="71" selection-start="3587" selection-end="3587" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="EntryEditor.java" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/EntryEditor.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="1418" column="38" selection-start="54407" selection-end="54407" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="LabelPatternUtil.java" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/labelPattern/LabelPatternUtil.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="170" column="27" selection-start="6273" selection-end="6273" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-    </leaf>
-  </component>
-  <component name="FindManager">
-    <FindUsagesManager>
-      <setting name="OPEN_NEW_TAB" value="false" />
-    </FindUsagesManager>
-  </component>
-  <component name="Git.Settings">
-    <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/.." />
-  </component>
-  <component name="GradleLocalSettings">
-    <option name="expandStates">
-      <map>
-        <entry key="JabRef" value="true" />
-      </map>
-    </option>
-  </component>
-  <component name="IdeDocumentHistory">
-    <option name="changedFiles">
-      <list>
-        <option value="$PROJECT_DIR$/src/plugins/net.sf.jabref.core/plugin.xml" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/net/URLDownload.java" />
-        <option value="$PROJECT_DIR$/src/txt/CHANGELOG" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/imports/PreviewEntryFetcher.java" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/gui/FetcherPreviewDialog.java" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/imports/GoogleScholarFetcher.java" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/imports/ACMPortalFetcher.java" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/JabRefFrame.java" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/imports/GeneralFetcher.java" />
-        <option value="$PROJECT_DIR$/src/help/ACMPortalHelp.html" />
-        <option value="$PROJECT_DIR$/src/help/GoogleScholarHelp.html" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/plugin/core/generated/_JabRefPlugin.java" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/plugin/PluginCore.java" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/imports/BibtexParser.java" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/JabRef.java" />
-        <option value="$PROJECT_DIR$/src/java/net/sf/jabref/Util.java" />
-      </list>
-    </option>
-  </component>
-  <component name="MavenRunner">
-    <option name="jreName" value="1.6" />
-  </component>
-  <component name="ModuleEditorState">
-    <option name="LAST_EDITED_MODULE_NAME" />
-    <option name="LAST_EDITED_TAB_NAME" />
-  </component>
-  <component name="ProjectFrameBounds">
-    <option name="y" value="31" />
-    <option name="width" value="1366" />
-    <option name="height" value="737" />
-  </component>
-  <component name="ProjectInspectionProfilesVisibleTreeState">
-    <entry key="Project Default">
-      <profile-state>
-        <expanded-state>
-          <State>
-            <id />
-          </State>
-        </expanded-state>
-        <selected-state>
-          <State>
-            <id>Abstraction issues</id>
-          </State>
-        </selected-state>
-      </profile-state>
-    </entry>
-  </component>
-  <component name="ProjectLevelVcsManager" settingsEditedManually="true">
-    <OptionsSetting value="true" id="Add" />
-    <OptionsSetting value="true" id="Remove" />
-    <OptionsSetting value="true" id="Checkout" />
-    <OptionsSetting value="true" id="Update" />
-    <OptionsSetting value="true" id="Status" />
-    <OptionsSetting value="true" id="Edit" />
-    <ConfirmationsSetting value="0" id="Add" />
-    <ConfirmationsSetting value="0" id="Remove" />
-  </component>
-  <component name="ProjectReloadState">
-    <option name="STATE" value="0" />
-  </component>
-  <component name="ProjectView">
-    <navigator currentView="ProjectPane" proportions="" version="1" splitterProportion="0.5">
-      <flattenPackages />
-      <showMembers />
-      <showModules />
-      <showLibraryContents />
-      <hideEmptyPackages />
-      <abbreviatePackageNames />
-      <autoscrollToSource />
-      <autoscrollFromSource />
-      <sortByType />
-    </navigator>
-    <panes>
-      <pane id="Scope">
-        <subPane subId="Project Files">
-          <PATH>
-            <PATH_ELEMENT USER_OBJECT="Root">
-              <option name="myItemId" value="" />
-              <option name="myItemType" value="" />
-            </PATH_ELEMENT>
-          </PATH>
-        </subPane>
-      </pane>
-      <pane id="ProjectPane">
-        <subPane>
-          <PATH>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="JabRef" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
-            </PATH_ELEMENT>
-          </PATH>
-          <PATH>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="JabRef" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
-            </PATH_ELEMENT>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="src" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
-            </PATH_ELEMENT>
-          </PATH>
-          <PATH>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="JabRef" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
-            </PATH_ELEMENT>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="src" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
-            </PATH_ELEMENT>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="txt" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
-            </PATH_ELEMENT>
-          </PATH>
-          <PATH>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="JabRef" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
-            </PATH_ELEMENT>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="src" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
-            </PATH_ELEMENT>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="help" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
-            </PATH_ELEMENT>
-          </PATH>
-        </subPane>
-      </pane>
-      <pane id="PackagesPane">
-        <subPane>
-          <PATH>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="JabRef" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
-            </PATH_ELEMENT>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="Jabref" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" />
-            </PATH_ELEMENT>
-          </PATH>
-        </subPane>
-      </pane>
-      <pane id="Favorites" />
-    </panes>
-  </component>
-  <component name="PropertiesComponent">
-    <property name="project.structure.last.edited" value="Libraries" />
-    <property name="GoToFile.includeJavaFiles" value="false" />
-    <property name="project.structure.proportion" value="0.15" />
-    <property name="OverrideImplement.combined" value="true" />
-    <property name="options.splitter.main.proportions" value="0.3" />
-    <property name="RESOURCE_BUNDLE_SPLITTER_PROPORTION" value="0.5" />
-    <property name="recentsLimit" value="5" />
-    <property name="MemberChooser.sorted" value="false" />
-    <property name="options.lastSelected" value="editor.preferences.appearance" />
-    <property name="project.structure.side.proportion" value="0.2" />
-    <property name="GoToClass.includeJavaFiles" value="false" />
-    <property name="MemberChooser.copyJavadoc" value="false" />
-    <property name="GoToClass.toSaveIncludeLibraries" value="false" />
-    <property name="MemberChooser.showClasses" value="true" />
-    <property name="GoToClass.includeLibraries" value="false" />
-    <property name="options.splitter.details.proportions" value="0.2" />
-    <property name="options.searchVisible" value="true" />
-    <property name="dynamic.classpath" value="false" />
-  </component>
-  <component name="RunManager" selected="Application.JabRef">
-    <configuration default="false" name="FetcherPreviewDialog" type="Application" factoryName="Application" temporary="true">
-      <option name="MAIN_CLASS_NAME" value="net.sf.jabref.gui.FetcherPreviewDialog" />
-      <option name="VM_PARAMETERS" value="" />
-      <option name="PROGRAM_PARAMETERS" value="" />
-      <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
-      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
-      <option name="ALTERNATIVE_JRE_PATH" value="" />
-      <option name="ENABLE_SWING_INSPECTOR" value="false" />
-      <option name="ENV_VARIABLES" />
-      <option name="PASS_PARENT_ENVS" value="true" />
-      <module name="Jabref" />
-      <envs />
-      <RunnerSettings RunnerId="Run" />
-      <ConfigurationWrapper RunnerId="Run" />
-      <method />
-    </configuration>
-    <configuration default="true" type="Remote" factoryName="Remote">
-      <option name="USE_SOCKET_TRANSPORT" value="true" />
-      <option name="SERVER_MODE" value="false" />
-      <option name="SHMEM_ADDRESS" value="javadebug" />
-      <option name="HOST" value="localhost" />
-      <option name="PORT" value="5005" />
-      <method>
-        <option name="AntTarget" enabled="false" />
-        <option name="BuildArtifacts" enabled="false" />
-        <option name="Maven.BeforeRunTask" enabled="false" />
-      </method>
-    </configuration>
-    <configuration default="true" type="Applet" factoryName="Applet">
-      <module name="" />
-      <option name="MAIN_CLASS_NAME" />
-      <option name="HTML_FILE_NAME" />
-      <option name="HTML_USED" value="false" />
-      <option name="WIDTH" value="400" />
-      <option name="HEIGHT" value="300" />
-      <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
-      <option name="VM_PARAMETERS" />
-      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
-      <option name="ALTERNATIVE_JRE_PATH" />
-      <method>
-        <option name="AntTarget" enabled="false" />
-        <option name="BuildArtifacts" enabled="false" />
-        <option name="Make" enabled="true" />
-        <option name="Maven.BeforeRunTask" enabled="false" />
-      </method>
-    </configuration>
-    <configuration default="true" type="Application" factoryName="Application">
-      <option name="MAIN_CLASS_NAME" />
-      <option name="VM_PARAMETERS" />
-      <option name="PROGRAM_PARAMETERS" />
-      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
-      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
-      <option name="ALTERNATIVE_JRE_PATH" />
-      <option name="ENABLE_SWING_INSPECTOR" value="false" />
-      <option name="ENV_VARIABLES" />
-      <option name="PASS_PARENT_ENVS" value="true" />
-      <module name="" />
-      <envs />
-      <method>
-        <option name="AntTarget" enabled="false" />
-        <option name="BuildArtifacts" enabled="false" />
-        <option name="Make" enabled="true" />
-        <option name="Maven.BeforeRunTask" enabled="false" />
-      </method>
-    </configuration>
-    <configuration default="true" type="JUnit" factoryName="JUnit">
-      <module name="" />
-      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
-      <option name="ALTERNATIVE_JRE_PATH" />
-      <option name="PACKAGE_NAME" />
-      <option name="MAIN_CLASS_NAME" />
-      <option name="METHOD_NAME" />
-      <option name="TEST_OBJECT" value="class" />
-      <option name="VM_PARAMETERS" />
-      <option name="PARAMETERS" />
-      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
-      <option name="ENV_VARIABLES" />
-      <option name="PASS_PARENT_ENVS" value="true" />
-      <option name="TEST_SEARCH_SCOPE">
-        <value defaultName="moduleWithDependencies" />
-      </option>
-      <envs />
-      <patterns />
-      <method>
-        <option name="AntTarget" enabled="false" />
-        <option name="BuildArtifacts" enabled="false" />
-        <option name="Make" enabled="true" />
-        <option name="Maven.BeforeRunTask" enabled="false" />
-      </method>
-    </configuration>
-    <configuration default="false" name="JabRef" type="Application" factoryName="Application">
-      <option name="MAIN_CLASS_NAME" value="net.sf.jabref.JabRef" />
-      <option name="VM_PARAMETERS" value="" />
-      <option name="PROGRAM_PARAMETERS" value="" />
-      <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
-      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
-      <option name="ALTERNATIVE_JRE_PATH" value="" />
-      <option name="ENABLE_SWING_INSPECTOR" value="false" />
-      <option name="ENV_VARIABLES" />
-      <option name="PASS_PARENT_ENVS" value="true" />
-      <module name="Jabref" />
-      <envs />
-      <RunnerSettings RunnerId="Run" />
-      <ConfigurationWrapper RunnerId="Run" />
-      <method />
-    </configuration>
-    <list size="2">
-      <item index="0" class="java.lang.String" itemvalue="Application.FetcherPreviewDialog" />
-      <item index="1" class="java.lang.String" itemvalue="Application.JabRef" />
-    </list>
-    <configuration name="&lt;template&gt;" type="WebApp" default="true" selected="false">
-      <Host>localhost</Host>
-      <Port>5050</Port>
-    </configuration>
-  </component>
-  <component name="ShelveChangesManager" show_recycled="false" />
-  <component name="SliceManager">
-    <option name="analysisUIOptions">
-      <AnalysisUIOptions />
-    </option>
-  </component>
-  <component name="StructureViewFactory">
-    <option name="ACTIVE_ACTIONS" value="ALPHA_COMPARATOR" />
-  </component>
-  <component name="SvnConfiguration" maxAnnotateRevisions="500" myUseAcceleration="nothing" myAutoUpdateAfterCommit="false" cleanupOnStartRun="false">
-    <option name="USER" value="" />
-    <option name="PASSWORD" value="" />
-    <option name="mySSHConnectionTimeout" value="30000" />
-    <option name="mySSHReadTimeout" value="30000" />
-    <option name="LAST_MERGED_REVISION" />
-    <option name="MERGE_DRY_RUN" value="false" />
-    <option name="MERGE_DIFF_USE_ANCESTRY" value="true" />
-    <option name="UPDATE_LOCK_ON_DEMAND" value="false" />
-    <option name="IGNORE_SPACES_IN_MERGE" value="false" />
-    <option name="DETECT_NESTED_COPIES" value="true" />
-    <option name="CHECK_NESTED_FOR_QUICK_MERGE" value="false" />
-    <option name="IGNORE_SPACES_IN_ANNOTATE" value="true" />
-    <option name="SHOW_MERGE_SOURCES_IN_ANNOTATE" value="true" />
-    <option name="FORCE_UPDATE" value="false" />
-    <option name="IGNORE_EXTERNALS" value="false" />
-    <configuration useDefault="true">$USER_HOME$/.subversion_IDEA</configuration>
-    <myIsUseDefaultProxy>false</myIsUseDefaultProxy>
-  </component>
-  <component name="TaskManager">
-    <task active="true" id="Default" summary="Default task">
-      <changelist id="110fad89-c760-4067-8a03-8bd14c0eb411" name="Default" comment="" />
-      <created>1329409618362</created>
-      <updated>1329409618362</updated>
-    </task>
-    <servers />
-  </component>
-  <component name="ToolWindowManager">
-    <frame x="0" y="31" width="1366" height="737" extended-state="6" />
-    <editor active="false" />
-    <layout>
-      <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32847896" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
-      <window_info id="JetGradle" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32928678" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
-      <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
-      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.1107739" sideWeight="0.7815534" order="1" side_tool="false" content_ui="tabs" />
-      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
-      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
-      <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
-      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
-      <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.2184466" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
-      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
-      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.25037935" sideWeight="0.60355985" order="1" side_tool="true" content_ui="tabs" />
-      <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
-      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
-      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.25037935" sideWeight="0.16666667" order="0" side_tool="false" content_ui="combo" />
-      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32847896" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
-      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
-      <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
-      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.23786408" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
-      <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
-      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
-      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
-    </layout>
-  </component>
-  <component name="VcsContentAnnotationSettings">
-    <option name="myLimit" value="2678400000" />
-  </component>
-  <component name="VcsManagerConfiguration">
-    <option name="OFFER_MOVE_TO_ANOTHER_CHANGELIST_ON_PARTIAL_COMMIT" value="true" />
-    <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" />
-    <option name="CHECK_NEW_TODO" value="true" />
-    <option name="myTodoPanelSettings">
-      <value>
-        <are-packages-shown value="false" />
-        <are-modules-shown value="false" />
-        <flatten-packages value="false" />
-        <is-autoscroll-to-source value="false" />
-      </value>
-    </option>
-    <option name="PERFORM_UPDATE_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_COMMIT_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_EDIT_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_CHECKOUT_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_ADD_REMOVE_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_ROLLBACK_IN_BACKGROUND" value="false" />
-    <option name="CHECK_LOCALLY_CHANGED_CONFLICTS_IN_BACKGROUND" value="false" />
-    <option name="ENABLE_BACKGROUND_PROCESSES" value="false" />
-    <option name="CHANGED_ON_SERVER_INTERVAL" value="60" />
-    <option name="SHOW_ONLY_CHANGED_IN_SELECTION_DIFF" value="true" />
-    <option name="CHECK_COMMIT_MESSAGE_SPELLING" value="true" />
-    <option name="DEFAULT_PATCH_EXTENSION" value="patch" />
-    <option name="SHORT_DIFF_HORISONTALLY" value="true" />
-    <option name="SHORT_DIFF_EXTRA_LINES" value="2" />
-    <option name="SOFT_WRAPS_IN_SHORT_DIFF" value="true" />
-    <option name="INCLUDE_TEXT_INTO_PATCH" value="false" />
-    <option name="INCLUDE_TEXT_INTO_SHELF" value="false" />
-    <option name="CREATE_PATCH_EXPAND_DETAILS_DEFAULT" value="true" />
-    <option name="SHOW_FILE_HISTORY_DETAILS" value="true" />
-    <option name="SHOW_VCS_ERROR_NOTIFICATIONS" value="true" />
-    <option name="FORCE_NON_EMPTY_COMMENT" value="false" />
-    <option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="false" />
-    <option name="LAST_COMMIT_MESSAGE" />
-    <option name="MAKE_NEW_CHANGELIST_ACTIVE" value="true" />
-    <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
-    <option name="CHECK_FILES_UP_TO_DATE_BEFORE_COMMIT" value="false" />
-    <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
-    <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
-    <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
-    <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
-    <option name="ACTIVE_VCS_NAME" />
-    <option name="UPDATE_GROUP_BY_PACKAGES" value="false" />
-    <option name="UPDATE_GROUP_BY_CHANGELIST" value="false" />
-    <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
-    <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
-  </component>
-  <component name="XDebuggerManager">
-    <breakpoint-manager />
-  </component>
-  <component name="antWorkspaceConfiguration">
-    <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
-    <option name="FILTER_TARGETS" value="true" />
-    <buildFile url="file://$PROJECT_DIR$/build.xml">
-      <antCommandLine value="" />
-      <runInBackground value="true" />
-      <targetFilters>
-        <filter targetName="non_osx" isVisible="false" />
-        <filter targetName="generate" isVisible="false" />
-        <filter targetName="test" isVisible="false" />
-        <filter targetName="docs" isVisible="false" />
-        <filter targetName="build" isVisible="true" />
-        <filter targetName="run" isVisible="true" />
-        <filter targetName="extensions" isVisible="false" />
-        <filter targetName="compiletest" isVisible="false" />
-        <filter targetName="win.installer" isVisible="false" />
-        <filter targetName="jalopy" isVisible="false" />
-        <filter targetName="clean" isVisible="true" />
-        <filter targetName="win.installer.clean" isVisible="false" />
-        <filter targetName="compile" isVisible="false" />
-        <filter targetName="jars" isVisible="false" />
-        <filter targetName="profile" isVisible="false" />
-        <filter targetName="osx" isVisible="false" />
-        <filter targetName="osxjar" isVisible="false" />
-        <filter targetName="runFromJar" isVisible="false" />
-        <filter targetName="javadocs" isVisible="false" />
-        <filter targetName="unjarlib" isVisible="false" />
-        <filter targetName="buildinfos" isVisible="false" />
-        <filter targetName="buildtest" isVisible="false" />
-        <filter targetName="extension-javadocs" isVisible="false" />
-        <filter targetName="win.installer.linux" isVisible="false" />
-      </targetFilters>
-      <treeView value="true" />
-      <verbose value="true" />
-      <viewClosedWhenNoErrors value="false" />
-      <expanded value="true" />
-    </buildFile>
-  </component>
-  <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/src/help/Autosave.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/help/ACMPortalHelp.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="24" column="82" selection-start="1282" selection-end="1361" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/imports/EntryFetcher.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/help/BaseFrameHelp.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/build.xml">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="165" column="17" selection-start="6867" selection-end="6867" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/export/ExportFormats.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="208" column="63" selection-start="7795" selection-end="7795" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/plugin/core/generated/_JabRefPlugin.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="178" column="32" selection-start="6134" selection-end="6134" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/plugin/core/JabRefPlugin.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="29" column="13" selection-start="1222" selection-end="1222" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/plugin/PluginCore.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="83" column="10" selection-start="3097" selection-end="3097" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/JabRef.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="100" column="33" selection-start="3911" selection-end="3911" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/EntryEditor.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="1418" column="38" selection-start="54407" selection-end="54407" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/labelPattern/LabelPatternUtil.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="170" column="27" selection-start="6273" selection-end="6273" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/imports/HTMLConverter.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="62" column="71" selection-start="3587" selection-end="3587" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/imports/BibtexParser.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="378" column="46" selection-start="11423" selection-end="11423" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/Globals.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="1020" column="42" selection-start="39393" selection-end="39393" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/java/net/sf/jabref/Util.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="3168" column="16" selection-start="106476" selection-end="106476" vertical-scroll-proportion="0.14893617">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-  </component>
-  <component name="masterDetails">
-    <states>
-      <state key="ArtifactsStructureConfigurable.UI">
-        <settings>
-          <artifact-editor />
-          <splitter-proportions>
-            <option name="proportions">
-              <list>
-                <option value="0.2" />
-              </list>
-            </option>
-          </splitter-proportions>
-        </settings>
-      </state>
-      <state key="FacetStructureConfigurable.UI">
-        <settings>
-          <last-edited>No facets are configured</last-edited>
-          <splitter-proportions>
-            <option name="proportions">
-              <list>
-                <option value="0.2" />
-              </list>
-            </option>
-          </splitter-proportions>
-        </settings>
-      </state>
-      <state key="GlobalLibrariesConfigurable.UI">
-        <settings>
-          <splitter-proportions>
-            <option name="proportions">
-              <list>
-                <option value="0.2" />
-              </list>
-            </option>
-          </splitter-proportions>
-        </settings>
-      </state>
-      <state key="JdkListConfigurable.UI">
-        <settings>
-          <last-edited>1.6</last-edited>
-          <splitter-proportions>
-            <option name="proportions">
-              <list>
-                <option value="0.2" />
-              </list>
-            </option>
-          </splitter-proportions>
-        </settings>
-      </state>
-      <state key="ModuleStructureConfigurable.UI">
-        <settings>
-          <last-edited>Jabref</last-edited>
-          <splitter-proportions>
-            <option name="proportions">
-              <list>
-                <option value="0.2" />
-                <option value="0.5" />
-              </list>
-            </option>
-          </splitter-proportions>
-        </settings>
-      </state>
-      <state key="ProjectLibrariesConfigurable.UI">
-        <settings>
-          <last-edited>lib</last-edited>
-          <splitter-proportions>
-            <option name="proportions">
-              <list>
-                <option value="0.2" />
-              </list>
-            </option>
-          </splitter-proportions>
-        </settings>
-      </state>
-    </states>
-  </component>
-</project>
-
diff --git a/JabRef - MrDlib.userlibraries b/JabRef - MrDlib.userlibraries
new file mode 100644 (file)
index 0000000..f53acbe
--- /dev/null
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<eclipse-userlibraries>
+  <library name="resources" />
+  <library name="sciplore">
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/intellij/annotations.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/intellij/forms_rt.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jersey/jersey-client-1.1.5.1.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jersey/jersey-core-1.1.5.1.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jersey/jersey-multipart-1.1.5.1.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jersey/jsr311-api-1.1.1.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jersey/mimepull-1.3.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/sciplore/SciPloreDBAccess.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jibx/bcel.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jibx/commons-logging-1.0.4.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jibx/jaxme-js-0.3.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jibx/jibx-bind.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jibx/jibx-extras.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jibx/jibx-run.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jibx/log4j-1.2.8.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/jibx/xpp3.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/bindings.jar" />
+    <archive path="C:/Users/Christoph Arbeit/Documents/Arbeit/Hiwi/JabRef - MrDlib/lib/spl/freemind.jar" />
+  </library>
+</eclipse-userlibraries>
+
diff --git a/Jabref.eml b/Jabref.eml
new file mode 100644 (file)
index 0000000..3d810cb
--- /dev/null
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>\r
+<component>\r
+       <exclude-output/>\r
+       <contentEntry url="file://$MODULE_DIR$"/>\r
+       <lib name="commons-logging.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/plugin/commons-logging.jar!/"/>\r
+       </lib>\r
+       <lib name="spin.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/spin.jar!/"/>\r
+       </lib>\r
+       <lib name="microba.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/microba.jar!/"/>\r
+       </lib>\r
+       <lib name="PDFBox-0.7.3-dev-reduced.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/PDFBox-0.7.3-dev-reduced.jar!/"/>\r
+       </lib>\r
+       <lib name="antlr.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/antlr.jar!/"/>\r
+       </lib>\r
+       <lib name="antlr-3.0b5.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/antlr-3.0b5.jar!/"/>\r
+       </lib>\r
+       <lib name="junit.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/junit.jar!/"/>\r
+       </lib>\r
+       <lib name="jpf.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/plugin/jpf.jar!/"/>\r
+       </lib>\r
+       <lib name="jpf-boot.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/plugin/jpf-boot.jar!/"/>\r
+       </lib>\r
+       <lib name="JPFCodeGenerator-rt.jar" scope="COMPILE">\r
+               <srcroot url="file:///JPFCodeGenerator/src"/>\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/plugin/JPFCodeGenerator-rt.jar!/"/>\r
+       </lib>\r
+       <lib name="glazedlists-1.7.0_java15.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/glazedlists-1.7.0_java15.jar!/"/>\r
+       </lib>\r
+       <lib name="JempBox-0.2.0.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/JempBox-0.2.0.jar!/"/>\r
+       </lib>\r
+       <lib name="forms-1.1.0.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/forms-1.1.0.jar!/"/>\r
+       </lib>\r
+       <lib name="mysql-connector-java-5.0.7-bin.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/mysql-connector-java-5.0.7-bin.jar!/"/>\r
+       </lib>\r
+       <lib name="looks-2.3.1.jar" scope="COMPILE">\r
+               <relative-module-cls project-related="jar://$PROJECT_DIR$/lib/looks-2.3.1.jar!/"/>\r
+       </lib>\r
+</component>\r
diff --git a/build.gradle b/build.gradle
new file mode 100644 (file)
index 0000000..52890bc
--- /dev/null
@@ -0,0 +1,88 @@
+apply plugin: 'java'
+
+// with gradle 1.1, Sonar 3.2 is not working. One needs Sonar 3.1.1
+apply plugin: 'sonar'
+
+sourceSets {
+       main {
+               java {
+                       srcDir 'src/java'
+               }
+               resources {
+                       srcDir 'src/resource'
+               }
+       }
+}
+
+repositories {
+       mavenCentral()
+}
+
+/* ANTLR support for Bst.g
+Source: http://fenrock.wordpress.com/2012/05/17/gradle-and-antlr-3-x/
+*/
+
+configurations {
+       antlr3
+}
+
+dependencies {
+       compile 'org.antlr:antlr-runtime:3.4'
+       antlr3 'org.antlr:antlr:3.4'
+}
+task generateGrammarSource(type: JavaExec) {
+    def antlrSource = 'src/java/net/sf/jabref/bst'
+    destinationDir = antlrSource
+
+    inputs.dir file(antlrSource)
+    outputs.dir file(destinationDir)
+
+    def grammars = fileTree(antlrSource).include('**/*.g')
+
+    main = 'org.antlr.Tool'
+    classpath = configurations.antlr3
+    args = ["-o", "${destinationDir}", grammars.files].flatten()
+}
+
+/*
+ Code for JavaNCSS adapted from http://gradle.codehaus.org/Cookbook#Cookbook-usingJavaNCSS
+ JavaNCSS: http://www.kclee.de/clemens/java/javancss/
+
+Cyclomatic
+Complexity             Ease of       Risk
+Number (CCN)           maintenance
+(McCabe metric)
+---------------------------------------------
+1-10, simple           easy          minimum
+11-20, complex         moderate      moderate
+21-50, more complex    hard          high
+>50, unstable          very hard     very high
+*/
+
+configurations {
+    javancssConf
+}
+
+dependencies {
+    javancssConf 'org.codehaus.javancss:javancss:32.53'
+}
+
+task javancss << {
+    println 'Running javancss quality metrics tool'
+    ant {
+        taskdef(name:'javancss', classname:'javancss.JavancssAntTask', classpath: configurations.javancssConf.asPath)
+        javancss(
+                       srcdir:'src/java',
+                       includes:'**/*.java',
+                       excludes:'jama/**/*.java, jmat/**/*.java, cformat/**/*.java',
+                       abortOnFail:'false',
+                       generateReport:'true',
+                       outputfile:'build/javancss_report.plain',
+                       ccnPerFuncMax:'30',
+                       format:'plain',
+                       packageMetrics:'true',
+                       classMetrics:'false',
+                       functionMetrics:'false'
+               )
+    }
+}
index 7496aca..6eaeb7f 100644 (file)
@@ -1,3 +1,3 @@
 #Build Number for ANT. Do not edit!
-#Sun Nov 18 13:50:10 CET 2012
-build.number=623
+#Wed Dec 12 22:49:48 CET 2012
+build.number=3
index 787f722..4a5325a 100644 (file)
--- a/build.xml
+++ b/build.xml
@@ -35,7 +35,7 @@
      +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-->
 
        <!-- some version information -->
-       <property name="jabref.version" value="2.9b2" />
+       <property name="jabref.version" value="2.9" />
        <property name="jabref.year" value="2012" />
        <property name="jabref.placeholder.version" value="@version@" />
        <property name="jabref.placeholder.year" value="@year@" />
diff --git a/buildlib/jalopy-1.0b10.jar b/buildlib/jalopy-1.0b10.jar
new file mode 100644 (file)
index 0000000..e9b3688
Binary files /dev/null and b/buildlib/jalopy-1.0b10.jar differ
diff --git a/buildlib/jalopy-ant-0.6.1.jar b/buildlib/jalopy-ant-0.6.1.jar
new file mode 100644 (file)
index 0000000..e76a0a3
Binary files /dev/null and b/buildlib/jalopy-ant-0.6.1.jar differ
diff --git a/buildlib/junit.jar b/buildlib/junit.jar
new file mode 100644 (file)
index 0000000..674d71e
Binary files /dev/null and b/buildlib/junit.jar differ
diff --git a/buildlib/licenses.txt b/buildlib/licenses.txt
new file mode 100644 (file)
index 0000000..3f1a2ee
--- /dev/null
@@ -0,0 +1,20 @@
+Path:    jalopy-1.0b10.jar
+Project: Jalopy Java Source Code Formatter
+URL:     http://sourceforge.net/projects/jalopy/
+License: BSD
+
+Path:    jalopy-ant-0.6.1.jar
+Project: Jalopy Java Source Code Formatter
+URL:     http://sourceforge.net/projects/jalopy/
+License: BSD
+
+Path:    jarbundler-2.2.0.jar
+Project: Mac OS X JarBundler ANT Task
+URL:     http://informagen.com/JarBundler/index.html
+License: GPLv2
+Note:    Required to build Mac OS X Jar
+
+Path:    junit.jar
+Project: JUnit 3
+URL:     http://www.junit.org/
+License: CPL 1.0
diff --git a/combineJournalLists.py b/combineJournalLists.py
new file mode 100644 (file)
index 0000000..be14c76
--- /dev/null
@@ -0,0 +1,31 @@
+#!/usr/bin/python
+
+# Python script for combining several journal abbreviation lists
+# and producing an alphabetically sorted list. If the same journal
+# names are repeated, only the version found last is retained.
+#
+# Usage: combineJournalLists.py outfile infile1 infile2 ...
+
+import sys
+import fnmatch
+import os
+
+outFile = sys.argv[1]
+dictionary = dict()
+for i in range(2,len(sys.argv)):
+    count = 0
+    f = open(sys.argv[i], "r")
+    for line in f:
+       if line[0] != "#":
+           count = count+1
+           parts = line.partition("=")
+           dictionary[parts[0].strip()] = line.strip()
+    f.close()
+    print sys.argv[i]+": "+str(count)
+
+print "Combined key count: "+str(len(dictionary))
+
+f = open(outFile, "w")
+for key in sorted(dictionary.iterkeys()):
+      f.write(dictionary[key]+"\n")
+f.close()
diff --git a/deploy b/deploy
new file mode 100644 (file)
index 0000000..871260c
--- /dev/null
+++ b/deploy
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+# Deploy script for JabRef. Builds jar file and OSX package, and creates source zip and tarball.
+rm ~/release_jabref/$1/*
+cd ~/jabref-$1/
+ant clean
+cd ~
+zip -r release_jabref/$1/JabRef-$1-src.zip jabref-$1
+tar cjf release_jabref/$1/JabRef-$1-src.tar.bz2 jabref-$1
+cd ~/jabref-$1/
+ant compile unjarlib non_osx jars osxjar
+cd build/lib
+cp JabRef-$1.jar ~/release_jabref/$1/
+zip -r ~/release_jabref/$1/JabRef-$1.OSX.zip JabRef.app
+cd ~/jabref-$1/
+
diff --git a/src/Jabref.iml b/src/Jabref.iml
deleted file mode 100644 (file)
index 48f7c03..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module type="JAVA_MODULE" version="4">
-  <component name="NewModuleRootManager" inherit-compiler-output="true">
-    <exclude-output />
-    <content url="file://$MODULE_DIR$">
-      <sourceFolder url="file://$MODULE_DIR$/java" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/resource" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/images" isTestSource="false" />
-    </content>
-    <orderEntry type="inheritedJdk" />
-    <orderEntry type="sourceFolder" forTests="false" />
-    <orderEntry type="library" name="jersey" level="project" />
-    <orderEntry type="library" name="sciplore" level="project" />
-    <orderEntry type="library" name="oo" level="project" />
-    <orderEntry type="library" name="plugin" level="project" />
-    <orderEntry type="library" name="lib" level="project" />
-  </component>
-</module>
-
index 02474bd..1f3ec47 100644 (file)
 
     <p>After the key pattern has
     been applied to produce a key, you can choose to have the key
-    generator search for occurences of a specific regular
+    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.</p>
+    be removed from the generated key. For instance,
+    <code>\p{Punct}</code> or <code>[:/%]</code> can be replaced
+    by nothing to remove unwanted characters from the key.
+    This may be useful when naming PDFs according to BibTeX keys.</p>
 </body>
 </html>
diff --git a/src/help/RevisionHistory.html~ b/src/help/RevisionHistory.html~
deleted file mode 100644 (file)
index d821f6c..0000000
+++ /dev/null
@@ -1,1559 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<link rel="stylesheet" type="text/css" href="jabref_help.css"/>
-</head>
-
-<body>
-
-  <h1>Revision history</h1>
-  <h3>Version 2.8.1</h3>
-    <ul><li>Fixed bug in PostgreSQL export/import.</li>
-    </ul>
-  <h3>Version 2.8</h3>
-  <ul><li>Applied Oscar Gustafsson's fix for IEEEXplore fetcher.</li>
-    <li>Added capability to remove databases from SQL database.</li>
-    <li>Fixed customization of entries in Biblatex mode.</li>
-  </ul>
-  <h3>Version 2.8 beta 2</h3>
-  <ul><li>Improvements to SQL export and import. Fixed bug where subsequent exports to same
-      database would fail. Can now save multiple bib bases to a single SQL database.</li>
-    <li>"abbr" modifier in BibTeX key generator now skips parentheses.</li>
-    <li>Minor change to FirstPage formatter. Now splits at spaces as well as hyphens,
-      and returns original field content if only one page number is found.</li>
-    <li>When using the preferences import command line option, preferences are now imported
-      before load/import/export operations are handled.</li>
-    <li>Applied Nicolas Pavillon's patch for proper keystroke handling on Mac OS X.</li>
-    <li>Applied Ivanilton Polato's patch for handling multi-line fields in CSV export.</li>
-    <li>Fixed bug: "Send as Email" did not handle absolute paths correctly.</li>
-    <li>Fixed bug 3472991: Search: "Highlight Words" inconsistent.</li>
-    <li>Fixed bug 2933201: Exporting InProceedings to Word 2007.</li>
-    <li>Fixed bug 3146059: Error in translating author field to MS Office.</li>
-    <li>Fixed bug: entering field names containing capital letters in table columns tab
-      in Preferences makes the columns empty.</li>
-  </ul>
-  <h3>Version 2.8 beta</h3>
-  <ul><li>Fixed issues with ACM portal fetcher using Benjamin Langmann's patch, plus an
-      additional minor fix.</li>
-    <li>A large list of journal abbreviations is now loaded by default.</li>
-    <li>Added global option to allow file links relative to the bib file location, in addition
-      to the global or database- or user-specific file directory.</li>
-    <li>Fixed bug 3434674: Reviewing changes overwrites groups.</li>
-    <li>Integrated the plugin for interaction with OpenOffice/LibreOffice as a standard part
-      of JabRef.</li>
-    <li>Added keyboard shortcuts Ctrl-Up and Ctrl-Down to move file links up and down in a list
-      of external links in the entry editor.</li>
-    <li>Applied "bjoerntm"'s patch for making the loading of group information less sensitive
-      to white space, in order to prevent trouble loading files written by other tools.</li>
-    <li>Added optional autocompletion of author/editor last names in search field.</li>
-    <li>Changed entry fetcher system so all fetchers are accessed from a single side pane
-      component with a selector.</li>
-    <li>Added INSPIRE fetcher by Sheer El-Showk.</li>
-    <li>Improved error handling when importing in specific format.</li>
-    <li>Prevented crash when calling invalid import format on startup.</li>
-    <li>Improved duplicate detection.</li>
-    <li>Added markers \filename and \filepath for ".begin.layout" and ".end.layout" files
-      in order to output the name or full path of the bib file of the exported database.</li>
-    <li>Fixed possible array index exception in LastPage formatter.</li>
-    <li>Improved author/editor normalization in entry editor.</li>
-    <li>Added metadata extraction from text when PDFs are dragged into JabRef.</li>
-    <li>The filename pattern for renaming a file when dropping a PDF can now be
-      configured at "Options"/"Preferences"/"Import"/"File name format pattern".</li>
-    <li>The defaults of the ImportDialog shown when PDFs are dragged into JabRef
-      can now be configured at "Options"/"Preferences"/"Import". It is possible to
-      override showing the ImportDialog.</li>
-    <li>An entry can be sent by a right click on an entry and select "Send as Email"
-      (patch 3306271).</li>
-    <li>Added option to "copy BibTeX key and title" (patch 3370471).</li>
-    <li>The command for pushing to emacs can be configured now. New command for Emacs 23.
-      New default for Windows: emacsclient.</li>
-    <li>Added export support for DIN1505 style (based on patch 1874662).</li>
-    <li>Added support for PostgreSQL import/export (patch 3368760 by Fred Stevens).</li>
-    <li>Added formatter "JournalAbbreviator" (patch 3013311 by Meigel).</li>
-    <li>RTFExport: Replaces ligatures `` and '' with RTF control sequences {\ldblquote} and {\rdblquote}.
-      (patch 2905383 by Russell Almond).</li>
-    <li>Bugfix for NullPointerException in Biblatex mode (patch 3222388 by Matthias Erll).</li>
-    <li>ToggleButton added to GroupSelector to ease adding/removing references to/from groups
-      (based on patch 3313564 updated by Andreas Schlicker).</li>
-    <li>Export filter "tablerefsandbib" updated to contain links to files and notes
-      (patch 2787096 by Thomas Arildsen).</li>
-    <li>"of" added to the list of skip words (patch 2781830).</li>
-    <li>Added cli-function for exporting entries filtered by a search term
-      (patch 1817093 by Silberer, Zirn)</li>
-    <li>Added highlighting in textarea for search text (patch 3117881 by Ben).
-      Slightly modified to cope with words[]={""}, support for "BibTeX source" tab, and that
-      "Clear" also clears the highlighting.</li>
-    <li>Added highlighting in preview area for search text (based on patch 3121914 by
-      Maximilian Lengsfeld).</li>
-    <li>Switched from PDFBox 0.7.3 to PDFBox 1.6.0.</li>
-  </ul>
-
-  <h3>Version 2.7.2</h3>
-    <ul><li>Fixed bug that prevented search functions from working under Java 7.</li></ul>
-
-  <h3>Version 2.7.1</h3>
-    <ul>
-    <li>Fixed problem with search function under Java 7.</li>
-    <li>Made Database properties dialog modal to prevent database from being closed
-      while properties window is open.</li>
-    <li>Fixed error handling in custom import dialog when invalid jar files or class
-      files are specified.</li>
-    <li>Added OR operator for conditional export formatting.</li>
-    <li>DocBook export format switched to 4.4 (based on patch 3313898).</li>
-    <li>Fixed bug that made the key generator combination [shorttitle:abbr] return
-      only a single letter.</li>
-    <li>"of" added to the list of skip words (patch 2781830).</li>
-    <li>Bugfix for NullPointerException in Biblatex mode (patch 3222388 by Matthias Erll).</li>
-    <li>RTFExport: Replaces ligatures `` and '' with RTF control sequences {\ldblquote} and {\rdblquote}.
-      (patch 2905383 by Russell Almond).</li>
-    <li>Fixed bug that made menu items for marking in specific colors invisible
-      under Windows 7.</li>
-    <li>In case a new entry is added, this entry is highlighted and the editor is opened
-      if configured in the settings (patch 3370466). The UI behavior of adding an entry
-      at "new entry from plain text" is now similar to "new entry".</li>
-    <li>Fixed bug in focus handling that affected some actions.</li>
-    <li>Running JabRef under the Oracle JVM will no longer give a warning.</li>
-    </ul>
-
-  <h3>Version 2.7</h3>
-    <ul>
-    <li>Medline importer now wraps multipart last names in braces.</li>
-    <li>RIS importer now handles multiple title fields by concatenation.</li>
-    <li>Disallowed "comment" as entry type name, since this conflicts with the BibTeX format.</li>
-    <li>Fixed handling of suffix name parts (Jr, etc.) in Medline importer.</li>
-    <li>Added optional second numeric argument to Authors formatter, which determines
-      how many authors are shown if the maximum number is exceeded.</li>
-    <li>Added content selector for "review" field in entry editor.</li>
-    <li>Improved detection of file type when adding new link. Can now recognize double
-      extensions such as ".ps.gz".</li>
-    <li>Improved autocompletion of author names. Added options to complete either in
-      'Firstname Lastname' or 'Lastname, Firstname' formats, or in both.</li>
-    <li>Fixed bug in import function if no suitable import filter is found.</li>
-    </ul>
-
-  <h3>Version 2.7beta 2</h3>
-    <ul>
-       <li>Added support for MrdLib lookup or metadata extraction when PDFs are dragged
-       into JabRef.</li>
-    <li>Added option under "External programs" for disabling the automatic opening of the
-      Browse dialog when creating a new file link.</li>
-    <li>Fixed shortcut key collision. Shortcut for Import to new database is now Ctrl-Alt-I.</li>
-    <li>The "Open URL or DOI" action now uses URL links in the "file" field as fallback if
-      no links are found in the "url" or "doi" fields.</li>
-    <li>Restricted remote listener port numbers to interval 1025-65535.</li>
-    <li>Added Japanese translation by Koji Yokota.</li>
-    <li>Added scrollbar to entry editor when it is too high to fit in its panel. Patch
-      by Matthias Erll.</li>
-    <li>Made it possible to copy entries from the search dialog.</li>
-    <li>Added proper error message when trying to search with invalid regular expression.</li>
-    <li>Added error dialog on startup if custom look and feel cannot be loaded.</li>
-    <li>Applied Alexander Hug's patch for correctly importing doi from ScienceDirect RIS files.</li>
-    <li>Removed potential NullPointerException in SearchExpressionTreeParser.</li>
-    </ul>
-
-    <h3>Version 2.7beta</h3>
-    <ul>
-       <li>Some improvements to MS Office export filter.</li>
-       <li>Introduced three choices for ensuring unique generated keys. The default one (marking
-       with a, b, etc.), a modified one (marking with b, c, etc.) and always adding a letter
-       (a, b, etc.).</li>
-       <li>Font and background colors are now customizable in the entry editor (Options ->
-       Preferences -> Appearance).</li>
-       <li>Window title now includes the full path to the current file.</li>
-       <li>Entries can now be marked in a series of different colors. Automarking of imported
-       entries is now done in separate color without affecting other marked entries.</li>
-       <li>Added new feature (Tools -> Scan database... -> Resolve duplicate BibTeX keys) to
-       search for duplicate keys and offer to generate new keys to resolve the duplicates.
-       Instead of being listed in a warning dialog after opening a bib file, duplicate keys
-       now trigger a dialog asking whether the user wants to resolve the duplicates.</li>
-       <li>Added check that ensures that application doesn't quit while a large save operation
-       is still in progress. Shows wait message with cancel button.</li>
-       <li>Added apostrophe (') as illegal character in BibTeX keys.</li>
-       <li>BibTeX strings that refer each other are now sorted correctly when saving bib file.</li>
-       <li>Fixed bug in merging external changes - file would still be reported as modified
-       externally after merging changes.</li>
-       <li>Fixed bug in Move/rename file link feature that could cause the wrong link to be
-       stored for certain directory structures.</li>
-       <li>Fixed bug: curly braces can now be used in arguments to formatters. </li>
-       <li>Fixed lockup bug when generating key for entries with crossref fields.</li>
-       <li>BibTeX strings are now resolved before attempting to (un)abbreviate journal names.</li>
-       <li>Modified [shorttitle] and [veryshorttitle] key generator markers so they consider
-       a hyphen a word boundary, and remove punctuation characters (keep only numbers and
-       letters).</li>
-       <li>deprecate various export formatters with new Authors formatter, which provides flexible formatting options.</li>
-    </ul>
-
-    <h3>Version 2.6</h3>
-    <ul>
-        <li>Fixed IEEExplorer and ACM fetchers to adapt to web site changes.</li>
-        <li>Active preview (1 or 2) is now remembered.</li>
-        <li>Applied patch by Igor L. Chernyavsky. to prevent loss of entry selection after
-            generating key.</li>
-        <li>Changed OpenDocument Spreadsheet export so the mimetype file is written correctly
-            at the start of the zip file.</li>
-        <li>Fixed bug when importing preferences: custom export filters would not be updated
-            after import.</li>
-        <li>Changed help page loading procedure so help pages can be loaded for plugin entry
-            fetchers.</li>
-        <li>Made it possible to define customized entry types with either-or conditions on
-            required fields, e.g. using a pseudo-field called "author/editor" will indicate
-            that the entry requires either the "author" or the "editor" field set.</li>
-        <li>Fixed bug: entries of a customized type could be indicated as complete even if
-            BibTeX key was not set.</li>
-        <li>Changed deletion process for some temporary files to avoid leftover files.</li>
-    </ul>
-
-    <h3>Version 2.6beta3</h3>
-    <ul>
-        <li>Added ScienceDirect entry fetcher that utilizes the BibSonomy scraper.</li>
-        <li>Changed non-native file dialog setting so files cannot be renamed. This prevents
-          accidentally entering rename mode when trying to enter directory. Can be enabled
-          again in Options -> Preferences -> Advanced.</li>
-        <li>Added new JStor fetcher that utilizes the BibSonomy scraper to obtain BibTeX data.</li>
-        <li>Fixed bug in CookieHandlerImpl.</li>
-        <li>Fixed bug; when dragging a file into JabRef and asking to move it to the file
-          directory, warning will now be given if the destination file already exists. Patch
-          by Alastair Mailer.</li>
-        <li>When dragging a file into JabRef and asking to copy or move it to the file directory,
-          it is now possible to rename to an arbitrary name. Patch by Alastair Mailer.</li>
-        <li>Added "review" field to BibTeXML export.</li>
-        <li>Added Reset button to entry fetchers. Patch by Dennis Hartrampf and Ines Moosdorf.</li>
-        <li>Changed Microsoft Office XML export so "number" rather than "issue" is exported
-          as &lt;b:Issue&gt;, which conforms with import format.</li>
-        <li>Added confirmation dialog that allows saving without backup in cases when
-          backup creation fails.</li>
-        <li>Fixed bug 2938562: using the move/rename feature on a file link could give an
-          absolute link even if the file was put below the main file directory.</li>
-        <li>Fixed bug 2931293: error generating key with [authorsAlpha] for short names.</li>
-        <li>When checking for external modifications, file size is now checked in addition
-          to the time stamp.</li>
-        <li>Fixed handling of maximised state when shutting down and starting up JabRef.
-          Patch by Igor L. Chernyavsky.</li>
-        <li>Fixed bug that prevented correct handling of DOS short file names. Patch
-          by Igor L. Chernyavsky.</li>
-        <li>Added support for KOI8_R character set.</li>
-        <li>Removed DocumentPrinter class, using standard API functions instead. Patch by
-          Tony Mancill.</li>
-        <li>Removed HightlightFilter class, using standard API functions instead. Patch by
-          Tony Mancill.</li>
-        <li>Changed keyboard shortcut for IEEXplorer search to Alt-F8.</li>
-        <li>Disabled JStor search, which doesn't work due to API changes.</li>
-        <li>External file type manager now removes "." prefix in file type extension if the user
-          has typed it that way.</li>
-        <li>Preview panel now defaults to preview layout 1 instead of 2. Switched default layouts.</li>
-        <li>Added IfPlural formatter by Russell Almond. The formatter outputs its first argument
-          if the input field contains " and " and the second one otherwise.</li>
-        <li>Applied patch by Philipp Cordes and Björn Kahlert for improved handling of names by
-          autocompleter. The patch also reorganizes the autocompleter classes.</li>
-        <li>Table will now scroll to keep the currently edited entry visible if an edit leads to
-          the entry getting sorted to a different position.</li>
-        <li>Reworked author and editor handling in Docbook export. Added Docbook XML header.</li>
-        <li>Database will no longer be marked as changed after accepting external changes, unless one or
-          more changes were not accepted before merging, and unless database was already marked as
-          changed.</li>
-        <li>Fixed bug: undesired autocompletion when saving file.</li>
-        <li>Fixed bug: entry editor doesn't appear when new entry is added while a filtering search or
-          group selection is active.</li>
-        <li>Fixed bug in writing of metadata on Windows. For certain metadata lengths newlines would be
-          messed up after the metadata comment in a bib file.</li>
-        <li>Search dialog now automatically previews first hit, and hides preview if there are no hits.</li>
-    </ul>
-
-    <h3>Version 2.6beta2</h3>
-    <ul>
-        <li>Added export formatter "Default" which takes a single argument. Outputs the string to format
-          unchanged if it is non-empty, otherwise outputs the argument.</li>
-        <li>Added option under Options -> Preferences -> General for disabling the strict enforcing of
-          correct BibTeX keys. Disabling this makes it possible to use e.g. umlaut characters in keys.</li>
-        <li>Modified launcher script for Windows installer to give higher heap size limit.</li>
-        <li>Improved autocompletion. All fields with autocompletion which have content selectors will now
-          autocomplete on content selector values. For the "journal" field, the autocompleter will now
-          additionally use entries from the current journal abbreviations list, and will also complete
-          on the entire field up to the cursor rather than just looking at the last word only.</li>
-        <li>Added support for postformatter in Layout. The postformatter will be run after
-          the formatters called from a layout.</li>
-        <li>Improved group autogeneration. Added option to generate groups based on author or editor
-          last names. Autogenerated groups are now alphabetized.</li>
-        <li>Modified Endnote export filter so "--" gets converted to "-" in the "pages" field.</li>
-        <li>Changed keyword groups so they will match on whole words only. E.g. a keyword group for the
-          keyword "can" will no longer match the keyword "scanner".</li>
-        <li>Improved entry type determination and author parsing for some varieties of CSA files.</li>
-        <li>Minor change to Harvard RTF export. Added space after "ed.", and added editor to output for
-          inbook entries.</li>
-        <li>Set limit to the number of displayed characters in group names in groups tree in order to
-          avoid group panel width problems.</li>
-        <li>Changed file link handling so all remote links classified as URL can be opened through
-          the browser. Setting a different file type manually makes JabRef call a remote link using
-          the handler application instead.</li>
-        <li>Modified Endnote/refer import filter to strip "doi:" from the %R field.</li>
-        <li>Modified HTML conversion so single newline is displayed in the preview (and HTML exports) as
-          &lt;br&gt;, while multiple newlines are displayed as &lt;p&gt;.</li>
-        <li>Fixed bug: switching entry editor between entries of different type may result in switching
-          of entry editor tabs.</li>
-        <li>Fixed bug: adding external file link leads to relative path from root directory if file
-          directory is set to an empty string.</li>
-        <li>Fixed error message when a # in a BibTeX string prevents saving. No longer states that the
-          problem is in an entry, but specifies that it is in a string.</li>
-        <li>Fixed bug: ODS export doesn't resolve BibTeX strings.</li>
-        <li>Fixed bug: content selector for "editor" field uses "," instead of " and " as delimiter.</li>
-        <li>Fixed bug: editing source doesn't allow change of entry type.</li>
-        <li>RTFChars formatter now converts --- to \emdash and -- to \endash.</li>
-    </ul>
-
-    <h3>Version 2.6beta</h3>
-
-    <ul>
-        <li>Added pages information to several entry types in Endnote export.</li>
-        <li>Modified LastPage formatter so it returns the number when only the number of pages is given.</li>
-        <li>Modified search algorithms so LaTeX commands are removed before search. For instance, this
-            means that the value "test \textit{case}" now matches the search string "test case".</li>
-        <li>Changed default table font family to "SansSerif".</li>
-        <li>Can now create lock file while writing a bib file. The lock file is checked before
-            saving, and before scanning an externally changed file, in order to avoid reading an
-            unfinished file.</li>
-        <li>Added support for dragging a file link from the file column to another application.</li>
-        <li>Added toolbar button and shortcut (Alt-F) in entry editor for autosetting file links.</li>
-        <li>Improved ISI import filter so DOI information is included.</li>
-        <li>Fixed bug: metadata changes would not be detected as external changes to a database.</li>
-        <li>Fixed bug: when accepting external changes and not saving before new changes are
-            detected, the previously accepted changes would also be listed.</li>
-        <li>Fixed bug in Scifinder import where an empty Inventor field could overwrite the
-            author field.</li>
-        <li>Fixed bug in autocompleter. Current suggested completion would be added to the field
-            if the user closed the entry editor or mouse clicked on another field.</li>
-        <li>Fixed problem with exporting to some MySql versions. Patch by François Dorin.</li>
-        <li>Fixed bug in handling of LaTeX character sequences - now sequences with = as command
-            character (e.g. "\={A}") are recognized.</li>
-        <li>Fixed bug: gray out / hide setting in groups panel is overridden on startup
-            by search mode selection. Added separate prefs key for the groups setting.
-            Fix suggested by Igor L. Chernyavsky.</li>
-        <li>Fixed bug: cookie manager installed by Download button in file field editor throws
-            an exception when trying to fetch from Medline.</li>
-        <li>Fixed bug: temporary files don't get deleted on shutdown.</li>
-        <li>Disabled table column reordering in import inspection window, since a user reported
-            problems when using this.</li>
-        <li>Changed years from 2008 to 2009 in splash image.</li>
-    </ul>
-    <h3>Version 2.5 (June 22nd, 2009)</h3>
-    <ul>
-        <li>Modified export layout procedure so missing formatters can be reported in the error
-          output. Export now succeeds with warnings added where formatters are missing.</li>
-        <li>Conditional blocks (\begin{field}...\end{field}) in layout files can now be given a
-          semicolon-separated list of fields as argument. All fields must then be set for output
-          to be given.</li>
-        <li>Changed RIS import so multiple abstract fields in an entry are concatenated.</li>
-        <li>Added quoting of some special characters in SQL export, based on Kyle Crabtree's patch.</li>
-        <li>Fixed bug in MS Office 2007 XML export - editor names missing.</li>
-        <li>Fixed bug in plugin manager that prevented the "Download plugin" button from working.</li>
-        <li>Fixed bug in plugin manager routine that checks for installed versions of a plugin.</li>
-        <li>Fixed bug in startup that could show warnings multiple times when loading
-          from autosave files.</li>
-    </ul>
-    <h3>Version 2.5beta 2 (May 19th, 2009)</h3>
-    <ul>
-        <li>Plugin manager now handles plugin versions correctly based on the version number in their
-          plugin.xml file.</li>
-        <li>Added formatter "Number" that outputs a sequence number for the current entry in the current
-          export operation. This formatter can be used to produce a numbered list of entries.</li>
-        <li>Added autosave feature.</li>
-        <li>Fixed bug in file link handling in BibTeXML export.</li>
-        <li>Improved handling of patents in Scifinder import.</li>
-    </ul>
-
-    <h3>Version 2.5beta (April 21st, 2009)</h3>
-
-    <ul>
-      <li> Added Simplified Chinese translation.</li>
-      <li> Added simple plugin manager.</li>
-      <li> Added ~/.jabref/plugins as user-specific plugin directory.</li>
-      <li> Added \r marker to WrapFileLinks formatter that outputs file links without expanding relative links.</li>
-      <li> Added [authorsAlpha] key marker that formats authors according to the &quot;alpha&quot; BibTeX style. Patch submitted by Oliver Kopp.</li>
-      <li> Table sort order set by clicking and Ctrl-clicking table columns is now immediately set as default sort order in preferences.</li>
-      <li> Changed LyX pipe setting so it works whether &quot;.in&quot; is included or omitted.</li>
-      <li> Modified ISI importer so the words &quot;of&quot;, &quot;and&quot; and &quot;the&quot; will not be capitalized in the title, journal or publisher fields.</li>
-      <li> When adding new local file link, browse dialog now appears immediately when opening file link editor, saving one mouse click.</li>
-      <li> Added &quot;Remove all broken links&quot; option in the resolver dialog for broken links when synchronizing file links.</li>
-      <li> Added rename option to Set/clear field dialog, to move contents from one field to another.</li>
-      <li> Added Back and Forward actions, for switching between recently edited BibTeX entries.</li>
-      <li> Added option under &quot;Entry table&quot; to designate fields as numeric for sorting purposes.</li>
-      <li> Added possibility for custom export filters to define their own name formatters. This is done by adding a file named &quot;&lt;filtername&gt;.formatters&quot;. This file defines one formatter on each line, with each line containing the name of the formatter and the formatter definition, separated by a colon (:).</li>
-      <li> Added menu items for increasing/decreasing table font size, with shortcut keys Ctrl-plus and Ctrl-minus.</li>
-      <li> Added options to automatically mark entries imported into an existing database, and to unmark previously marked entries when importing.</li>
-      <li> Added &quot;:(x)&quot; modifier to key generator, specifying that the arbitrary string x should be used as a fallback value if the value returned by the field marker is empty.</li>
-      <li> Added &quot;:upper&quot; modifier to key generator, to force uppercase for a field marker.</li>
-      <li> Added buttons in External programs tab in Preferences for modifying settings for &quot;Push to&quot;-features, and removed obsolete fields.</li>
-      <li> Added support for DOI field in Endnote importer.</li>
-      <li> Added support for language and publication status fields in Medline import (publication status stored in &quot;medline-pst&quot; field).</li>
-      <li> Enabled cookie handling for downloading full-text articles.</li>
-      <li> Improved handling of invalid BibTeX keys containing white space. Parser will now try to piece together the key and avoid disturbing the continued parsing. Patch submitted by Stephan Lau.</li>
-      <li> Cosmetic change to the entry type label to the left in the entry editor.</li>
-      <li> Changed name handling so a single-entry name without a capital initial letter, such as &quot;unknown&quot;, will be treated as a solitary last name rather than a von particle.</li>
-      <li> Changed table selection coloring so entries that are grayed out or marked can be distinguished from normal entries when selected.</li>
-      <li> Changed handling of &quot;affiliation&quot; in Medline import - now makes sure to escape # characters before storing.</li>
-      <li> Modified ACM portal fetcher due to web site changes.</li>
-      <li> Improvements to IEEEXplore fetcher - better handling of month and page fields.</li>
-      <li> Changed behaviour of source panel when an entry contains imbalanced # characters - the panel can now show the entry in its invalid form, allowing the user to fix the problem.</li>
-      <li> Improved handling of PDF files without XMP metadata - other metadata will now be retained. Patch submitted by Felix Langner.</li>
-      <li> Fixed bug in parsing file field - double spaces in file names would be reduced to single spaces, breaking the file link. Fix submitted by Uwe Kuehn.</li>
-      <li> Fixed NullPointerException when downloading external file and file directory is undefined.</li>
-      <li> Fixed bug in HTMLConverter.</li>
-      <li> Fixed NullPointerException in key generator for incomplete names.</li>
-      <li> Fixed bug in removing custom export filters.</li>
-      <li> Fixed bug 2225371: restart is no longer required after adding a new custom export filter. </li>
-      <li> Fixed bug in &quot;Move/rename file&quot; feature in file field editor with regard to undefined file directory.</li>
-      <li> Fixed bug in Ris importer.</li>
-      <li> Fixed NullPointerException in Endnote importer.</li>
-    </ul>
-
-
-    <h3>Version 2.4.2 (November 1st, 2008)</h3>
-
-    <ul>
-      <li>Added missing layout formatters FirstPage and LastPage.</li>
-      <li>Fixed a bug regarding ParamLayoutFormatter loaded from plugin.</li>
-      <li>Fixed crash during initalization of journal abbreviation list.</li>
-      <li>Added option to have JabRef search for external file when &quot;Open file&quot; function is chosen for an entry without any linked files. This is similar to what was always done in JabRef 2.3.1 and earlier.</li>
-      <li>Improved regular expression file search, so the regular expression can contain field markers as used for BibTeX key generation in addition to just regular fields. It is no longer possible to call arbitrary layout formatters, but the modifiers &quot;upper&quot;, &quot;lower&quot; and &quot;abbr&quot; (for case conversion and abbreviation) can be used.</li>
-      <li>Ris importer now imports PB as &quot;school&quot; instead of &quot;publisher&quot; for THES entries.</li>
-      <li>Fixed bug 2157664: Current edit is now treated as an undoable edit in itself.</li>
-    </ul>
-
-    <h3>Version 2.4.1 (October 8th, 2008)</h3>
-
-      <ul>
-        <li>Fixed bug: layout formatter arguments were not set when using a ParamLayoutFormatter loaded from plugin.</li>
-        <li>Fixed bug: when abbreviating first names, for authors with first names connected with &quot;-&quot;, only the first letter is shown.</li>
-        <li>Enhanced ExportFormatTemplate plugins with an optional property &quot;encoding&quot; which overrides the default encoding with the given one.</li>
-        <li>Fixed menu colors under Windows Vista.</li>
-        <li>Fixed bug 2137771: Missing file extension when downloading.</li>
-        <li>Fixed bug 2105329: Ensure that newly added entry is visible in table.</li>
-        <li>Fixed bug 1908222: Preference &quot;Fit table horizontally on screen&quot; doesn't work</li>
-        <li>Fixed bug 2119059: Handling of the A1 tag in the RIS format.</li>
-        <li>Added missing help file for ACM digital library fetcher.</li>
-        <li>Added option for whether to use IEEE LaTeX journal abbreviation list.</li>
-        <li>Added tooltip to menu items in push-to-application popup menu.</li>
-      </ul>
-
-
-    <h3>Version 2.4 (September 1st, 2008)</h3>
-
-      <ul>
-        <li>Added mappings for some special characters that need to be sanitized when generating BibTeX keys.</li>
-        <li>Added ACM Digital Library fetcher by Aaron Chen.</li>
-        <li>Added new entry types (conference, patent, standard, electronic).</li>
-        <li>Improvements to IEEEXplore fetcher.</li>
-        <li>Added explanatory text to indicate that "ps" and "pdf" files are legacy features.</li>
-        <li>Fixed unexpected behaviour of "Open PDF or PS" menu item - now looks in "file" field, and does not launch search for external files.</li>
-        <li>Fixed bug 1827568: 'Save database' might not store current edit in entry editor.</li>
-        <li>Fixed bug 2027944: updating custom export definitions requires restart.</li>
-      </ul>
-
-
-    <h3>Version 2.4beta (March 12th, 2008)</h3>
-
-      <ul>
-       <li>Added "protection" flag in Database properties. When this flag is set, JabRef will refuse to save the database when the file has been externally modified, until the changes have been reviewed and partly or completely accepted.</li>
-       <li>Fixed bug where the external update notification in the side pane would remain even if the referred database was closed.</li>
-       <li>Added two new search modes - display search results in a dialog, and global search.</li>
-       <li>Support for fetching from the command line using --fetch (contributed by Jan F. Boldt and David Kaltschmidt).</li>
-       <li>Support for fetching from Spires (contributed by Fedor Bezrukov).</li>
-       <li>Support for fetching from JSTOR (contributed by Tobias Langner, Juliane Doege, Sebastian de Hoog and Christoph Jacob)</li>
-       <li>Added context menu for file list editor with options to move/rename linked file as well as to automatically move the file to file directory and optionally rename after BibTeX key.</li>
-       <li>JabRef can now be extended by plugins (using the Java Plugin Framework JPF as the underlying technology). Currently extension points exist for:
-          <ul>
-            <li>ImportFormat</li>
-            <li>ExportFormat based on Templates</li>
-            <li>ExportFormat based on IExportFormat (contributed by Kariem Hussein)</li>
-            <li>LayoutFormatter</li>
-            <li>EntryFetcher</li>
-            <li>PushToApplication</li>
-          </ul>
-           JabRef uses JPFCodeGenerator (which was written just for JabRef) to generate helper classes for making JPF easier. Current version used: 0.4 http://forge.spline.inf.fu-berlin.de/projects/jpfcodegen/
-       </li>
-       <li>Print warnings if insufficient Java version is used or if JRE is not from Sun.</li>
-       <li>Memory Stick Mode: JabRef automatically loads configuration settings from jabref.xml and also writes them there if enabled.</li>
-       <li>Improved handling of crossrefs. Fields are now resolved in preview and export.</li>
-       <li>Updated dependencies, now using: JempBox-0.2</li>
-       <li>Improved handling of ArXiv URIs.</li>
-       <li>Changed default preference value: now using import inspection dialog also when just a single entry is imported.</li>
-       <li>[ 1620792 ] Fixed: JabRef randomly hangs during Medline fetch</li>
-       <li>[ 1738920 ] Fixed: Windows Position in Multi-Monitor environment</li>
-       <li>[ 1795355 ] Fixed: LatexFieldFormatter omits "{" on beginning of optional field</li>
-       <li>[ 1297576 ] New feature: Printing of entry preview (use right-click menu)</li>
-       <li>[ 1717849 ] Fixed: Bug in aux import (contributed by Kai Eckert)</li>
-       <li>[ 1749613 ] Fixed: About translation</li>
-       <li>[ 1709449 ] Fixed: Clicking a DOI from context menu fails</li>
-       <li>[ 1869331 ] Fixed: Uninstall after silent install removes Windows start menu</li>
-       <li>[ 1723219 ] Fixed: Strange message (LyX) while installing 2.3</li>
-       <li>Added handling of unknown file types when synchronizing the file field.</li>
-       <li>Changed the way customized external file types are stored. Types are now stored in a way analogous to a diff from the default types. This allows default types added in later versions to appear immediately, even if the user has customized the list.</li>
-       <li>Moved file preferences from General tab to new File tab.</li>
-       <li>Reduced horizontal size of preferences dialog.</li>
-       <li>Fixed handling of quotes when using the "abbr" modifier for key generator (Debian bug #448917).</li>
-       <li>Download file procedure now strips query string in order to find correct file extension (Debian bug #448027).    </li>
-      </ul>
-
-
-    <h3>Version 2.3.1 (November 29th, 2007)</h3>
-
-      <ul>
-       <li>Removed default applications for file types under Mac OS X, and made use of the standard "/usr/bin/open &lt;filename&gt;" way to open files except when an application name is explicitly set.</li>
-       <li>[ 1620792 ] Fixed: JabRef randomly hangs during Medline fetch</li>
-      </ul>
-
-
-    <h3>Version 2.3 (November 8th, 2007)</h3>
-
-      <ul>
-       <li>Added handling of unknown file types when synchronizing the file field.</li>
-       <li>Changed the way customized external file types are stored. Types are now stored in a way analogous to a diff from the default types. This allows default types added in later versions to appear immediately, even if the user has customized the list.</li>
-       <li>Moved file preferences from General tab to new File tab.</li>
-       <li>Reduced horizontal size of preferences dialog.</li>
-       <li>Fixed handling of quotes when using the "abbr" modifier for key generator (Debian bug #448917).</li>
-       <li>Download file procedure now strips query string in order to find correct file extension (Debian bug #448027).</li>
-      </ul>
-
-
-    <h3>Version 2.3beta3 (October 6th, 2007)</h3>
-
-      <ul>
-       <li>Export formats that output the character encoding now use common names for encodings instead of Java-specific names.</li>
-       <li>Added "Open" button in external link dialog box to test or use the link.</li>
-       <li>Added formatter WrapFileLinks which iterates over file links, producing a formatted string for each containing any desired information about the file link.</li>
-       <li>Applied Fedor Bezrukov patch (setting User-Agent in URLDownload to solve ArXiv problem).</li>
-       <li>Applied Aaron Chen's patch for fixing bugs in IEEExplore fetcher.</li>
-       <li>Applied Edward Valeev's patch for handling article numbers replacing pages in Refer/Endnote import.</li>
-       <li>Added toolbar button to entry editor for writing XMP-metadata.</li>
-       <li>Added paste and drag &amp; drop support to file list editor.</li>
-       <li>Added "authorLast" and "editorLast" markers for using last author's last name in BibTeX keys.</li>
-       <li>Added support for file field in Write XMP action.</li>
-       <li>Numeric fields (year, volume, number, pmid, citeseercitationcount) are now sorted as numbers when possible.</li>
-       <li>Improvements to the Ovid import filter.</li>
-       <li>Modified AuthorLastFirstAbbreviator and AuthorAbbreviator to accept names in both last-first and first-first format, but always return in last-first format. These two formatters are identical.</li>
-       <li>[ 1648789 ] Fixed: Problem on writing XMP when option to leave out some fields was active.</li>
-       <li>[ 1561990 ] Fixed: Exporting to WinEdt - apostrophe.</li>
-       <li>Fixed bug in entry editor: source panel edits were not properly stored when clicking a different entry in the main table.</li>
-       <li>Fixed problem with "Synchronize file links" not honouring database specific file directory.</li>
-       <li>Fixed problem with file type selection in external file link editor not being up-to-date.</li>
-       <li>Fixed problem with wrong enable/disable behaviour of Clear search button when switching between tabs.</li>
-       <li>Fixed argument parsing in AbstractParamLayoutFormatter so \t and \n can be used for tabs and newlines.</li>
-      </ul>
-
-
-    <h3>Version 2.3beta2 (August 29th, 2007)</h3>
-
-      <ul>
-       <li>When user chooses to save to an existing file, and answers that the file should not be overwritten, a new file dialog now appears instead of the operation cancelling.</li>
-       <li>Removed antialias setting for main table, because it interferes with proper rendering on LCDs when running under JRE 6. Removed non-optional antialias settings for entry editor for the same reason.</li>
-       <li>Changed external link handling so remote (http) links can be sent to the external application. Applications like Evince and Gimp can open remote links.</li>
-       <li>Replaced Simle HTML export filter with improved version by Mark Schenk.</li>
-       <li>Introduced ParamLayoutFormatter interface for layout formatters that can take an argument by the following syntax: \format[MyFormatter(argument)]{\field}. Implementing classes contain a setArgument(String) method that receives the argument (if any) before the format() method is called.</li>
-       <li>Timestamp and owner fields are now set also when appending a bib file, and new options have been introduced to control whether imported/appended/pasted entries should have these fields overwritten if already set.</li>
-       <li>Added operations for adding file links in import inspection window, and made file and URL icons in the table clickable.</li>
-       <li>Removed PDF and PS columns and operations in import inspection window (replaced by operations on the "file" field).</li>
-       <li>File field column in main table now shows file type icon instead of generic icon.</li>
-       <li>Modified Endnote export to take "file" field into account, and to resolve full paths to PDF files.</li>
-       <li>Added "Auto" button to automatically set "owner" field to the default username.</li>
-       <li>Added \encoding tag for begin/end layouts in export filters to print the name of the character encoding used for the export. The tag is not available in entry layouts.</li>
-       <li>Added \% as a supported LaTeX command, producing '%'.</li>
-       <li>Fixed bug in HTMLChars: commands like {\aa} and {\o} were not processed properly, even though defined in Globals.HTMLCHARS.</li>
-       <li>Fixed bug that made it possible to accidentally close database without saving, when error occurs during the save operation.</li>
-      </ul>
-
-
-    <h3>Version 2.3beta (June 28th, 2007)</h3>
-
-      <ul>
-       <li>Added MIS Quarterly export format.</li>
-       <li>Added support for COPAC file format.</li>
-       <li>Added RemoveTilde LayoutFormatter to deal with Bibtex non-breakable spaces.</li>
-       <li>Added autocompletion feature for author/editors and other fields.</li>
-       <li>Added feature to save all open databases.</li>
-       <li>Added support for pushing citations to Vim when Vim server is enabled.</li>
-       <li>Added missing option for specifying the path to LEd.exe.</li>
-       <li>Added -s/--nosplash command line option for disabling the splash screen.</li>
-       <li>Added new field marker [auth.etal] for key generation.</li>
-       <li>Added support in XMP metadata handling for bibtex string resolution.</li>
-       <li>When opening databases, already open files are now skipped.</li>
-       <li>Option to use native instead of Swing file dialogs is now available on all OSes.</li>
-       <li>Synchronize external links now searches entire database, not selected entries.</li>
-       <li>Medline import now adds &lt;Affiliation&gt; information into the "institution" field.</li>
-       <li>Improved handling of external links. The 'file' field can now specify a list of external links, and arbitrary file types are supported. Old-style PDF and PS links can be moved automatically into the 'file' field.</li>
-       <li>Fixed bug in RIS and Refer/Endnote imports. Entries with editors but no authors are now imported properly.</li>
-       <li>Fixed missing export formatter AuthorFirstFirstCommas.</li>
-       <li>Fixed minor bug in Harvard export with missing space between year and title.</li>
-       <li>Fixed bug that caused lockup when connection to IEEExplore fails.</li>
-       <li>Fixed wrong dependency in OAI2/ArXiv Fetcher.</li>
-       <li>Fixed problem with foreign characters in OAI2/ArXiv Fetcher.</li>
-       <li>Fixed problem with key generation in OAI2/ArXiv Fetcher.</li>
-       <li>Fixed bug in duplicate search that made misc entries never get detected as duplicates.</li>
-       <li>Fixed bug in XMP reimport from DublinCore related to month strings.</li>
-      </ul>
-
-
-    <h3>Version 2.2 (January 30th, 2007)</h3>
-
-      <ul>
-       <li>Added progress bar to indicate progress when synchronizing PS/PDF links.</li>
-       <li>Option to autogenerate key for imported entries now also affects entries imported
-      without using the import inspection window.</li>
-       <li>Modified quick jump behaviour so sequences of letters can be found. Timeout or
-      ESC resets the search.</li>
-       <li>Improved XMP support:
-          <ul>
-           <li>JabRef now reads and write DublinCore and Legacy Document Properties;
-               Caution needs to be used though since, JabRef does overwrite existing values.</li>
-           <li>XMP privacy filter can be used to prevent sensible fields to be exported.</li>
-          </ul>
-       </li>  
-       <li>Support for OAI2 identifiers with subcategories, e.g. math.RA/0601001</li>
-       <li>Fixed bug that made explicit groups appear empty after updating group tree from external change.</li>
-       <li>New windows installer thanks to Uwe St&ouml;hr.</li>
-       <li>[ 1641247 ] Fixed: No update of preview after generating bibtex key</li>
-       <li>[ 1631548 ] Fixed: Absolute paths should be stored for last open files.</li>
-       <li>[ 1598777 ] Fixed: Month sorting</li>
-       <li>[ 1570570 ] New Feature: Deselect all duplicates on import</li>
-       <li>[ 1574773 ] Fixed: sanitizeUrl() breaks ftp:// and file:///</li>
-       <li>[ 1609991 ] Fixed: Silverplatter Import: Publisher and Year confused</li>
-       <li>[ 1608391 ] Fixed: Medline Search Editbox size gets to big</li>
-      </ul>
-
-
-    <h3>Version 2.2beta2 (November 26th, 2006)</h3>
-
-      <ul>
-       <li>Redesigned export functions to simplify GUI and provide &quot;Export selected entries&quot; functionality. Export filter is now chosen using the file type dropdown menu in the file dialog.</li>
-       <li>Fixed bug that caused UnsupportedEncodingException on Windows when saving.</li>
-       <li>Added warning dialog when exporting failed.</li>
-       <li>Added fix for exporting special chars in RTF like &eacute;&oacute;&uacute;...</li>
-       <li>Added NameFormat LayoutFormatter based on Bibtex method name.format$</li>
-       <li>Added Fetch from ArXiv.org to Web Search<br />
-            [1587342] Quering ArXiv (and any OAI2 Repository)</li>
-       <li>[1594123] Fixed: Failure to import big numbers in Bibtex</li>
-       <li>[1594169] Fixed: Entry editor navigation between panels faulty</li>
-       <li>[1588028] Fixed: Export HTML table has relative DOI URL</li>
-       <li>[1601651] Fixed: PDF subdirectory - missing first character</li>
-      </ul>
-
-
-    <h3>Version 2.2beta (October 13th, 2006)</h3>
-
-      <ul>
-       <li>Added Mark Schenk's advanced HTML export filter.</li>
-       <li>Added options to copy/move/link to dragged linkable file (pdf, ps, etc.).</li>
-       <li>Removed unnecessary output text when scanning for external file changes.</li>
-       <li>Changed layout of entry editor to solve problem with collapsing text fields.</li>
-       <li>Added first version of support for XMP-metadata in PDFs.
-          <ul>
-           <li>"Import into..."</li>
-            <li>Integrate with copy/move/link.</li>
-            <li>Added option to write all/selected PDFs in database</li>
-          </ul>
-       </li>
-       <li>Added tooltips to database tabs showing the file's full path.</li>
-       <li>Added function for setting or clearing specific fields in selected or all entries.</li>
-       <li>Setting a relative PDF/PS path in Database Properties now makes JabRef look for the directory relative to the bib file's location.</li>
-       <li>Removed Oxford comma from AuthorList...Comma-LayoutFormatters.</li>
-       <li>Added LayoutFormatters that print the Oxford comma.</li>
-       <li>Added missing space between abbreviated author first names: William Andrew Paul => W. A. Paul (used to be W.A. Paul)</li>
-       <li>Added LayoutFormatter for HTML paragraphs.</li>
-       <li>Changing Database Properties now causes the database to be marked as changed.</li>
-       <li>Improved simple search. Words are now treated as separate search terms, and phrases can be indicated with "double quotes".</li>
-       <li>When a letter key is pressed in the table, the first entry starting with the same letter (in the current sort column) is selected.</li>
-       <li>Bib files dragged into JabRef now appear in the Recent files menu.</li>
-       <li>Fixed bug in import dialog.</li>
-       <li>Better support for ISI files in general (should basically be better than INSPEC) including IEEE parsing.</li>
-       <li>Added regular expression search for auto-linking. Search is now more flexible by default.</li>
-       <li>Search operation also now search relative to the JabRef directory.</li>
-       <li>General improvements in Inspec ISI handling.</li>
-       <li>New LayoutFormatter: AuthorOrgSci - first author is in "last, first" all others in "first last". First names are abbreviated.</li>
-       <li>New LayoutFormatter: NoSpaceBetweenAbbreviations - spaces between multiple abbreviated first names are removed.</li>
-       <li>Improved PDF link resolver to produce proper URIs.</li>
-       <li>[1503956] Fixed: Help text instead of Help icon.</li>
-       <li>[1542552] Fixed: Wrong author import from ISI file.</li>
-       <li>[1534537] Fixed: resize groups interface</li>
-       <li>[1465610] Fixed: (Double-)Names containing hyphen (-) not handled correctly</li>
-       <li>[1436014] Fixed: No comma added to separate keywords</li>
-       <li>[1548875] Fixed: download pdf produces unsupported filename</li>
-       <li>[1545601] Fixed: downloading pdf corrupts pdf field text</li>
-       <li>[1285977] Fixed: Impossible to properly sort a numeric field</li>
-       <li>[1535044] Fixed: Month sorting</li>
-       <li>[1540646] Fixed: Default sort order: bibtexkey</li>
-       <li>[1553552] Fixed: Not properly detecting changes to flag as changed</li>
-      </ul>
-
-    <h3>Version 2.1 (August 9th, 2006)</h3>
-
-      <ul>
-       <li>Added capability to drag files and WWW links into JabRef. BibTeX files will be opened normally, other files imported, and WWW links downloaded and imported.</li>
-       <li>The -v command line option now makes the application only print version number and quit immediately.</li>
-       <li>Duplicates within a set of imported entries are now found and shown in the import inspection window.</li>
-       <li>Mac users can now choose between native and Swing file chooser under Preferences -> Advanced.</li>
-       <li>Fixed missing duplicate warning when importing without import inspection window.</li>
-       <li>Fixed error in ISI import which allowed empty fields to be set, causing errors when saving and reloading entries.</li>
-       <li>Fixed missing time and owner stamps when importing entries (only in 2.1b/2.1b2).</li>
-       <li>Fixed erroneous updates in entry editor if user switches to a different entry while downloading PDF/PS file.</li>
-       <li>Fixed bug (only in 2.1b2) in calling file open/save dialog on Mac OS X.</li>
-       <li>Fixed bug that made duplicate resolver dialog pop under import inspection dialog.</li>
-      </ul>
-
-    <h3>Version 2.1beta2 (June 29th, 2006)</h3>
-
-      <ul>
-       <li>Added option to toggle floating of marked entries to the top of the table.</li>
-       <li>Added option to open, append and import multiple BibTeX files.</li>
-       <li>Improved support for LaTeX special characters in HTML and RTF representations.</li>
-       <li>Fixed bug that made entry selection get lost when an edit modifies the entry's position in the main table.</li>
-       <li>Fixed bug in BibTeXML export (entry type name missing in tag).</li>
-       <li>Fixed name handling in (non-compliant) Endnote files giving all author names on the same line.</li>
-       <li>Fixed problem with keyword handling in Medline import.</li>
-       <li>Fixed (harmless) NullPointerException when medline fetch is cancelled.</li>
-       <li>Fixed bug in parser that made {&quot;} illegal in fields quoted with &quot;.</li>
-      </ul>
-
-    <h3>Version 2.1beta (May 9th, 2006)</h3>
-
-      <ul>
-       <li>Known issue: font sizes cannot be changed, but should follow OS settings on Windows and Mac.</li>
-       <li>Known issue: some HTML may be handled inappropriately when downloading from IEEEXplore.</li>
-       <li>Changed Paste function so timestamp and owner fields are updated.</li>
-       <li>Added "Other" item to the "New entry ..." menu.</li>
-       <li>Changed sorting order so marked entries are displayed at the top of the table.</li>
-       <li>Added IEEEXplore search and download feature.</li>
-       <li>Added option to store entries in their original order. Unsorted table view now shows entries in their original order.</li>
-       <li>Added option to autogenerate keys for entries with missing keys before each save.</li>
-       <li>Improved handling of external URLs to prevent problems with special characters.</li>
-       <li>Medline and Endnote imports no longer automatically add curly braces around capital letters in title.</li>
-       <li>Float search now scrolls table to the top.</li>
-       <li>Fixed lockup problem in preview with uneven number of # characters in fields.</li>
-       <li>Fixed problem with default content selector fields reappearing after removal.</li>
-       <li>Fixed problem with unsupported character encodings being selectable and causing unreported save errors.</li>
-       <li>Fixed bug that blocked last line in table columns setup from being removed.</li>
-       <li>Fixed missing export formats from command line.</li>
-       <li>Fixed bug that made Review tab impossible to remove from entry editor.</li>
-       <li>Fixed bug in Medline XML import that assigned wrong PMID for some entries.</li>
-       <li>Fixed bug in custom export that collapsed sequences of two or more backslashes into a single backslash in output.</li>
-       <li>Fixed bug (misspelled formatter name) in Harvard RTF export.</li>
-      </ul>
-
-    <h3>Version 2.0.1 (February 2nd, 2006)</h3>
-
-      <ul>
-       <li>Fixed bug that made a hidden entry editor under some circumstances store a field value to the wrong entry.</li>
-       <li>Fixed synchronization bug that made the opening of a new database sometimes fail.</li>
-       <li>Fixed bug in setting external journal lists when no personal list is set.</li>
-      </ul>
-
-    <h3>Version 2.0 (January 30th, 2006)</h3>
-
-      <ul>
-       <li>Changed sorting selection interface for main table for more intuitive operation.</li>
-       <li>Made import operation update &quot;working directory&quot;.</li>
-       <li>Removed hard-coded author/editor name rearrangement in OpenOffice and OpenDocument exports.</li>
-       <li>Fixed hangup when parsing RIS files from Nature.</li>
-       <li>Fixed NullPointerException when generating database from AUX file on Mac OS X.</li>
-       <li>Fixed bug in routine for adding braces around capital letters.</li>
-       <li>Fixed bug in switching preview layouts.</li>
-       <li>Fixed bug in link handling in entry preview.</li>
-      </ul>
-
-    <h3>Version 2.0b2 (January 15th, 2006)</h3>
-
-      <ul>
-       <li>Changed field order in OpenDocument export
-       to comply with bibliography requirement.</li>
-       <li>Added support for inserting citations into
-       Emacs using gnuserv/gnuclient.</li>
-       <li>Added option to set a regular expression
-       replace operation on generated bibtex keys.</li>
-       <li>Added support for custom importers inside
-       a jar file.</li>
-       <li>Fixed bug in opening URLs containing &quot;&amp;&quot;
-       on Windows.</li>
-      </ul>
-
-    <h3>Version 2.0b (January 4rd, 2006)</h3>
-
-      <ul>
-       <li>Added a system for registering custom import
-       formats in the form of Java classes.</li>
-
-       <li>Added export option for OpenDocument
-       spreadsheet.</li>
-
-       <li>Added new options for name formatting in main
-       table.</li>
-
-       <li>Added REPEC-NEP import filter.</li>
-
-       <li>Added option for non-field parameters for export
-       formatters. If the parameters does not start with the
-       backslash character, it will be passed unchanged to the
-       formatter in place of any field value.</li>
-
-       <li>Added export formatter CurrentDate, which returns
-       the current date, and takes a format string as
-       parameter.</li>
-
-       <li>Added customization of table colors, accessible
-       from Tools -&gt; Preferences -&gt; Entry table.</li>
-
-       <li>Added new Appearance tab to preferences dialog to
-       gather appearance related options.</li>
-
-       <li>Added toggling of abbreviated and full journal
-       names. The list of journals is realized as an external
-       file, but editable from a Manage Journal Abbreviations
-       panel. Secondary lists can also be linked, but not
-       edited. There is a download option to quickly get a
-       list available on the internet, and we will provide one
-       or more lists for download from the SourceForge web
-       server.</li>
-
-       <li>Added functionality for new JabRef instances to
-       detect a running instance, and send command line
-       parameters to the running instance for processing.</li>
-
-       <li>Added handling of HTML links in preview panel.</li>
-
-       <li>Added confirmation dialog when database is saved
-       and the chosen encoding doesn't support all characters.
-       Gives options to save, cancel or try a different
-       encoding.</li>
-
-       <li>The encoding used when opening a database is now
-       remembered, and used when database is stored.</li>
-
-       <li>Added review field for research comments, paper
-       reviews, etc.</li>
-
-       <li>Added option to disable wrapping for certain
-       fields. Wrapping of pdf, ps, doi and url is disabled by
-       default.</li>
-
-       <li>Antialiasing option now affects entry editor text
-       fields as well as table text.</li>
-
-       <li>Changed to monospaced font in source editor
-       field.</li>
-
-       <li>Removed option to put double braces around BibTeX
-       fields, but retained option to remove double braces
-       when loading. Added option to put braces around capital
-       letters of a chosen set of fields.</li>
-
-       <li>Improved Ovid import.</li>
-
-       <li>Fixed problem with ordering of BibTeX strings that
-       are referred to by other strings.</li>
-
-       <li>Fixed problem with loading 16-bit encoded bib files
-       with 8-bit encoding as default, and vice versa.</li>
-
-       <li>Fixed multiplying authors bug when author/editor
-       field appears both in Required and Optional tabs.</li>
-
-       <li>Fixed startup freeze when trying to load certain
-       malformed bib files.</li>
-
-       <li>Fixed bug related to multi-line fields in RIS
-       import.</li>
-
-       <li>Fixed bug related to looking up a fully qualified
-       DOI</li>
-
-       <li>Included review field to preview panel 1, which
-       shows the abstract</li>
-
-       <li>Fixed bug where booktitle field was not displayed
-       in preview for conference proceedings, similar to
-       journal field</li>
-      </ul>
-
-    <h3>Version 1.8.1 (September 15th, 2005)</h3>
-
-      <ul>
-       <li>Added automatic timestamp with configurable format
-       for entries.</li>
-
-       <li>Added new key generator modifier ":abbr" to
-       abbreviate field contents.</li>
-
-       <li>Added Help button in Preferences -&gt; Entry
-       preview</li>
-
-       <li>Added Big5, Big5_HKSCS and GBK encodings for
-       Chinese.</li>
-
-       <li>Improved marking feature. Username is now used for
-       marking, so different users can mark entries separately
-       without interference.</li>
-
-       <li>Improved handling of names such as "Firstname de la
-       Lastname jr.", with different handling for presentation
-       and sorting purposes. Key generation now should always
-       use the genuine last name, and not produce keys like
-       "de2001".</li>
-
-       <li>Removed duplicate warning from inspection dialog
-       for non-selected entries.</li>
-
-       <li>Fixed setting of sheet name in OpenOffice.org Calc
-       export.</li>
-
-       <li>Fixed bug that prevented PDF/PS opening by F4 from
-       automatically finding files in subdirectories below the
-       main PDF/PS dir.</li>
-
-       <li>Fixed BibTeX parser bug that made it choke on short
-       comment strings.</li>
-
-       <li>Fixed bug that made regexp search fail for fields
-       containing newline characters.</li>
-
-       <li>Fixed platform-dependent handling of newline
-       characters.</li>
-
-       <li>Fixed bug that prevented command line import with
-       explicit format.</li>
-
-       <li>Fixed bug that made it impossible to disable table
-       antialiasing.</li>
-
-       <li>Fixed AuthorAndsCommaReplacer.</li>
-      </ul>
-
-    <h3>Version 1.8 (July 30th, 2005)</h3>
-
-      <ul>
-       <li>Search panel now starts visible if it was visible
-       at last shutdown.</li>
-
-       <li>Added option to disable import inspection window
-       when only one entry is being imported.</li>
-
-       <li>Fixed parser bug that caused problems for bib files
-       containing extra characters after the last entry.</li>
-
-       <li>Fixed missing month in JStor import.</li>
-
-       <li>Fixed some bugs in "new from plain-text"
-       wizard</li>
-      </ul>
-
-    <h3>Version 1.8b2 (July 13th, 2005)</h3>
-
-      <ul>
-       <li>Changed handling of external updates so the
-       notification is suppressed when there are no actual
-       changes.</li>
-
-       <li>Changed autodetecting import so BibTeX files are
-       handled more similarly to other formats.</li>
-
-       <li>Enabled sorting by icon columns.</li>
-
-       <li>Added option to remove BibTeX source panel from
-       entry editor.</li>
-
-       <li>Added command line option to not load any files at
-       startup. Will override any autoloading or other command
-       line options that normally load or import files.</li>
-
-       <li>Added handling of duplicates to import inspection
-       window.</li>
-
-       <li>Made entry preview be updated whenever the
-       selection is expanded by one row, to make it more
-       useful while selecting a set of entries.</li>
-
-       <li>Changed BibTeX field parsing to avoid inserting
-       line breaks at wrong places.</li>
-
-       <li>Improved handling of page numbers in Medline
-       import.</li>
-
-       <li>Fixed import of file links when importing SixPack
-       files.</li>
-
-       <li>Fixed bug that prevented closing of search
-       interface when no databases are open.</li>
-
-       <li>Fixed OpenOffice Calc export to be compatible with
-       OpenOffice.org 2.0 beta.</li>
-
-       <li>Fixed bugs in Refer/Endnote import filter.</li>
-
-       <li>Fixed bug that caused changes to be lost in some
-       cases when the same field is present in multiple entry
-       editor tabs.</li>
-
-       <li>Fixed bug that prevented command line autodetecting
-       import from working with BibTeX files.</li>
-
-       <li>Fixed minor bug in routine for removing double
-       braces.</li>
-      </ul>
-
-    <h3>Version 1.8b (June 6th, 2005)</h3>
-
-      <ul>
-       <li>Added option to store bib file with double
-       braces.</li>
-
-       <li>Follow @input tags in aux files to indicate nested
-       aux files for generating subdatabases.</li>
-
-       <li>Improved wrapping and formatting of bib files, to
-       preserve paragraph separator (empty line).</li>
-
-       <li>Added test buttons for customization of preview
-       layouts.</li>
-
-       <li>Added inspection dialog for previewing and
-       generating keys for imported entries, and deciding
-       which ones to keep and discard. The dialog allows
-       inspection during long import processes such as Medline
-       search.</li>
-
-       <li>Restructured layout to use a common side pane with
-       all tabs.</li>
-
-       <li>Added import filter for Cambridge Scientific
-       Abstracts (CSA) format.</li>
-
-       <li>Added PS directory with similar options as
-       PDF.</li>
-
-       <li>Added [authshort] and [edtrshort] key field
-       markers. Patch submitted by Kolja Brix.</li>
-
-       <li>Made the program remember preview enable
-       setting.</li>
-
-       <li>Improved handling of illegal regular expressions in
-       search.</li>
-
-       <li>Removed options to search only Required, Optional
-       and/or General fields, in order to simplify search
-       interface.</li>
-
-       <li>Changed keys for Next and Previous tab to CTRL-PGDN
-       and CTRL-PGUP to match shortcuts in a certain popular
-       web browser.</li>
-
-       <li>Minor change to Preferences -&gt; Table columns to
-       enable insertion of column in position 2.</li>
-
-       <li>Fixed parser bug that caused problems for files
-       with &gt;10000 entries.</li>
-
-       <li>Fixed bug in entry editor that caused the source
-       edit panel to remove marking from entries.</li>
-
-       <li>Fixed export bug that made "\begin" tags fail if
-       encountered immediately after an "\end" tag.</li>
-
-       <li>Fixed export bug that made whitespace disappear
-       after empty field values.</li>
-
-       <li>Fixed ISI import bug that handled SO fields with
-       line breaks wrong.</li>
-
-       <li>Fixed bug occuring when choosing not to import
-       duplicate imported entry.</li>
-
-       <li>Fixed problem with detecting popup trigger on Mac
-       OSX with one button mouse.</li>
-
-       <li>Fixed erroneous relative paths for PDF files when
-       PDF directory is not set.</li>
-
-       <li>Fixed entry preview to resolve string
-       references.</li>
-      </ul>
-
-    <h3>Version 1.7.1 (April 11th, 2005)</h3>
-
-      <ul>
-       <li>Removed unnecessary stack traces when opening
-       external viewer.</li>
-
-       <li>Fixed bug that made Ctrl-E destroy current edit in
-       entry editor.</li>
-
-       <li>Fixed problem when copying modified BibTeX key gave
-       old value.</li>
-
-       <li>Fixed missing 'booktitle' import in CONF entries in
-       RIS import.</li>
-
-       <li>Fixed bug that made group tree disappear for
-       certain keyword expressions.</li>
-
-       <li>Fixed bug that made standard BibTeX fields be saved
-       without line wrapping.</li>
-      </ul>
-
-    <h3>Version 1.7 (March 20th, 2005)</h3>
-
-      <ul>
-       <li>When fetching from Medline or CiteSeer, fetched
-       entry is now opened in editor.</li>
-
-       <li>Added French translations of help files.</li>
-
-       <li>Added color highlighting of focused text field in
-       entry editor.</li>
-
-       <li>Added option in context menu of entry editor for
-       changing capitalization of field contents.</li>
-
-       <li>Added name conversion "Smith, RA" -&gt; "Smith, R.
-       A." to Medline import.</li>
-
-       <li>Updated task bar icon.</li>
-
-       <li>Fixed bug that left some search settings items
-       inappropriately disabled.</li>
-
-       <li>Fixed bug that caused requirement for restart to
-       register change in default key pattern.</li>
-
-       <li>Fixed bug that caused crash some times after
-       adding/removing field content selectors.</li>
-
-       <li>Fixed bug in recognizing custom entry types when
-       reading bib files.</li>
-
-       <li>Fixed bug that allowed a deleted entry to stay
-       visible in the entry editor.</li>
-      </ul>
-
-    <h3>Version 1.7b2 (March 7th, 2005)</h3>
-
-      <ul>
-       <li>Made side pane resizable.</li>
-
-       <li>Replaced entry customization dialog with improved
-       interface.</li>
-
-       <li>Added standard entry type "conference", similar to
-       "inproceedings".</li>
-
-       <li>Added "default" label pattern to avoid the need to
-       set similar patterns manually.</li>
-
-       <li>Added line wrapping to metadata in saved .bib file
-       to avoid long lines.</li>
-
-       <li>Added "bibtexkey" as implicit fourth sort
-       criterion, to minimize problem with almost similar
-       entries swapping places.</li>
-
-       <li>Added OpenOffice.org Calc export filter that
-       exports spreadsheet compatible with the OpenOffice.org
-       bibliography feature.</li>
-
-       <li>Added a couple of previously unsupported
-       publication types in SciFinder.</li>
-
-       <li>Added extra shortcuts CTRL-+ and CTRL-- for
-       switching tabs in entry editor, since original
-       shortcuts CTRL[-SHIFT]-TAB is used by some window
-       managers.</li>
-
-       <li>Updated Endnote export filter.</li>
-
-       <li>Fixed focus and key binding problems for switching
-       tabs/entries in entry editor</li>
-
-       <li>Fixed bug that prevented required fields tab from
-       appearing for entries with only bibtex key as required
-       field.</li>
-
-       <li>Fixed bug that prevented the user from changing the
-       default encoding.</li>
-
-       <li>Fixed bugs in RIS import.</li>
-
-       <li>Fixed bug 1112050; freeze when reading certain
-       author fields with mismatched braces.</li>
-      </ul>
-
-    <h3>Version 1.7 beta (January, 27th, 2005)</h3>
-
-      <ul>
-       <li>Changed routine for rearranging author names
-       (Lastname, Firstname) so bracketed expressions are
-       treated as units.</li>
-
-       <li>Grouping controls now allow group hierarchies, and
-       now allow explicit and search expression groups as well
-       as keyword groups.</li>
-
-       <li>Added full customization of general fields
-       tabs</li>
-
-       <li>Added option to preserve formatting for non-BibTeX
-       fields.</li>
-
-       <li>Added integrity check for database.</li>
-
-       <li>Added export filters EndNote and Harvard RTF.</li>
-
-       <li>Added automatic import format chooser for import
-       (same as wildcard import below).</li>
-
-       <li>Added wildcard (*) option for command-line import,
-       to try to automatically determine the correct
-       format.</li>
-
-       <li>Improved layout of Preferences dialog.</li>
-
-       <li>Improved several import filters.</li>
-
-       <li>Added authIniN/edtrIniN key formatters.</li>
-
-       <li>Marked entries now float to the top when no
-       searching or grouping reordering is active.</li>
-
-       <li>Fixed problem with opening file dialog on Win NT -
-       AWT dialog is now opened if Swing dialog fails.</li>
-      </ul>
-
-    <h3>Version 1.6 (November 27th, 2004)</h3>
-
-      <ul>
-       <li>Improved handling of entry selection in various
-       ways. E.g. selected entry is now scrolled into view
-       when opening entry editor and entry is kept selected
-       when importing CiteSeer fields.</li>
-
-       <li>Fixed update bug between autogenerated bibtex key
-       and source panel.</li>
-
-       <li>Fixed missing . at the end of last author name in
-       RIS import.</li>
-
-       <li>Fixed NullPointerException on certain special
-       characters when exporting to BibTeXML.</li>
-
-       <li>Fixed bug that sometimes prevented the unmarking of
-       entries.</li>
-
-       <li>Fixed problem with formatting one-name
-       authors.</li>
-
-       <li>Various other bugfixes.</li>
-      </ul>
-
-    <h3>Version 1.6 beta (November 8th, 2004)</h3>
-
-      In an effort to produce better and more stable releases,
-      we have decided to release a beta versions prior to
-      future versions. We start out with today's beta release
-      of version 1.6. Users can now choose whether to download
-      and use the beta version for earlier access to new
-      features, or whether to wait for the final, better-tested
-      version. The final 1.6 version is expected to be released
-      in a few weeks from today.
-
-      <ul>
-       <li>Added mnemonic keys to menus and menu items.</li>
-
-       <li>Added MODS and tab-separated file export</li>
-
-       <li>Added facility for detecting and handling external
-       changes to open bib files.</li>
-
-       <li>Added scan option for exact duplicates with
-       automatic removal.</li>
-
-       <li>Bibtex strings are now sorted automatically.</li>
-
-       <li>Bibtex strings are now resolved when exporting
-       database.</li>
-
-       <li>Fixed problem with field content selector getting
-       too wide. Limited width.</li>
-
-       <li>Fixed PDF/PS view routine to remove problems with
-       filenames containing spaces.</li>
-
-       <li>Fixed bug that interfered with Fetch Medline by ID,
-       and fixed parsing problem with certain Medline
-       entries.</li>
-
-       <li>Fixed bug that interfered with Push to WinEdt.</li>
-
-       <li>Fixed HTML output so \c{c} is handled
-       correctly.</li>
-
-       <li>command line option for generating a sub-database
-       from LaTex aux file entries</li>
-
-       <li>simple copy/paste menu in entry editor</li>
-
-       <li>experimental: text-input-area with underlying
-       infotext in plaintext import dialog</li>
-      </ul>
-
-    <h3>Version 1.55 (October 12th, 2004)</h3>
-
-      <ul>
-       <li>Made method for opening PDF files robust with
-       regard to file separators (/ and \), so bib files can
-       easier be used across platforms.</li>
-
-       <li>Improved Medline fetcher. Can now fetch entries
-       based on a search expression.</li>
-
-       <li>Added features for fetching fields and referring
-       publications from the CiteSeer database.</li>
-
-       <li>Added option to always save database ordered by
-       author/editor/year, and made this the default
-       setting.</li>
-
-       <li>When a single entry is selected, right-click menu
-       now shows a checkbox menu for group memberships instead
-       of the regular "Add to" and "Remove from" menus.</li>
-
-       <li>Improved [shorttitle] and [veryshorttitle] special
-       key pattern fields.</li>
-
-       <li>Added dialog box for conveniently setting the
-       fields of an entry from a plain text description.</li>
-
-       <li>Added formatter "ResolvePDF" to create correct
-       PDF/PS links in HTML export when relative file names
-       are used.</li>
-
-       <li>Added Abstract panel in entry editor.</li>
-
-       <li>Added alternate preview with abstract, and made
-       both previews configurable.</li>
-
-       <li>Added the option to create a subset of a database
-       based on an .aux file.</li>
-
-       <li>Added 'Cancel' button to duplicate resolver dialog,
-       so the process can be stopped.</li>
-
-       <li>Added check for spaces in custom entry type
-       names.</li>
-
-       <li>Added several new key pattern markers.</li>
-
-       <li>Added toolbar buttons for Mark/Unmark to improve
-       discoverability.</li>
-
-       <li>Fixed bug that made export filters ignore the
-       chosen character encoding.</li>
-
-       <li>Fixed bug that interfered with author name
-       formatting.</li>
-
-       <li>Fixed various bugs in import filters.</li>
-
-       <li>Fixed bug that prevented confirmation dialog when
-       deleting entry from the entry editor.</li>
-
-       <li>Fixed bug that made the next entry be opened
-       instead of the current, when pressing Enter in
-       table.</li>
-
-       <li>Fixed bug that made it possible to leave a source
-       edit when the source didn't validate properly. Also
-       made it impossible to change table selection until
-       source validates.</li>
-      </ul>
-
-    <h3>Version 1.5 (August 3rd, 2004)</h3>
-
-      <ul>
-       <li>Added Highlight and select options to the group
-       interface, and made it possible to change the number of
-       visible lines in the list.</li>
-
-       <li>Added option to allow or disallow direct table
-       editing.</li>
-
-       <li>Added optional confirmation dialog for deleting
-       entries.</li>
-
-       <li>Added optional warning dialog for duplicate BibTeX
-       keys.</li>
-
-       <li>Added warnings to bibtex parser, and prevented
-       failure to load files with duplicate string
-       definitions.</li>
-
-       <li>Added JStor import filter.</li>
-
-       <li>Changed the look and feel to JGoodies Forms on
-       non-Macintosh platforms.</li>
-
-       <li>Optimized performance in several areas.</li>
-
-       <li>Numerous usability improvements.</li>
-
-       <li>Fixed RIS import bug caused by short lines.</li>
-
-       <li>Fixed bug in SciFinder import.</li>
-
-       <li>Fixed bug that made entire field get cleared when
-       removing from group.</li>
-      </ul>
-
-    <h3>Version 1.4 (June 6th, 2004)</h3>
-
-      Version 1.4 provides command line options for importing
-      and exporting files, advanced search, custom export
-      filters, and several bug fixes and minor changes.
-
-      <ul>
-       <li>Added advanced search feature.</li>
-
-       <li>Added facility for using custom export
-       formats.</li>
-
-       <li>Added command line options for importing/exporting
-       files, importing/exporting, user preferences, loading
-       session and for suppressing the GUI (using RitOpt for
-       parsing options).</li>
-
-       <li>Added automatic stripping of \url{} when opening
-       url.</li>
-
-       <li>Improved export filters.</li>
-
-       <li>Fixed focus bug which sometimes interfered with
-       cut/copy/paste.</li>
-      </ul>
-
-    <h3>Version 1.3.1 (May 9, 2004)</h3>
-
-      Release 1.3.1 resolves a couple of severe bugs in 1.3.
-      All users who have downloaded 1.3 should upgrade (the
-      bugs in 1.3 impaired functionality but did not pose a
-      security risk).
-
-    <h3>Version 1.3.* (May 9, 2004)</h3>
-
-      This release adds entry preview, detection of duplicate
-      entries, persistent entry marking, new import and export
-      filters, better linking to PDF/PS/URL/DOI, and better Mac
-      OS X compatibility. There are several other changes and
-      improvements, and many bugfixes.
-
-    <h3>Version 1.2 (March 21, 2004)</h3>
-
-      The icon set has been replaced. Notable new features are
-      French language support, key generator customization,
-      string replace, and BibTeXML import. Several bugs have
-      been fixed.
-
-    <h3>Version 1.19 (Feb 19,2004)</h3>
-
-      <ul>
-       <li>Entry editor is now opened for an entry that causes
-       an error when saving.</li>
-
-       <li>Added options to display names in harmonised format
-       in the main table.</li>
-
-       <li>Added Docbook and (experimental) HTML export.</li>
-
-       <li>Enabled 'doi' and 'pii' fields for Medline
-       import.</li>
-
-       <li>Enabled antialiasing fonts.</li>
-
-       <li>Added the Kunststoff look&amp;feel to give a more
-       pleasant user interface.</li>
-
-       <li>Added font selector for the main table.</li>
-
-       <li>Improved table column customization.</li>
-
-       <li>Added word selector feature for selected fields
-       (keywords, journal).</li>
-
-       <li>Added support for German and Norwegian
-       language.</li>
-
-       <li>Generalized copy cite key features for multiple
-       entries.</li>
-
-       <li>Added quick load/save session feature.</li>
-
-       <li>Fixed issue/number bug in ISI import.</li>
-
-       <li>Added "Open pdf/ps" item in right-click menu.</li>
-
-       <li>Fixed bug causing external viewer to only work in
-       General fields.</li>
-
-       <li>Added functionality for using Browse buttons for
-       file-related fields (ps, pdf, etc.).</li>
-
-       <li>Added Browse buttons to External programs tab in
-       Preferences.</li>
-
-       <li>Fixed bug related to Save database and Source field
-       which caused changes to disappear.</li>
-      </ul>
-
-    <h3>Version 1.1 (Jan 02, 2004)</h3>
-
-      <ul>
-       <li>Added bibtex key uniqueness checking, and prevented
-       autogeneration from generating non-unique keys.</li>
-
-       <li>Added command line option to load file on
-       startup.</li>
-
-       <li>Fixed problem with autogeneration creating invalid
-       keys.</li>
-
-       <li>Improved Refer/Endnote import.</li>
-
-       <li>Added feature for importing entries and/or strings
-       and/or group definitions from another BibTeX
-       database.</li>
-
-       <li>Added menu choices to import into open
-       database.</li>
-
-       <li>Added toolbar button for closing current
-       database.</li>
-
-       <li>Fixed shortcut key for "Store field" in entry
-       editor, and fixed problem that made shortcut for "Save
-       database" unavailable from entry editor.</li>
-
-       <li>Added option to fetch Medline entries automatically
-       by ID, based on a patch submitted by Mike Smoot.</li>
-
-       <li>Fixed bug in RIS import.</li>
-
-       <li>Added options to copy key and copy "\cite{key}" to
-       right-click menu.</li>
-
-       <li>Fixed bug that caused some General fields not to
-       get displayed.</li>
-
-       <li>Enabled customization of General fields.</li>
-
-       <li>Enabled customization of existing entry types, and
-       definition of new types.</li>
-      </ul>
-
-    <h3>Version 1.0 (Nov 29, 2003)</h3>
-
-      First release of JabRef
-
-  </body>
-
-</html>
index 129fdef..aefb38d 100644 (file)
@@ -7,7 +7,7 @@
 
     <h1>Searching</h1>
 
-    <p>There are three different search modes in JabRef.</p>
+    <h2>Keyboard shortcuts</h2>
 
     <p><em>CTRL-F</em> opens or focuses the search interface.
     Pressing <em>CTRL-F</em> several times toggles search mode.
     <em>CTRL-SHIFT-F</em> also finds the next occurence of the
     search string.</p>
 
-    <h2>Incremental search</h2>
+    <h2>Search modes</h2>
+   
+    <p>There are three search modes in JabRef.</p>
+    
+    <h3>Incremental search</h3>
 
     <p>When searching incrementally, the
     program searches immediately each time you press a letter. The
@@ -33,7 +37,7 @@
     of your database. To escape an incremental search, press ESC or
     click "Clear search".</p>
 
-    <h2>Normal</h2>
+    <h3>Normal search</h3>
 
     <p>In a normal search, the program searches your
     database for all occurences of the words in your search string,
     grayed-out (float mode). To stop displaying the search results,
     press ESC or click "Clear search".</p>
 
-    <h2><a name="advanced"
-       id="advanced">Field specification, logical
-       operators</a></h2>
+    <h3><a name="advanced" id="advanced"></a>
+        Advanced search</h3>
 
-       <p>In order to search specific fields only
-       and/or include logical operators in the search expression, a
-       special syntax is available in which these can be specified.
-       E.g. to search for entries whose author is "Miller", enter
-       (in any but incremental search mode):</p>
+    <p>In order to search specific fields only
+    and/or include logical operators in the search expression, a
+    special syntax is available in which these can be specified.
+    E.g. to search for entries whose author is "Miller", enter
+    (in any but incremental search mode):</p>
 
     <p>author = miller</p>
 
index f875ebf..aba0278 100644 (file)
@@ -5,7 +5,7 @@
 
 <body>
 
-    <h1>R&eacute;cup&eacute;ration des entr&eacute;es depuis le portail <em>ACM</em></h1>
+    <h1>R&eacute;cup&eacute;ration d'entr&eacute;es depuis le portail <em>ACM</em></h1>
 
     <p>Pour utiliser cette fonction, choisissez <b>Recherche -&gt; Recherche Web</b>.
     L'interface de recherche apparaitra dans le panneau lat&eacute;ral. S&eacute;lectionnez
index 126407a..7913909 100644 (file)
@@ -5,7 +5,7 @@
 
 <body>
 
-    <h1>R&eacute;cup&eacute;ration depuis CiteSeerX</h1>
+    <h1>R&eacute;cup&eacute;ration d'entr&eacute;es depuis CiteSeerX</h1>
 
     <p>Pour utiliser cette fonction, choisissez <b>Recherche -&gt; Recherche Web</b>.
     L'interface de recherche apparaitra dans le panneau lat&eacute;ral. S&eacute;lectionnez
index 427680d..2e4ed10 100644 (file)
@@ -14,7 +14,7 @@
       <li><a href="BaseFrameHelp.html">La fen&ecirc;tre principale de JabRef</a></li>
       <li><a href="EntryEditorHelp.html">&Eacute;diteur d'entr&eacute;es</a></li>
       <li><a href="Autosave.html">Sauvegarde automatique</a></li>
-      <li><a href="SpecialFieldsHelp.html">Champs spéciaux</a></li>
+      <li><a href="SpecialFieldsHelp.html">Champs sp&eacute;ciaux</a></li>
     </ul>
 
     <h2>Champs</h2>
@@ -26,6 +26,7 @@
       <li><a href="OwnerHelp.html">Le champ 'owner' (propri&eacute;taire)</a></li>
       <li><a href="ContentSelectorHelp.html">S&eacute;lecteur de contenu de champ</a></li>
       <li><a href="JournalAbbreviations.html">Abr&eacute;viations de journaux</a></li>
+      <li><a href="SpecialFieldsHelp.html">Champs sp&eacute;ciaux</a></li>
     </ul>
 
     <h2>Recherche et tri des entr&eacute;es</h2>
       <li><a href="ImportInspectionDialog.html">Fen&ecirc;tre de v&eacute;rification des importations</a></li>
       <li><a href="EndNoteFilters.html">Filtres d'importation/exportation d'EndNote</a></li>
       <li><a href="OpenOfficeIntegration.html">Utiliser JabRef avec OpenOffice.org ou LibreOffice</a></li>
-      <li><a href="ACMPortalHelp.html">R&eacute;cup&eacute;ration des entr&eacute;es depuis le portail <em>ACM</em></a></li>
-      <li><a href="CiteSeerHelp.html">R&eacute;cup&eacute;ration des entr&eacute;es depuis <em>CiteSeerX</em></a></li>
-      <li><a href="DOItoBibTeXHelp.html">R&eacute;cup&eacute;ration des entr&eacute;es avec le convertisseur <em>DOI vers BibTeX</em></a></li>
-      <li><a href="GoogleScholarHelp.html">R&eacute;cup&eacute;ration des entr&eacute;es depuis <em>Google Scholar</em></a></li>      
-      <li><a href="IEEEXploreHelp.html">R&eacute;cup&eacute;ration des entr&eacute;es depuis <em>IEEExplore</em></a></li>
-      <li><a href="ISBNtoBibTeXHelp.html">R&eacute;cup&eacute;ration des entr&eacute;es avec le convertisseur <em>ISBN vers BibTeX</em></a></li>
-      <li><a href="MedlineHelp.html">R&eacute;cup&eacute;ration des entr&eacute;es depuis <em>Medline</em></a></li>
-      <li><a href="JSTOR.html">R&eacute;cup&eacute;ration des entr&eacute;es depuis <em>JStor</em></a></li>
-      <li><a href="ScienceDirect.html">R&eacute;cup&eacute;ration des entr&eacute;es depuis <em>ScienceDirect</em></a></li>
-      <li><a href="Spires.html">R&eacute;cup&eacute;ration des entr&eacute;es depuis <em>Spires</em></a></li>
+      <li><a href="ACMPortalHelp.html">R&eacute;cup&eacute;ration d'entr&eacute;es depuis le portail <em>ACM</em></a></li>
+      <li><a href="CiteSeerHelp.html">R&eacute;cup&eacute;ration d'entr&eacute;es depuis <em>CiteSeerX</em></a></li>
+      <li><a href="DiVAtoBibTeXHelp.html">R&eacute;cup&eacute;ration d'entr&eacute;es depuis <em>DiVA</em></a></li>
+      <li><a href="DOItoBibTeXHelp.html">R&eacute;cup&eacute;ration d'entr&eacute;es avec le convertisseur <em>DOI vers BibTeX</em></a></li>
+      <li><a href="GoogleScholarHelp.html">R&eacute;cup&eacute;ration d'entr&eacute;es depuis <em>Google Scholar</em></a></li>      
+      <li><a href="IEEEXploreHelp.html">R&eacute;cup&eacute;ration d'entr&eacute;es depuis <em>IEEExplore</em></a></li>
+      <li><a href="ISBNtoBibTeXHelp.html">R&eacute;cup&eacute;ration d'entr&eacute;es avec le convertisseur <em>ISBN vers BibTeX</em></a></li>
+      <li><a href="MedlineHelp.html">R&eacute;cup&eacute;ration d'entr&eacute;es depuis <em>Medline</em></a></li>
+      <li><a href="JSTOR.html">R&eacute;cup&eacute;ration d'entr&eacute;es depuis <em>JStor</em></a></li>
+      <li><a href="ScienceDirect.html">R&eacute;cup&eacute;ration d'entr&eacute;es depuis <em>ScienceDirect</em></a></li>
+      <li><a href="Spires.html">R&eacute;cup&eacute;ration d'entr&eacute;es depuis <em>Spires</em></a></li>
       <li><a href="SQLExport.html">Exporter vers une base de donn&eacute;es SQL externe</a></li>
       <li><a href="XMPHelp.html">Support des m&eacute;tadonn&eacute;es XMP dans JabRef</a></li>
       <li><a href="CommandLine.html">Options de la ligne de commande</a></li>
diff --git a/src/help/fr/DiVAtoBibTeXHelp.html b/src/help/fr/DiVAtoBibTeXHelp.html
new file mode 100644 (file)
index 0000000..c45da85
--- /dev/null
@@ -0,0 +1,26 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<link rel="stylesheet" type="text/css" href="jabref_help.css"/>
+</head>
+
+<body>
+    <h1>R&eacute;cup&eacute;ration d'entr&eacute;es en utilisant DiVA</h1>
+            
+    <p><a href="http://www.diva-portal.org/">DiVA (Digitala Vetenskapliga Arkivet)</a>
+        est une base de donn&eacute;es de publications provenant d'environ
+        <a href="http://www.diva-portal.org/smash/aboutdiva.jsf">30&nbsp;universit&eacute;s
+            et &eacute;tablissements d'enseignement sup&eacute;rieur su&eacute;dois</a>.
+        
+    <p>Pour utiliser cette fonction, choisissez <b>Recherche -&gt; recherche Web</b>,
+    et l'interface de recherche s'affichera dans le panneau lat&eacute;ral.
+    S&eacute;lectionnez <b>DiVA</b> dans le menu d&eacute;roulant.</p>
+    
+    <p>Entrer l'identifiant DiVA, par exemple <b>diva2:260746</b>,
+    dans le champ de recherche et presser sur <b>Entrer</b>
+    ou sur le bouton <b>Recherche</b>.
+    L'entr&eacute;e sera r&eacute;cup&eacute;r&eacute;e et ajout&eacute;e &agrave;
+    votre base actuellement active.
+    En cas de survenue d'une erreur, elle s'affichera dans une fen&ecirc;tre.</p>
+    
+</body>
+</html>
index e6f4343..707baa5 100644 (file)
     <p>Si la cha&icirc;ne de remplacement est vide, les
     correspondances de l'expression r&eacute;guli&egrave;re seront
     simplement supprim&eacute;es de la clef
-    g&eacute;n&eacute;r&eacute;e.</p>
+    g&eacute;n&eacute;r&eacute;e. Par exemple, en rempla&ccedil;ant
+    <code>\p{Punct}</code> ou <code>[:/%]</code>
+    par une cha&icirc;ne vide, on supprimera les caract&egrave;res
+    correspondants (et non d&eacute;sir&eacute;s) de la clef.
+    Cela peut &ecirc;tre utile lors du renommage des PDF sur la base
+    des clefs BibTeX.</p>
 </body>
 </html>
index dbc2deb..a99329c 100644 (file)
@@ -6,6 +6,37 @@
 <body>
 
   <h1>Historique des r&eacute;visions (en anglais)</h1>
+  <h3>2.9 beta 2</h3>
+    <ul>
+      <li>Can control if the HTML converter should create subscripts and superscripts
+      as text or an equation via the preferences</li>
+      <li>Added initial support for adding curly brackets {} for certain
+        key words to keep the character case independent of .bst, e.g., for
+        names and abbreviations (use via "Cleanup entries") and can be controlled 
+        via preferences if it should be used at searches</li>
+      <li>Fixed author and DOI import from IEEE Xplore.</li>
+      <li>Improved import of equations in IEEE Xplore titles handling images, (sub) and /spl / representations</li>
+      <li>Rewrote the HTML import in a more general way. A few characters need to be added.</li>
+      <li>IEEE Xplore abstract fetching should now be working again.</li>
+      <li>Added DOI to BibTex entry fetcher.</li>
+      <li>Added ADS (The SAO/NASA Astrophysics Data System) fetcher by Ryo Igarashi (patch #120).</li>
+      <li>Reintroduced Google Scholar and ACM portal fetcher with entry preview to reduce server load.</li>
+      <li>Added alternate entry fetcher type where a preview can be displayed so the user can choose
+        which entries to download. This can reduce server load significantly and prevent users from
+        getting locked out of search services.</li>
+      <li>Fix for exception and minor bugs in HTML import parsing (patch 3575998 by Daniel Sv�rd)</li>
+      <li>HTML import handles more characters. Cleanup can also do HTML cleanup. (Patch 3582375 by Oscar Gustafsson)</li>
+      <li>During file renaming: More illegal characters are removed (idea by Sarel Botha)</li>
+      <li>Rudimentary support for IEEEtranBSTCTL added (patch 3582376 by Oscar Gustafsson)</li>
+      <li>":" is not filtered from the BibTeX keys any more (patch 3582376 by Oscar Gustafsson)</li>
+      <li>Changed internal look&feel setting (based on patch 3580605)</li>
+      <li>Custom importers nested in jars should be supported now (bug 3582838)</li>
+      <li>PDFContentImporter uses the DOI fetcher to fetch the BibTeX for the entry (if a DOI exists at the first page).</li>
+      <li>Moved migration of legacy PDF/PS fields from legacy tools to clean up dialog.</li>
+      <li>MHT files can now also be linked by drag'n'drop without the need to configure "external file types".</li>
+      <li>Adds support for Ubunut's global menu and HUD integration by using java-swing-ayatana (feature #796).</li>
+      <li>Updates PostgreSQL support to PostgreSQL 9.2</li>
+    </ul>
   <h3>2.9 beta</h3>
     <ul>
       <li>Replaced notification dialog after moving/renaming linked file by status message.</li>
index 59da7e0..473bb93 100644 (file)
@@ -8,9 +8,8 @@
 
     <h1>Recherche</h1>
 
-    <p>Il y a trois modes diff&eacute;rents de
-    recherche dans JabRef.</p>
-
+     <h2>Raccourcis clavier</h2>
+    
     <p><em>CTRL-F</em> ouvre ou active l'interface de recherche.
     Appuyer sur <em>CTRL-F</em> plusieurs fois modifie le mode de
     recherche. En recherche incr&eacute;mentale, <em>CTRL-F</em>
     sur <em>CTRL-MAJ-F</em> affiche aussi l'occurrence suivante de
     la cha&icirc;ne &agrave; rechercher.</p>
 
-    <h2>Recherche incr&eacute;mentale</h2>
+    <h2>Modes de recherche</h2>
+    
+    <p>Il y a trois modes de
+    recherche dans JabRef.</p>
+
+    <h3>Recherche incr&eacute;mentale</h3>
 
     <p>En recherche
     incr&eacute;mentale, le programme effectue une recherche chaque
@@ -39,7 +43,7 @@
     recherche incr&eacute;mentale, appuyez sur ESC ou cliquez sur
     "Vider".</p>
 
-    <h2>Recherche normale</h2>
+    <h3>Recherche normale</h3>
 
     <p>Dans une recherche normale, le
     programme recherche dans votre base les occurrences de votre
     flottante). Pour ne plus afficher les r&eacute;sultats de la
     recherche, appuyer sur ESC ou cliquer sur "Vider".</p>
 
-    <h2><a name="advanced"
-       id="advanced">Sp&eacute;cification des champs,
-       op&eacute;rateurs logiques</a></h2>
-
-       <p>Afin de rechercher
-       uniquement des champs sp&eacute;cifiques et/ou d'inclure des
-       op&eacute;rateurs logiques dans l'expression &agrave;
-       rechercher, une syntaxe particuli&egrave;re est disponible.
-       Par exemple, pour rechercher les entr&eacute;es dont
-       l'auteur est "Miller", entrez (except&eacute; en mode de
-       recherche incr&eacute;mentale)&nbsp;:</p>
+    <h3><a name="advanced" id="advanced"></a>
+            Recherche avanc&eacute;e</h3>
+
+    <p>Afin de rechercher
+    uniquement des champs sp&eacute;cifiques et/ou d'inclure des
+    op&eacute;rateurs logiques dans l'expression &agrave;
+    rechercher, une syntaxe particuli&egrave;re est disponible.
+    Par exemple, pour rechercher les entr&eacute;es dont
+    l'auteur est "Miller", entrez (except&eacute; en mode de
+    recherche incr&eacute;mentale)&nbsp;:</p>
 
     <p>author = miller</p>
 
index cdd77dd..6103ada 100644 (file)
@@ -5,45 +5,49 @@
 
 <body>
 
-<h1>Special Fields</h1>
-
-<p>Special fields offer the functionality </p>
+<h1>Champs sp&eacute;ciaux</h1>
+    
+<p>Les champs sp&eacute;ciaux permettent ces fonctionnalit&eacute;s&nbsp;: </p>
 <ul>
-<li>rate read papers</li>
-<li>mark papers as relevant for the work</li>
-<li>mark Bibtex entries as quality assured, and </li>
-<li>prioritize unread papers.</li>
+<li>&eacute;valuer les publications lues</li>
+<li>marquer les publications selon leur pertinence pour le travail</li>
+<li>marquer des entr&eacute;es BibTeX comme de qualit&eacute; v&eacute;rifi&eacute;e</li>
+<li>donner une priorit&eacute; aux publications non lues.</li>
 </ul>
 <p>
-The main difference from the marked entry is that the rated entry is not floating by default and only highlight the number column. Thus, an entry may be both marked and rated.
+La principale diff&eacute;rence avec une entr&eacute;e marqu&eacute;e est que l'entr&eacute;e &eacute;valu&eacute;e n'est pas flottante par d&eacute;faut
+et que seul le num&eacute;ro de colonne est surlign&eacute;. Ainsi, une entr&eacute;e peut &ecirc;tre &agrave; la fois marqu&eacute;e et &eacute;valu&eacute;e.
 </p>
 <p>
-Each special field may be turned on and off in the settings.
+Chaque champ sp&eacute;cial peut &ecirc;tre activ&eacute; ou d&eacute;sactiv&eacute; dans les param&egrave;tres.
 </p>
 
-<h2>Types of Fields</h2>
+<h2>Types de champs</h2>
 
-<h3>Ranking</h3>
-<p>The aim is to add a functionality to set a range of &ldquo;positive&rdquo; ratings. JabRef offers a rank from one to five stars to rate papers.</p>
+<h3>Evaluation</h3>
+<p>Le but est d'ajouter une fonctionnalit&eacute; permettant d'attribuer une gamme d'&eacute;valuations &ldquo;positives&rdquo;. 
+    JabRef offre une gamme de valeurs allant de une &agrave; cinq &eacute;toiles pour l'&eacute;valuation des publications.</p>
 
-<h3>Relevance</h3>
-<p>An entry may be marked as relevant.</p>
+<h3>Pertinence</h3>
+<p>Une entr&eacute;e peut &ecirc;tre marqu&eacute;e comme pertinente.</p>
 
-<h3>Quality Assured</h3>
-<p>An entry may be marked as quality assured. The intention is to mark Bibtex entries, where a thorough checking of the field contents has been done.</p>
+<h3>Qualit&eacute; v&eacute;rifi&eacute;e</h3>
+<p>Une entr&eacute;e peut &ecirc;tre marqu&eacute;e comme v&eacute;rifi&eacute;e. L'intention est de marquer les entr&eacute;es BibTeX
+    pour lesquelles une v&eacute;rification pouss&eacute;e du contenu de chaque champ a &eacute;t&eacute; effectu&eacute;e.</p>
 
-<h3>Priority</h3>
-<p>One may prioritize entries from prio3 (low) to prio1 (high). The main intention is to prioritize unread papers.</p>
+<h3>Priorit&eacute;</h3>
+<p>On peut affecter une priorit&eacute; aux entr&eacute;es allant de prio3 (faible) to prio1 (forte).
+    L'intention principale est de donner des priorit&eacute;s aux publications non lues.</p>
 
-<h2>Storage in the Bibtex Entry</h2>
-<p>Internally, each special field is stored in a separate Bibtex field. If &ldquo;Write values of
-special fields as separate fields to BibTeX&rdquo; is active, these fields are also written when the
-database is saved. JabRef also offers synchronizing the fields with keywords. This is enabled by the
-setting &ldquo;Synchronize with keywords&rdquo;. If this setting is active, then each change in a
-special field is reflected in the keyword field. Vice versa, each change in a keyword also leads to
-a change in the special field. Additionally, when loading a the database or pasting a new entry, the
-keywords are used to set the special field values.
-</p>
+<h2>Enregistrement dans l'entr&eacute;e BibTeX</h2>
+<p>En interne, chaque champ sp&eacute;cial est enregistr&eacute; dans un champ BibTeX s&eacute;par&eacute;. 
+Si &ldquo;Ecrire les valeurs des champs sp&eacute;ciaux dans des champs BibTeX s&eacute;par&eacute;s&rdquo; est actif,
+ces champs sont aussi &eacute;crits lorsque la base est sauv&eacute;e.
+JabRef permet aussi de synchroniser des champs avec mot-clefs. Ceci est activ&eacute; par l'option
+&ldquo;Synchroniser avec les_mots-clefs&rdquo;. Si cette option est active, alors chaque changement
+dans un champ sp&eacute;cial affectera le champ mot-clef. R&eacute;ciproquement, chaque changement dans un mot-clef
+entra&icirc;nera un changement dans le champ sp&eacute;cial. De plus, lors de l'ouverture d'une base ou le
+collage d'une entr&eacute;e, les mots-clefs sont utilis&eacute;s comme valeurs des champs sp&eacute;ciaux.</p>
 
 </body>
 </html>
diff --git a/src/images/reference_list.xcf b/src/images/reference_list.xcf
deleted file mode 100644 (file)
index 6333b88..0000000
Binary files a/src/images/reference_list.xcf and /dev/null differ
index e15cba9..be3cc0f 100644 (file)
Binary files a/src/images/splash.png and b/src/images/splash.png differ
index 146dd3f..c1442b0 100644 (file)
@@ -307,7 +307,8 @@ class TableColumnsTab extends JPanel implements PrefsTab {
 
                // has to be called as last to correctly enable/disable the other settings
                oldSpecialFieldsEnabled = _prefs.getBoolean(SpecialFieldsUtils.PREF_SPECIALFIELDSENABLED);
-               specialFieldsEnabled.setSelected(oldSpecialFieldsEnabled);
+               specialFieldsEnabled.setSelected(!oldSpecialFieldsEnabled);
+               specialFieldsEnabled.setSelected(oldSpecialFieldsEnabled); // Call twice to make sure the ChangeListener is triggered
                
         /*** end: special fields ***/
                
diff --git a/src/java/net/sf/jabref/export/SaveDatabaseAction.java~ b/src/java/net/sf/jabref/export/SaveDatabaseAction.java~
deleted file mode 100644 (file)
index c9d5879..0000000
+++ /dev/null
@@ -1,397 +0,0 @@
-/*  Copyright (C) 2003-2011 JabRef contributors.
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License along
-    with this program; if not, write to the Free Software Foundation, Inc.,
-    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-*/
-package net.sf.jabref.export;
-
-import com.jgoodies.forms.builder.DefaultFormBuilder;
-import com.jgoodies.forms.layout.FormLayout;
-import net.sf.jabref.*;
-import net.sf.jabref.gui.FileDialogs;
-import net.sf.jabref.collab.ChangeScanner;
-
-import javax.swing.*;
-import java.io.File;
-import java.io.IOException;
-import java.nio.charset.UnsupportedCharsetException;
-import java.util.Vector;
-
-/**
- * Action for the "Save" and "Save as" operations called from BasePanel. This class is also used for
- * save operations when closing a database or quitting the applications.
- *
- * The operations run synchronously, but offload the save operation from the event thread using Spin.
- * Callers can query whether the operation was cancelled, or whether it was successful.
- */
-public class SaveDatabaseAction extends AbstractWorker {
-    private BasePanel panel;
-    private JabRefFrame frame;
-    private boolean success = false, cancelled = false, fileLockedError = false;
-
-    public SaveDatabaseAction(BasePanel panel) {
-
-        this.panel = panel;
-        this.frame = panel.frame();
-    }
-
-
-    public void init() throws Throwable {
-        success = false;
-        cancelled = false;
-        fileLockedError = false;
-        if (panel.getFile() == null)
-            saveAs();
-        else {
-
-            // Check for external modifications:
-            if (panel.isUpdatedExternally() || Globals.fileUpdateMonitor.hasBeenModified(panel.getFileMonitorHandle())) {
-
-                String[] opts = new String[]{Globals.lang("Review changes"), Globals.lang("Save"),
-                        Globals.lang("Cancel")};
-                int answer = JOptionPane.showOptionDialog(panel.frame(), Globals.lang("File has been updated externally. "
-                        + "What do you want to do?"), Globals.lang("File updated externally"),
-                        JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE,
-                        null, opts, opts[0]);
-                /*  int choice = JOptionPane.showConfirmDialog(frame, Globals.lang("File has been updated externally. "
-+"Are you sure you want to save?"), Globals.lang("File updated externally"),
-               JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE);*/
-
-                if (answer == JOptionPane.CANCEL_OPTION) {
-                    cancelled = true;
-                    return;
-                }
-                else if (answer == JOptionPane.YES_OPTION) {
-                    //try {
-
-                    cancelled = true;
-
-                    (new Thread(new Runnable() {
-                        public void run() {
-
-                            if (!Util.waitForFileLock(panel.getFile(), 10)) {
-                                // TODO: GUI handling of the situation when the externally modified file keeps being locked.
-                                System.err.println("File locked, this will be trouble.");
-                            }
-
-                            ChangeScanner scanner = new ChangeScanner(panel.frame(), panel);
-                            scanner.changeScan(panel.getFile());
-                            try {
-                                scanner.join();
-                            } catch (InterruptedException e) {
-                                e.printStackTrace();
-                            }
-                            if (scanner.changesFound()) {
-                                scanner.displayResult(new ChangeScanner.DisplayResultCallback() {
-                                    public void scanResultsResolved(boolean resolved) {
-                                        if (!resolved) {
-                                            cancelled = true;
-                                        } else {
-                                            panel.setUpdatedExternally(false);
-                                            SwingUtilities.invokeLater(new Runnable() {
-                                                public void run() {
-                                                    panel.getSidePaneManager().hide("fileUpdate");
-                                                }
-                                            });
-                                        }
-                                    }
-                                });
-                            }
-                        }
-                    })).start();
-
-                    return;
-                }
-                else { // User indicated to store anyway.
-                    // See if the database has the protected flag set:
-                    Vector<String> pd = panel.metaData().getData(Globals.PROTECTED_FLAG_META);
-                    boolean databaseProtectionFlag = (pd != null) && Boolean.parseBoolean(pd.get(0));
-                    if (databaseProtectionFlag) {
-                        JOptionPane.showMessageDialog(frame, Globals.lang("Database is protected. Cannot save until external changes have been reviewed."),
-                                Globals.lang("Protected database"), JOptionPane.ERROR_MESSAGE);
-                        cancelled = true;
-                    }
-                    else {
-                        panel.setUpdatedExternally(false);
-                        panel.getSidePaneManager().hide("fileUpdate");
-                    }
-                }
-            }
-
-            panel.frame().output(Globals.lang("Saving database") + "...");
-            panel.setSaving(true);
-        }
-    }
-
-    public void update() {
-        if (success) {
-            // Reset title of tab
-            frame.setTabTitle(panel, panel.getFile().getName(),
-                    panel.getFile().getAbsolutePath());
-            frame.output(Globals.lang("Saved database") + " '"
-                    + panel.getFile().getPath() + "'.");
-            frame.setWindowTitle();
-        } else if (!cancelled) {
-            if (fileLockedError) {
-                // TODO: user should have the option to override the lock file.
-                frame.output(Globals.lang("Could not save, file locked by another JabRef instance."));
-            } else
-                frame.output(Globals.lang("Save failed"));
-        }
-    }
-
-    public void run() {
-        if (cancelled || (panel.getFile() == null)) {
-            return;
-        }
-
-        try {
-
-            // Make sure the current edit is stored:
-            panel.storeCurrentEdit();
-
-            // If the option is set, autogenerate keys for all entries that are
-            // lacking keys, before saving:
-            panel.autoGenerateKeysBeforeSaving();
-
-            if (!Util.waitForFileLock(panel.getFile(), 10)) {
-                success = false;
-                fileLockedError = true;
-            }
-            else {
-                // Now save the database:
-                success = saveDatabase(panel.getFile(), false, panel.getEncoding());
-
-                //Util.pr("Testing resolve string... BasePanel line 237");
-                //Util.pr("Resolve aq: "+database.resolveString("aq"));
-                //Util.pr("Resolve text: "+database.resolveForStrings("A text which refers to the string #aq# and #billball#, hurra."));
-
-                try {
-                    Globals.fileUpdateMonitor.updateTimeStamp(panel.getFileMonitorHandle());
-                } catch (IllegalArgumentException ex) {
-                    // This means the file has not yet been registered, which is the case
-                    // when doing a "Save as". Maybe we should change the monitor so no
-                    // exception is cast.
-                }
-            }
-            panel.setSaving(false);
-            if (success) {
-                panel.undoManager.markUnchanged();
-
-                if (!AutoSaveManager.deleteAutoSaveFile(panel)) {
-                    //System.out.println("Deletion of autosave file failed");
-                }/* else
-                    System.out.println("Deleted autosave file (if it existed)");*/
-                // (Only) after a successful save the following
-                // statement marks that the base is unchanged
-                // since last save:
-                panel.setNonUndoableChange(false);
-                panel.setBaseChanged(false);
-                panel.setUpdatedExternally(false);
-            }
-        } catch (SaveException ex2) {
-            if (ex2 == SaveException.FILE_LOCKED) {
-                success =false;
-                fileLockedError = true;
-                return;
-            }
-            ex2.printStackTrace();
-        }
-    }
-
-    private boolean saveDatabase(File file, boolean selectedOnly, String encoding) throws SaveException {
-        SaveSession session;
-        frame.block();
-        try {
-            if (!selectedOnly)
-                session = FileActions.saveDatabase(panel.database(), panel.metaData(), file,
-                        Globals.prefs, false, false, encoding, false);
-            else
-                session = FileActions.savePartOfDatabase(panel.database(), panel.metaData(), file,
-                        Globals.prefs, panel.getSelectedEntries(), encoding);
-
-        } catch (UnsupportedCharsetException ex2) {
-            JOptionPane.showMessageDialog(frame, Globals.lang("Could not save file. "
-                    + "Character encoding '%0' is not supported.", encoding),
-                    Globals.lang("Save database"), JOptionPane.ERROR_MESSAGE);
-            throw new SaveException("rt");
-        } catch (SaveException ex) {
-            if (ex == SaveException.FILE_LOCKED) {
-                throw ex;
-            }
-            if (ex.specificEntry()) {
-                // Error occured during processing of
-                // be. Highlight it:
-                int row = panel.mainTable.findEntry(ex.getEntry()),
-                        topShow = Math.max(0, row - 3);
-                panel.mainTable.setRowSelectionInterval(row, row);
-                panel.mainTable.scrollTo(topShow);
-                panel.showEntry(ex.getEntry());
-            } else ex.printStackTrace();
-
-            JOptionPane.showMessageDialog
-                    (frame, Globals.lang("Could not save file")
-                            + ".\n" + ex.getMessage(),
-                            Globals.lang("Save database"),
-                            JOptionPane.ERROR_MESSAGE);
-            throw new SaveException("rt");
-
-        } finally {
-            frame.unblock();
-        }
-
-        boolean commit = true;
-        if (!session.getWriter().couldEncodeAll()) {
-            DefaultFormBuilder builder = new DefaultFormBuilder(new FormLayout("left:pref, 4dlu, fill:pref", ""));
-            JTextArea ta = new JTextArea(session.getWriter().getProblemCharacters());
-            ta.setEditable(false);
-            builder.append(Globals.lang("The chosen encoding '%0' could not encode the following characters: ",
-                    session.getEncoding()));
-            builder.append(ta);
-            builder.append(Globals.lang("What do you want to do?"));
-            String tryDiff = Globals.lang("Try different encoding");
-            int answer = JOptionPane.showOptionDialog(frame, builder.getPanel(), Globals.lang("Save database"),
-                    JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE, null,
-                    new String[]{Globals.lang("Save"), tryDiff, Globals.lang("Cancel")}, tryDiff);
-
-            if (answer == JOptionPane.NO_OPTION) {
-                // The user wants to use another encoding.
-                Object choice = JOptionPane.showInputDialog(frame, Globals.lang("Select encoding"), Globals.lang("Save database"),
-                        JOptionPane.QUESTION_MESSAGE, null, Globals.ENCODINGS, encoding);
-                if (choice != null) {
-                    String newEncoding = (String) choice;
-                    return saveDatabase(file, selectedOnly, newEncoding);
-                } else
-                    commit = false;
-            } else if (answer == JOptionPane.CANCEL_OPTION)
-                commit = false;
-
-
-        }
-
-        try {
-            if (commit) {
-                session.commit();
-                panel.setEncoding(encoding); // Make sure to remember which encoding we used.
-            } else
-                session.cancel();
-        } catch (SaveException e) {
-            int ans = JOptionPane.showConfirmDialog(null, Globals.lang("Save failed during backup creation")+". "
-                +Globals.lang("Save without backup?"), Globals.lang("Unable to create backup"),
-                    JOptionPane.YES_NO_OPTION);
-            if (ans == JOptionPane.YES_OPTION) {
-                session.setUseBackup(false);
-                session.commit();
-                panel.setEncoding(encoding);
-            }
-            else commit = false;
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-
-        return commit;
-    }
-
-    /**
-     * Run the "Save" operation. This method offloads the actual save operation to a background thread, but
-     * still runs synchronously using Spin (the method returns only after completing the operation).
-     */
-    public void runCommand() throws Throwable {
-        // This part uses Spin's features:
-        Worker wrk = getWorker();
-        // The Worker returned by getWorker() has been wrapped
-        // by Spin.off(), which makes its methods be run in
-        // a different thread from the EDT.
-        CallBack clb = getCallBack();
-
-        init(); // This method runs in this same thread, the EDT.
-        // Useful for initial GUI actions, like printing a message.
-
-        // The CallBack returned by getCallBack() has been wrapped
-        // by Spin.over(), which makes its methods be run on
-        // the EDT.
-        wrk.run(); // Runs the potentially time-consuming action
-        // without freezing the GUI. The magic is that THIS line
-        // of execution will not continue until run() is finished.
-        clb.update(); // Runs the update() method on the EDT.
-
-    }
-
-    public void save() throws Throwable {
-        runCommand();
-    }
-
-    /**
-     * Run the "Save as" operation. This method offloads the actual save operation to a background thread, but
-     * still runs synchronously using Spin (the method returns only after completing the operation).
-     */
-    public void saveAs() throws Throwable {
-        String chosenFile = null;
-        File f = null;
-        while (f == null) {
-            chosenFile = FileDialogs.getNewFile(frame, new File(Globals.prefs.get("workingDirectory")), ".bib",
-                    JFileChooser.SAVE_DIALOG, false, null);
-            if (chosenFile == null) {
-                cancelled = true;
-                return; // cancelled
-            }
-            f = new File(chosenFile);
-            // Check if the file already exists:
-            if (f.exists() && (JOptionPane.showConfirmDialog
-                    (frame, "'" + f.getName() + "' " + Globals.lang("exists. Overwrite file?"),
-                            Globals.lang("Save database"), JOptionPane.OK_CANCEL_OPTION)
-                    != JOptionPane.OK_OPTION)) {
-                f = null;
-            }
-        }
-
-        if (chosenFile != null) {
-            File oldFile = panel.metaData().getFile();
-            panel.metaData().setFile(f);
-            Globals.prefs.put("workingDirectory", f.getParent());
-            runCommand();
-            // If the operation failed, revert the file field and return:
-            if (!success) {
-                panel.metaData().setFile(oldFile);
-                return;
-            }
-            // Register so we get notifications about outside changes to the file.
-            try {
-                panel.setFileMonitorHandle(Globals.fileUpdateMonitor.addUpdateListener(panel, panel.getFile()));
-            } catch (IOException ex) {
-                ex.printStackTrace();
-            }
-            frame.getFileHistory().newFile(panel.metaData().getFile().getPath());
-        }
-
-    }
-
-    /**
-     * Query whether the last operation was successful.
-     *
-     * @returns true if the last Save/SaveAs operation completed successfully, false otherwise.
-     */
-    public boolean isSuccess() {
-        return success;
-    }
-
-    /**
-     * Query whether the last operation was cancelled.
-     *
-     * @returns true if the last Save/SaveAs operation was cancelled from the file dialog or from another 
-     * query dialog, false otherwise.
-     */
-    public boolean isCancelled() {
-        return cancelled;
-    }
-}
index 9830e7e..bdd73ae 100644 (file)
@@ -61,7 +61,8 @@ public class CleanUpAction extends AbstractWorker {
                CLEANUP_UPGRADE_EXTERNAL_LINKS = "CleanUpUpgradeExternalLinks",
                CLEANUP_SUPERSCRIPTS = "CleanUpSuperscripts",
                CLEANUP_HTML = "CleanUpHTML",
-               CLEANUP_CASE = "CleanUpCase";
+               CLEANUP_CASE = "CleanUpCase",
+                CLEANUP_LATEX = "CleanUpLaTeX";
        
        public static void putDefaults(HashMap<String, Object> defaults) {
                defaults.put(AKS_AUTO_NAMING_PDFS_AGAIN, Boolean.TRUE);
@@ -76,6 +77,7 @@ public class CleanUpAction extends AbstractWorker {
                defaults.put(CLEANUP_MAKEPATHSRELATIVE, Boolean.TRUE);
                 defaults.put(CLEANUP_HTML, Boolean.TRUE);
                 defaults.put(CLEANUP_CASE, Boolean.TRUE);
+                defaults.put(CLEANUP_LATEX, Boolean.TRUE);
        }
        
        private JCheckBox cleanUpSuperscrips;
@@ -88,6 +90,7 @@ public class CleanUpAction extends AbstractWorker {
        private JCheckBox cleanUpUpgradeExternalLinks;
        private JCheckBox cleanUpHTML;
        private JCheckBox cleanUpCase;
+        private JCheckBox cleanUpLaTeX;
        private JPanel optionsPanel = new JPanel();
        private BasePanel panel;
        private JabRefFrame frame;
@@ -118,25 +121,27 @@ public class CleanUpAction extends AbstractWorker {
                cleanUpUpgradeExternalLinks = new JCheckBox(Globals.lang("Upgrade external PDF/PS links to use the '%0' field.", GUIGlobals.FILE_FIELD));
                cleanUpHTML = new JCheckBox(Globals.lang("Run HTML converter on title"));
                cleanUpCase = new JCheckBox(Globals.lang("Run filter on title keeping the case of selected words"));
+               cleanUpLaTeX = new JCheckBox(Globals.lang("Remove unneccessary $, {, and }")); // and move adjacent numbers into equations"));
                optionsPanel = new JPanel();
                retrieveSettings();
 
-               FormLayout layout = new FormLayout("left:15dlu,pref:grow", "pref, pref, pref, pref, pref, pref, pref, pref, pref, pref, pref");
+               FormLayout layout = new FormLayout("left:15dlu,pref:grow", "pref, pref, pref, pref, pref, pref, pref, pref, pref, pref, pref, pref");
         DefaultFormBuilder builder = new DefaultFormBuilder(layout,    optionsPanel);
         builder.setDefaultDialogBorder();
         CellConstraints cc = new CellConstraints();
         builder.add(cleanUpHTML, cc.xyw(1,1,2));
         builder.add(cleanUpCase, cc.xyw(1,2,2));
-        builder.add(cleanUpSuperscrips, cc.xyw(1,3,2));
-        builder.add(cleanUpDOI, cc.xyw(1,4,2));
-        builder.add(cleanUpMonth, cc.xyw(1,5,2));
-        builder.add(cleanUpPageNumbers, cc.xyw(1,6,2));
-        builder.add(cleanUpUpgradeExternalLinks, cc.xyw(1, 7, 2));
-        builder.add(cleanUpMakePathsRelative, cc.xyw(1,8,2));
-        builder.add(cleanUpRenamePDF, cc.xyw(1,9,2));
+        builder.add(cleanUpLaTeX, cc.xyw(1,3,2));
+        builder.add(cleanUpSuperscrips, cc.xyw(1,4,2));
+        builder.add(cleanUpDOI, cc.xyw(1,5,2));
+        builder.add(cleanUpMonth, cc.xyw(1,6,2));
+        builder.add(cleanUpPageNumbers, cc.xyw(1,7,2));
+        builder.add(cleanUpUpgradeExternalLinks, cc.xyw(1, 8, 2));
+        builder.add(cleanUpMakePathsRelative, cc.xyw(1,9,2));
+        builder.add(cleanUpRenamePDF, cc.xyw(1,10,2));
         String currentPattern = Globals.lang("File name format pattern").concat(": ").concat(Globals.prefs.get(ImportSettingsTab.PREF_IMPORT_FILENAMEPATTERN));
-        builder.add(new JLabel(currentPattern), cc.xyw(2,10,1));
-        builder.add(cleanUpRenamePDFonlyRelativePaths, cc.xyw(2,11,1));
+        builder.add(new JLabel(currentPattern), cc.xyw(2,11,1));
+        builder.add(cleanUpRenamePDFonlyRelativePaths, cc.xyw(2,12,1));
        }
        
        private void retrieveSettings() {
@@ -151,6 +156,7 @@ public class CleanUpAction extends AbstractWorker {
                cleanUpUpgradeExternalLinks.setSelected(Globals.prefs.getBoolean(CLEANUP_UPGRADE_EXTERNAL_LINKS));
                 cleanUpHTML.setSelected(Globals.prefs.getBoolean(CLEANUP_HTML));
                 cleanUpCase.setSelected(Globals.prefs.getBoolean(CLEANUP_CASE));
+                cleanUpLaTeX.setSelected(Globals.prefs.getBoolean(CLEANUP_LATEX));
        }
        
        private void storeSettings() {
@@ -164,6 +170,7 @@ public class CleanUpAction extends AbstractWorker {
                Globals.prefs.putBoolean(CLEANUP_UPGRADE_EXTERNAL_LINKS, cleanUpUpgradeExternalLinks.isSelected());
                 Globals.prefs.putBoolean(CLEANUP_HTML, cleanUpHTML.isSelected());
                 Globals.prefs.putBoolean(CLEANUP_CASE, cleanUpCase.isSelected());
+                Globals.prefs.putBoolean(CLEANUP_LATEX, cleanUpLaTeX.isSelected());
        }
 
        private int showCleanUpDialog() {
@@ -210,7 +217,8 @@ public class CleanUpAction extends AbstractWorker {
                choiceMakePathsRelative = cleanUpMakePathsRelative.isSelected(),
                choiceRenamePDF = cleanUpRenamePDF.isSelected(),
                choiceConvertHTML = cleanUpHTML.isSelected(),
-                choiceConvertCase = cleanUpCase.isSelected();
+                choiceConvertCase = cleanUpCase.isSelected(),
+                choiceConvertLaTeX = cleanUpLaTeX.isSelected();
        
        if (choiceRenamePDF && Globals.prefs.getBoolean(AKS_AUTO_NAMING_PDFS_AGAIN)) { 
                CheckBoxMessage cbm = new CheckBoxMessage(Globals.lang("Auto-generating PDF-Names does not support undo. Continue?"),
@@ -250,6 +258,7 @@ public class CleanUpAction extends AbstractWorker {
                if (choiceRenamePDF) doRenamePDFs(entry, ce);
                if (choiceConvertHTML) doConvertHTML(entry, ce);
                if (choiceConvertCase) doConvertCase(entry, ce);
+               if (choiceConvertLaTeX) doConvertLaTeX(entry, ce);
                
             ce.end();
             if (ce.hasEdits()) {
@@ -352,17 +361,18 @@ public class CleanUpAction extends AbstractWorker {
        private void doCleanUpMonth(BibtexEntry entry, NamedCompound ce) {
                // implementation based on patch 3470076 by Mathias Walter
                String oldValue = entry.getField("month");
-               if (oldValue == null) return;
+               if (oldValue == null) {
+                    return;
+                }
                String newValue = oldValue;
                try {
-               int month = Integer.parseInt(newValue);
-               newValue = new StringBuffer("#").append(Globals.MONTHS[month - 1]).append('#').toString();
-       } catch (NumberFormatException e) {
-               // adapt casing of newValue to follow entry in Globals_MONTH_STRINGS
-               String casedString = newValue.substring(0, 1).toUpperCase().concat(newValue.substring(1).toLowerCase());
-               if (Globals.MONTH_STRINGS.containsKey(newValue.toLowerCase()) ||
-                               Globals.MONTH_STRINGS.containsValue(casedString)) {
-                       newValue = new StringBuffer("#").append(newValue.substring(0, 3).toLowerCase()).append('#').toString();
+                    int month = Integer.parseInt(newValue);
+                    newValue = new StringBuffer("#").append(Globals.MONTHS[month - 1]).append('#').toString();
+                } catch (NumberFormatException e) {
+                    // Much more liberal matching covering most known abbreviations etc.
+                    String testString = newValue.substring(0, 3).toLowerCase();
+                    if (Globals.MONTH_STRINGS.containsKey(testString)) {
+                        newValue = new StringBuffer("#").append(testString).append('#').toString();
                }
        }
        if (!oldValue.equals(newValue)) {
@@ -374,7 +384,7 @@ public class CleanUpAction extends AbstractWorker {
        private void doCleanUpPageNumbers(BibtexEntry entry, NamedCompound ce) {
                String oldValue = entry.getField("pages");              
                if (oldValue == null) return;
-               String newValue = oldValue.replaceAll("(\\d+) *- *(\\d+)", "$1--$2");
+               String newValue = oldValue.replaceAll(" *(\\d+) *- *(\\d+) *", "$1--$2");
                if (!oldValue.equals(newValue)) {
                        entry.setField("pages", newValue);
                        ce.addEdit(new UndoableFieldChange(entry, "pages", oldValue, newValue));
@@ -515,7 +525,9 @@ public class CleanUpAction extends AbstractWorker {
     private void doConvertHTML(BibtexEntry entry, NamedCompound ce) {
         final String field = "title";
         String oldValue = entry.getField(field);
-        if (oldValue == null) return;
+        if (oldValue == null) {
+            return;
+        }
         final HTMLConverter htmlConverter = new HTMLConverter();
         String newValue = htmlConverter.format(oldValue);
         if (!oldValue.equals(newValue)) {
@@ -530,7 +542,9 @@ public class CleanUpAction extends AbstractWorker {
     private void doConvertCase(BibtexEntry entry, NamedCompound ce) {
         final String field = "title";
         String oldValue = entry.getField(field);
-        if (oldValue == null) return;
+        if (oldValue == null) {
+            return;
+        }
         final CaseKeeper caseKeeper = new CaseKeeper();
         String newValue = caseKeeper.format(oldValue);
         if (!oldValue.equals(newValue)) {
@@ -539,4 +553,19 @@ public class CleanUpAction extends AbstractWorker {
         }
     }
 
+    private void doConvertLaTeX(BibtexEntry entry, NamedCompound ce) {
+        final String field = "title";
+        String oldValue = entry.getField(field);
+        if (oldValue == null) {
+            return;
+        }
+        String newValue = oldValue;
+        // Remove redundant $, {, and }
+        newValue = newValue.replace("$$","").replaceAll("(\\{.*[^\\\\][\\w]*)\\}([- /]?)\\{","$1$2").replaceAll("([^\\\\])\\{\\}", "$1");
+        if (!oldValue.equals(newValue)) {
+            entry.setField(field, newValue);
+            ce.addEdit(new UndoableFieldChange(entry, field, oldValue, newValue));
+        }
+    }
+
 }
index d1d3efb..d7b1813 100644 (file)
@@ -37,6 +37,7 @@ public class ACMPortalFetcher implements PreviewEntryFetcher {
        private ImportInspector dialog = null;
        private OutputPrinter status;
     private final HTMLConverter htmlConverter = new HTMLConverter();
+    final CaseKeeper caseKeeper = new CaseKeeper();
     private String terms;
     
     private static final String startUrl = "http://portal.acm.org/";
@@ -118,10 +119,11 @@ public class ACMPortalFetcher implements PreviewEntryFetcher {
 
                        int index = page.indexOf("Found");
                        if (index >= 0) {
-               page = page.substring(index + 5);
-                               index = page.indexOf("Found");
-                               if (index >= 0)
-                       page = page.substring(index);
+                            page = page.substring(index + 5);
+                            index = page.indexOf("Found");
+                            if (index >= 0) {
+                                page = page.substring(index);
+                            }
                        }
 
             if (hits == 0) {
@@ -161,13 +163,33 @@ public class ACMPortalFetcher implements PreviewEntryFetcher {
 
     public void getEntries(Map<String, Boolean> selection, ImportInspector inspector) {
         for (String id : selection.keySet()) {
-            if (!shouldContinue)
+            if (!shouldContinue) {
                 break;
+            }
             boolean sel = selection.get(id);
             if (sel) {
                 try {
                     BibtexEntry entry = downloadEntryBibTeX(id, fetchAbstract);
-                    inspector.addEntry(entry);
+                    if (entry != null) {
+                        // Convert from HTML and optionally add curly brackets around key words to keep the case
+                        String title = (String) entry.getField("title");
+                        
+                        if (title != null) {
+                            title = title.replaceAll("\\\\&", "&").replaceAll("\\\\#","#");
+                            title = convertHTMLChars(title);
+                            if (Globals.prefs.getBoolean("useCaseKeeperOnSearch")) {
+                                title = caseKeeper.format(title);
+                            }
+                            entry.setField("title", title);
+                        }
+                        
+                        String abstr = (String) entry.getField("abstract");
+                        if (abstr != null) {
+                            abstr = convertHTMLChars(abstr);
+                            entry.setField("abstract",abstr);
+                        }
+                        inspector.addEntry(entry);
+                    }
                 } catch (IOException e) {
                     e.printStackTrace();
                 }
@@ -190,13 +212,14 @@ public class ACMPortalFetcher implements PreviewEntryFetcher {
     private String makeUrl(int startIndex) {
         StringBuffer sb = new StringBuffer(startUrl).append(searchUrlPart);
         sb.append(terms.replaceAll(" ", "%20"));
-        sb.append("&start=" + String.valueOf(startIndex));
+        sb.append("&start=").append(String.valueOf(startIndex));
         sb.append(searchUrlPartII);
   
-        if (acmOrGuide)
+        if (acmOrGuide) {
                sb.append("ACM");
-        else
+        } else {
                sb.append("GUIDE");
+        }
         sb.append(endUrl);
         return sb.toString();
     }
@@ -267,18 +290,20 @@ public class ACMPortalFetcher implements PreviewEntryFetcher {
                     if (authStart >= 0) {
                         int authEnd = text.indexOf("</div>", authStart+authMarker.length());
                         if (authEnd >= 0) {
-                            sb.append("<p>"+text.substring(authStart, authEnd)+"</p>");
+                            sb.append("<p>").append(text.substring(authStart, authEnd)).append("</p>");
                         }
 
                     }
                     // Find title:
                     Matcher titM = titlePattern.matcher(part);
-                    if (titM.find())
-                        sb.append("<p>"+titM.group(1)+"</p>");
+                    if (titM.find()) {
+                        sb.append("<p>").append(titM.group(1)).append("</p>");
+                    }
                     // Find month and year:
                     Matcher mY = monthYearPattern.matcher(part);
-                    if (mY.find())
-                        sb.append("<p>"+mY.group(1)+"</p>");
+                    if (mY.find()) {
+                        sb.append("<p>").append(mY.group(1)).append("</p>");
+                    }
 
 
                     part = sb.toString();
@@ -286,8 +311,9 @@ public class ACMPortalFetcher implements PreviewEntryFetcher {
                     part = part.replaceAll("</td>", "");
                     part = part.replaceAll("<tr valign=\"[A-Za-z]*\">", "");
                     part = part.replaceAll("<table style=\"padding: 5px; 5px; 5px; 5px;\" border=\"0\">", "");*/
+                } else {
+                    part = link;
                 }
-                else part = link;
 
 
                 JLabel preview = new JLabel("<html>"+part+"</html>");
@@ -312,8 +338,9 @@ public class ACMPortalFetcher implements PreviewEntryFetcher {
                        ParserResult result = BibtexParser.parse(in);
                        in.close();
                        Collection<BibtexEntry> item = result.getDatabase().getEntries();
-                if (item.size() == 0)
-                    return null;
+                if (item.isEmpty()) {
+                        return null;
+                    }
                        BibtexEntry entry = item.iterator().next();
                        Thread.sleep(WAIT_TIME);//wait between requests or you will be blocked by ACM
 
@@ -406,9 +433,12 @@ public class ACMPortalFetcher implements PreviewEntryFetcher {
         byte[] buffer = new byte[256];
         while(true) {
             int bytesRead = in.read(buffer);
-            if(bytesRead == -1) break;
-            for (int i=0; i<bytesRead; i++)
+            if(bytesRead == -1) {
+                break;
+            }
+            for (int i=0; i<bytesRead; i++) {
                 sb.append((char)buffer[i]);
+            }
         }
         return sb.toString();
     }
@@ -425,9 +455,12 @@ public class ACMPortalFetcher implements PreviewEntryFetcher {
         byte[] buffer = new byte[256];
         while(true) {
             int bytesRead = in.read(buffer);
-            if(bytesRead == -1) break;
-            for (int i=0; i<bytesRead; i++)
+            if(bytesRead == -1) {
+                break;
+            }
+            for (int i=0; i<bytesRead; i++) {
                 sb.append((char)buffer[i]);
+            }
         }
         return sb.toString();
     }
index 6d64f7c..c779e3c 100644 (file)
@@ -15,7 +15,6 @@
 */
 package net.sf.jabref.imports;
 
-import java.util.HashMap;
 import java.util.Arrays;
 import java.util.Comparator;
 
@@ -28,9 +27,10 @@ public class CaseKeeper implements LayoutFormatter {
     }
     
     public String format(String text, String [] listOfWords) {
-       if (text == null)
+       if (text == null) {
            return null;
-        Arrays.sort(listOfWords, new LengthComparator());  // Seems like the sorting is not working
+        }
+        Arrays.sort(listOfWords, new LengthComparator());  
         // For each word in the list
        for (int i = 0; i < listOfWords.length; i++) {
             // Add {} if the character before is a space, -, /, (, [, or } or if it is at the start of the string but not if it is followed by a }
@@ -41,8 +41,9 @@ public class CaseKeeper implements LayoutFormatter {
     
 
     public String format(String text) {
-       if (text == null)
+       if (text == null) {
            return null;
+        }
         final CaseKeeperList list = new CaseKeeperList();
        return this.format(text,list.getAll());
     }
@@ -54,8 +55,10 @@ class LengthComparator implements Comparator<String>{
     @Override
     public int compare(String o1, String o2) {  
         if (o1.length() > o2.length()) {
-            return 1;
+            return -1;
+        } else if (o1.length() == o2.length()) {
+            return 0;
         }
-        return 0;
+        return 1;
     }
 }
\ No newline at end of file
index 63a0e61..12e6816 100644 (file)
@@ -31,97 +31,189 @@ public class CaseKeeperList {
         "3-D",
         "3D",
         "3G",
+        "3GPP",
+        "4-D",
+        "4D",
         "4G",
+        "4H",
+        "6H",
         "A/D",
        "ACM",
         "AC",
         "ADC",
         "ADI",
        "ADSL",
+        "ADP",
+        "ADPLL",
         "AES",
+        "AFE",
+        "AGC",
+        "AI",
+        "AIQ",
         "ALU",
         "AMPS",
         "AM",
+        "AND",
         "ANOVA",
         "ANSI",
         "API",
+        "ARMA",
         "ARQ",
         "ASIC",
+        "ASIP",
+        "ASK",
+        "ATE",
        "ATM",
+        "ATP",
+        "ATPG",
+        "ATSC",
+        "ATV",
         "AVC",
+        "AWGN",
+        "Alamouti",
         "AlGaAs",
+        "AlGaN",
+        "AlN",
         "Altera",
         "BCD",
         "BCH",
+        "BCJR",
+        "BDD",
         "BER",
+        "BGA",
+        "BIBO",
         "BIST",
         "BJT",
+        "BLAST",
         "BPSK",
+        "BP",
+        "BT",
+        "Baum",
         "Bayes",
+        "Berlekamp",
         "Bessel",
         "BiCMOS",
+        "Blackwell",
         "Bluetooth",
+        "Booth",
+        "Bose",
         "Bragg",
         "Butterworth",
         "CAD",
+        "CAS",
         "CATV",
         "CBR",
+        "CCD",
         "CDMA",
+        "CD",
+        "CDC",
         "CDR",
+        "CERN",
+        "CFAR",
         "CIC",
+        "CLB",
+        "CMFB",
         "CMOS",
         "CMRR",
+        "CMS",
         "CNN",
+        "CO2",
        "CORDIC",
+        "COTS",
+        "CP",
+        "CPE",
         "CPLD",
         "CPU",
         "CRC",
+        "CRM",
         "CSD",
+        "CSE",
         "CSIT",
         "CSI",
         "CSMA",
+        "CSP",
+        "CT",
+        "CUDA",
+        "CW",
         "Carlo",
         "Cauer",
+        "Chebychev",
         "Chebyshev",
+        "Chien",
+        "Cooley",
         "D/A",
         "DAB",
        "DAC",
+        "DBMS",
        "DCT",
         "DC",
+        "DDC",
         "DDFS",
         "DDR",
         "DDSM",
         "DDS",
+        "DDoS",
+        "DECT",
         "DEM",
         "DFE",
         "DFT",
+        "DGPS",
+        "DHT",
+        "DIMM",
         "DLL",
        "DMT",
+        "DNA",
         "DNL",
+        "DOA",
         "DOCSIS",
+        "DOI",
+        "DPSK",
         "DRAM",
         "DRM",
+        "DS",
         "DSP",
        "DST",
+        "DTMB",
+        "DTTB",
+        "DTV",
+        "DUC",
         "DVB-C",
         "DVB-H",
         "DVB-S",
         "DVB-T",
         "DVB",
+        "DVD",
         "DVFS",
         "DVI",
         "DWT",
+        "Dadda",
+        "Daubechies",
+        "Doppler",
+        "ECC",
         "ECG",
         "ECL",
         "EDGE",
         "EEG",
+        "EJB",
+        "EKF",
+        "EKG",
         "EMC",
         "EMG",
         "EMI",
         "ENOB",
         "EPROM",
+        "ESD",
+        "ESPRIT",
+        "EV",
         "EVM",
+        "Einstein",
+        "Euclid",
+        "Euler",
+        "FBAR",
+        "FDE",
+        "FDI",
         "FDTD",
+        "FEC",
         "FEM",
         "FER",
         "FET",
@@ -130,14 +222,26 @@ public class CaseKeeperList {
        "FIR",
         "FMCW",
        "FM",
+        "FP",
+        "FPAA",
         "FPGA",
         "FPU",
         "FRM",
-       "Farrow",
+        "FSK",
+        "FSM",
+        "FTTC",
+        "FTTH",
+        "Farrow",
+        "FinFET",
+        "Fokker",
         "Fourier",
         "GALS",
+        "GCM",
+        "GF",
         "GHz",
         "GIS",
+        "GM",
+        "GMD",
         "GNSS",
         "GNU",
         "GPGPU",
@@ -148,184 +252,365 @@ public class CaseKeeperList {
         "GSPS",
         "GS",
         "GaAs",
+        "GaN",
+        "Gabor",
         "Galileo",
+        "Galois",
         "Gauss",
         "Gb",
+        "GeV",
+        "Gram-Schmidt",
         "H.264",
         "HARQ",
+        "HBM",
         "HBT",
         "HDMI",
         "HDTV",
         "HD",
+        "HDD",
+        "HDI",
+        "HDL",
         "HEMT",
         "HEVC",
+        "HF",
         "HMM",
+        "HPC",
+        "HRV",
+        "HSPA",
+        "HSDPA",
+        "HVAC",
+        "HVDC",
+        "HW",
         "Haar",
         "Hadamard",
         "Hamming",
+        "Hartley",
+        "Hermit",  // Hermitian, Hermite, Hermit
         "Hilbert",
+        "Hz",
+        "I-V",
         "I/O",
         "I/Q",
         "IBM",
         "ICA",
         "IC",
+        "ICI",
+        "ICT",
         "IDCT",
         "IDFT",
+        "IEC",
         "IEEE",
         "IFFT",
         "IFIR",
         "IF",
         "IGBT",
+        "II-VI",
+        "II/VI",
+        "III-V",
+        "III/V",
         "IIR",
         "ILP",
+        "IMDCT",
+        "IMDST",
+        "IMT-A", // IMT-Advanced
+        "IMU",
         "INL",
         "IO",
         "IPTV",
         "IP",
         "IQ",
+        "IR",
+        "IS-95",
         "ISDN",
         "ISI",
         "ISM",
+        "ISO",
+        "ISS",
+        "InGaAs",
+        "InGaN",
         "InP",
+        "InSAR",
+        "J2EE",
+        "JEDEC",
         "JFET",
+        "JIT",
         "JPEG",
         "JTAG",
+        "Josephson",
         "Kalman",
         "Karatsuba",
         "LAN",
+        "LC",
         "LCD",
+        "LCG",
         "LDA",
         "LDD",
         "LDI",
-        "QC-LDPC",  // until sorting on length works
         "LDPC",
         "LED",
         "LFSR",
+        "LHC",
+        "LIDAR",
+        "LiDAR",
+        "LLC",
+        "LLR",
+        "LMDS",
+        "LMI",
+        "LMS",
         "LNA",
         "LNS",
+        "LS",
         "LSB",
+        "LTCC",
         "LTE-A",
         "LTE",
         "LTI",
+        "LUT",
         "LVDC",
         "LVDS",
+        "LZW",
         "Laplace",
+        "Lempel",
+        "Lyapunov",
         "MAC",
         "MANET",
         "MAP",
         "MASH",
+        "MBE",
+        "MC",
+        "MCE",
         "MCM",
+        "MCMC",
         "MCU",
+        "MDCT",
+        "MDST",
         "MEMS",
         "MESFET",
         "MHz",
         "MILP",
         "MIMO",
         "MISO",
+        "MIT",
+        "ML",
         "MMIC",
+        "MMS",
         "MMSE",
         "MOSFET",
         "MOS",
+        "MP3",
+        "MPC",
         "MPEG",
+        "MPI",
+        "MPPC",
         "MPSoC",
+        "MQW",
+        "MRC",
         "MRI",
+        "MRTD",
         "MSB",
         "MSD",
+        "MSE",
         "MSPS",
         "MS",
         "MTCMOS",
+        "MTD",
+        "MTI",
+        "MV",
+        "MVC",
+        "Maclaurin",
+        "Manchester",
         "Markov",
+        "Massey",
         "Maxwell",
         "Mb",
+        "McClellan",
+        "MeV",
         "Miller",
         "Monte",
+        "Montgomery",
         "Msps",
+        "NAND",
+        "NOR",
+        "NF",
         "NMOS",
+        "NRZ",
         "NTSC",
         "Newton",
         "NoC",
         "Nyquist",
+        "OCR",
         "OFDMA",
         "OFDM",
+        "OLED",
+        "OOP",
+        "OR",
         "OSR",
         "OTA-C",
         "OTA",
+        "Ofman",
         "P2P",
         "PAL",
         "PAM",
         "PAPR",
+        "PBGA",
         "PCA",
+        "PCB",
         "PCI",
         "PCM",
+        "PCMCIA",
         "PC",
+        "PDP",
+        "PET",
+        "PFA",
+        "PHD",
         "PHY",
+        "PIC",
         "PID",
+        "PIN",
         "PLC",
         "PLL",
         "PMOS",
+        "PN",
+        "PON",
         "POTS",
+        "PQFP",
+        "PRPG",
+        "PSK",
+        "PSNR",
+        "PSO",
         "PSRR",
+        "PV",
+        "PWB",
         "PWM",
+        "Parks-McClellan",  // Only Parks will give lots of incorrect hits
+        "Pb",
+        "Planck",
         "PowerPC",
         "QAM",
+        "QC-LDPC",
+        "QCA",
+        "QDI",
+        "QFP",
+        "QMF",
+        "QNN",
+        "QO",
+        "QP",
         "QPSK",
+        "QR",
         "QRD",
+        "QRS",
         "QoS",
         "RAD",
+        "RAKE",
         "RAM",
+        "RBF",
+        "RC",
         "RCS",
         "RFDAC",
         "RFE",
+        "RFIC",
         "RFID",
         "RF",
+        "RFS",
         "RISC",
+        "RLC",
         "RLS",
         "RMS",
         "RNS",
         "ROM",
+        "RRC",
+        "RS",
         "RSA",
+        "RT",
+        "RTL",
         "RTOS",
+        "RX",
+        "RZ",
+        "Rao",
+        "Raphson",
+        "Rayleigh",
         "Reed",
         "Remez",
+        "Riccati",
         "SAR",
+        "SAT",
         "SAW",
         "SC",
         "SDF",
         "SDH",
+        "SDP",
         "SDRAM",
         "SDR",
+        "SDRE",
+        "SEU",
         "SFDR",
+        "SIC",
+        "SIMD",
         "SIMO",
         "SINAD",
         "SINR",
+        "SINS",
         "SISO",
+        "SLAM",
+        "SMD",
+        "SME",
+        "SMS",
         "SNDR",
         "SNR",
+        "SOCP",
         "SOI",
         "SONET",
+        "SPS",
         "SPT",
         "SRAM",
+        "SQL",
         "SQNR",
+        "STBC",
         "SVD",
         "SVM",
+        "SW",
+        "Schottky",
         "SerDes",
         "Shannon",
+        "SiC",
         "SiGe",
         "SoC",
+        "SoP",
         "Solomon",
         "SystemC",
         "TCP",
+        "TDM",
         "TDMA",
+        "TDS",
         "TETRA",
         "TFT",
         "THD",
+        "THz",
+        "TLM",
+        "TLP",
+        "TPG",
+        "TQFP",
+        "TSOP",
         "TSPC",
+        "TTL",
         "TV",
+        "TX",
+        "Taylor",
+        "Toeplitz",
+        "Tukey",
         "UAV",
         "UHF",
+        "UKF",
+        "ULSI",
+        "UML",
         "UMTS",
+        "UPS",
+        "USB",
         "USRP",
+        "UV",
         "UWB",
+        "V-BLAST",
+        "VBLAST",
         "VBR",
         "VCO",
         "VDD",
@@ -338,6 +623,7 @@ public class CaseKeeperList {
         "VOD",
         "VQ",
         "VSB",
+        "VTOL",
         "Vdd",
         "Verilog-AMS",
         "Verilog-A",
@@ -348,19 +634,48 @@ public class CaseKeeperList {
         "Volterra",
         "WCDMA",
         "WDF",
+        "WDM",
+        "WFTA",
         "WLAN",
+        "WLS",
         "WPAN",
+        "WSN",
         "WWW",
+        "Wallace",
         "Watt",
+        "Welch",
+        "WiFi",
         "WiMAX",
+        "Wiener",
         "Winograd",
         "XML",
+        "XNOR",
+        "XOR",
         "Xilinx",
+        "ZCS",
+        "ZF",
+        "ZVS",
         "ZigBee",
+        "Ziv",
+        "ZnO",
         "dB",
+        "eV",
+        "kA",
+        "keV",
         "kHz",
         "kS",
+        "kV",
+        "kW",
+        "mA",
+        "mJ",
         "mW",
+        "mV",
+        "nJ",
+        "nV",
+        "nW",
+        "pJ",
+        "pV",
+        "pW",
         "xDSL"
    };
     
index a6a0ca6..9a2e543 100644 (file)
@@ -94,18 +94,24 @@ public class DOItoBibTeXFetcher implements EntryFetcher {
         
         BibtexEntry entry = BibtexParser.singleFromString(bibtexString);
         
-        // Optionally add curly brackets around key words to keep the case
-        String title = (String)entry.getField("title");
-        if (title != null) {
-            if (Globals.prefs.getBoolean("useCaseKeeperOnSearch")) {
-                title = caseKeeper.format(title);
+        if(entry != null) {
+            // Optionally add curly brackets around key words to keep the case
+            String title = (String)entry.getField("title");
+            if (title != null) {
+                if (Globals.prefs.getBoolean("useCaseKeeperOnSearch")) {
+                    title = caseKeeper.format(title);
+                }
+                entry.setField("title", title);
             }
-            entry.setField("title", title);
-        }
-        // Do not use the provided key
-        // entry.setField(BibtexFields.KEY_FIELD,null);
-        inspector.addEntry(entry);
+            
+            // Do not use the provided key
+            // entry.setField(BibtexFields.KEY_FIELD,null);
+            inspector.addEntry(entry);
            return true;
+        } else {
+            return false;
+        }
+        
     }
 
        @Override
index f6c5bb1..be2491e 100644 (file)
@@ -280,6 +280,18 @@ public class GoogleScholarFetcher implements PreviewEntryFetcher {
                         if (storedUrl != null)
                             entry.setField("url", storedUrl);
                     }
+                    
+                    // Clean up some remaining HTML code from Elsevier(?) papers
+                    // Search for: Poincare algebra
+                    // to see an example
+                    String title = (String) entry.getField("title");
+                    if (title != null) {
+                        String newtitle = title.replaceAll("<.?i>([^<]*)</i>","$1");
+                        if(!newtitle.equals(title)) {
+                            entry.setField("title",newtitle);
+                        }
+                    }
+                    
                     return entry;
                 }
                 else if (entries.size() == 0) {
index e11decf..2d9a832 100644 (file)
@@ -36,6 +36,7 @@ public class HTMLConverter implements LayoutFormatter {
        // The symbols can be looked at http://www.fileformat.info/info/unicode/char/a4/index.htm. Replace "a4" with the U+ number
        // http://detexify.kirelabs.org/classify.html and http://www.ctan.org/tex-archive/info/symbols/comprehensive/ might help to find the right LaTeX command
         // http://llg.cubic.org/docs/ent2latex.html and http://www.w3.org/TR/xml-entity-names/byalpha.html are also useful
+        // as well as http://www.w3.org/Math/characters/unicode.xml
     
     
     // An array of arrays of strings in the format:
@@ -44,66 +45,66 @@ public class HTMLConverter implements LayoutFormatter {
     private String[][] conversionList = new String[][]{
         {"160", "nbsp", "\\{~\\}"}, // no-break space = non-breaking space, 
         //                                 U+00A0 ISOnum 
-        {"161", "iexcl", "\\\\textexclamdown"}, // inverted exclamation mark, U+00A1 ISOnum
-        {"162", "cent", "\\\\textcent"}, // cent sign, U+00A2 ISOnum  
-        {"163", "pound", "\\\\pounds"}, // pound sign, U+00A3 ISOnum
-        {"164", "curren", "\\\\textcurrency"}, // currency sign, U+00A4 ISOnum  
-        {"165", "yen", "\\\\textyen"}, // yen sign = yuan sign, U+00A5 ISOnum  
-        {"166", "brvbar", "\\\\textbrokenbar"}, // broken bar = broken vertical bar, 
+        {"161", "iexcl", "\\{\\\\textexclamdown\\}"}, // inverted exclamation mark, U+00A1 ISOnum
+        {"162", "cent", "\\{\\\\textcent\\}"}, // cent sign, U+00A2 ISOnum  
+        {"163", "pound", "\\{\\\\pounds\\}"}, // pound sign, U+00A3 ISOnum
+        {"164", "curren", "\\{\\\\textcurrency\\}"}, // currency sign, U+00A4 ISOnum  
+        {"165", "yen", "\\{\\\\textyen\\}"}, // yen sign = yuan sign, U+00A5 ISOnum  
+        {"166", "brvbar", "\\{\\\\textbrokenbar\\}"}, // broken bar = broken vertical bar, 
         //                                 U+00A6 ISOnum 
         {"167", "sect", "\\{\\\\S\\}"}, // section sign, U+00A7 ISOnum  
-        {"168", "uml", "\\\\\"\\{\\}"}, // diaeresis = spacing diaeresis, 
+        {"168", "uml", "\\{\\\\\"\\{\\}\\}"}, // diaeresis = spacing diaeresis, 
         //                                 U+00A8 ISOdia 
-        {"169", "copy", "\\\\copyright"}, // copyright sign, U+00A9 ISOnum
-        {"170", "ordf", "\\\\textordfeminine"}, // feminine ordinal indicator, U+00AA ISOnum
-        {"171", "laquo", "\\\\guillemotleft"}, // left-pointing double angle quotation mark
+        {"169", "copy", "\\{\\\\copyright\\}"}, // copyright sign, U+00A9 ISOnum
+        {"170", "ordf", "\\{\\\\textordfeminine\\}"}, // feminine ordinal indicator, U+00AA ISOnum
+        {"171", "laquo", "\\{\\\\guillemotleft\\}"}, // left-pointing double angle quotation mark
         //                                 = left pointing guillemet, U+00AB ISOnum 
         {"172", "not", "\\$\\\\neg\\$"}, // not sign, U+00AC ISOnum  
         {"173", "shy", "\\\\-"}, // soft hyphen = discretionary hyphen, 
         //                                 U+00AD ISOnum 
-        {"174", "reg", "\\\\textregistered"}, // registered sign = registered trade mark sign,
+        {"174", "reg", "\\{\\\\textregistered\\}"}, // registered sign = registered trade mark sign,
         //                                 U+00AE ISOnum 
-        {"175", "macr", "\\\\=\\{\\}"}, // macron = spacing macron = overline 
+        {"175", "macr", "\\{\\\\=\\{\\}\\}"}, // macron = spacing macron = overline 
         //                                 = APL overbar, U+00AF ISOdia 
         {"176", "deg", "\\$\\\\deg\\$"}, // degree sign, U+00B0 ISOnum  
         {"177", "plusmn", "\\$\\\\pm\\$"}, // plus-minus sign = plus-or-minus sign, 
         //                                 U+00B1 ISOnum 
-        {"178", "sup2", "\\$\\^2\\$"}, // superscript two = superscript digit two 
+        {"178", "sup2", "\\\\textsuperscript\\{2\\}"}, // superscript two = superscript digit two 
         //                                 = squared, U+00B2 ISOnum 
-        {"179", "sup3", "\\$\\^3\\$"}, // superscript three = superscript digit three 
+        {"179", "sup3", "\\\\textsuperscript\\{3\\}"}, // superscript three = superscript digit three 
         //                                 = cubed, U+00B3 ISOnum 
-        {"180", "acute", "\\\\'\\{\\}"}, // acute accent = spacing acute, 
+        {"180", "acute", "\\{\\\\'\\{\\}\\}"}, // acute accent = spacing acute, 
         //                                 U+00B4 ISOdia 
         {"181", "micro", "\\$\\\\mu\\$"}, // micro sign, U+00B5 ISOnum  
         {"182", "para", "\\{\\\\P\\}"}, // pilcrow sign = paragraph sign, 
         //                                 U+00B6 ISOnum 
         {"183", "middot", "\\$\\\\cdot\\$"}, // middle dot = Georgian comma 
         //                                 = Greek middle dot, U+00B7 ISOnum 
-        {"184", "cedil", "\\\\c\\{\\}"}, // cedilla = spacing cedilla, U+00B8 ISOdia  
+        {"184", "cedil", "\\{\\\\c\\{\\}\\}"}, // cedilla = spacing cedilla, U+00B8 ISOdia  
         {"185", "sup1", "\\\\textsuperscript\\{1\\}"}, // superscript one = superscript digit one,
         //                                 U+00B9 ISOnum 
-        {"186", "ordm", "\\\\textordmasculine"}, // masculine ordinal indicator,
+        {"186", "ordm", "\\{\\\\textordmasculine\\}"}, // masculine ordinal indicator,
         //                                 U+00BA ISOnum 
-        {"187", "raquo", "\\\\guillemotright"}, // right-pointing double angle quotation mark
+        {"187", "raquo", "\\{\\\\guillemotright\\}"}, // right-pointing double angle quotation mark
         //                                 = right pointing guillemet, U+00BB ISOnum 
-        {"188", "frac14", "\\$\\sfrac\\{1\\}\\{4\\}\\$"}, // vulgar fraction one quarter 
+        {"188", "frac14", "\\$\\\\sfrac\\{1\\}\\{4\\}\\$"}, // vulgar fraction one quarter 
         //                                 = fraction one quarter, U+00BC ISOnum 
-        {"189", "frac12", "\\$\\sfrac\\{1\\}\\{2\\}\\$"}, // vulgar fraction one half 
+        {"189", "frac12", "\\$\\\\sfrac\\{1\\}\\{2\\}\\$"}, // vulgar fraction one half 
         //                                 = fraction one half, U+00BD ISOnum 
-        {"190", "frac34", "\\$\\sfrac\\{3\\}\\{4\\}\\$"}, // vulgar fraction three quarters 
+        {"190", "frac34", "\\$\\\\sfrac\\{3\\}\\{4\\}\\$"}, // vulgar fraction three quarters 
         //                                 = fraction three quarters, U+00BE ISOnum 
-        {"191", "iquest", "\\\\textquestiondown"}, // inverted question mark 
+        {"191", "iquest", "\\{\\\\textquestiondown\\}"}, // inverted question mark 
         //                                 = turned question mark, U+00BF ISOnum 
-        {"192", "Agrave", "\\\\`\\{A\\}"}, // latin capital letter A with grave
+        {"192", "Agrave", "\\{\\\\`\\{A\\}\\}"}, // latin capital letter A with grave
         //                                 = latin capital letter A grave,
         //                                 U+00C0 ISOlat1 
-        {"193", "Aacute", "\\\\'\\{A\\}"}, // latin capital letter A with acute, 
+        {"193", "Aacute", "\\{\\\\'\\{A\\}\\}"}, // latin capital letter A with acute, 
         //                                 U+00C1 ISOlat1 
-        {"194", "Acirc", "\\\\\\^\\{A\\}"}, // latin capital letter A with circumflex, 
+        {"194", "Acirc", "\\{\\\\\\^\\{A\\}\\}"}, // latin capital letter A with circumflex, 
         //                                 U+00C2 ISOlat1 
-        {"195", "Atilde", "\\\\~\\{A\\}"}, // latin capital letter A with tilde, 
+        {"195", "Atilde", "\\{\\\\~\\{A\\}\\}"}, // latin capital letter A with tilde, 
         //                                 U+00C3 ISOlat1 
-        {"196", "Auml", "\\\"\\{A\\}"}, // latin capital letter A with diaeresis, 
+        {"196", "Auml", "\\{\\\\\"\\{A\\}\\}"}, // latin capital letter A with diaeresis, 
         //                                 U+00C4 ISOlat1 
         {"197", "Aring", "\\{\\\\AA\\}"}, // latin capital letter A with ring above 
         //                                 = latin capital letter A ring,
@@ -111,119 +112,119 @@ public class HTMLConverter implements LayoutFormatter {
         {"198", "AElig", "\\{\\\\AE\\}"}, // latin capital letter AE 
         //                                 = latin capital ligature AE,
         //                                 U+00C6 ISOlat1 
-        {"199", "Ccedil", "\\\\c\\{C\\}"}, // latin capital letter C with cedilla,
+        {"199", "Ccedil", "\\{\\\\c\\{C\\}\\}"}, // latin capital letter C with cedilla,
         //                                 U+00C7 ISOlat1 
-        {"200", "Egrave", "\\\\`\\{E\\}"}, // latin capital letter E with grave,
+        {"200", "Egrave", "\\{\\\\`\\{E\\}\\}"}, // latin capital letter E with grave,
         //                                 U+00C8 ISOlat1 
-        {"201", "Eacute", "\\\\'\\{E\\}"}, // latin capital letter E with acute, 
+        {"201", "Eacute", "\\{\\\\'\\{E\\}\\}"}, // latin capital letter E with acute, 
         //                                 U+00C9 ISOlat1 
-        {"202", "Ecirc", "\\\\\\^\\{E\\}"}, // latin capital letter E with circumflex, 
+        {"202", "Ecirc", "\\{\\\\\\^\\{E\\}\\}"}, // latin capital letter E with circumflex, 
         //                                 U+00CA ISOlat1 
-        {"203", "Euml", "\\\\\"\\{E\\}"}, // latin capital letter E with diaeresis, 
+        {"203", "Euml", "\\{\\\\\"\\{E\\}\\}"}, // latin capital letter E with diaeresis, 
         //                                 U+00CB ISOlat1 
-        {"204", "Igrave", "\\\\`\\{I\\}"}, // latin capital letter I with grave,
+        {"204", "Igrave", "\\{\\\\`\\{I\\}\\}"}, // latin capital letter I with grave,
         //                                 U+00CC ISOlat1 
-        {"205", "Iacute", "\\\\'\\{I\\}"}, // latin capital letter I with acute, 
+        {"205", "Iacute", "\\{\\\\'\\{I\\}\\}"}, // latin capital letter I with acute, 
         //                                 U+00CD ISOlat1 
-        {"206", "Icirc", "\\\\\\^\\{I\\}"}, // latin capital letter I with circumflex, 
+        {"206", "Icirc", "\\{\\\\\\^\\{I\\}\\}"}, // latin capital letter I with circumflex, 
         //                                 U+00CE ISOlat1 
-        {"207", "Iuml", "\\\\\"\\{I\\}"}, // latin capital letter I with diaeresis, 
+        {"207", "Iuml", "\\{\\\\\"\\{I\\}\\}"}, // latin capital letter I with diaeresis, 
         //                                 U+00CF ISOlat1 
         {"208", "ETH", "\\{\\\\DH\\}"}, // latin capital letter ETH, U+00D0 ISOlat1  
-        {"209", "Ntilde", "\\\\~\\{N\\}"}, // latin capital letter N with tilde, 
+        {"209", "Ntilde", "\\{\\\\~\\{N\\}\\}"}, // latin capital letter N with tilde, 
         //                                 U+00D1 ISOlat1 
-        {"210", "Ograve", "\\\\`\\{O\\}"}, // latin capital letter O with grave,
+        {"210", "Ograve", "\\{\\\\`\\{O\\}\\}"}, // latin capital letter O with grave,
         //                                 U+00D2 ISOlat1 
-        {"211", "Oacute", "\\\\'\\{O\\}"}, // latin capital letter O with acute, 
+        {"211", "Oacute", "\\{\\\\'\\{O\\}\\}"}, // latin capital letter O with acute, 
         //                                 U+00D3 ISOlat1 
-        {"212", "Ocirc", "\\\\\\^\\{O\\}"}, // latin capital letter O with circumflex, 
+        {"212", "Ocirc", "\\{\\\\\\^\\{O\\}\\}"}, // latin capital letter O with circumflex, 
         //                                 U+00D4 ISOlat1 
-        {"213", "Otilde", "\\\\~\\{O\\}"}, // latin capital letter O with tilde, 
+        {"213", "Otilde", "\\{\\\\~\\{O\\}\\}"}, // latin capital letter O with tilde, 
         //                                 U+00D5 ISOlat1 
-        {"214", "Ouml", "\\\\\"\\{O\\}"}, // latin capital letter O with diaeresis, 
+        {"214", "Ouml", "\\{\\\\\"\\{O\\}\\}"}, // latin capital letter O with diaeresis, 
         //                                 U+00D6 ISOlat1 
         {"215", "times", "\\$\\\\times\\$"}, // multiplication sign, U+00D7 ISOnum  
         {"216", "Oslash", "\\{\\\\O\\{\\}\\}"}, // latin capital letter O with stroke 
         //                                 = latin capital letter O slash,
         //                                 U+00D8 ISOlat1 
-        {"217", "Ugrave", "\\\\`\\{U\\}"}, // latin capital letter U with grave,
+        {"217", "Ugrave", "\\{\\\\`\\{U\\}\\}"}, // latin capital letter U with grave,
         //                                 U+00D9 ISOlat1 
-        {"218", "Uacute", "\\\\'\\{U\\}"}, // latin capital letter U with acute, 
+        {"218", "Uacute", "\\{\\\\'\\{U\\}\\}"}, // latin capital letter U with acute, 
         //                                 U+00DA ISOlat1 
-        {"219", "Ucirc", "\\\\\\^\\{U\\}"}, // latin capital letter U with circumflex, 
+        {"219", "Ucirc", "\\{\\\\\\^\\{U\\}\\}"}, // latin capital letter U with circumflex, 
         //                                 U+00DB ISOlat1 
-        {"220", "Uuml", "\\\\\"\\{U\\}"}, // latin capital letter U with diaeresis, 
+        {"220", "Uuml", "\\{\\\\\"\\{U\\}\\}"}, // latin capital letter U with diaeresis, 
         //                                 U+00DC ISOlat1 
-        {"221", "Yacute", "\\\\'\\{Y\\}"}, // latin capital letter Y with acute, 
+        {"221", "Yacute", "\\{\\\\'\\{Y\\}\\}"}, // latin capital letter Y with acute, 
         //                                 U+00DD ISOlat1 
         {"222", "THORN", "\\{\\\\TH\\}"}, // latin capital letter THORN, 
         //                                 U+00DE ISOlat1 
-        {"223", "szlig", "\\\\ss\\{\\}"}, // latin small letter sharp s = ess-zed,
+        {"223", "szlig", "\\{\\\\ss\\}"}, // latin small letter sharp s = ess-zed,
         //                                 U+00DF ISOlat1 
-        {"224", "agrave", "\\\\`\\{a\\}"}, // latin small letter a with grave
+        {"224", "agrave", "\\{\\\\`\\{a\\}\\}"}, // latin small letter a with grave
         //                                 = latin small letter a grave,
         //                                 U+00E0 ISOlat1 
-        {"225", "aacute", "\\\\'\\{a\\}"}, // latin small letter a with acute, 
+        {"225", "aacute", "\\{\\\\'\\{a\\}\\}"}, // latin small letter a with acute, 
         //                                 U+00E1 ISOlat1 
-        {"226", "acirc", "\\\\\\^\\{a\\}"}, // latin small letter a with circumflex, 
+        {"226", "acirc", "\\{\\\\\\^\\{a\\}\\}"}, // latin small letter a with circumflex, 
         //                                 U+00E2 ISOlat1 
-        {"227", "atilde", "\\\\~\\{a\\}"}, // latin small letter a with tilde, 
+        {"227", "atilde", "\\{\\\\~\\{a\\}\\}"}, // latin small letter a with tilde, 
         //                                 U+00E3 ISOlat1 
-        {"228", "auml", "\\\\\"\\{a\\}"}, // latin small letter a with diaeresis, 
+        {"228", "auml", "\\{\\\\\"\\{a\\}\\}"}, // latin small letter a with diaeresis, 
         //                                 U+00E4 ISOlat1 
         {"229", "aring", "\\{\\\\aa\\}"}, // latin small letter a with ring above 
         //                                 = latin small letter a ring,
         //                                 U+00E5 ISOlat1 
         {"230", "aelig", "\\{\\\\ae\\}"}, // latin small letter ae 
         //                                 = latin small ligature ae, U+00E6 ISOlat1 
-        {"231", "ccedil", "\\\\c\\{c\\}"}, // latin small letter c with cedilla,
+        {"231", "ccedil", "\\{\\\\c\\{c\\}\\}"}, // latin small letter c with cedilla,
         //                                 U+00E7 ISOlat1 
-        {"232", "egrave", "\\\\`\\{e\\}"}, // latin small letter e with grave,
+        {"232", "egrave", "\\{\\\\`\\{e\\}\\}"}, // latin small letter e with grave,
         //                                 U+00E8 ISOlat1 
-        {"233", "eacute", "\\\\'\\{e\\}"}, // latin small letter e with acute, 
+        {"233", "eacute", "\\{\\\\'\\{e\\}\\}"}, // latin small letter e with acute, 
         //                                 U+00E9 ISOlat1 
-        {"234", "ecirc", "\\\\\\^\\{e\\}"}, // latin small letter e with circumflex, 
+        {"234", "ecirc", "\\{\\\\\\^\\{e\\}\\}"}, // latin small letter e with circumflex, 
         //                                 U+00EA ISOlat1 
-        {"235", "euml", "\\\\\"\\{e\\}"}, // latin small letter e with diaeresis, 
+        {"235", "euml", "\\{\\\\\"\\{e\\}\\}"}, // latin small letter e with diaeresis, 
         //                                 U+00EB ISOlat1 
-        {"236", "igrave", "\\\\`\\{i\\}"}, // latin small letter i with grave,
+        {"236", "igrave", "\\{\\\\`\\{\\\\i\\}\\}"}, // latin small letter i with grave,
         //                                 U+00EC ISOlat1 
-        {"237", "iacute", "\\\\'\\{i\\}"}, // latin small letter i with acute, 
+        {"237", "iacute", "\\{\\\\'\\{\\\\i\\}\\}"}, // latin small letter i with acute, 
         //                                 U+00ED ISOlat1 
-        {"238", "icirc", "\\\\\\^\\{i\\}"}, // latin small letter i with circumflex, 
+        {"238", "icirc", "\\{\\\\\\^\\{\\\\i\\}\\}"}, // latin small letter i with circumflex, 
         //                                 U+00EE ISOlat1 
-        {"239", "iuml", "\\\\\"\\{\\\\i\\}"}, // latin small letter i with diaeresis, 
+        {"239", "iuml", "\\{\\\\\"\\{\\\\i\\}\\}"}, // latin small letter i with diaeresis, 
         //                                 U+00EF ISOlat1 
-        {"240", "eth", "\\\\dh"}, // latin small letter eth, U+00F0 ISOlat1  
-        {"241", "ntilde", "\\\\~\\{n\\}"}, // latin small letter n with tilde, 
+        {"240", "eth", "\\{\\\\dh\\}"}, // latin small letter eth, U+00F0 ISOlat1  
+        {"241", "ntilde", "\\{\\\\~\\{n\\}\\}"}, // latin small letter n with tilde, 
         //                                 U+00F1 ISOlat1 
-        {"242", "ograve", "\\\\`\\{o\\}"}, // latin small letter o with grave,
+        {"242", "ograve", "\\{\\\\`\\{o\\}\\}"}, // latin small letter o with grave,
         //                                 U+00F2 ISOlat1 
-        {"243", "oacute", "\\\\'\\{o\\}"}, // latin small letter o with acute, 
+        {"243", "oacute", "\\{\\\\'\\{o\\}\\}"}, // latin small letter o with acute, 
         //                                 U+00F3 ISOlat1 
-        {"244", "ocirc", "\\\\\\^\\{o\\}"}, // latin small letter o with circumflex, 
+        {"244", "ocirc", "\\{\\\\\\^\\{o\\}\\}"}, // latin small letter o with circumflex, 
         //                                 U+00F4 ISOlat1 
-        {"245", "otilde", "\\\\~\\{o\\}"}, // latin small letter o with tilde, 
+        {"245", "otilde", "\\{\\\\~\\{o\\}\\}"}, // latin small letter o with tilde, 
         //                                 U+00F5 ISOlat1 
-        {"246", "ouml", "\\\\\"\\{o\\}"}, // latin small letter o with diaeresis, 
+        {"246", "ouml", "\\{\\\\\"\\{o\\}\\}"}, // latin small letter o with diaeresis, 
         //                                 U+00F6 ISOlat1 
         {"247", "divide", "\\$\\\\div\\$"}, // division sign, U+00F7 ISOnum  
-        {"248", "oslash", "\\\\o\\{\\}"}, // latin small letter o with stroke, 
+        {"248", "oslash", "\\{\\\\o\\{\\}\\}"}, // latin small letter o with stroke, 
         //                                 = latin small letter o slash,
         //                                 U+00F8 ISOlat1 
-        {"249", "ugrave", "\\\\`\\{u\\}"}, // latin small letter u with grave,
+        {"249", "ugrave", "\\{\\\\`\\{u\\}\\}"}, // latin small letter u with grave,
         //                                 U+00F9 ISOlat1 
-        {"250", "uacute", "\\\\'\\{u\\}"}, // latin small letter u with acute, 
+        {"250", "uacute", "\\{\\\\'\\{u\\}\\}"}, // latin small letter u with acute, 
         //                                 U+00FA ISOlat1 
-        {"251", "ucirc", "\\\\\\^\\{u\\}"}, // latin small letter u with circumflex, 
+        {"251", "ucirc", "\\{\\\\\\^\\{u\\}\\}"}, // latin small letter u with circumflex, 
         //                                 U+00FB ISOlat1 
-        {"252", "uuml", "\\\\\"\\{u\\}"}, // latin small letter u with diaeresis, 
+        {"252", "uuml", "\\{\\\\\"\\{u\\}\\}"}, // latin small letter u with diaeresis, 
         //                                 U+00FC ISOlat1 
-        {"253", "yacute", "\\\\'\\{y\\}"}, // latin small letter y with acute, 
+        {"253", "yacute", "\\{\\\\'\\{y\\}\\}"}, // latin small letter y with acute, 
         //                                 U+00FD ISOlat1 
         {"254", "thorn", "\\{\\\\th\\}"}, // latin small letter thorn, 
         //                                 U+00FE ISOlat1 
-        {"255", "yuml", "\\\\\"\\{y\\}"}, // latin small letter y with diaeresis, 
+        {"255", "yuml", "\\{\\\\\"\\{y\\}\\}"}, // latin small letter y with diaeresis, 
         //                                 U+00FF ISOlat1 
         {"402", "fnof", "\\$f\\$"}, // latin small f with hook = function 
         //                                   = florin, U+0192 ISOtech 
@@ -294,6 +295,7 @@ public class HTMLConverter implements LayoutFormatter {
         //                                   U+03C3 ISOgrk3 
         {"964", "tau", "\\$\\\\tau\\$"}, // greek small letter tau, U+03C4 ISOgrk3  
         {"965", "upsilon", "\\$\\\\upsilon\\$"}, // greek small letter upsilon, 
+        {"", "upsi", "\\$\\\\upsilon\\$"}, // alias 
         //                                   U+03C5 ISOgrk3 
         {"966", "phi", "\\$\\\\phi\\$"}, // greek small letter phi, U+03C6 ISOgrk3  
         {"967", "chi", "\\$\\\\chi\\$"}, // greek small letter chi, U+03C7 ISOgrk3  
@@ -301,6 +303,8 @@ public class HTMLConverter implements LayoutFormatter {
         {"969", "omega", "\\$\\\\omega\\$"}, // greek small letter omega, 
         //                                   U+03C9 ISOgrk3 
         {"977", "thetasym", "\\$\\\\vartheta\\$"}, // greek small letter theta symbol, 
+        {"", "thetav", "\\$\\\\vartheta\\$"}, // greek small letter theta symbol, 
+        {"", "vartheta", "\\$\\\\vartheta\\$"}, // greek small letter theta symbol, 
         //                                   U+03D1 NEW 
         {"978", "upsih", "\\{\\$\\\\Upsilon\\$\\}"}, // greek upsilon with hook symbol, 
         //                                   U+03D2 NEW 
@@ -315,7 +319,7 @@ public class HTMLConverter implements LayoutFormatter {
         {"8242", "prime", "\\$\\\\prime\\$"}, // prime = minutes = feet, U+2032 ISOtech  
         {"8243", "Prime", "\\$\\{''\\}\\$"}, // double prime = seconds = inches, 
         //                                    U+2033 ISOtech 
-        {"8254", "oline", "\\\\=\\{\\}"}, // overline = spacing overscore, 
+        {"8254", "oline", "\\{\\\\=\\{\\}\\}"}, // overline = spacing overscore, 
         //                                    U+203E NEW 
         {"8260", "frasl", "/"}, // fraction slash, U+2044 NEW  
 
@@ -326,7 +330,7 @@ public class HTMLConverter implements LayoutFormatter {
         //                                    U+2111 ISOamso 
         {"8476", "real", "\\{\\$\\\\Re\\$\\}"}, // blackletter capital R = real part symbol, 
         //                                    U+211C ISOamso 
-        {"8482", "trade", "\\\\texttrademark"}, // trade mark sign, U+2122 ISOnum
+        {"8482", "trade", "\\{\\\\texttrademark\\}"}, // trade mark sign, U+2122 ISOnum
         {"8501", "alefsym", "\\$\\\\aleph\\$"}, // alef symbol = first transfinite cardinal, 
         //                                    U+2135 NEW 
         /*    alef symbol is NOT the same as hebrew letter alef,
@@ -451,17 +455,17 @@ public class HTMLConverter implements LayoutFormatter {
         //                                   U+0152 ISOlat2 
         {"339", "oelig", "\\{\\\\oe\\}"}, // latin small ligature oe, U+0153 ISOlat2 
         /* ligature is a misnomer, this is a separate character in some languages */
-        {"352", "Scaron", "\\\\v\\{S\\}"}, // latin capital letter S with caron,
+        {"352", "Scaron", "\\{\\\\v\\{S\\}\\}"}, // latin capital letter S with caron,
         //                                   U+0160 ISOlat2 
-        {"353", "scaron", "\\\\v\\{s\\}"}, // latin small letter s with caron,
+        {"353", "scaron", "\\{\\\\v\\{s\\}\\}"}, // latin small letter s with caron,
         //                                   U+0161 ISOlat2 
-        {"376", "Yuml", "\\\\\"\\{Y\\}"}, // latin capital letter Y with diaeresis,
+        {"376", "Yuml", "\\{\\\\\"\\{Y\\}\\}"}, // latin capital letter Y with diaeresis,
         //                                   U+0178 ISOlat2 
 
         /* Spacing Modifier Letters */
-        {"710", "circ", "\\\\textasciicircum"}, // modifier letter circumflex accent,
+        {"710", "circ", "\\{\\\\textasciicircum\\}"}, // modifier letter circumflex accent,
         //                                   U+02C6 ISOpub 
-        {"732", "tilde", "\\\\textasciitilde"}, // small tilde, U+02DC ISOdia 
+        {"732", "tilde", "\\{\\\\textasciitilde\\}"}, // small tilde, U+02DC ISOdia 
 
         /* General Punctuation */
         {"8194", "ensp", "\\\\hspace\\{0.5em\\}"}, // en space, U+2002 ISOpub  
@@ -474,26 +478,26 @@ public class HTMLConverter implements LayoutFormatter {
         {"8207", "rlm", ""}, // right-to-left mark, U+200F NEW RFC 2070  
         {"8211", "ndash", "--"}, // en dash, U+2013 ISOpub  
         {"8212", "mdash", "---"}, // em dash, U+2014 ISOpub  
-        {"8216", "lsquo", "\\\\textquoteleft"}, // left single quotation mark, 
+        {"8216", "lsquo", "\\{\\\\textquoteleft\\}"}, // left single quotation mark, 
         //                                   U+2018 ISOnum 
-        {"8217", "rsquo", "\\\\textquoteright"}, // right single quotation mark, 
+        {"8217", "rsquo", "\\{\\\\textquoteright\\}"}, // right single quotation mark, 
         //                                   U+2019 ISOnum 
-        {"8218", "sbquo", "\\\\quotesinglbase"}, // single low-9 quotation mark, U+201A NEW  
-        {"8220", "ldquo", "\\\\textquotedblleft"}, // left double quotation mark, 
+        {"8218", "sbquo", "\\{\\\\quotesinglbase\\}"}, // single low-9 quotation mark, U+201A NEW  
+        {"8220", "ldquo", "\\{\\\\textquotedblleft\\}"}, // left double quotation mark, 
         //                                   U+201C ISOnum 
-        {"8221", "rdquo", "\\\\textquotedblright"}, // right double quotation mark, 
+        {"8221", "rdquo", "\\{\\\\textquotedblright\\}"}, // right double quotation mark, 
         //                                   U+201D ISOnum 
-        {"8222", "bdquo", "\\\\quotedblbase"}, // double low-9 quotation mark, U+201E NEW  
-        {"8224", "dagger", "\\\\dag"}, // dagger, U+2020 ISOpub  
-        {"8225", "Dagger", "\\\\ddag"}, // double dagger, U+2021 ISOpub  
-        {"8240", "permil", "\\\\textperthousand"}, // per mille sign, U+2030 ISOtech  
-        {"8249", "lsaquo", "\\\\guilsinglleft"}, // single left-pointing angle quotation mark, 
+        {"8222", "bdquo", "\\{\\\\quotedblbase\\}"}, // double low-9 quotation mark, U+201E NEW  
+        {"8224", "dagger", "\\{\\\\dag\\}"}, // dagger, U+2020 ISOpub  
+        {"8225", "Dagger", "\\{\\\\ddag\\}"}, // double dagger, U+2021 ISOpub  
+        {"8240", "permil", "\\{\\\\textperthousand\\}"}, // per mille sign, U+2030 ISOtech  
+        {"8249", "lsaquo", "\\{\\\\guilsinglleft\\}"}, // single left-pointing angle quotation mark, 
         //                                   U+2039 ISO proposed 
         /* lsaquo is proposed but not yet ISO standardized */
-        {"8250", "rsaquo", "\\\\guilsinglright"}, // single right-pointing angle quotation mark, 
+        {"8250", "rsaquo", "\\{\\\\guilsinglright\\}"}, // single right-pointing angle quotation mark, 
         //                                   U+203A ISO proposed 
         /* rsaquo is proposed but not yet ISO standardized */
-        {"8364", "euro", "\\\\texteuro"}, // euro sign, U+20AC NEW 
+        {"8364", "euro", "\\{\\\\texteuro\\}"}, // euro sign, U+20AC NEW 
             
         /* Manually added */
         {"37", "percnt", "\\\\%"}, // Percent
@@ -501,37 +505,88 @@ public class HTMLConverter implements LayoutFormatter {
         {"40", "", "("}, // Left bracket
         {"41", "", ")"}, // Right bracket
         {"43", "plus", "\\+"}, // Plus
+        {"44", "comma", ","}, // Comma
+        {"45", "hyphen", "-"}, // Hyphen
+        {"46", "period", "\\."}, // Period
+        {"47", "slash", "/"}, // Slash (solidus)
+        {"58", "colon", ":"}, // Colon
+        {"59", "semi", ";"}, // Semi colon
+        {"91", "lsqb", "\\["}, // Left square bracket
+        {"92", "bsol", "\\{\\\\textbackslash\\}"}, // Backslash
+        {"93", "rsqb", "\\]"}, // Right square bracket
+        {"94", "Hat", "\\{\\\\\\^\\{\\}\\}"}, // Circumflex
         {"95", "lowbar", "\\\\_"}, // Underscore
+        {"96", "grave", "\\{\\\\`\\{\\}\\}"}, // Grave
         {"123", "lbrace", "\\\\\\{"}, // Left curly bracket
+        {"", "lcub", "\\\\\\{"}, // Left curly bracket
+        {"124", "vert", "\\|"}, // Vertical bar
+        {"", "verbar", "\\|"}, // Vertical bar
+        {"", "VerticalLine", "\\|"}, // Vertical bar
         {"125", "rbrace", "\\\\\\}"}, // Right curly bracket
+        {"", "rcub", "\\\\\\}"}, // Right curly bracket
+        {"138", "", "\\{\\\\v\\{S\\}\\}"}, // Line tabulation set   
      // {"141", "", ""}, // Reverse line feed
-        {"146", "", "'"}, // Private use two ???
-        {"264", "Ccirc", "\\\\\\^\\{C\\}"}, // capital C with circumflex
+        {"145", "", "`"}, // Apostrophe
+        {"146", "", "'"}, // Apostrophe
+        {"147", "", "``"}, // Quotation mark
+        {"148", "", "''"}, // Quotation mark
+        {"150", "", "--"}, // En dash
+        {"154", "", "\\{\\\\v\\{s\\}\\}"}, // Single character introducer
+        {"262", "Cacute", "\\{\\\\'\\{C\\}\\}"}, // capital C with acute
+        {"263", "cacute", "\\{\\\\'\\{c\\}\\}"}, // small C with acute
+        {"264", "Ccirc", "\\{\\\\\\^\\{C\\}\\}"}, // capital C with circumflex
+        {"265", "ccirc", "\\{\\\\\\^\\{c\\}\\}"}, // small C with circumflex
+        {"266", "Cdot", "\\{\\\\\\.\\{C\\}\\}"}, // capital C with dot above
+        {"267", "cdot", "\\{\\\\\\.\\{c\\}\\}"}, // small C with dot above
+        {"268", "Ccaron", "\\{\\\\v\\{C\\}\\}"}, // capital C with caron
+        {"269", "ccaron", "\\{\\\\v\\{c\\}\\}"}, // small C with caron
+        {"298", "Imacr", "\\{\\\\=\\{I\\}\\}"}, // capital I with macron
+        {"299", "imacr", "\\{\\\\=\\{\\\\i\\}\\}"}, // small i with macron
         {"305", "inodot", "\\{\\\\i\\}"},    // Small i without the dot
+        {"", "imath", "\\{\\\\i\\}"},    // Small i without the dot
         {"321", "Lstrok", "\\{\\\\L\\}"},    // upper case l with stroke
         {"322", "lstrok", "\\{\\\\l\\}"},    // lower case l with stroke
-        {"536", "", "\\\\cb\\{S\\}"},    // capital letter S with comma below, require combelow
-        {"537", "", "\\\\cb\\{s\\}"},    // small letter S with comma below, require combelow
-        {"769", "", "'"},    // Can be solved better as it is a combining accent
-        {"774", "", "\\\\u\\{\\}"},    // FIX: Breve - Can be solved better as it is a combining accent
-        {"775", "", "\\\\\\.\\{\\}"},    // FIX: Dot above - Can be solved better as it is a combining accent
-        {"776", "", "\\\\\"\\{\\}"},    // FIX: Diaeresis - Can be solved better as it is a combining accent
-        {"780", "", "\\\\v\\{\\}"},    // FIX: Caron - Can be solved better as it is a combining accent
-        {"807", "", "\\\\c\\{\\}"},    // FIX: Cedilla - Can be solved better as it is a combining accent
+        {"536", "", "\\{\\\\cb\\{S\\}\\}"},    // capital letter S with comma below, require combelow
+        {"537", "", "\\{\\\\cb\\{s\\}\\}"},    // small letter S with comma below, require combelow
+        {"727", "caron", "\\{\\\\v\\{\\}\\}"}, // Caron
+        {"", "Hacek", "\\{\\\\v\\{\\}\\}"}, // Caron
+        {"728", "breve", "\\{\\\\u\\{\\}\\}"}, // Breve
+        {"", "Breve", "\\{\\\\u\\{\\}\\}"}, // Breve
+        {"729", "dot", "\\{\\\\\\.\\{\\}\\}"}, // Dot above
+        {"730", "ring", "\\{\\\\r\\{\\}\\}"}, // Ring above
         {"949", "epsi", "\\$\\\\epsilon\\$"},    // Epsilon - double check
         {"1013", "epsiv", "\\$\\\\varepsilonup\\$"},    // lunate epsilon, requires txfonts
-     // {"2013", "", ""},    // NKO letter FA
+        {"1055", "", "\\{\\\\cyrchar\\\\CYRP\\}"},    // Cyrillic capital Pe
+        {"1082", "", "\\{\\\\cyrchar\\\\cyrk\\}"},    // Cyrillic small Ka
+     // {"2013", "", ""},    // NKO letter FA -- Maybe en dash = 0x2013?
+     // {"2014", "", ""},    // NKO letter FA -- Maybe em dash = 0x2014?
         {"8208", "hyphen", "-"},    // Hyphen
+        {"8229", "nldr", "\\.\\."},    // Double dots - en leader
+        {"8451", "", "\\$\\\\deg\\$\\{C\\}"}, // Degree Celsius
         {"8459", "Hscr", "\\$\\\\mathcal\\{H\\}\\$"}, // script capital H -- possibly use \mathscr
-        {"8460", "", "\\$\\\\mathbb\\{H\\}\\$"}, // black letter capital H -- requires e.g. amsfonts
+        {"8460", "Hfr", "\\$\\\\mathbb\\{H\\}\\$"}, // black letter capital H -- requires e.g. amsfonts
         {"8466", "Lscr", "\\$\\\\mathcal\\{L\\}\\$"}, // script capital L -- possibly use \mathscr
-        {"8467", "lscr", "\\{\\\\ell\\}"}, // script small l 
+        {"8467", "ell", "\\{\\\\ell\\}"}, // script small l 
+        {"8469", "naturals", "\\$\\\\mathbb\\{N\\}\\$"}, // double struck capital N -- requires e.g. amsfonts
+        {"8486", "", "\\$\\{\\\\Omega\\}\\$"}, // Omega
         {"8491", "angst", "\\{\\\\AA\\}"}, // Angstrom 
+        {"8496", "Escr", "\\$\\\\mathcal\\{E\\}\\$"}, // script capital E 
+        {"8714", "", "\\$\\\\in\\$"},    // Small element in
         {"8729", "bullet", "\\$\\\\bullet\\$"},    // Bullet operator
+        {"8758", "ratio", ":"},    // Colon/ratio
+        {"8771", "sime", "\\$\\\\simeq\\$"}, // almost equal to = asymptotic to, 
         {"8776", "ap", "\\$\\\\approx\\$"}, // almost equal to = asymptotic to, 
         {"8810", "ll", "\\$\\\\ll\\$"}, // Much less than 
+        {"", "Lt", "\\$\\\\ll\\$"}, // Much less than 
         {"8811", "gg", "\\$\\\\gg\\$"}, // Much greater than 
-        {"9426", "", "\\\\copyright"}, // circled small letter C
+        {"", "Gt", "\\$\\\\gg\\$"}, // Much greater than 
+        {"8819", "gsim", "\\$\\\\gtrsim\\$"}, // Greater than or equivalent to
+        {"8882", "vltri", "\\$\\\\triangleleft\\$"}, // Left triangle
+        {"8883", "vrtri", "\\$\\\\triangleright\\$"}, // Right triangle
+        {"8896", "xwedge", "\\$\\\\bigwedge\\$"}, // Big wedge
+        {"8897", "xvee", "\\$\\\\bigvee\\$"}, // Big vee
+        {"9426", "", "\\{\\\\copyright\\}"}, // circled small letter C
+        {"9633", "square", "\\$\\\\square\\$"}, // White square
         {"9653", "utri", "\\$\\\\triangle\\$"}, // White up-pointing small triangle -- \vartriangle probably
                                                 // better but requires amssymb
         {"10877", "les", "\\$\\\\leqslant\\$"},    // Less than slanted equal -- requires amssymb 
@@ -539,8 +594,32 @@ public class HTMLConverter implements LayoutFormatter {
         {"119978", "Oscr", "\\$\\\\mathcal\\{O\\}\\$"} // script capital O -- possibly use \mathscr
         
     };
+    
+        // List of combining accents
+        private String[][] accentList = new String[][] {
+        {"768", "`"},    // Grave 
+        {"769", "'"},    // Acute
+        {"770", "\\^"},  // Circumflex
+        {"771", "~"},    // Tilde
+        {"772", "="},    // Macron
+        {"773", "="},     // Overline - not completely correct
+        {"774", "u"},    // Breve
+        {"775", "\\."},  // Dot above
+        {"776", "\""},   // Diaeresis
+        {"777", "h"},    // Hook above
+        {"778", "r"},    // Ring 
+        {"779", "H"},    // Double acute
+        {"780", "v"},    // Caron
+        {"781", "\\|"},  // Vertical line above
+        // {"782", ""},     // Double vertical line above
+        {"783", "G"},    // Double grave
+        {"803", "d"},    // Dot below
+        {"807", "c"},    // Cedilla
+          
+        };
 
         private HashMap<String, String> escapedSymbols = new HashMap<String, String>();
+        private HashMap<Integer, String> escapedAccents = new HashMap<Integer, String>();
         private HashMap<Integer, String> numSymbols = new HashMap<Integer, String>();
         
         
@@ -557,6 +636,9 @@ public class HTMLConverter implements LayoutFormatter {
                         }
                     }
                 }
+                for (int i=0;i<accentList.length;i++) {
+                    escapedAccents.put(Integer.decode(accentList[i][0]), accentList[i][1]);
+                }
        }
         
     public String format(String text) {
@@ -604,12 +686,33 @@ public class HTMLConverter implements LayoutFormatter {
             int num = Integer.decode(m.group(1).replace("x", "#") + m.group(3));
             if(numSymbols.containsKey(num)) {
                 text = text.replaceAll("&#" + m.group(1) + m.group(2) + m.group(3) + ";", numSymbols.get(num));
-            } else {
-                System.err.println("HTML escaped char not converted: " + m.group(1) + m.group(2) + m.group(3) + " = " + Integer.toString(num));
-            }
+            } 
+        }
+
+        escapedPattern = Pattern.compile("(.)&#([x]*)([0]*)(\\p{XDigit}+);");
+        m = escapedPattern.matcher(text);
+        while (m.find()) {
+           //      System.err.println("Found pattern: " + m.group(1));
+           //      System.err.println("Found pattern: " + m.group(2));
+            int num = Integer.decode(m.group(2).replace("x", "#") + m.group(4));
+            if(escapedAccents.containsKey(num)) {
+                text = text.replaceAll(m.group(1) + "&#" + m.group(2) + m.group(3) + m.group(4) + ";", "\\{\\\\" + escapedAccents.get(num) + "\\{" + m.group(1) + "\\}\\}");
+            } 
         }
+
+        escapedPattern = Pattern.compile("&#([x]*)([0]*)(\\p{XDigit}+);");
+        m = escapedPattern.matcher(text);
+        while (m.find()) {
+           //      System.err.println("Found pattern: " + m.group(1));
+           //      System.err.println("Found pattern: " + m.group(2));
+            int num = Integer.decode(m.group(1).replace("x", "#") + m.group(3));
+            System.err.println("HTML escaped char not converted: " + m.group(1) + m.group(2) + m.group(3) + " = " + Integer.toString(num));
+        }
+        
+        // Remove $$ in case of two adjacent conversions
+        text = text.replace("$$","");
         
-       // Find non-covered special characters with alphabetic codes
+       // Find non-covered special characters with alphabetic codes
         escapedPattern = Pattern.compile("&(\\w+);");
         m = escapedPattern.matcher(text);
         while (m.find()) {
index d132579..16eea3b 100644 (file)
@@ -27,10 +27,11 @@ import java.io.InputStreamReader;
 import java.io.PrintWriter;
 
 import java.net.ConnectException;
+import java.net.CookieHandler;
+import java.net.CookieManager;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.net.URLConnection;
-import java.net.URLEncoder;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -68,6 +69,8 @@ public class IEEEXploreFetcher implements EntryFetcher {
     private JRadioButton htmlButton = new JRadioButton(Globals.lang("HTML parser"));
     private JRadioButton bibButton = new JRadioButton(Globals.lang("BibTeX importer"));
     
+    private CookieManager cm = new CookieManager();
+    
     private static final int MAX_FETCH = 100;
     private int perPage = MAX_FETCH, hits = 0, unparseable = 0, parsed = 0;
     private int piv = 0;
@@ -103,7 +106,8 @@ public class IEEEXploreFetcher implements EntryFetcher {
     
     public IEEEXploreFetcher() {
        super();
-       
+       CookieHandler.setDefault(cm);
+        
        fieldPatterns.put("title", "<a\\s*href=[^<]+>\\s*(.+)\\s*</a>");
         fieldPatterns.put("author", "</h3>\\s*(.+)");
         fieldPatterns.put("volume", "Volume:\\s*([A-Za-z-]*\\d+)");
@@ -384,10 +388,13 @@ public class IEEEXploreFetcher implements EntryFetcher {
                entry.setField("author","");  // Maybe not needed anymore due to another change
            } else {
                author = author.replaceAll("\\.", ". ");
+               author = author.replaceAll("([^;]+),([^;]+),([^;]+)","$1,$3,$2"); // Change order in case of Jr. etc
                author = author.replaceAll("  ", " ");
                author = author.replaceAll("\\. -", ".-");
-               author = author.replaceAll("; ", " and ");
-               author = author.replaceAll("[,;]$", "");
+                author = author.replaceAll("; ", " and ");
+               author = author.replaceAll(" ,", ",");
+               author = author.replaceAll("  ", " ");
+               author = author.replaceAll("[ ,;]+$", "");
                entry.setField("author", author);
            }
        }
@@ -579,7 +586,7 @@ public class IEEEXploreFetcher implements EntryFetcher {
         // Clean up url
         String url = (String) entry.getField("url");
         if (url != null) {
-            entry.setField("url","http://ieeexplore.ieee.org"+url);
+            entry.setField("url","http://ieeexplore.ieee.org"+url.replace("tp=&",""));
         }
        return entry;
     }
@@ -635,7 +642,8 @@ public class IEEEXploreFetcher implements EntryFetcher {
                        } else if (typeName.equalsIgnoreCase("IEEE eLearning Library Courses")) {
                                type = BibtexEntryType.getType("Electronic");
                                sourceField = "note";
-                       } else if (typeName.equalsIgnoreCase("Wiley-IEEE Press eBook Chapters") || typeName.equalsIgnoreCase("MIT Press eBook Chapters")) {
+                       } else if (typeName.equalsIgnoreCase("Wiley-IEEE Press eBook Chapters") || typeName.equalsIgnoreCase("MIT Press eBook Chapters") ||
+                                typeName.equalsIgnoreCase("IEEE USA Books &amp; eBooks")) {
                                type = BibtexEntryType.getType("inCollection");
                                sourceField = "booktitle";
                        }
@@ -659,6 +667,8 @@ public class IEEEXploreFetcher implements EntryFetcher {
                entry.setField("publisher", "Wiley-IEEE Press");
             } else if(typeName.equalsIgnoreCase("MIT Press eBook Chapters")) {
                 entry.setField("publisher", "MIT Press");
+            } else if(typeName.equalsIgnoreCase("IEEE USA Books &amp; eBooks")) {
+                entry.setField("publisher", "IEEE USA");
             }
             
             if (typeName.equalsIgnoreCase("IEEE Early Access Articles")) {
@@ -683,7 +693,8 @@ public class IEEEXploreFetcher implements EntryFetcher {
                        }
                } 
             }
-            if (entry.getField("author") == null || entry.getField("author").startsWith("a href")) {  // Fix for some documents without authors
+            if (entry.getField("author") == null || entry.getField("author").startsWith("a href") ||
+                    entry.getField("author").startsWith("Topic(s)")) {  // Fix for some documents without authors
                 entry.setField("author","");
             }
             if (entry.getType() == BibtexEntryType.getStandardType("inproceedings") && entry.getField("author").equals("")) {
index dcd54ec..269b7bd 100644 (file)
@@ -16,7 +16,6 @@ package net.sf.jabref.imports.fetcher;
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.OutputStreamWriter;
 import java.io.UnsupportedEncodingException;
 import java.net.MalformedURLException;
 import java.net.URL;
@@ -27,12 +26,11 @@ import java.util.Scanner;
 import javax.swing.JPanel;
 
 import net.sf.jabref.BibtexEntry;
-import net.sf.jabref.BibtexEntryType;
 import net.sf.jabref.GUIGlobals;
 import net.sf.jabref.Globals;
-import net.sf.jabref.JabRef;
 import net.sf.jabref.OutputPrinter;
 import net.sf.jabref.imports.BibtexParser;
+import net.sf.jabref.imports.CaseKeeper;
 import net.sf.jabref.imports.EntryFetcher;
 import net.sf.jabref.imports.ImportInspector;
 
@@ -43,7 +41,8 @@ import net.sf.jabref.imports.ImportInspector;
 public class ISBNtoBibTeXFetcher implements EntryFetcher {
        
        private static final String URL_PATTERN = "http://manas.tungare.name/software/isbn-to-bibtex/isbn-service?isbn=%s"; 
-
+        final CaseKeeper caseKeeper = new CaseKeeper();
+   
        @Override
     public void stopFetching() {
                // nothing needed as the fetching is a single HTTP GET
@@ -95,8 +94,21 @@ public class ISBNtoBibTeXFetcher implements EntryFetcher {
         }
         
         BibtexEntry entry = BibtexParser.singleFromString(bibtexString);
-        inspector.addEntry(entry);
+        if(entry != null)  {
+            // Optionally add curly brackets around key words to keep the case
+            String title = (String)entry.getField("title");
+            if (title != null) {
+                if (Globals.prefs.getBoolean("useCaseKeeperOnSearch")) {
+                    title = caseKeeper.format(title);
+                }
+                entry.setField("title", title);
+            }
+            
+            inspector.addEntry(entry);
            return true;
+        } else {
+            return false;
+        }
     }
 
        @Override
index aabbca2..c3fbb8b 100755 (executable)
@@ -29,7 +29,8 @@ public class AlphanumericComparator implements Comparator<BibtexEntry> {
 
     FieldComparator authComp = new FieldComparator("author"),
         editorComp = new FieldComparator("editor"),
-        yearComp = new FieldComparator("year");
+        yearComp = new FieldComparator("year"),
+        titleComp = new FieldComparator("title");
 
     public AlphanumericComparator() {
 
@@ -40,12 +41,33 @@ public class AlphanumericComparator implements Comparator<BibtexEntry> {
         int comp = authComp.compare(o1, o2);
         if (comp != 0)
             return comp;
-        // TODO: Is it a good idea to try editor if author fields are equal?
+        // Editor as second criterion:
         comp = editorComp.compare(o1, o2);
         if (comp != 0)
             return comp;
         // Year as next criterion:
-        return yearComp.compare(o1, o2);
+        comp = yearComp.compare(o1, o2);
+        if (comp != 0)
+            return comp;
+        // Title as next criterion:
+        comp = titleComp.compare(o1, o2);
+        if (comp != 0)
+            return comp;
+        // Bibtex key as next criterion:
+        return compare(o1.getCiteKey(), o2.getCiteKey());
+
+
+    }
 
+    private int compare(String k1, String k2) {
+        if (k1 != null) {
+            if (k2 != null)
+                return k1.compareTo(k2);
+            else
+                return 1;
+        }
+        else if (k2 != null)
+            return -1;
+        else return 0;
     }
 }
index ee1e3de..1f3990d 100644 (file)
@@ -58,14 +58,12 @@ import java.io.FileReader;
 import java.io.IOException;
 import java.util.HashSet;
 import java.util.Iterator;
+import java.util.Set;
 import java.util.Vector;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import net.sf.jabref.BibtexDatabase;
-import net.sf.jabref.BibtexEntry;
-import net.sf.jabref.KeyCollisionException;
-import net.sf.jabref.Util;
+import net.sf.jabref.*;
 
 public class AuxSubGenerator
 {
@@ -315,6 +313,18 @@ public class AuxSubGenerator
 
       }
     }
+
+
+      // If we have inserted any entries, make sure to copy the source database's preamble and
+      // strings:
+      if (auxDB.getEntryCount() > 0) {
+          auxDB.setPreamble(db.getPreamble());
+          Set<String> keys = db.getStringKeySet();
+          for (String key : keys) {
+              BibtexString string = db.getString(key);
+              auxDB.addString(string);
+          }
+      }
   }
 
     /**
index 431c2ea..67b665c 100644 (file)
@@ -1652,3 +1652,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=
 Please_enter_a_search_string=
 Please_open_or_start_a_new_database_before_searching=
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=
+Error_while_fetching_from_ADS=
+Error_while_fetching_from_OAI2=
+An_Error_occurred_while_parsing_abstract=
+Unknown_DiVA_entry\:_'%0'.=
+Get_BibTeX_entry_from_DiVA=
+Log=
+Remove_unneccessary_$,_{,_and_}=
index 35ce132..ec0f68a 100644 (file)
@@ -2440,3 +2440,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=Filter_\u00fcber_Titel_la
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=Zeitweilige_Fehler_auf_dem_IEEE_Xplore-Server._Bitte_versuchen_Sie_es_sp\u00e4ter_erneut.
 Please_enter_a_search_string=Bitte_geben_Sie_eine_Suchphrase_ein
 Please_open_or_start_a_new_database_before_searching=Bitte_\u00f6ffnen_Sie_eine_Datei_oder_legen_Sie_eine_neue_an,_bevor_Sie_suchen
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=Beim_Abrufen_von_ADS_ist_ein_Fehler_aufgetreten_(%0):
+Error_while_fetching_from_ADS=Fehler_beim_Abrufen_von_ADS
+Error_while_fetching_from_OAI2=Fehler_beim_Abrufen_von_OAI2
+An_Error_occurred_while_parsing_abstract=Beim_Parsen_der_Zusammenfassung_ist_ein_Fehler_aufgetreten
+Unknown_DiVA_entry\:_'%0'.=Unbekannter_DiVA-Eintrag:_'0%'.
+Get_BibTeX_entry_from_DiVA=BibTeX-Eintrag_aus_DiVA_erstellen
+Log=Protokoll
+Remove_unneccessary_$,_{,_and_}=\u00dcberfl\u00fcssige_$,_{_und_}_entfernen
index 9a1a0db..75cb7f9 100644 (file)
@@ -2425,3 +2425,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=Run_filter_on_title_keepi
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.
 Please_enter_a_search_string=Please_enter_a_search_string
 Please_open_or_start_a_new_database_before_searching=Please_open_or_start_a_new_database_before_searching
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=An_Error_occurred_while_fetching_from_ADS_(%0):
+Error_while_fetching_from_ADS=Error_while_fetching_from_ADS
+Error_while_fetching_from_OAI2=Error_while_fetching_from_OAI2
+An_Error_occurred_while_parsing_abstract=An_Error_occurred_while_parsing_abstract
+Unknown_DiVA_entry\:_'%0'.=Unknown_DiVA_entry:_'%0'.
+Get_BibTeX_entry_from_DiVA=Get_BibTeX_entry_from_DiVA
+Log=Log
+Remove_unneccessary_$,_{,_and_}=Remove_unneccessary_$,_{,_and_}
index e5abb54..0c5772a 100644 (file)
@@ -331,7 +331,7 @@ Error_opening_file=Erreur_lors_de_l'ouverture_du_fichier
 Error_setting_field=Erreur_de_configuration_du_champ
 Error_while_converting_BibtexEntry_to_XMP_%0=Erreur_lors_de_la_conversion_de_l'entr\u00e9e_BibTeX_en_XMP_%0
 Error_while_downloading_file\:=Erreur_lors_du_t\u00e9l\u00e9chargement_du_fichier_:
-Error_while_fetching_from_OIA2=Erreur_lors_d'une_recherche_sur_OIA2
+Error_while_fetching_from_OIA2=Erreur_lors_de_la_recherche_OIA2
 Error_while_writing=Erreur_lors_de_l'\u00e9criture
 Error_writing_to_%0_file(s).=Erreur_lors_de_l'\u00e9criture_de_%0_fichier(s).
 Error_writing_XMP_to_file\:_%0=Erreur_lors_de_l'\u00e9criture_des_XMP_dans_le_fichier_%0
@@ -1591,3 +1591,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=Lancer_un_filtre_sur_le_t
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=Erreurs_intermittentes_sur_le_serveur_IEEE_Xplore_server._R\u00e9-essayez_dans_un_moment_s'il_vous_plait.
 Please_enter_a_search_string=Entrez_s'il_vous_plait_une_chaine_de_recherche
 Please_open_or_start_a_new_database_before_searching=S'il_vous_plait,_ouvrez_ou_cr\u00e9er_une_nouvelle_base_avant_la_recherche
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=Une_erreur_est_survenue_lors_de_la_recherche_ADS_(%0)_:
+Error_while_fetching_from_ADS=Erreur_lors_de_la_recherche_ADS
+Error_while_fetching_from_OAI2=Erreur_lors_de_la_recherche_OAI2
+An_Error_occurred_while_parsing_abstract=Une_erreur_est_survenue_pendant_le_traitement_du_r\u00e9sum\u00e9
+Unknown_DiVA_entry\:_'%0'.=Entr\u00e9e_DiVA_inconnue\:_'%0'.
+Get_BibTeX_entry_from_DiVA=Obtenir_l'entr\u00e9e_BibTeX_\u00e0_partir_de_DiVA
+Log=Message
+Remove_unneccessary_$,_{,_and_}=Suppression_des_$,_{,_et_}_inutiles
index e3d8b27..aaff48e 100644 (file)
@@ -1562,3 +1562,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=
 Please_enter_a_search_string=
 Please_open_or_start_a_new_database_before_searching=
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=
+Error_while_fetching_from_ADS=
+Error_while_fetching_from_OAI2=
+An_Error_occurred_while_parsing_abstract=
+Unknown_DiVA_entry\:_'%0'.=
+Get_BibTeX_entry_from_DiVA=
+Log=
+Remove_unneccessary_$,_{,_and_}=
index 2e949e1..f93327d 100644 (file)
@@ -52,7 +52,7 @@ All_entries_of_this_type_will_be_declared_typeless._Continue?=Tutte_le_voci_di_q
 All_fields=Tutti_i_campi
 All_subgroups_(recursively)=Tutti_i_sottogruppi_(ricorsivamente)
 Allow_editing_in_table_cells=Consenti_la_modifica_nelle_celle_della_tabella
-An_Error_occurred_while_fetching_from_OAI2_source_(%0)\:=Errore_durante_il_recupero_dalla_fonte_OAI2_(%0):
+An_Error_occurred_while_fetching_from_OAI2_source_(%0)\:=Si_\u00e8_verificato_un_errore_durante_il_recupero_dalla_fonte_OAI2_(%0):
 An_Exception_ocurred_while_accessing_'%0'=Eccezione_durante_l'accesso_a_'%0'
 An_SAXException_ocurred_while_parsing_'%0'\:=Eccezione_SAX_durante_l'elaborazione_di_'%0':
 and=e
@@ -1676,3 +1676,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=Eseguire_il_filtro_sul_ti
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=Errori_intermittenti_sul_server_IEEE_Xplore._Riprovare_pi\u00f9_tardi.
 Please_enter_a_search_string=Inserire_una_stringa_di_ricerca
 Please_open_or_start_a_new_database_before_searching=Aprire_o_creare_un_nuovo_database_prima_di_effettuare_la_ricerca
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=Si_\u00e8_verificato_un_errore_durante_il_recupero_da_ADS_(%0):
+Error_while_fetching_from_ADS=Errore_nel_recupero_dei_dati_da_ADS
+Error_while_fetching_from_OAI2=Errore_nel_recupero_dei_dati_da_OAI2
+An_Error_occurred_while_parsing_abstract=Si_\u00e8_verificato_un_errore_durante_l'elaborazione_del_riassunto
+Unknown_DiVA_entry\:_'%0'.=Voce_DiVA_sconosciuta:_'%0'
+Get_BibTeX_entry_from_DiVA=Recupera_la_voce_BibTeX_da_DiVA
+Log=Registro
+Remove_unneccessary_$,_{,_and_}=
index 73bb9a7..7c9996d 100644 (file)
@@ -2425,3 +2425,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=
 Please_enter_a_search_string=
 Please_open_or_start_a_new_database_before_searching=
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=
+Error_while_fetching_from_ADS=
+Error_while_fetching_from_OAI2=
+An_Error_occurred_while_parsing_abstract=
+Unknown_DiVA_entry\:_'%0'.=
+Get_BibTeX_entry_from_DiVA=
+Log=
+Remove_unneccessary_$,_{,_and_}=
index bc40210..67ebacc 100644 (file)
@@ -2426,3 +2426,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=
 Please_enter_a_search_string=
 Please_open_or_start_a_new_database_before_searching=
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=
+Error_while_fetching_from_ADS=
+Error_while_fetching_from_OAI2=
+An_Error_occurred_while_parsing_abstract=
+Unknown_DiVA_entry\:_'%0'.=
+Get_BibTeX_entry_from_DiVA=
+Log=
+Remove_unneccessary_$,_{,_and_}=
index 36d5fb3..9c5a0f5 100644 (file)
@@ -2917,3 +2917,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=
 Please_enter_a_search_string=
 Please_open_or_start_a_new_database_before_searching=
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=
+Error_while_fetching_from_ADS=
+Error_while_fetching_from_OAI2=
+An_Error_occurred_while_parsing_abstract=
+Unknown_DiVA_entry\:_'%0'.=
+Get_BibTeX_entry_from_DiVA=
+Log=
+Remove_unneccessary_$,_{,_and_}=
index 983d9f9..a7b57c4 100644 (file)
@@ -1479,7 +1479,6 @@ Convert_1st,_2nd,_..._to_real_superscripts=
 Dropped_comment_from_database=\r
 Enable_PDF_preview=\r
 Enable_special_fields=\r
-Expected_syntax_for_--fetch\=\r
 Five_stars=\r
 Four_stars=\r
 Help_on_special_fields=\r
@@ -1558,3 +1557,11 @@ Run_filter_on_title_keeping_the_case_of_selected_words=
 Intermittent_errors_on_the_IEEE_Xplore_server._Please_try_again_in_a_while.=\r
 Please_enter_a_search_string=\r
 Please_open_or_start_a_new_database_before_searching=\r
+An_Error_occurred_while_fetching_from_ADS_(%0)\:=\r
+Error_while_fetching_from_ADS=\r
+Error_while_fetching_from_OAI2=\r
+An_Error_occurred_while_parsing_abstract=\r
+Unknown_DiVA_entry\:_'%0'.=\r
+Get_BibTeX_entry_from_DiVA=\r
+Log=\r
+Remove_unneccessary_$,_{,_and_}=\r
diff --git a/src/resource/JabRef_pt_BR.properties~ b/src/resource/JabRef_pt_BR.properties~
deleted file mode 100644 (file)
index bc7a640..0000000
+++ /dev/null
@@ -1,1402 +0,0 @@
-#!\r
-#! created/edited by Popeye version 0.54 (popeye.sourceforge.net)\r
-#! encoding:ISO-8859-1\r
-%0_contains_the_Regular_Expression_<b>%1</b>=%0_cont\u00e9m_a_Express\u00e3o_Regular_<b>%1</b>\r
-%0_contains_the_term_<b>%1</b>=%0_cont\u00e9m_o_termo_<b>%1</b>\r
-%0_doesn't_contain_the_Regular_Expression_<b>%1</b>=%0_n\u00e3o_cont\u00e9m_a_Express\u00e3o_Regular_<b>%1</b>\r
-%0_doesn't_contain_the_term_<b>%1</b>=%0_n\u00e3o_cont\u00e9m_o_termo_<b>%1</b>\r
-%0_doesn't_match_the_Regular_Expression_<b>%1</b>=%0_n\u00e3o_corresponde__<b>%1</b>\r
-%0_doesn't_match_the_term_<b>%1</b>=%0_n\u00e3o_corresponde_ao_termo_<b>%1</b>\r
-%0_export_successful=%0_sucesso_na_exporta\u00e7\u00e3o\r
-%0_field_set=%0_Defini\u00e7\u00e3o_do_campo\r
-%0_matches_the_Regular_Expression_<b>%1</b>=%0_corresponde_\u00e0_Express\u00e3o_Regular_<b>%1</b>\r
-%0_matches_the_term_<b>%1</b>=%0_corresponde_ao_termo_<b>%1</b>\r
-<field_name>=<nome_do_campo>\r
-<HTML>Could_not_find_file_'%0'<BR>linked_from_entry_'%1'</HTML>=<HTML>N\u00e3o_foi_poss\u00edvel_encontrar_o_arquivo_'%0'<BR>a_partir_da_entrada_'%1'</HTML>\r
-<no_field>=<nenhum_campo>\r
-<select>=<selecionar>\r
-<select_word>=<selecionar_palavra>\r
-Abbreviate_journal_names_of_the_selected_entries_(ISO_abbreviation)=Abreviar_nomes_de_peri\u00f3dicos_das_entradas_selecionadas_(abrevia\u00e7\u00e3o_ISO)\r
-Abbreviate_journal_names_of_the_selected_entries_(MEDLINE_abbreviation)=Abreviar_nomes_de_peri\u00f3dicos_das_entradas_selecionadas_(abrevia\u00e7\u00e3o_MEDLINE)\r
-Abbreviate_names=Abreviar_os_nomes\r
-Abbreviated_%0_journal_names.=%0_journal_names_foram_abreviados.\r
-Abbreviation=Abrevia\u00e7\u00e3o\r
-About_JabRef=Sobre_JabRef\r
-Abstract=Resumo\r
-Accept=Aceitar\r
-Accept_change=Aceitar_a_modifica\u00e7\u00e3o\r
-Action=A\u00e7\u00e3o\r
-Add=Adicionar\r
-Add_a_(compiled)_custom_ImportFormat_class_from_a_class_path._\nThe_path_need_not_be_on_the_classpath_of_JabRef.=Adicionar_uma_classe_ImportFormat_customizada_(compilada)_a_partir_de_um_classpath.\nO_caminho_necess\u00e1rio_n\u00e3o_precisa_estar_no_classpath_do_JabRef.\r
-Add_a_(compiled)_custom_ImportFormat_class_from_a_Zip-archive.\nThe_Zip-archive_need_not_be_on_the_classpath_of_JabRef.=Adicionar_uma_classe_ImportFormat_customizada_(compilada)_a_partir_de_um_arquivo_zip.\nO_arquivo_zip_necess\u00e1rio_n\u00e3o_precisa_estar_no_classpath_do_JabRef.\r
-add_entries_to_group=adicionar_entradas_a_um_grupo\r
-Add_entry_selection_to_this_group=Adicionar_entradas_selecionadas_a_um_grupo\r
-Add_from_folder=Adicionar_a_partir_de_uma_pasta\r
-Add_from_jar=Adicionar_a_partir_de_um_jar\r
-add_group=adicionar_um_grupo\r
-Add_Group=Adicionar_um_grupo\r
-Add_new=Adicionar_novo\r
-Add_Subgroup=Adicionar_subgrupo\r
-Add_to_group=Adicionar_ao_grupo\r
-Added_group_"%0".=O_grupo_"%0"_foi_adicionado.\r
-Added_new=Adicionado_novo\r
-Added_string=Adicionada_string\r
-Additionally,_entries_whose_<b>%0</b>_field_does_not_contain_<b>%1</b>_can_be_assigned_manually_to_this_group_by_selecting_them_then_using_either_drag_and_drop_or_the_context_menu._This_process_adds_the_term_<b>%1</b>_to_each_entry's_<b>%0</b>_field._Entries_can_be_removed_manually_from_this_group_by_selecting_them_then_using_the_context_menu._This_process_removes_the_term_<b>%1</b>_from_each_entry's_<b>%0</b>_field.=Adicionalmente,_entradas_cujo_o_campo_<b>%0</b>_n\u00e3o_cont\u00e9m_<b>%1</b>_podem_ser_designados_manualmente_para_este_grupo_selecionando_eles_e_ent\u00e3o_usando_tanto_arrastar_e_soltar_quanto_o_menu_de_contexto._Este_processo_adicionar_o_termo_<b>%1</b>_a_cada_campo_<b>%1</b>_da_entrada._Entradas_podem_ser_removidas_manualmente_deste_grupo_selecionando_elas_e_ent\u00e3o_utilizando_o_menu_de_contexto._Este_processo_remove_o_termo_<b>%1</b>_de_cada_campo_<b>%1</b>_da_entrada.\r
-Advanced=Avan\u00e7ado\r
-All_custom_file_types_will_be_lost._Proceed?=Todos_os_tipos_de_arquivos_personalizados_ser\u00e3o_perdidos._Continuar?\r
-All_Entries=Todas_as_entradas\r
-All_entries=Todas_as_entradas\r
-All_entries_of_this_type_will_be_declared_typeless._Continue?=Todas_as_entradas_ser\u00e3o_consideradas_sem_tipo._Continuar?\r
-All_fields=Todos_os_campos\r
-All_subgroups_(recursively)=Todos_os_subgrupos_(recursivamente)\r
-Allow_editing_in_table_cells=Permitir_a_edi\u00e7\u00e3o_em_campos_da_tabela\r
-An_Error_occurred_while_fetching_from_OAI2_source_(%0)\:=Um_erro_ocorreu_enquanto_pesquisando_a_partir_da_fonte_OAI2_(%0)\:\r
-An_Exception_ocurred_while_accessing_'%0'=Uma_exce\u00e7\u00e3o_ocorreu_durante_ao_acesso_a_'%0'\r
-An_SAXException_ocurred_while_parsing_'%0'\:=Uma_exce\u00e7\u00e3o_ocorreu_durante_o_parsing_de_'%0'\r
-and=e\r
-and_inside_the_JabRef-jar\:=e_dentro_do_jar_do_JabRef\:\r
-and_the_class_must_be_available_in_your_classpath_next_time_you_start_JabRef.=e_a_classe_deve_estar_dispon\u00edvel_em_seu_classpath_na_pr\u00f3xima_vez_que_voc\u00ea_iniciar_o_JabRef.\r
-any_field_that_matches_the_regular_expression_<b>%0</b>=qualquer_campo_que_corresponda_\u00e0_express\u00e3o_regular_<b>%0</b>\r
-Appearance=Apar\u00eancia\r
-Append=Anexar\r
-Append_contents_from_a_BibTeX_database_into_the_currently_viewed_database=Anexar_o_conte\u00fado_de_um_banco_de_dados_BibTeX_ao_banco_de_dados_atual\r
-Append_database=Anexar_banco_de_dados\r
-append_the_selected_text_to_bibtex_key=anexar_o_texto_selecionado_\u00e0_chave_BibTeX\r
-Application=Aplica\u00e7\u00e3o\r
-Apply=Aplicar\r
-Arguments_passed_on_to_running_JabRef_instance._Shutting_down.=Argumentos_passados_ao_JabRef_em_execu\u00e7\u00e3o._Encerrando_o_programa.\r
-Assign_entry_selection_exclusively_to_this_group=Atribuir_a_sele\u00e7\u00e3o_da_entrada_exclusivamente_para_este_grupo\r
-Assign_new_file=Atribuir_novo_arquivo\r
-Assign_the_original_group's_entries_to_this_group?=Atribuir_as_entradas_de_grupo_originais_a_este_grupo?\r
-Assigned_%0_entries_to_group_"%1".=%0_entradas_atribu\u00eddas_ao_grupo_"%1"\r
-Assigned_1_entry_to_group_"%0".=1_entrada_atribu\u00edda_ao_grupo_"%0"\r
-At_least_the_plug-in_'net.sf.jabref.core'_should_be_there.=Ao_menos_o_plugin_"net.sf.jabref.core"_deve_estar_aqui.\r
-Attach_%0_file=Anexar_arquivo_%0\r
-Attach_URL=Anexar_a_URL\r
-Attempt_to_autoset_%0_links_for_your_entries._Autoset_works_if_a_%0_file_in_your_%0_directory_or_a_subdirectory<BR>is_named_identically_to_an_entry's_BibTeX_key,_plus_extension.=Tentativa_de_definir_automaticamente_%0_links_para_suas_entradas._A_defni\u00e7\u00e3o_autom\u00e1tica_funciona_se_um_arquivo_%0_em_seu_diret\u00f3rio_%0_ou_um_subdiret\u00f3rio<BR>tem_o_mesmo_nome_de_uma_chave_BibTeX_da_entrada,_mais_sua_extens\u00e3o.\r
-Attempting_SQL_export...=Tentativa_de_exporta\u00e7\u00e3o_SQL\r
-Auto=Auto\r
-Autodetect_format=Detec\u00e7\u00e3o_autom\u00e1tica_do_formato\r
-Autogenerate_BibTeX_key=Gera\u00e7\u00e3o_autom\u00e1tica_da_chave_BibTeX\r
-Autogenerate_BibTeX_keys=Gera\u00e7\u00e3o_autom\u00e1tica_da_chave_BibTeX\r
-Autogenerate_groups=Gera\u00e7\u00e3o_autom\u00e1tica_dos_grupos\r
-autogenerate_keys=gera\u00e7\u00e3o_autom\u00e1tica_das_chaves\r
-Autolink_files_with_names_starting_with_the_BibTeX_key=Linkar_automaticamente_arquivos_com_nomes_iniciando_pela_chave_BibTeX\r
-Autolink_only_files_that_match_the_BibTeX_key=Linkar_automaticamente_somente_os_arquivos_que_correspondem_\u00e0_chave_BibTeX\r
-Automatically_create_groups=Criar_grupos_automaticamente\r
-Automatically_create_groups_for_database.=Criar_automaticamente_os_grupos_para_o_banco_de_dados.\r
-Automatically_created_groups=Grupos_criados_automaticamente\r
-Automatically_hide_groups_interface_when_switching_to_a_database_that_contains_no_groups=Esconder_automaticamente_a_interface_dos_grupos_quando_trocando_para_um_banco_de_dados_sem_grupos\r
-Automatically_remove_exact_duplicates=Remover_automaticamente_duplicatas_exatas\r
-Automatically_show_groups_interface_when_switching_to_a_database_that_contains_groups=Exibir_automaticamente_a_interface_de_grupos_quando_trocando_para_um_banco_de_dados_que_cont\u00e9m_grupos\r
-Autoset=Definir_automaticamente\r
-Autoset_%0_field=Defini\u00e7\u00e3o_autom\u00e1tica_do_campo_%0\r
-Autoset_%0_links._Allow_overwriting_existing_links.=Definir_autom\u00e1ticamente_%0_links._Permitir_a_sobrescrita_de_links_existentes.\r
-Autoset_%0_links._Do_not_overwrite_existing_links.=Definir_automaticamente_%0_links._N\u00e3o_sobrescrever_links_existentes.\r
-Autoset_external_links=Definir_automaticamente_links_externos\r
-Autosetting_links=Defini\u00e7\u00e3o_autom\u00e1tica_de_links\r
-AUX_file_import=Importa\u00e7\u00e3o_de_arquivos_AUX\r
-Available_export_formats=Formatos_de_exporta\u00e7\u00e3o_dispon\u00edveis\r
-Available_fields=Campos_BibTex_dispon\u00edveis\r
-Available_import_formats=Formatos_de_importa\u00e7\u00e3o_dispon\u00edveis\r
-Background_color_for_optional_fields=Cor_de_fundo_para_campos_opcionais\r
-Background_color_for_required_fields=Cor_de_fundo_para_campos_obrigat\u00f3rios\r
-Backup_old_file_when_saving=Criar_uma_c\u00f3pia_do_arquivo_antigo_quando_salvando\r
-Beta_version=Vers\u00e3o_Beta\r
-Bibkey_to_filename_conversion=Convers\u00e3o_da_chave_BibTeX_para_o_nome_do_arquivo\r
-BibTeX_key=Chave_BibTeX\r
-BibTeX_key_is_unique.=A_chave_BibTeX_\u00e9_\u00fanica.\r
-BibTeX_key_not_set._Enter_a_name_for_the_downloaded_file=Chave_BibTeX_n\u00e3o_definida._Insira_um_nome_para_o_arquivo_baixado.\r
-BibTeX_source=Fonte_BibTeX\r
-BibTeXML=BibTeXML\r
-Binding=Binding\r
-Broken_link=Link_quebrado\r
-Browse=Explorar\r
-by=por\r
-Calling_external_viewer...=Executando_visualizador_externo\r
-Cancel=Cancelar\r
-Cannot_add_entries_to_group_without_generating_keys._Generate_keys_now?=N\u00e3o_\u00e9_poss\u00edvel_adicionar_entrar_ao_grupo_sem_gerar_as_chaves._Gerar_as_chaves_agora?_\r
-Cannot_connect_to_SQL_server_at_the_specified_host.=N\u00e3o_\u00e9_poss\u00edvel_conectar_ao_servidor_SQL_do_host_especificado.\r
-Cannot_merge_this_change=N\u00e3o_\u00e9_poss\u00edvel_juntar_esta_mudan\u00e7a.\r
-Cannot_move_group_"%0"_down.=N\u00e3o_\u00e9_poss\u00edvel_mover_o_grupo_"%0"_para_baixo.\r
-Cannot_move_group_"%0"_left.=N\u00e3o_\u00e9_poss\u00edvel_mover_o_grupo_"%0"_para_a_esquerda\r
-Cannot_move_group_"%0"_right.=N\u00e3o_\u00e9_poss\u00edvel_mover_o_grupo_"%0"_para_a_direita\r
-Cannot_move_group_"%0"_up.=N\u00e3o_\u00e9_poss\u00edvel_mover_o_grupo_"%0"_para_cima\r
-case_insensitive=case_insensitive\r
-case_sensitive=case_sensitive\r
-Case_sensitive=Case_sensitive\r
-change_assignment_of_entries=Modificar_a_atribui\u00e7\u00e3o_das_entradas\r
-Change_case=Modificar_ma\u00ed\u00fascula/min\u00fascula\r
-Change_entry_type=Modificar_o_tipo_de_entrada\r
-Change_file_type=Modificar_o_tipo_do_arquivo\r
-change_key=Modificar_a_chave_BibTeX\r
-Change_of_Grouping_Method=Modificar_o_m\u00e9todo_de_agrupamento\r
-change_preamble=Modificar_pre\u00e2mbulo\r
-change_string_content=Modificar_conte\u00fado_da_string\r
-change_string_name=Modificar_nome_da_string\r
-Change_table_column_and_General_fields_settings_to_use_the_new_feature=Modificar_a_coluna_da_tabela_e_as_configura\u00e7\u00f5es_gerais_do_campo_para_utilizar_a_nova_funcionalidade.\r
-change_type=modificar_o_tipo\r
-changed_=modificado_\r
-Changed_font_settings=Configura\u00e7\u00f5es_de_fonte_modificadas\r
-Changed_language_settings=Configura\u00e7\u00f5es_de_idioma_modificados\r
-Changed_look_and_feel_settings=Configura\u00e7\u00f5es_do_esquema_de_cores_modificados\r
-Changed_preamble=Pre\u00e2mbulo_modificado\r
-Changed_type_to=Tipo_modificado_para\r
-Characters_to_ignore=Caracteres_para_ignorar\r
-Check_existing_%0_links=Verificar_links_%0_existentes\r
-Check_links=Verificar_links\r
-Choose_the_URL_to_download._The_default_value_points_to_a_list_provided_by_the_JabRef_developers.=Escolha_a_URL_para_baixar._O_valor_padr\u00e3o_apona_para_uma_lista_fornecida_pelos_desenvolvedores_do_JabRef.\r
-Cite_command=Comando_citar\r
-Class_name=Nome_da_classe\r
-Clear=Limpar\r
-clear_all_groups=Limpar_todos_os_grupos\r
-Clear_field=Limpar_o_campo\r
-Clear_fields=Limpar_os_campos\r
-Clear_highlight=Limpar_realce\r
-Close=Fechar\r
-Close_dialog=Fechar_janela_de_di\u00e1logo\r
-Close_the_current_database=Fechar_o_banco_de_dados_atual\r
-Close_the_help_window=Fechar_a_janela_de_ajuda\r
-Close_window=Fechar_Janela\r
-Closed_database=Banco_de_dados_fechado\r
-Collapse_subtree=Colapsar_sub\u00e1rvore\r
-Color_codes_for_required_and_optional_fields=C\u00f3digos_de_cores_para_campos_obrigat\u00f3rios_e_opcionais\r
-Color_for_marking_incomplete_entries=Cores_para_marcar_entradas_incompletas\r
-Column_width=Largura_da_coluna\r
-Command_line_id=ID_da_linha_de_comando\r
-Complete_record=Registro_completo\r
-Connect=Conectar\r
-Connect_to_SQL_database=Conectar_ao_banco_de_dados_SQL\r
-Connect_to_SQL_Database=Conectar_a_um_Banco_de_dados_SQL\r
-Connection_to_IEEEXplore_failed=a_conex\u00e3o_ao_IEEEXplore_falhou.\r
-Contained_in=Contido_em\r
-Content=Conte\u00fado\r
-Copied=Copiado\r
-Copied_cell_contents=Conte\u00fados_da_c\u00e9lula_copiados\r
-Copied_key=Chave_BibTeX_copiada\r
-Copied_keys=Chaves_BibTeX_copiadas\r
-Copy=Copiar\r
-Copy_BibTeX_key=Copiar_chave_BibTeX\r
-Copy_file_to_file_directory.=Copiar_arquivo_para_o_diret\u00f3rio_de_arquivos\r
-Copy_files_to_file_directory.=Copiar_arquivos_para_o_diret\u00f3rio_de_arquivos.\r
-Copy_to_clipboard=Copiar_para_a_\u00e1rea_de_transfer\u00eancia\r
-Could_not_call_executable=N\u00e3o_\u00e9_poss\u00edvel_chamar_o_execut\u00e1vel\r
-Could_not_connect_to_a_running_gnuserv_process._Make_sure_that_Emacs_or_XEmacs_is_running,<BR>and_that_the_server_has_been_started_(by_running_the_command_'gnuserv-start').=N\u00e3o_foi_poss\u00edvel_conectar_a_um_processo_'gnuserv'_sendo_executado._Certifique-se_que_Emacs_ou_XEmacs_est\u00e1_sendo_executado,<BR>e_que_o_servidor_foi_iniciado_(executando_o_comando_'gnuserv-start').\r
-Could_not_connect_to_host_=N\u00e3o_foi_poss\u00edvel_conectar_ao_host_\r
-Could_not_connect_to_Vim_server._Make_sure_that_Vim_is_running<BR>with_correct_server_name.=N\u00e3o_foi_poss\u00edvel_conectar_ao_servidor_Vim._Certifique-se_que_o_Vim_est\u00e1_sendo_executado<br>_com_o_nome_de_servidor_correto.\r
-Could_not_determine_exception_message.=N\u00e3o_foi_poss\u00edvel_determinar_a_mensagem_de_exce\u00e7\u00e3o.\r
-Could_not_export_entry_types=N\u00e3o_foi_poss\u00edvel_exportar_os_tipos_d_eentrada.\r
-Could_not_export_file=N\u00e3o_foi_poss\u00edvel_exportar_os_arquivos\r
-Could_not_export_preferences=N\u00e3o_foi_poss\u00edvel_exportar_as_prefer\u00eancias\r
-Could_not_find_a_suitable_import_format.=N\u00e3o_foi_poss\u00edvel_encontrar_um_formato_de_importa\u00e7\u00e3o_compat\u00edvel.\r
-Could_not_find_directory_for_%0-files\:_%1=N\u00e3o_foi_poss\u00edvel_encontrar_o_diret\u00f3rio_para_arquivos_%0\:_%1\r
-Could_not_find_image_file=N\u00e3o_foi_possivel_encontrar_o_arquivo_de_imagem\r
-Could_not_find_layout_file=N\u00e3o_foi_poss\u00edvel_encontrar_o_arquivo_de_layout\r
-Could_not_import_entry_types=N\u00e3o_foi_poss\u00edvel_importar_os_tipos_de_entrada\r
-Could_not_import_preferences=N\u00e3o_foi_poss\u00edvel_importar_as_prefer\u00eancias\r
-Could_not_instantiate_%0=N\u00e3o_foi_poss\u00edvel_instanciar_%0\r
-Could_not_instantiate_%0_%1=N\u00e3o_foi_poss\u00edvel_instanciar_%0_%1\r
-Could_not_instantiate_%0._Have_you_chosen_the_correct_package_path?=N\u00e3o_foi_poss\u00edvel_instanciar_%0.__Voc\u00ea_escolheu_o_caminho_do_pacote_correto?\r
-Could_not_open_link=N\u00e3o_foi_poss\u00edvel_abrir_o_link\r
-Could_not_parse_number_of_hits=N\u00e3o_foi_poss\u00edvel_determinar_o_n\u00famero_de_resultados\r
-Could_not_print_preview=N\u00e3o_foi_poss\u00edvel_imprimir_a_previsualiza\u00e7\u00e3o\r
-Could_not_run_the_'vim'_program.=N\u00e3o_foi_poss\u00edvel_executar_o_programa_'vim'.\r
-Could_not_save_file=N\u00e3o_foi_poss\u00edvel_salvar_o_arquivo\r
-Could_not_save_file._Character_encoding_'%0'_is_not_supported.=N\u00e3o_foi_poss\u00edvel_salvar_o_arquivo._A_codifica\u00e7\u00e3o_dos_caracteres_'%0'_n\u00e3o_\u00e9_suportada.\r
-Create_group=Criar_grupo\r
-Created_groups.=Grupos_criados.\r
-crossreferenced_entries_included=Entradas_de_refer\u00eancia_cruzada_inclu\u00eddas\r
-Current_content=Conte\u00fado_atual\r
-Current_value=Valor_atual\r
-Custom_entry_types=Tipos_de_entradas_personalizados\r
-Custom_entry_types_found_in_file=Tipos_de_entrada_personalizados_encontrados_em_no_arquivo\r
-Custom_icon_theme=Tema_de_\u00edcone_personalizado\r
-Custom_icon_theme_file=Arquivos_de_tema_de_\u00edcone_personalizado\r
-Custom_importers=Importadores_personalizados\r
-Customize_entry_types=Personalizar_tipos_de_entrada\r
-Customize_key_bindings=Personalizar_combina\u00e7\u00f5es_de_teclas\r
-Cut=Recortar\r
-cut_entries=Recortar_entradas\r
-cut_entry=Recortar_entrada\r
-Cut_pr=Recortar\r
-Database_\:=Banco_de_dados\:\r
-Database_encoding=Codifica\u00e7\u00e3o_do_banco_de_dados\r
-Database_has_changed._Do_you_want_to_save_before_closing?=O_banco_de_dados_foi_alterado._Deseja_salvar_antes_de_fechar?\r
-Database_properties=Propriedades_do_banco_de_dados\r
-Date_format=Formato_de_data\r
-Default=Padr\u00e3o\r
-Default_encoding=Codifica\u00e7\u00e3o_padr\u00e3o\r
-Default_grouping_field=Campo_de_agrupamento_padr\u00e3o\r
-Default_look_and_feel=Apar\u00eancia_padr\u00e3o\r
-Default_pattern=Modelo_padr\u00e3o\r
-Default_sort_criteria=Crit\u00e9rio_de_ordena\u00e7\u00e3o_padr\u00e3o\r
-Define_'%0'=Definir_'%0'\r
-defined.=definido(a).\r
-Delete=Remover\r
-Delete_custom=Remover_personaliza\u00e7\u00e3o\r
-Delete_custom_format=Remover_formato_personalizado\r
-delete_entries=remover_entradas\r
-Delete_entry=Remover_entrada\r
-delete_entry=remover_entrada\r
-Delete_multiple_entries=Remover_entradas_m\u00faltiplas\r
-Delete_rows=Remover_linhas\r
-Delete_strings=Remover_strings\r
-Deleted=Removido\r
-Delimit_fields_with_semicolon,_ex.=Delimitar_campos_com_ponto_e_v\u00edrgula,_ex._\r
-Derby=Derby\r
-Descending=Descendente\r
-Description=Descri\u00e7\u00e3o\r
-Deselect_all=Desselecionar_todos\r
-Deselect_all_duplicates=Desselecionar_todas_as_duplicatas\r
-Details=Detalhes\r
-Disable_entry_editor_when_multiple_entries_are_selected=Desativar_o_editor_de_entrada_quando_m\u00faltiplas_entradas_s\u00e3o_selecionadas\r
-Disable_this_confirmation_dialog=Desativar_este_janela_de_confirma\u00e7\u00e3o\r
-Disable_this_warning_dialog=Desativar_esta_janela_de_aviso\r
-Display_all_entries_belonging_to_one_or_more_of_the_selected_groups.=Exibir_todas_as_entradas_pertencentes_a_um_ou_mais_dos_grupos_selecionados.\r
-Display_all_error_messages=Exibir_todas_as_mensagens_de_erro\r
-Display_help_on_command_line_options=Exibir_a_ajuda_em_op\u00e7\u00f5es_de_linha_de_comando\r
-Display_imported_entries_in_an_inspection_window_before_they_are_added.=Exibir_entradas_importadas_em_uma_janela_de_inspe\u00e7\u00e3o_antes_delas_serem_adicionadas.\r
-Display_only_entries_belonging_to_all_selected_groups.=Exibir_apenas_entradas_pertencentes_aos_grupos_selecionados\r
-Display_version=Exibir_vers\u00e3o\r
-Displaying_no_groups=Nenhum_grupo_sendo_exibido\r
-Do_not_abbreviate_names=N\u00e3o_abreviar_nomes\r
-Do_not_autoset=N\u00e3o_definie_automaticamente\r
-Do_not_import_entry=N\u00e3o_importar_a_entrada\r
-Do_not_open_any_files_at_startup=N\u00e3o_abrir_quaisquer_arquivos_ao_iniciar\r
-Do_not_overwrite_existing_keys=N\u00e3o_sobrescrever_chaves_existentes\r
-Do_not_show_splash_window_at_startup=N\u00e3o_exibir_a_janela_de_in\u00edcio_ao_iniciar\r
-Do_not_show_these_options_in_the_future=N\u00e3o_exibir_estas_op\u00e7\u00f5es_no_futuro\r
-Do_not_wrap_the_following_fields_when_saving=N\u00e3o_agregar_os_seguintes_campos_ao_salvar\r
-Do_not_write_the_following_fields_to_XMP_Metadata\:=N\u00e3o_sobrescrever_os_seguintes_campos_para_metadados_XMP\:\r
-Do_you_want_JabRef_to_do_the_following_operations?=Voc\u00ea_deseja_que_o_JabRef_realize_as_seguintes_opera\u00e7\u00f5es?\r
-DocBook=DocBook\r
-Down=Abaixo\r
-Download=Download\r
-Download_completed=Download_completo\r
-Download_file=Realizar_o_download_do_arquivo\r
-Downloading...=Download_em_curso...\r
-Drag_and_Drop_Error=Erro_ao_arrastar_e_soltar\r
-Drop_%0=Soltar_%0\r
-duplicate_BibTeX_key=chave_BibTeX_duplicada.\r
-Duplicate_BibTeX_key.=Chave_BibTeX_duplicada.\r
-Duplicate_BibTeX_key._Grouping_may_not_work_for_this_entry.=Chave_BibTeX_duplicada._O_agrupamento_pode_n\u00e3o_funcionar_para_esta_entrada.\r
-Duplicate_Key_Warning=Aviso:_chave_duplicada\r
-Duplicate_pairs_found=Pares_de_duplicatas_encontrados\r
-duplicate_removal=remo\u00e7\u00e3o_de_duplicatas\r
-Duplicate_string_name=Duplicar_nome_da_string\r
-Duplicates_found=Duplicatas_encontradas\r
-Duplicates_removed=Duplicatas_removidas\r
-Dynamic_groups=Grupos_din\u00e2micos\r
-Dynamically_group_entries_by_a_free-form_search_expression=Agrupar_entradas_dinamicamente_utilizando_uma_express\u00e3o_de_busca_em_forma_livre\r
-Dynamically_group_entries_by_searching_a_field_for_a_keyword=Agrupar_entradas_dinamicamente_selecionando_um_campo_ou_palavra-chave\r
-Each_line_must_be_on_the_following_form=Cada_linha_deve_posuir_o_seguinte_formato\r
-Edit=Editar\r
-Edit_custom_export=Editar_exporta\u00e7\u00e3o_personalizada\r
-Edit_entry=Editar_entrada\r
-Edit_file_link=Editar_link_do_arquivo\r
-Edit_file_type=Editar_tipo_de_arquivo\r
-Edit_group=Editar_grupo\r
-Edit_journal=Editar_revista(journal)\r
-Edit_preamble=Editar_preambulo\r
-Edit_strings=Editar_strings\r
-Editor_options=Op\u00e7\u00f5es_do_editor\r
-empty_BibTeX_key=chave_BibTeX_vazia.\r
-Empty_BibTeX_key.=Chave_BibTeX_vazia.\r
-Empty_BibTeX_key._Grouping_may_not_work_for_this_entry.=Chave_BibTeX_vazia._O_agrupamento_pode_n\u00e3o_funcionar_para_esta_entrada.\r
-empty_database=banco_de_dados_vazio\r
-Enable_source_editing=Ativar_edi\u00e7\u00e3o_de_c\u00f3digo_fonte\r
-Enable_word/name_autocompletion=Ativar_auto_completar_para_palavras/nomes\r
-Endnote=Endnote\r
-Enter_URL=Digite_a_URL\r
-Enter_URL_to_download=Digite_a_URl_para_download\r
-entries=entradas\r
-Entries_cannot_be_manually_assigned_to_or_removed_from_this_group.=As_entradas_n\u00e3o_podem_ser_manualmente_designadas_ou_removidas_deste_grupo.\r
-Entries_exported_to_clipboard=Entradas_exportadas_para_a_\u00e1rea_de_transfer\u00eancia\r
-entries_have_undefined_BibTeX_key=as_entradas_possuem_chave_BibTeX_n\u00e3o_definida\r
-entries_into_new_database=entradas_em_novo_banco_de_dados\r
-entry=entrada\r
-Entry_editor=Editor_de_entrada\r
-Entry_in_current_database=Entradas_no_banco_de_dados_atual\r
-Entry_in_import=Entrada_em_importa\u00e7\u00e3o\r
-Entry_preview=Previsualiza\u00e7\u00e3o_da_entrada\r
-Entry_table=Tabela_de_entradas\r
-Entry_table_columns=Colunas_da_tabela_de_entradas\r
-Entry_type=Tipo_de_entrada\r
-Entry_type_names_are_not_allowed_to_contain_white_space_or_the_following_characters=Os_nomes_dos_tipos_de_entrada_n\u00e3o_devem_possuir_espa\u00e7os_em_branco_ou_os_seguintes_caracteres\r
-Entry_types=Tipos_de_entrada\r
-Error=Erro\r
-Error\:_=Erro\:_\r
-Error_converting_Bibtex_to_XMP:_%0=Erro_ao_converter_Bibtex_para_XMP:_%0\r
-Error_converting_Bibtex_to_XMP\:_%0=Erro_ao_converter_Bibtex_para_XMP\:_%0\r
-Error_converting_XMP_to_'%0'...=Erro_ao_convertar_XMP_para_'%0'...\r
-Error_exporting_to_clipboard=Erro_ao_exportar_para_a_\u00e1rea_de_transfer\u00eancia\r
-Error_in_field=Erro_no_campo\r
-Error_in_starting_plug-in_system._Starting_without,_but_some_functionality_may_be_missing.=Erro_ao_iniciar_o_sistema_de_plugins._Iniciando_sem_os_plugins,_mas_algumas_funcionalidades_podem_n\u00e3o_estar_dispon\u00edveis.\r
-Error_occured_when_parsing_entry=Um_erro_ocorreu_ao_analisar_a_entrada\r
-Error_opening_file=Erro_ao_abrir_o_arquivo\r
-Error_setting_field=Erro_ao_confgurar_campo\r
-Error_while_converting_BibtexEntry_to_XMP_%0=Erro_ao_converter_BibtexEntry_para_XMP_%0\r
-Error_while_downloading_file\:=Erro_ao_realizar_o_download_do_arquivo_\:\r
-Error_while_fetching_from_OIA2=Erro_ao_recuperar_a_partir_do_OIA2\r
-Error_while_writing=Erro_durante_a_escrita\r
-Error_writing_to_%0_file(s).=Erro_ao_escrever_para_%0_arquivos.\r
-Error_writing_XMP_to_file\:_%0=Erro_ao_escrever_metadados_XMP_para_o_arquivo\:_%0\r
-Establishing_SQL_connection...=Estabelecendo_conex\u00e3o_SQL...\r
-Exceptions=Exce\u00e7\u00f5es\r
-Existing_file=Arquivo_existente\r
-exists._Overwrite_file?=existe._Sobrescrever_o_arquivo?\r
-exists._Overwrite?=existe._Sobrescrever?\r
-Expand_subtree=Expandir_a_sub\u00e1rvore\r
-Export=Exportar\r
-Export_entry_types=Exportar_tipos_de_entrada\r
-Export_name=Exportar_nome\r
-Export_preferences=Exportar_prefer\u00eancias\r
-Export_preferences_to_file=Exportar_prefer\u00eancias_do_arquivo\r
-Export_properties=Propriedades_de_exporta\u00e7\u00e3o\r
-Export_to_clipboard=Exportar_para_a_\u00e1rea_de_transfer\u00eancia\r
-Export_to_SQL_database=Exportar_para_um_Banco_de_Dados_SQL\r
-Exporting=Exportando\r
-Extension=Extens\u00e3o\r
-External_changes=Modifica\u00e7\u00f5es_externas\r
-External_file_links=Links_de_arquivos_externos\r
-External_files=Arquivos_externos\r
-External_programs=Programas_externos\r
-External_viewer_called=Visualizador_externo_chamado\r
-Failed_to_read_groups_data_(unsupported_version:_%0)=Falha_ao_ler_dado_dos_grupos_(vers\u00e3o_n\u00e3o_suportada:_%0)\r
-Fetch=Recuperar\r
-Field=Campo\r
-field=campo\r
-Field_content=Conte\u00fado_do_campo\r
-Field_name=Nome_do_campo\r
-Field_names_are_not_allowed_to_contain_white_space_or_the_following_characters=O_noem_dos_campos_n\u00e3o_devem_possuir_espa\u00e7os_em_branco_ou_os_seguintes_caracteres\r
-Field_sizes=Tamanho_dos_campos\r
-Field_to_filter=Campos_a_serem_filtrados\r
-Field_to_group_by=Campos_como_crit\u00e9rio_de_agrupamento\r
-Fields=Campos\r
-File=Arquivo\r
-file=arquivo\r
-File_'%0'_is_already_open.=O_arquivo_'%0'_j\u00e1_est\u00e1_aberto.\r
-File_'%0'_not_found=O_arquivo_'%0'_n\u00e3o_foi_encontrado\r
-File_changed=Arquivo_modificado\r
-File_directory_is_'%0'\:=O_diret\u00f3rio_do_arquivo_\u00e9_'%0'\:\r
-File_directory_is_not_set_or_does_not_exist!=O_diret\u00f3rio_do_arquivo_n\u00e3o_foi_condigura\u00e7\u00e3o_ou_n\u00e3o_existe!\r
-File_download=Download_do_arquivo\r
-File_exists=O_arquivo_existe\r
-File_extension=Extens\u00e3o_do_arquivo\r
-File_has_been_updated_externally._What_do_you_want_to_do?=O_arquivo_foi_atualizado_externamente._O_que_voc\u00ea_deseja_fazer?\r
-File_not_found=Arquivo_n\u00e3o_encontrado\r
-File_type=Tipo_de_arquivo\r
-File_updated_externally=Arquivo_atualizado_externamente\r
-filename=nome_do_arquivo\r
-Files_opened=Arquivos_abertos\r
-Filter=Filtro\r
-Finished_autosetting_external_links.=A_defini\u00e7\u00e3o_autom\u00e1tica_de_links_externos_foi_finalizada.\r
-Finished_synchronizing_%0_links._Entries_changed%c_%1.=A_sincroniza\u00e7\u00e3o_de_%0_links_foi_finalizada._Entradas_modificadas%c_%1.\r
-Finished_writing_XMP-metadata._Wrote_to_%0_file(s).=A_escrita_de_metadados_XMP_terminou._Escrita_realizada_para_%0_arquivo(s).\r
-Finished_writing_XMP_for_%0_file_(%1_skipped,_%2_errors).=A_escrita_de_metadados_XMP_para_o_arquivo_%0_terminou_(%1_pulado,_%2_erros).\r
-First_select_the_entries_you_want_keys_to_be_generated_for.=Selecionar_inicialmente_as_entradas_que_voc\u00ea_deseja_ter_chaves_geradas.\r
-Fit_table_horizontally_on_screen=Ajustar_tabela_horizontalmente_na_tela\r
-Float=Manter_no_topo\r
-Float_marked_entries=Manter_entradas_marcadas_no_topo\r
-Font_Family=Fam\u00edlia_da_fonte\r
-Font_Preview=Previsualiza\u00e7\u00e3o_da_fonte\r
-Font_Size=Tamanho_da_fonte\r
-Font_Style=Estilo_de_fonte\r
-FontSelector=FontSelector\r
-for=para\r
-Format_of_author_and_editor_names=Formato_dos_nomes_do_autor_e_editor\r
-Format_String=Formato_de_string\r
-Format_used=Formato_utilizado\r
-Formatter_Name=Nome_do_formatador\r
-Formatter_not_found=Formatador_n\u00e3o_encontrado\r
-found=encontrado\r
-Found_%0_plugin(s)=%0_plugin(s)_encontrados\r
-found_in_aux_file=encontrado_em_arquivo_aux\r
-Full_name=Nome_completo\r
-General=Geral\r
-General_fields=Campos_gerais\r
-Generate=Gerar\r
-Generate_BibTeX_key=Gerar_chave_BibTeX\r
-Generate_keys=Gerar_chaves\r
-Generate_keys_before_saving_(for_entries_without_a_key)=Gerar_chaves_antes_de_salvar\r
-Generate_keys_for_imported_entries=Gerar_chaves_para_entradas_importadas\r
-Generate_now=Gerar_agora\r
-Generated_BibTeX_key_for=Chave_BibTeX_gerada_para\r
-Generating_BibTeX_key_for=Gerando_chave_BibTeX_para\r
-Grab=Capturar\r
-Gray_out_entries_not_in_group_selection=Desativar_entradas_fora_da_sele\u00e7\u00e3o_do_grupo\r
-Gray_out_non-hits=Desativar_entradas_n\u00e3o_encontrada\r
-Gray_out_non-matching_entries=Desativar_entradas_que_n\u00e3o_possuem_correspond\u00eancia\r
-Group_properties=Propriedades_de_grupo\r
-grouping_may_not_work_for_this_entry=o_agrupamento_pode_n\u00e3o_funcionar_para_esta_entrada\r
-Groups=Grupos\r
-Harvard_RTF=Harvard_RTF\r
-Have_you_chosen_the_correct_package_path?=Voc\u00ea_escolheu_o_caminho_de_pacote_correto?\r
-Help=Ajuda\r
-Help_contents=Conte\u00fados_da_ajuda\r
-Help_on_groups=Ajuda_sobre_grupos\r
-Help_on_key_patterns=Ajuda_sobre_modelos_de_chave\r
-Help_on_Preview_Settings=Ajuda_sobre_Configura\u00e7\u00f5es_de_previsualiza\u00e7\u00e3o_\r
-Help_on_Regular_Expression_Search=Ajuda_relacionada_\u00e0_busca_por_express\u00e3o_regular\r
-Hide_non-hits=Esconder_entradas_n\u00e3o_encontradas\r
-Hide_non-matching_entries=Esconder_campos_que_n\u00e3o_possuem_correspond\u00eancia\r
-Hierarchical_context=Contexo_hier\u00e1rquico\r
-Highlight=Destacar\r
-Highlight_groups_matching_all_selected_entries=Destacar_grupos_que_correpondem_a_todas_as_entradas_selecionadas\r
-Highlight_groups_matching_any_selected_entry=Destacar_grupos_que_correspondem_a_qualquer_entrada_selecionada\r
-Highlight_overlapping_groups=Destacar_grupos_sobrepostos\r
-Hint%c_To_search_specific_fields_only,_enter_for_example%c<p><tt>author%esmith_and_title%eelectrical</tt>=Dica%c_Para_procurar_apenas_campos_espec\u00edficos,_digite_por_exemplo%c<p><tt>author%esmith_and_title%eelectrical</tt>\r
-HTML=HTML\r
-HTML_table=Tabela_HTML\r
-HTML_table_(with_Abstract_&_BibTeX)=Tabela_HTML_(_com_resumo_(abstract)_&_BibTeX)\r
-Icon=\u00cdcone\r
-Ignore=Ignorar\r
-Illegal_type_name=Nome_de_tipo_ilegal\r
-Immediate_subgroups=Subgrupos_imediatos\r
-Import=Importar\r
-Import_and_keep_old_entry=Importar_e_manter_entradas_antigas\r
-Import_and_remove_old_entry=Importar_e_remover_entradas_antigas\r
-Import_entries=IMportar_entradas\r
-Import_entry_types=Importar_tipos_de_entrada\r
-Import_failed=A_importa\u00e7\u00e3o_falhou\r
-Import_file=Importar_arquivo\r
-Import_group_definitions=Importar_defini\u00e7\u00f5es_de_grupo\r
-Import_name=Importar_o_nome\r
-Import_preferences=Importar_prefer\u00eancias\r
-Import_preferences_from_file=Importar_prefer\u00eancias_a_partir_de_um_arquivo\r
-Import_strings=Importar_strings\r
-Import_to_open_tab=Importar_para_abrir_aba\r
-Import_word_selector_definitions=Importar_defini\u00e7\u00f5es_de_sele\u00e7\u00e3o_de_palavra\r
-Imported_database=Banco_de_dados_importado\r
-Imported_entries=Entradas_importas\r
-Imported_entry_types=Tipos_de_entrada_importados\r
-Imported_from_database=Importado_a_partir_do_banco_de_dados\r
-ImportFormat_class=Classe_ImportFormat\r
-Importing=Importando\r
-Importing_in_unknown_format=Importa\u00e7\u00e3o_em_formato_desconhecido\r
-In_JabRef,_use_pairs_of_#_characters_to_indicate_a_string.=No_JabRef,_utilizar_pares_de_caracteres_#_para_indicar_uma_string.\r
-Include_abstracts=Incluir_resumos_(abstracts)\r
-Include_entries=Incluir_entradas\r
-Include_subgroups\:_When_selected,_view_entries_contained_in_this_group_or_its_subgroups=Incluir_subgrupos\:_Quando_selecionado,_visualizar_entradas_contidas_neste_grupo_ou_em_seus_subgrupos\r
-Incremental=Incremental\r
-Incremental_search=Busca_incremental\r
-Incremental_search_failed._Repeat_to_search_from_top.=A_busca_incremental_falhou._Repita_a_opera\u00e7\u00e3o_pra_buscar_a_partir_do_topo.\r
-Independent_group\:_When_selected,_view_only_this_group's_entries=Grupo_independente\:_Quando_selecionado,_mostra_apenas_as_entradas_deste_grupo\r
-Initially_show_groups_tree_expanded=Inicialmente_mostra_\u00e1rvores_do_grupo_expandidas\r
-Input=Atribui\u00e7\u00e3o_do_campo\r
-Input_error=Erro_de_atribu\u00e7\u00e3o\r
-Insert=Inserir\r
-Insert_rows=Inseir_linhas\r
-Insert_selected_citations_into_LyX/Kile=Inserir_cita\u00e7\u00f5es_selecionadas_no_LyX/Kile\r
-Insert_selected_citations_into_WinEdt=Inserir_cita\u00e7\u00f5es_selecionadas_no_WInEdt\r
-insert_string_=Inserir_string_\r
-Insert_URL=Inserir_URL\r
-integrity=Integridade\r
-Integrity_check=Verfica\u00e7\u00e3o_de_integridade\r
-Intersection=Interse\u00e7\u00e3o\r
-Invalid_BibTeX_key=Chave_BibTex_inv\u00e1lida\r
-Invalid_date_format=Formato_de_data_inv\u00e1lido\r
-Invalid_URL=URL_inv\u00e1lida\r
-Inverted=invertido\r
-is_a_standard_type.=\u00e9_um_tipo_padr\u00e3o.\r
-ISO_abbreviation=Abrevia\u00e7\u00e3o_ISO\r
-Item_list_for_field=lista_de_itens_para_o_campo\r
-jabref=jabref\r
-JabRef_help=Ajuda_do_JabRef\r
-JabRef_preferences=Prefer\u00eancias_do_JabRef\r
-Journal_abbreviations=Abrevia\u00e7\u00f5es_de_jornal\r
-Journal_list_preview=Previsualiza\u00e7\u00e3o_da_lista_de_itens_da_revista\r
-Journal_name=Nome_da_revista\r
-Keep=Manter\r
-Keep_both=Manter_ambos\r
-Keep_lower=Manter_abaixo\r
-Keep_upper=Manter_acima\r
-Key_bindings=Combina\u00e7\u00f5es_de_tecla\r
-Key_bindings_changed=Combina\u00e7\u00f5es_de_teclas_modificadas\r
-Key_generator_settings=Configura\u00e7\u00f5es_do_gerador_de_chaves\r
-Key_pattern=Modelo_de_chaves\r
-keys_in_database=chaves_no_banco_de_dados\r
-Keyword=Palavra-chave\r
-Label=R\u00f3tulo\r
-Language=Idioma\r
-Last_modified=\u00daltima_modifica\u00e7\u00e3o\r
-LaTeX_AUX_file=Arquivo_LaTeX_AUX\r
-Leave_file_in_its_current_directory.=Manter_arquivos_em_seu_diret\u00f3rio_atual.\r
-Leave_files_in_their_current_directory.=Manter_arquivos_em_seu_diret\u00f3rio_atual\r
-Left=Esquerdo(a)\r
-License=Licen\u00e7a\r
-Limit_to_fields=Limitar_aos_campos\r
-Limit_to_selected_entries=Limitar_\u00e0s_entradas_selecionadas\r
-Link=Linkar\r
-Link_local_file=Link_arquivo_local\r
-Link_to_file_%0=Link_para_o_arquivo_%0\r
-Listen_for_remote_operation_on_port=Escutar_opera\u00e7\u00f5es_remotas_na_porta_\r
-Load_and_Save_preferences_from/to_jabref.xml_on_start-up_(memory_stick_mode)=Carregar_e_salvar_prefer\u00eancias_a_partir_de/para_jabref.xml_ao_iniciar_(modo_cart\u00e3o_de_mem\u00f3ria)\r
-Load_session=Carregar_sess\u00e3o\r
-Loading_session...=Carregando_sess\u00e3o...\r
-localhost=localhost\r
-Look_and_feel=Apar\u00eancia\r
-Looking_for_pdf...=Procurando_por_pdf...\r
-lower=min\u00fasculo\r
-Main_file_directory=Diret\u00f3rio_de_arquivos_principal\r
-Main_layout_file=Arquivo_de_layout_principal\r
-Main_PDF_directory=Diret\u00f3rio__de_arquivos_PDF_principal\r
-Main_PS_directory=Diret\u00f3rio__de_arquivos_PS_principal\r
-Manage=Gerenciar\r
-Manage_custom_exports=Gerenciar_exporta\u00e7\u00f5es_personalizadas\r
-Manage_custom_imports=Gerenciar_importa\u00e7\u00f5es_personalizadas\r
-Manage_external_file_types=Gerenciar_tipos_de_arquivo_externos\r
-Manage_journal_abbreviations=Gerenciar_abrevia\u00e7\u00f5es_de_revistas(jorunals)\r
-Mark_entries=Marcar_entradas\r
-Mark_entry=Marcar_entrada\r
-Mark_new_entries_with_addition_date=Marcar_novas_entradas_com_a_data_de_adi\u00e7\u00e3o\r
-Mark_new_entries_with_owner_name=Marcar_novas_entradas_com_o_nome_do_dono\r
-Marked_selected=Marcados_selecionados\r
-Memory_Stick_Mode=Modo_cart\u00e3o_de_mem\u00f3ria\r
-Menu_and_label_font_size=Tamanho_da_fonte_do_menu_e_de_r\u00f3tulo\r
-Merged_external_changes=Mudan\u00e7as_externas_unidas\r
-Messages=Mensagens\r
-Messages_and_Hints=Mensagens_e_dicas\r
-Modification_of_field=Modifica\u00e7\u00e3o_do_campo\r
-Modified_group_"%0".=Grupo_"%0"_modificado\r
-Modified_groups=Grupos_modificados\r
-Modified_string=String_modificada\r
-Modify=Modificar\r
-modify_group=Modificar_o_grupo\r
-MODS=MODS\r
-Move=Mover\r
-Move_down=Mover_para_baixo\r
-Move_entries_in_group_selection_to_the_top=Mover_entradas_nos_grupos_selecionados_para_o_topo\r
-Move_external_links_to_'file'_field=Mover_links_externos_para_o_campo_'arquivo'\r
-Move_files_to_file_directory.=Mover_arquivos_para_o_diret\u00f3rio_de_arquivos\r
-move_group=mover_grupo\r
-Move_string_down=Mover_string_pra_baixo\r
-Move_string_up=Mover_string_acima\r
-Move_up=Mover_para_cima\r
-Moved_group_"%0".=Grupo_"%0"_movido\r
-MS_Office_2007=MS_Office_2007\r
-MySQL=MySQL\r
-MySQL_database=Banco_de_dados_MySQL\r
-Name=Nome\r
-Name_formatter=Formatador_de_nomes\r
-Natbib_style=Estilo_Natbib\r
-nested_aux_files=arquivos_auxiliares_aninhados\r
-New=Novo\r
-new=novo\r
-New_BibTeX_database=Novo_banco_de_dados_BibTeX\r
-New_BibTeX_entry=Nova_entrada_BibTeX\r
-New_BibTeX_subdatabase=Novo_subbanco_de_dados_BibTeX\r
-New_content=Novo_conte\u00fado\r
-New_database_created.=Novo_banco_de_dados_criado\r
-New_field_value=Novo_valor_de_campo\r
-New_file=Novo_arquivo\r
-New_file_link_(INSERT)=Novo_link_de_arquivo_(INSERT)\r
-New_group=Novo_grupo\r
-New_string=Nova_string\r
-Next_entry=Pr\u00f3xima_entrada\r
-No_%0_found=Nenhum_%0_encontrado\r
-No_actual_changes_found.=Nenhuma_mudan\u00e7a_atual_encontrada.\r
-no_base-bibtex-file_specified=nenhum_base-bibtex-file_especificado\r
-no_database_generated=Nenhum_banco_de_dados_gerado\r
-No_duplicates_found=Nenhuma_duplicata_encontrada.\r
-No_entries_found._Please_make_sure_you_are_using_the_correct_import_filter.=Nenhuma_entrada_encontrada._Por_favor,_certifique-se_que_voc\u00ea_est\u00e1_utilizando_o_filtro_de_importa\u00e7\u00e3o_correto.\r
-No_entries_found_for_the_search_string_'%0'=Nenhuma_entrada_encontrada_para_a_string_pesquisada_'%0'\r
-No_entries_imported.=Nenhuma_entrada_importada.\r
-No_entries_or_multiple_entries_selected.=Nenhuma_entrada_ou_m\u00faltiplas_entradas_selecionadas.\r
-No_entries_selected=Nenhuma_entrada_selecionada\r
-No_entries_selected.=Nenhuma_entrada_selecionada.\r
-No_exceptions_have_ocurred.=Nenhuma_exce\u00e7\u00e3o_ocorreu.\r
-No_files_found.=Nenhum_arquivo_encontrado.\r
-No_GUI._Only_process_command_line_options.=Nenhuma_interface_gr\u00e1fica._Apenas_processar_op\u00e7\u00f5es_de_comandos_de_linha.\r
-No_journal_names_could_be_abbreviated.=Nenhum_nome_de_revista_(journal)_p\u00f4de_ser_abreviado.\r
-No_journal_names_could_be_unabbreviated.=Nenhum_nome_de_revista(journal)_p\u00f4de_ser_desabreviado.\r
-No_PDF_linked=Nenhum_PDF_linkado\r
-No_pdf_or_ps_defined,_and_no_file_matching_Bibtex_key_found=Nenhum_PDF_ou_PS_definido,_e_nenhum_arquivo_corresponde_a_chave_BibTeX_encontrada\r
-No_plugins_were_found_in_the_following_folders\:=Nenhum_plugin_encontrado_nas_seguintes_pastas\:\r
-No_references_found=Nenhuma_refer\u00eancia_encontrada\r
-No_saved_session_found.=Nenhuma_sess\u00e3o_salva_encontrada.\r
-No_url_defined=Nenhuma_URL_definida\r
-No_XMP_metadata_found_in_=Nenhum_metadado_XMP_encontrado_em\r
-not=n\u00e3o\r
-not_found=n\u00e3o_encontrado\r
-Not_saved_(empty_session)=N\u00e3o_salvo_(sess\u00e3o_vazia)\r
-Note_that_the_entry_causing_the_problem_has_been_selected.=Note_que_a_entrada_causando_o_problema_foi_selecionada.\r
-Note_that_you_must_specify_the_fully_qualified_class_name_for_the_look_and_feel,=Note_que_voc\u00ea_deve_especificar_o_nome_de_classe_completamente_qualificado_da_apar\u00eancia,\r
-Nothing_to_redo=Nada_para_refazer\r
-Nothing_to_undo=Nada_para_desfazer\r
-Number_of_references_to_fetch?=N\u00fameros_de_refer\u00eancias_para_recuperar?\r
-occurences=ocorr\u00eancias\r
-OK=OK\r
-Ok=Ok\r
-One_or_more_file_links_are_of_the_type_'%0',_which_is_undefined._What_do_you_want_to_do?=Um_ou_mais_links_de_arquivos_s\u00e3o_do_tipo_'%0',_que_n\u00e3o_est\u00e1_definido._O_que_voc\u00ea_deseja_fazer?\r
-One_or_more_keys_will_be_overwritten._Continue?=Uma_ou_mais_chaves_ser\u00e3o_sobrescritas._Continuar?\r
-Only_one_item_is_supported=Apenas_um_item_\u00e9_suportado\r
-Open=Abrir\r
-Open_BibTeX_database=Abrir_banco_de_dados_BibTeX\r
-Open_database=Abrir_banco_de_dados\r
-Open_editor_when_a_new_entry_is_created=Abrir_o_editor_quando_uma_nova_entrada_\u00e9_criada\r
-Open_file=Abrir_arquivo\r
-Open_last_edited_databases_at_startup=Abrir_os_\u00faltimos_banco_de_dados_editados_ao_iniciar\r
-Open_PDF_or_PS=_Abrir_PDF_ou_PS\r
-Open_right-click_menu_with_Ctrl+left_button=Abrir_menu_de_contexto_com_Ctrl+Bot\u00e3o_esquerdo_do_mouse\r
-Open_URL_or_DOI=Abrir_URL_ou_DOI\r
-OpenDocument_Spreadsheet=Planilha_OpenDocument\r
-Opened_database=Banco_de_dados_aberto\r
-Opening=Abrindo\r
-Opening_preferences...=Abrindo_prefer\u00eancias\r
-OpenOffice_Calc=OpenOffice_Calc\r
-OpenOffice_CSV=OpenOffice_CSV\r
-Operation_canceled.\n=Opera\u00e7\u00e3o_cancelada.\n\r
-Operation_not_supported=Opera\u00e7\u00e3o_n\u00e3o_suportada\r
-Optional_fields=Campos_opcionais\r
-Options=Op\u00e7\u00f5es\r
-or=ou\r
-out_of=de\r
-Output=Sa\u00edda\r
-Output_or_export_file=Arquivo_de_sa\u00edda_ou_exporta\u00e7\u00e3o\r
-Override=Substituir\r
-Override_default_file_directories=Substituir_os_diret\u00f3rios_de_arquivo_padr\u00e3o\r
-Override_default_font_settings=Substituir_configura\u00e7\u00f5es_de_fonte_padr\u00e3o\r
-override_the_bibtex_key_by_the_selected_text=substituir_a_chave_bibtex_pelo_texto_selecionado\r
-Overwrite=Sobrescrever\r
-Overwrite_existing_field_values=Sobrescrever_valores_de_campo_existentes\r
-Overwrite_keys=Sobrescrever_chaves\r
-pairs_processed=pares_processados\r
-Password_\:=Senha_\:\r
-Paste=Colar\r
-paste_entries=colar_entradas\r
-paste_entry=colar_entrada\r
-Paste_from_clipboard=Colar_a_partir_da_\u00e1rea_de_transfer\u00eancia\r
-Pasted=Colado\r
-Path_to_%0_not_defined=Caminho_para_%0_n\u00e3o_definido\r
-Path_to_LatexEditor_(LEd.exe)=Caminho_para_o_LatexEditor_(LEd.exe)\r
-Path_to_LyX_pipe=Caminho_para_o_canal_de_transmiss\u00e3o_LyX\r
-Path_to_Vim=Caminho_para_o_Vim\r
-Path_to_WinEdt.exe=Caminho_para_WinEdt.exe\r
-PDF_directory=Diret\u00f3rio_PDF\r
-PDF_does_not_exist=O_PDF_n\u00e3o_existe\r
-Personal_journal_list=Lista_de_revistas(journals)_pessoais\r
-Plain_text_import=Importa\u00e7\u00e3o_de_texto_plano\r
-Please_check_your_network_connection_to_this_machine.=Por_favor,_verifique_sua_conex\u00e3o_de_rede_para_esta_m\u00e1quina.\r
-Please_enter_a_name_for_the_group.=Por_favor,_digite_um_nome_para_o_grupo.\r
-Please_enter_a_search_term._For_example,_to_search_all_fields_for_<b>Smith</b>,_enter%c<p><tt>smith</tt><p>To_search_the_field_<b>Author</b>_for_<b>Smith</b>_and_the_field_<b>Title</b>_for_<b>electrical</b>,_enter%c<p><tt>author%esmith_and_title%eelectrical</tt>=Por_favor_digite_um_termo_de_pesquisa._Por_exemplo,_para_pesquisar_todos_os_campos_por_<b>Smith</b>,_digite_%c<p><tt>smith</tt><p>Para_pesquisar_no_campo_<b>Author</b>_por__<b>Smith</b>_e_no_campo_<b>Title</b>_por_<b>electrical</b>,_digite%c<p><tt>author%esmith_and_title%eelectr