|Help index||Bib-it Homepage|
To support different BibTeX styles (bst) that use different entry types and
field types Bib-it read all data about type-names from a
by convention named name
Style.ini, wich we refer to as
'style file' or 'style.ini'. The default style file is the
wich is based on the standard entry types and field types used in the original four BibTeX stylefiles
supplied with BibTeX (
unsrt.bst) plus a few nonstandard but common
field types like
isbn (wich are all treated like 'ignored fields').
The Style.ini files is divided into different parts by the following headers:
They all end with
] where headername is the header it ends.
(Actually the parsing ends with ANY line beginning with
[End but for human reading
we recomend you type the header name you're ending.)
For mor more examples see the
This part is optional. You probably won't need to use this part!
It have only two variables that can be defined:
commentSpelling wich is the spelling of a comment,
abbrevSpelling wich is the spelling of abbrevations.
You can only define ONE of each, if several values are defined to one variable only
the last will be used!
This is how you redefine the variables:
commentSpelling = comment abbrevSpelling = string
This is the default values and they will be used if you don't redefine them (in the plainStyle this part is just commented away to show the syntax). If you DO change these values remember to use the new values as the keywords in [Special]. The only reason we included these variables is to avoid hardcoding spellings.
This part contains a list of 'special' types, that is
elements with syntax similar to an entry (starts with
should not be parsed as a entry. Each special type is
defined with its spelling (without the
@ sign), the equals sign (
and the one letter value wich can be:
a for 'abbrevation',
k for 'keep it' and
i for 'ignore it' (parse through and discard, be careful with this!).
The typical special types and their values is the following:
string = a preamble = k comment = k
See also: [General]
One very special field is a comment where the first word after the
Bib-it, (e.g. the word that the parser assumes is a BibTeX reference key until it realizes
that it is a special type) wich is a comment that is ALLWAYS discarded. This is used when saving files
to avoid duplicating the autogenerated comments produced by Bib-it. If you happen (for some reason) to
allways start your comment fields with this string you MUST change this before parsing your files
if you want to keep your comments. We assumed that few people do so...
This is the list of field types. The syntax is:
f = fieldname fieldtype
where the fieldtype can be the following:
The default parsing
list of names
Special edit field, added to person list
Wide edit field
Parser-warning if the value is not a allready parsed BibTeX key
These fields get a dropdown in the list to select standard month names, sorted by order of month instead of alphabetically
Sorted by numerical value (ignores characters when sorting)
Wide multi line edit field, use this for typically large fields
Used in the style generator
Printed as hyperlink in preview. Adds a 'open url' button in the edit panel.
(Can be used to implement new features)
This part contains a list of fields that should be used to compare entries in the duplicate search.
The list contains ONE (optional but recommended) field written
Discriminator = fieldName
wich is the field that the duplicate search checks first to compare ONLY the entries that have the same
discriminator field. This should be a fiel wich is typically short, almost allways filled in and easy to
write consistently (typically
year). The discriminator is used to limit the comparisons and
speed up the search. The Discriminator should NOT be a
#name type, as the discriminator uses a
simpler comparison than the other fields.
If this is NOT defined it compares ALL entries with ALL others, wich means the duplicate search will do approximately n² comparisons where n is the number of entries in the bib-file (a bib-file with 1000 references will need a Million comparisons).
The other fields are written
df = fieldName. You should not define too many
'df' fields as this will slow down the search and it won't actually increase the accuracy of the search!
Three to four carefully selected fields plus a Discriminator will usually give acceptable results and
search times. Beware that
#name fields is (probably) compared slower than other types.
The field used as a Discriminator shuld NOT be defined as a df as this will "falsely" increase the
The standard definitions is the following:
Discriminator = year df = author df = journal df = title
The syntax of the entries (aka. references) is the following:
where the fieldNames are the names defined in [Fields] separated only by commas.
Fields not added to the required or optional list are treated as ignored fields.
If a entry type for some reason have no optional or required fields write
instead of the list, like the
misc = <none> # author,title,howpublished,month,year,note
(having none required fields)