ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/feature.h
Revision: 1.5
Committed: Sat Jan 17 01:20:01 2004 UTC (20 years, 4 months ago) by pcg
Content type: text/plain
Branch: MAIN
Changes since 1.4: +2 -3 lines
Log Message:
*** empty log message ***

File Contents

# Content
1 /*
2 * File: feature.h
3 *
4 * Compile-time configuration.
5 *-----------------------------------------------------------------------
6 * Copyright (c) 1997,1998 Oezguer Kesim <kesim@math.fu-berlin.de>
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 *
22 *----------------------------------------------------------------------*/
23 #ifndef FEATURE_H
24 #define FEATURE_H
25
26 #ifndef X11USRLIBDIR
27 # define X11USRLIBDIR "/usr/X11R6/lib"
28 #endif
29 #ifndef X11LIBDIR
30 # define X11LIBDIR X11USRLIBDIR "/X11"
31 #endif
32 #ifndef XAPPLOADDIR
33 # define XAPPLOADDIR X11LIBDIR "/app-defaults"
34 # define XAPPLOADDIRLOCALE X11LIBDIR "/%-.*s/app-defaults"
35 #endif
36
37 /*-----------------------SCREEN OPTIONS AND COLOURS---------------------*/
38 /*
39 * Define the name of the environment variable to be used in
40 * addition to the "PATH" environment and the `path' resource.
41 * Usually it should point to where you keep your background pixmaps and/or
42 * your menu files
43 */
44 #define PATH_ENV "RXVTPATH"
45
46 /*
47 * Avoid enabling the colour cursor (-cr, cursorColor, cursorColor2)
48 */
49 /* #define NO_CURSORCOLOR */
50
51 /*
52 * Suppress use of BOLD and BLINK attributes for setting bright foreground
53 * and background, respectively. Simulate BOLD using colorBD or
54 * overstrike characters.
55 */
56 /* #define NO_BRIGHTCOLOR */
57
58 /*
59 * Make colours match xterm colours instead of `traditional' rxvt colours
60 */
61 #define XTERM_COLORS
62
63 /*
64 * Disable separate colours for bold, underline and reverse video
65 */
66 /* #define NO_BOLD_UNDERLINE_REVERSE */
67
68 /*
69 * Disable using simulated bold using overstrike. You can also turn off
70 * overstrike just for multi char fonts
71 * Note: NO_BOLDOVERSTRIKE implies NO_BOLDOVERSTRIKE_MULTI
72 */
73 /* #define NO_BOLDOVERSTRIKE */
74 /* #define NO_BOLDOVERSTRIKE_MULTI */
75
76 /*
77 * Don't bother cleaning up pixel droppings. If you don't use bold
78 * overstrike then you don't usually need this
79 */
80 #define NO_PIXEL_DROPPING_AVOIDANCE
81
82 /*
83 * Add support for '-hc colour' for background highlight of selection
84 */
85 #define OPTION_HC
86
87 /*
88 * Define maximum possible columns and rows
89 */
90 #define MAX_COLS 4000
91 #define MAX_ROWS 1000
92
93 /*
94 * Define default colours for certain items. If you have a low colour
95 * display, then consider using colours which are already pre-allocated:
96 * Black (#000000)
97 * Red3 (#CD0000) + these
98 * Green3 (#00CD00) + colours
99 * Yellow3 (#CDCD00) + are
100 * Blue3 (#0000CD) + not
101 * Magenta3 (#CD00CD) + pre-allocated
102 * Cyan3 (#00CDCD) + if
103 * AntiqueWhite (#FAEBD7) + NO_BRIGHTCOLOR
104 * Grey25 (#404040) + defined
105 * Red (#FF0000)
106 * Green (#00FF00)
107 * Yellow (#FFFF00)
108 * Blue (#0000FF)
109 * Magenta (#FF00FF)
110 * Cyan (#00FFFF)
111 * White (#FFFFFF)
112 */
113 /* These colours MUST be defined */
114 #define COLOR_FOREGROUND "Black"
115 #define COLOR_BACKGROUND "White"
116 #define COLOR_SCROLLBAR "#B2B2B2" /* scrollColor match Netscape */
117 #define COLOR_SCROLLTROUGH "#969696"
118 /*
119 * The cursor colours are special. Be very careful about setting these:
120 * foreground/background colours may be modified by command line or resources
121 * prior to this allocation. Also, they are not valid if NO_CURSORCOLOR is
122 * defined
123 */
124 #define COLOR_CURSOR_FOREGROUND NULL /* if NULL, use background colour */
125 #define COLOR_CURSOR_BACKGROUND NULL /* if NULL, use foreground colour */
126
127 /*
128 * Define to remove support for XCopyArea() support. XCopyArea() is useful
129 * for scrolling on non-local X displays
130 */
131 /* #define NO_SLOW_LINK_SUPPORT */
132
133 /*
134 * Printer pipe which will be used for emulation of attached vt100 printer
135 */
136 #define PRINTPIPE "lpr"
137
138 /*
139 * Allow 80/132 mode switching on startup
140 */
141 /* #define ALLOW_132_MODE */
142
143 /*------------------------------RESOURCES-------------------------------*/
144 /*
145 * Define to find installed application defaults for rxvt
146 * Only if USE_XGETDEFAULT is not defined.
147 */
148 /* #define USE_XAPPLOADDIR */
149
150 /*
151 * Add support for the Offix DND (Drag 'n' Drop) protocol
152 */
153 /* #define OFFIX_DND */
154
155 /*---------------------------------KEYS---------------------------------*/
156
157 /*
158 * Define defaults for backspace and delete keys - unless they have been
159 * configured out with --disable-backspace-key / --disable-delete-key
160 */
161 //#define DEFAULT_BACKSPACE "DEC" /* SPECIAL */
162 #define DEFAULT_BACKSPACE "\010" /* wrong, but match terminfo etc. */
163 #define DEFAULT_DELETE "\033[3~"
164
165 /*
166 * Choose one of these values to be the `hotkey' for changing font.
167 * This has been superceded and is only for you older users
168 */
169 /* #define HOTKEY_CTRL */
170 /* #define HOTKEY_META */
171
172 /*
173 * To use
174 * Home = "\E[1~", End = "\E[4~"
175 * instead of
176 * Home = "\E[7~", End = "\E[8~" [default]
177 */
178 /* #define LINUX_KEYS */
179
180 /*
181 * Enable the keysym resource which allows you to define strings associated
182 * with various KeySyms (0xFF00 - 0xFFFF).
183 * Only works with the default hand-rolled resources.
184 */
185 #ifndef NO_RESOURCES
186 # define KEYSYM_RESOURCE
187 #endif
188
189 /*
190 * Modifier/s to use to allow up/down arrows and Priot/Next keys
191 * to scroll single or page-fulls
192 */
193 #define SCROLL_ON_SHIFT
194 /* #define SCROLL_ON_CTRL */
195 /* #define SCROLL_ON_META */
196
197 /*
198 * Allow scrolling with modifier+Up/Down keys, in addition
199 * to modifier+Prior/Next? (modifier is controlled with
200 * SCROLL_ON_* defines above.).
201 * Also for modifier+Home/End keys to move to top/bottom
202 */
203 /* #define SCROLL_ON_UPDOWN_KEYS */
204 /* #define SCROLL_ON_HOMEEND_KEYS */
205
206 /*
207 * Allow unshifted Next/Prior keys to scroll forward/back
208 * (in addition to shift+Next/shift+Prior) --pjh
209 */
210 /* #define UNSHIFTED_SCROLLKEYS */
211
212 /* (Hops) Set to choose a number of lines of context between pages
213 * (rather than a proportion (1/5) of savedlines buffer)
214 * when paging the savedlines with SHIFT-{Prior,Next} keys.
215 */
216 #define PAGING_CONTEXT_LINES 1 /* */
217
218 /*
219 * Have either Ctrl+Tab or Mod4+Tab emit \e\t
220 * Useful when window manager grabs Alt+Tab -- mg
221 */
222 /* #define CTRL_TAB_MAKES_META */
223 /* #define MOD4_TAB_MAKES_META */
224
225 /*
226 * default mode switch when greek keyboard is enabled (i.e. GREEK_SUPPORT)
227 */
228 #ifndef GREEK_KEYBOARD_MODESWITCH
229 # define GREEK_KEYBOARD_MODESWITCH XK_Mode_switch
230 #endif
231
232 /*--------------------------------MOUSE---------------------------------*/
233 /*
234 * Disable sending escape sequences (up, down, page up/down)
235 * from the scrollbar when XTerm mouse reporting is enabled
236 */
237 /* #define NO_SCROLLBAR_REPORT */
238
239 /*
240 * Default separating chars for multiple-click selection
241 * Space and tab are separate separating characters and are not settable
242 */
243 #define CUTCHARS "\"&'()*,;<=>?@[\\]^`{|}~"
244
245 /*
246 * Add run-time support for changing the cutchars for double click selection
247 */
248 #define CUTCHAR_RESOURCE
249
250 /*
251 * Have mouse reporting include double-click info for button1
252 */
253 /* #define MOUSE_REPORT_DOUBLECLICK */
254
255 /*
256 * Set delay between multiple click events [default: 500 milliseconds]
257 */
258 /* #define MULTICLICK_TIME 500 */
259
260 /*
261 * Time factor to slow down a `jumpy' mouse. Motion isn't recognised until
262 * this long after the last mouse click [default: 50 milliseconds]
263 */
264 #define MOUSE_THRESHOLD 50
265
266 /*
267 * If mouse wheel is defined, then scrolling is by 5 lines (or 1 line
268 * if the shift key is down). Scrolling can be smooth or jump scrolling
269 */
270 /* #define JUMP_MOUSE_WHEEL */
271
272 /*
273 * Set delay periods for continuous scrolling with scrollbar buttons
274 */
275 /* #define SCROLLBAR_INITIAL_DELAY 40 */
276 /* #define SCROLLBAR_CONTINUOUS_DELAY 2 */
277
278 /*
279 * The speed of selection scrolling is proportional to the distance
280 * the mouse pointer is out of the text window. This is the max
281 * number of lines to scroll at a time.
282 */
283 #define SELECTION_SCROLL_MAX_LINES 2
284
285 /*
286 * The number of lines (measured in character's heights, not pixels)
287 * the pointer must be out of the window for each increase in the
288 * number of lines scrolled.
289 */
290 #define SELECTION_SCROLL_LINE_SPEEDUP 4
291
292 /*--------------------------------MISC----------------------------------*/
293 /*
294 * Disable to reset tty device to pre-incovation state
295 */
296 #define RESET_TTY_TO_COMMON_DEFAULTS
297
298 /*
299 * Only log in wtmp file when we're a login shell (-ls option)
300 */
301 #define WTMP_ONLY_ON_LOGIN
302
303 /*
304 * When pasting ACS characters, convert to similar normal characters
305 */
306 /* #define ACS_ASCII */
307
308 /*
309 * Default ascii characters to which ACS symbols are converted
310 */
311 #ifdef ACS_ASCII
312 # define ACS_CHARS ".# o+ ----+---__++--|<> =#. "
313 #endif
314
315 /*--------------------------------BELL----------------------------------*/
316 /*
317 * Disable all bell indications
318 */
319 /* #define NO_BELL */
320
321 /*
322 * Disable automatic de-iconify when a bell is received
323 */
324 /* #define NO_MAPALERT */
325
326 /*
327 * Have mapAlert behaviour selectable with mapAlert resource
328 */
329 #define MAPALERT_OPTION
330
331 /*-----------------------------SCROLL BAR-------------------------------*/
332 /*
333 * Choose the rxvt style scrollbar width
334 * - should be an even number [default: 10]
335 */
336 /* #define SB_WIDTH_RXVT 10 */
337
338 /*
339 * Minimum and maximum widths of the scrollbar (all styles)
340 */
341 #define SB_WIDTH_MINIMUM 5
342 #define SB_WIDTH_MAXIMUM 100
343
344 /*
345 * When using Rxvt scrollbar, clicking above or below the slider will move
346 * 1/4 of the screen height, if possible. Setting RXVT_SCROLL_FULL will move
347 * it one screen height less one line, if possible
348 */
349 #define RXVT_SCROLL_FULL 1
350
351 /*
352 * (Hops) draw an internal border line on inside edge of the scrollbar
353 */
354 /* #define SB_BORDER */
355
356 /*------------------------------MENU BAR--------------------------------*/
357 /*
358 * Choose how many of (experimental) menuBars you want to be able to stack at
359 * one time.
360 * A value of 1 disables menuBar stacking.
361 * A value of 0 disables menuBar all together.
362 * Note that the amount of memory overhead is the same for any value >= 2.
363 */
364 #define MENUBAR_MAX 8
365
366 /*
367 * Change the default shadow style
368 */
369 /* #define MENUBAR_SHADOW_IN */
370
371 /*
372 * Change the default shadow style
373 */
374 #define MENU_SHADOW_IN
375
376 /*---------------------------MULTILINGUAL-------------------------------*/
377 /*
378 * Allow run-time selection of Meta (Alt) to set the 8th bit on
379 */
380 #define META8_OPTION
381
382 /*---------------------------DISPLAY OPTIONS----------------------------*/
383 /*
384 * Force local connection to be socket (or other local) communication
385 */
386 /* #define LOCAL_X_IS_UNIX */
387
388 /*
389 * Have DISPLAY environment variable & "\E[7n" transmit display with IP number
390 */
391 /* #define DISPLAY_IS_IP */
392
393 /*
394 * Have "\E[7n" transmit the display name.
395 * This has been cited as a potential security hole.
396 */
397 #define ENABLE_DISPLAY_ANSWER
398
399 /*
400 * Change what ESC Z transmits instead of the default "\E[?1;2c"
401 */
402 /* #define ESCZ_ANSWER "\033[?1;2C" */
403
404 /*
405 * Check the current value of the window-time/icon-name and avoid
406 * re-setting it to the same value -- avoids unnecessary window refreshes
407 */
408 #define SMART_WINDOW_TITLE
409
410 /*
411 * Allow foreground/background colour to be changed with an
412 * xterm escape sequence "\E]39;colour^G" -- still experimental
413 */
414 #define XTERM_COLOR_CHANGE
415
416 /*
417 * Remove secondary screen's independent cursor position, a la xterm
418 */
419 /* #define NO_SECONDARY_SCREEN_CURSOR */
420
421 /*
422 * If no secondary screen is available (NO_SECONDARY_SCREEN in config.h),
423 * then scroll the text up on a window change request
424 */
425 #define SCROLL_ON_NO_SECONDARY
426
427 /*
428 * Width of the term internal border
429 */
430 #define INTERNALBORDERWIDTH 2
431
432 /*
433 * Width of the term external border
434 */
435 #define EXTERNALBORDERWIDTH 0
436
437 /*
438 * Default number of extra dots between lines
439 */
440 #define LINESPACE 0
441
442 /*
443 * Default number of lines in the scrollback buffer
444 */
445 #define SAVELINES 64
446
447 /*
448 * Provide termcap/terminfo bw support
449 */
450 /* #define TERMCAP_HAS_BW */
451
452 /*
453 * MAX_NFONTS is the maximum allowed number of fonts in the list
454 * FONT0_IDX is the default font in the list (starting at 0)
455 * Sizes between multi-char fonts sets (MFONT_LIST) and single-char font
456 * sets (NFONT_LIST) have been matched up
457 */
458 #define MAX_NFONTS 7
459 #define FONT0_IDX 2
460
461 #define UNICODE 1 /* TODO */
462 #define UTF8 1 /* TODO */
463
464 #endif