summaryrefslogtreecommitdiff
path: root/biblio/bibtex/utils/tkbibtex/tkbibtex.1
blob: f1c53bbefdd715ccbee521159870d256bcab07b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
.TH TKBIBTEX 1 "17 March 2000" 
.UC 4
.SH NAME
tkbibtex \- portable BibTeX editor and browser
.SH SYNOPSIS
.br
.I tkbibtex
[bibfile]
.SH DESCRIPTION
.I tkbibtex
is a portable editor and browser for BibTeX format file.  It is written in
Tcl/Tk and runs under Unix or Windows based wish interpreters.
It is inspired by, or modeled on, an old OpenWindows application called bibcard.
It also has a non-GUI command line mode which is useful for generating
publication lists.
.P
.I tkbibtex
supports 3 different windows.  The first is a scrolling list of cite keys
which has a toolbar with File, Edit and Help menus.
The bibtex file can be given on the command line (it will be searched for along
the path given by the BIBPATH envariable), or opened via the File/Open
command.
The current bib file name is shown in the title bar, as well as the modification
status.
Double clicking on an entry brings up the selected citation in the
browser window.  The up and down arrow keys can also be used to move up and down the citation list.
.P
The browser window shows all the fields associated with the selected entry
and its title bar shows the citation key.
The fields shown depend on the citation type which can be changed by the 
reference type menu button.
Required fields have a bold label while optional fields have an italic label.
String values are preceeded by a hash.
.P
The search window provides a wide variety of searching modes.  The search
can cover all fields or be limited to a specific field.
The search can be further
constrained by reference type and year range by specifying either or both
a starting and ending (inclusive) year.
A list of matching cite keys is listed in this window, and once again
double clicking or up/down arrow keys can be used to browse this list using
the browser window.

.SH Features
The following are features I think are particularly cute.
.P
* In the browser window you can right-click in a field and it will bring up
a menu of string constants.  I normally define strings for journal names.
The name of the bibtex string file that is used to build the menu can
be set in the 
.I .tkbibtexrc
file (eg. set strfile strings.bib).  It is searched for along the BIBPATH.
.P
* The browser window has an `Annote' button which expands the annotation
window.  This scrolling text entry box allows for an arbitrary amount of 
freeform text to be stored
in the bibtex file in the ANNOTE field.  This is useful for storing commentary
or reviews of papers read.  This material does not appear in the bibliography
with any of the normal reference styles.
.P
* Multiple selection is enabled in the main and search window citation lists.
.P
* Edit/Copy copies the actual
bibtex source of selected citations to the clipboard.
.P
* Edit/Paste pastes
bibtex source into the bibliography.
.P
* Single-key shortcuts exist for most menu functions, see Help for details.
.P
* Every time tkbibtex writes an output file it copies the existing bib file to
a unique name.  These build up over time and should be periodically culled.

.SH NON-GUI MODE
tkbibtex
also has a command line mode
.P
.I tkbibtex
[switches] [bibfile]
.P
which can be used to select entries from the 
.I bibfile 
according to various filtering options.
.TP 5
.I \-type string
apply search only to refernces of the specified type, ie. 
.I article
or 
.I inproceedings.
This can also be a regexp, eg. 
.I article!inproceedings
.TP 5
.I \-field string
apply search only to the specified field.
.TP 5
.I \-search string
filter out all citations that match this string
.TP 5
.I \-ys year
filter out articles with year greater than or equal to that specified (default 0)
.TP 5
.I \-ye year
filter out articles with year less than or equal to that specified (default 9999)
.TP 5
.I \-last nyears
filter out articles whose year falls within the last 
.I nyears
.TP 5
.I \-exact
make all searches case sensitive
.TP 5
.I \-count
instead of outputting BibTeX entries to stdout, just count the matching
references.
.TP 5
.I \-list
instead of outputting BibTeX entries to stdout, provide a one
line summary of the form "key (type): title".

.P
For example, to count the number of journal papers jointly authored 
with Foo before 1997, we could use the command line
.P
.NF
% tkbibtex -count -ye 1997 -field author -search Foo   publist.bib
.FI


.SH FILES
At startup a file called 
.I .tkbibtexrc
in the user's home directory is sourced if it exists.

.SH ENVIRONMENT
.I BIBPATH
is a colon separated list of directories which will be searched for named
bib files.

.SH SEE\ ALSO
bibtex, latex, tcl, tk

.SH BUGS
The parser for the bibtex file format is simple minded and expects each
record to occupy a single line, ending with a "}" or "},".  The last line
of each group must be a close brace on a line by itself.
This means that old, existing, bib files may need some manual editing 
before they will work with tkbibtex.
.SH AUTHOR
P.I. Corke
.br
pic@cat.csiro.au