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

File Contents

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