JavaBib III Documentation
The method by which JavaBib is started depends on the installation you
choose. If you are running the program from a '.jar' file, type 'java
-jar JavaBib.jar' The '.jar' file contains a manifest file which
indicates which class contains the 'main' method. Alternatively,
you can unpack the '.jar' file into a directory. The class files
will then be present as separate files. This method of loading the
files may be slightly faster as each file does not need to be unpacked.
However, since the Java interpreter only loads each class once, the performance
benefit will be quite small. If you have installed JavaBib in this
way, execute it by typing 'java JavaBib'. For both types of
execution, one can add a file name to indicate which file JavaBib is to
Once JavaBib has been launched, the main window with a blank edit panel
appears. In front of this the startup dialog is displayed.
The startup dialog shows a list of files that have previously been opened.
To open one of the listed files, you can either double click on it or select
it, choose 'open listed file', and press continue. The selected file
is then opened. If the file you want to edit is not listed, or you
want to start a new file, select 'open new or unlisted file' and press
continue. A file dialog will be displayed, where you can select a
file to open or type in a new file name. Note that the file name
must have a '.bib' extension. If the selected file does not have
a '.bib' or '.bdx' extension, then the selected file name will have '.bib'
appended to it.
JavaBib tries to open the named file. The first step in opening
the file is to look for an index file. Index files have the extension
'.bdx'. The index file contains the name of the associated BibTeX
file as well as the length of the file and the date when it was lasted
edited. If the index file is found, it is opened. If the matching
BibTeX file exists and if the length and last modified date are correct,
the index is loaded into memory. The index file contains the location
of each entry in the '.bib' file, as well as pointers to the previous and
next entry. If the index file is not present, then the BibTeX file
itself is checked for. If it is found, then an index is generated
for the file. If the BibTeX file is also missing, then a new BibTeX
file is opened and made ready for writing.
Opening a file repeats the operation that occurs when JavaBib is first
launched. Upon selecting open, a startup dialog is displayed.
This dialog lists the names of recently opened files. The user may
select one of these or open a new file. Note that only one file can
be accessed at one time. JavaBib does not load the BibTeX file into
memory. Rather, the file is accessed one record at a time, as needed.
Simultaneous access on the same file can lead to problems whenever new
records are added. Thus, it is not advisable to have one file open
more than once.
The close operation closes the displayed window. If the file does
not have any records, it is deleted from the disk and the index is not
written. If the file has records, then after the file is closed the
index file is also written. If the window being closed is the last
window, then the application is closed. On closing, the properties
file is also written to the disk, storing the dimensions of the window
and the list of files that have been worked on.
The compact operation removes extra space from the database. When
records are deleted or modified, they are overwritten with a line of comment
characters. New records are always added to the end of the file.
Records which contain cross references are added to the end of the file,
after which the referred to record is moved to the new end of the file.
This ensures that BibTeX conventions are satisfied. However, it also
means that files will end up full of spaces. The compact operation
removes this extraneous space from between the records.
Records from other BibTeX files can be imported into an open file.
To this point, text files are the only source of import. When this
option is selected, a file dialog is displayed so that the user can select
which file to open from. Note that if you try to import records from
a file which is not a BibTeX data file, you may crash JavaBib. Be
careful importing data.
The export operation writes selected entries to a new file. When
export is selected, a file dialog is opened. Enter the name of the
file to export to. The selected entries will then be written to this
Selecting exit closes all windows and shuts down JavaBib. On exit,
the index files for each open database is written.
Selecting New clears the entry panel and presents a blank record for to
record a new entry. Before displaying the new entry however, any
currently displayed information is checked for changes. If changes
have been made, then the user is prompted for confirmation on writing or
trashing any changed. If the record is to be written, it is checked
for consistency with the requirements for this record type. The checks
include the presence of all required fields as well as a unique key.
If this entry is a cross reference, the presence of a cross reference key
is checked, and a check is made to ensure that the cross reference does
not itself contain a cross reference. Once all checks are passed,
the record is written.
Clears the information in the active record. All data fields are
cleared. The record type, citation key and crossreference field are
not changed by this operation.
Restore the initial values for this field, before any changes were made.
Cancel the current edit operation. If an existing record is being
acted upon, then this operation is the same as reset. If a new record
is being created, cancel causes the edits to be lost and displays the most
recently selected record.
Not yet implemented. In future, this selection will enable various
program options to be modified.
The records cut menu option deletes the selected records from this file
and puts the contents of the deleted records into the clipboard.
All the selected records are transferred to the clipboard as well as any
required cross referenced records which are not included in the selection.
This ensures that any pasted records will take with them the cross references
that are needed. When the records are deleted, they are removed permanently
from the file. They are overwritten with '%' characters, permanently
removing the record information from the file.
Copy the information in the selected records into the clipboard.
Any additional cross reference information is also copied into the clipboard.
The records that are placed in the clipboard are passed as plain text.
The records can thereby be pasted into any other application that shares
the system clipboard. On the Windows operating system, this works.
On Linux, the X windows system clipboard does not seem to be the same clipboard
that Java accesses.
Paste takes the contents of the system clipboard and reads it as BibTeX
records. If any records are found, they are added to the file.
On addition, duplicate keys are checked for. If a duplicate key is
found, then the user is asked to enter a new key. Selecting cancel
in response to this operation results in the record not being added.
If the key is changed, then any records with a cross reference pointing
at this record will also have their key changed.
Delete removes the selected entries from the file. The selected records
are replaced by TeX comment characters, '%'. Selecting delete removes
the records permanently from the file.
Select the keys for all the records. When all the records are selected,
cut, copy, paste, and delete operations can be performed on all the records
in the file. Selecting this menu option will switch the selection
mode to multiple if that has not already been done.
Deselct all the records in the file. This method is useful to ensure
that records in a large file are not subject to undesired operations.