1 /*** config.h ******************************************************************
2 **
3 ** This file is part of BibTool.
4 ** It is distributed under the GNU General Public License.
5 ** See the file COPYING for details.
6 **
7 ** (c) 1996-2018 Gerd Neugebauer
8 **
9 ** Net: gene@gerd-neugebauer.de
10 **
11 ** This program is free software; you can redistribute it and/or modify
12 ** it under the terms of the GNU General Public License as published by
13 ** the Free Software Foundation; either version 2, or (at your option)
14 ** any later version.
15 **
16 ** This program is distributed in the hope that it will be useful,
17 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
18 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 ** GNU General Public License for more details.
20 **
21 ** You should have received a copy of the GNU General Public License
22 ** along with this program; if not, write to the Free Software
23 ** Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24 **
25 ******************************************************************************/
26 
27 /******************************************************************************
28 **			    Configuration Section
29 ******************************************************************************/
30 
31 /*-----------------------------------------------------------------------------
32 **  Define the default value of the resource search path.
33 **  This is a string containing a colon/semicolon/comma separated list of
34 **  directories.
35 **  DON'T FORGET THE CURRENT DIRECTORY.
36 **  To clear it set it to NULL.
37 **  This can also be specified in the Makefile. This value is used if no
38 **  Makefile is used or the macro is not set in the makefile.
39 */
40 #ifndef RSC_BIBTOOL_DEFAULT
41 #define RSC_BIBTOOL_DEFAULT NULL
42 #endif
43 
44 /*-----------------------------------------------------------------------------
45 **  If the following macro is defined then the standard @types are provided
46 **  automatically.
47 **  The value is a comma separated list of strings.
48 **  Note that COMMENT, PREAMBLE, STRING, ALIAS, MODIFY, and INCLUDE
49 **  are hard wired and need not to be in this list!
50 */
51 #define INITIALIZE_BIBTEX_ENTRIES					 \
52 	"Article"	,"Book"		,"Booklet"	,"Conference"	,\
53 	"InBook"	,"InCollection"	,"InProceedings","Manual"	,\
54 	"MastersThesis"	,"Misc"		,"PhDThesis"	,"Proceedings"	,\
55 	"TechReport"	,"Unpublished"
56 
57 /*-----------------------------------------------------------------------------
58 **  If the following macro is defined then the listed macros are predefined.
59 **  The value is a comma separated list of strings.
60 */
61 #define INITIALIZE_MACROS						 \
62 	"jan", "feb", "mar", "apr", "may", "jun",			 \
63 	"jul", "aug", "sep", "oct", "nov", "dec"
64 
65 /*-----------------------------------------------------------------------------
66 **  If the following macro is defined then ignored words are initialized.
67 **  Those words anre not taken into account when sorting or key generation
68 **  for titles is performed.
69 **  The value is a comma separated list of strings.
70 */
71 #define INITIALIZE_IGNORED_WORDS 		\
72 	"a", "an", "the",			\
73 	"der", "die", "das", "ein", "eine",	\
74 	"einen", "eines", "einer", "einem",	\
75     	"le", "les", "la", "un", "une",		\
76 	"el", "il"
77 
78 /*-----------------------------------------------------------------------------
79 **  Define the default value of the BibTeX search path.
80 **  This is a string containing a colon separated list of directories.
81 **  DON'T FORGET THE CURRENT DIRECTORY.
82 **  To clear it set it to NULL.
83 **  This can also be specified in the Makefile. This value is used if no
84 **  Makefile is used or the macro is not set in the makefile.
85 */
86 #ifndef RSC_BIBINPUTS_DEFAULT
87 #define RSC_BIBINPUTS_DEFAULT NULL
88 #endif
89 
90 /*-----------------------------------------------------------------------------
91 **  Define the name of an environment variable of the BibTeX search path.
92 **  Consult your local guide on the environment variable used.
93 **  Be careful and strip the ninth character if only eight are allowed.
94 */
95 #define RSC_BIBINPUTS       "BIBINPUTS"
96 
97 /*-----------------------------------------------------------------------------
98 **  Define the name of the default resource file name.
99 **  On MSDOS-like maschines I recommend "bibtool.rsc"
100 */
101 #ifdef MSDOS
102 #define DefaultResourceFile "bibtool.rsc"
103 #else
104 #define DefaultResourceFile ".bibtoolrsc"
105 #endif
106 
107 /*-----------------------------------------------------------------------------
108 **  Define the name of an environment variable containing a resource file name.
109 **  Undefine this macro if no such feature is present in your system.
110 */
111 #define RSC_ENV_VAR         "BIBTOOLRSC"
112 
113 /*-----------------------------------------------------------------------------
114 **  Define the name of an environment variable of the resource search path.
115 **  Undefine this macro if no such feature is present in your system.
116 */
117 #define RSC_BIBTOOL         "BIBTOOL"
118 
119 /*-----------------------------------------------------------------------------
120 **  This character separates the directories in environment search paths.
121 **  This is also done in the makefile. Do not define it here if you use the
122 **  makefile.
123 **  On UN*X systems it should be ":".
124 **  On MSDOS and Atari I recommend ";".
125 **  On Amiga I recommend ",".
126 */
127 #ifndef ENV_SEP
128 #ifdef MSDOS
129 #define ENV_SEP		    ";"
130 #else
131 #ifdef AMIGA
132 #define ENV_SEP		    ","
133 #else
134 #define ENV_SEP		    ":"
135 #endif
136 #endif
137 #endif
138 
139 /*-----------------------------------------------------------------------------
140 **  Define the name of an environment variable containing the home directory.
141 **  This implies a UN*X-like file system.
142 **  Undefine this macro if no such feature is present in your system.
143 */
144 #define HOME_ENV_VAR        "HOME"
145 
146 /*-----------------------------------------------------------------------------
147 **  This character separates directory and file components of a complete file
148 **  name.
149 **  This is also defined in the makefile. Do not define it here if you use the
150 **  makefile.
151 **  On UN*X systems it should be "/".
152 **  On M$DOS-like systems it should be "\\".
153 */
154 #ifndef DIR_SEP
155 #ifdef MSDOS
156 #define DIR_SEP "\\"
157 #else
158 #define DIR_SEP "/"
159 #endif
160 #endif
161 
162 /*-----------------------------------------------------------------------------
163 **  This character starts options on the command line.
164 **  On UN*X systems it should be '-'
165 */
166 #define OptionLeadingCharacter '-'
167 
168 /*-----------------------------------------------------------------------------
169 **  Maximal number of user defined formats.
170 **  At least 2 are required by BibTool!
171 */
172 #define NUMBER_OF_FORMATS 128
173 
174 /*-----------------------------------------------------------------------------
175 **  Size of the hash table.
176 **  This should be a prime number. Don't use a value which is too small.
177 **  307 is just ok if you consider databases with up to 100 entries.
178 **  1021 is for larger databases.
179 */
180 #define HASH_TABLE_SIZE 1021
181 
182 /*-----------------------------------------------------------------------------
183 **  Define the next macro to enable output of the symbol table.
184 **  Mainly interesting for debugging (i.e. not for you:-).
185 */
186 /* #define SYMBOL_DUMP */
187 
188 
189 #ifdef MSDOS
190 /*-----------------------------------------------------------------------------
191 **  The following section contains (some) support for M*DOS like computers.
192 **  They only are in effect when the macro MSDOS is defined.
193 **  Don't blame me, I do not use such such a kind of "OS"
194 **-----------------------------------------------------------------------------
195 */
196 /*-----------------------------------------------------------------------------
197 **  Define the following macro to enable emtex like search path initalization.
198 */
199 #define EMTEX_LIKE_PATH
200 
201 /*-----------------------------------------------------------------------------
202 **  The following macro holds the environment variable containing the path.
203 */
204 #define EMTEXDIR		"EMTEXDIR"
205 /*-----------------------------------------------------------------------------
206 **  The following macro holds the default if no environment variable is found.
207 */
208 #define EMTEXTDIR_DEFAULT	"\\emtex"
209 /*-----------------------------------------------------------------------------
210 **  The following macro holds the subdir of EMTEXDIR for bibtex.
211 */
212 #define EMTEXT_BIBTEX		"\\bibtex\\bib"
213 /*-----------------------------------------------------------------------------
214 **  The following macro holds the subdir of EMTEXDIR for bibtool.
215 */
216 #define EMTEXT_RESOURCE		"\\bibtool"
217 
218 #endif
219