ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/feature.h
Revision: 1.58
Committed: Sat Feb 16 15:56:41 2008 UTC (16 years, 3 months ago) by ayin
Content type: text/plain
Branch: MAIN
Changes since 1.57: +1 -6 lines
Log Message:
Remove silly CUTCHAR_RESOURCE macro.

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 root 1.52 # define X11USRLIBDIR "/usr/lib"
28 pcg 1.1 #endif
29     #ifndef X11LIBDIR
30     # define X11LIBDIR X11USRLIBDIR "/X11"
31     #endif
32     #ifndef XAPPLOADDIR
33 ayin 1.53 # define XAPPLOADDIR X11LIBDIR "/app-defaults"
34 root 1.23 # define XAPPLOADDIRLOCALE X11LIBDIR "/%s/app-defaults"
35 pcg 1.1 #endif
36    
37 root 1.33 /*-------------------------------SECURITY-------------------------------*/
38    
39 root 1.44 /*
40     * Default mode to restore when releasing the PTS device. It is relaxed to be
41 ayin 1.37 * compatible with most systems, change it to a more secure value if your
42     * system supports it (0640 for example).
43 ayin 1.38 */
44 ayin 1.37 #define RESTORE_TTY_MODE 0666
45    
46 root 1.33 /*
47 root 1.34 * Define if you want to use a separate process for pty/tty handling
48 root 1.33 * when running setuid/setgid. You need this when making it setuid/setgid.
49     */
50     #define PTYTTY_HELPER 1
51    
52 pcg 1.1 /*-----------------------SCREEN OPTIONS AND COLOURS---------------------*/
53 pcg 1.10
54     /*
55     * NOTE:
56     *
57 root 1.34 * Some of these configuration options have not been tested within the new
58 root 1.27 * rxvt-unicode framework. Changing them should work, might have no effect,
59 pcg 1.10 * destroy your disks or have any other effects. You may freely try (and
60     * report bugs, too!), but don't _expect_ them to work.
61     */
62    
63 pcg 1.1 /*
64 root 1.41 * The cursor blink interval, in seconds.
65     */
66     #define CURSOR_BLINK_INTERVAL 0.5
67    
68     /*
69     * The text blink interval, in seconds.
70     */
71     #define TEXT_BLINK_INTERVAL CURSOR_BLINK_INTERVAL
72    
73     /*
74 pcg 1.1 * Avoid enabling the colour cursor (-cr, cursorColor, cursorColor2)
75     */
76     /* #define NO_CURSORCOLOR */
77    
78     /*
79     * Make colours match xterm colours instead of `traditional' rxvt colours
80     */
81     #define XTERM_COLORS
82    
83     /*
84     * Disable separate colours for bold, underline and reverse video
85     */
86     /* #define NO_BOLD_UNDERLINE_REVERSE */
87    
88     /*
89     * Define maximum possible columns and rows
90     */
91 root 1.26 #define MAX_COLS 10000
92     #define MAX_ROWS 10000
93    
94     /*
95     * Define maximum possible savelines
96     */
97     #define MAX_SAVELINES 10000000
98 pcg 1.1
99     /*
100     * Define default colours for certain items. If you have a low colour
101     * display, then consider using colours which are already pre-allocated:
102 root 1.45 *
103 pcg 1.1 * Black (#000000)
104 root 1.45 * Red3 (#CD0000)
105     * Green3 (#00CD00)
106     * Yellow3 (#CDCD00)
107     * Blue3 (#0000CD)
108     * Magenta3 (#CD00CD)
109     * Cyan3 (#00CDCD)
110     * AntiqueWhite (#FAEBD7)
111     * Grey25 (#404040)
112 pcg 1.1 * Red (#FF0000)
113     * Green (#00FF00)
114     * Yellow (#FFFF00)
115     * Blue (#0000FF)
116     * Magenta (#FF00FF)
117     * Cyan (#00FFFF)
118     * White (#FFFFFF)
119     */
120     /* These colours MUST be defined */
121 root 1.45 #define COLOR_FOREGROUND "rgb:00/00/00"
122     #define COLOR_BACKGROUND "rgb:ff/ff/ff"
123     #define COLOR_SCROLLBAR "rgb:b2/b2/b2" /* scrollColor match Netscape */
124     #define COLOR_SCROLLTROUGH "rgb:96/96/96"
125 pcg 1.10
126 pcg 1.1 /*
127     * The cursor colours are special. Be very careful about setting these:
128     * foreground/background colours may be modified by command line or resources
129     * prior to this allocation. Also, they are not valid if NO_CURSORCOLOR is
130     * defined
131     */
132     #define COLOR_CURSOR_FOREGROUND NULL /* if NULL, use background colour */
133     #define COLOR_CURSOR_BACKGROUND NULL /* if NULL, use foreground colour */
134    
135     /*
136 pcg 1.8 * Define to remove support for XCopyArea () support. XCopyArea () is useful
137 pcg 1.1 * for scrolling on non-local X displays
138     */
139 root 1.48 #define NO_SLOW_LINK_SUPPORT
140 pcg 1.1
141     /*
142     * Printer pipe which will be used for emulation of attached vt100 printer
143     */
144     #define PRINTPIPE "lpr"
145    
146     /*
147     * Allow 80/132 mode switching on startup
148     */
149     /* #define ALLOW_132_MODE */
150 ayin 1.53
151 pcg 1.1 /*---------------------------------KEYS---------------------------------*/
152    
153     /*
154     * Define defaults for backspace and delete keys - unless they have been
155     * configured out with --disable-backspace-key / --disable-delete-key
156     */
157 root 1.17 #define DEFAULT_BACKSPACE "DEC" /* SPECIAL */
158 pcg 1.10 #define DEFAULT_DELETE "\033[3~"
159 pcg 1.1
160     /*
161     * Enable the keysym resource which allows you to define strings associated
162     * with various KeySyms (0xFF00 - 0xFFFF).
163 root 1.29 * Required by perl.
164 pcg 1.1 */
165 root 1.30 #if ENABLE_FRILLS || ENABLE_PERL
166 pcg 1.1 # define KEYSYM_RESOURCE
167     #endif
168    
169     /*
170 root 1.18 * Modifier/s to use to allow up/down arrows and Prior/Next keys
171 pcg 1.1 * to scroll single or page-fulls
172     */
173     #define SCROLL_ON_SHIFT
174     /* #define SCROLL_ON_CTRL */
175     /* #define SCROLL_ON_META */
176    
177     /*
178     * Allow scrolling with modifier+Up/Down keys, in addition
179     * to modifier+Prior/Next? (modifier is controlled with
180 ayin 1.53 * SCROLL_ON_* defines above.).
181 pcg 1.1 * Also for modifier+Home/End keys to move to top/bottom
182     */
183     /* #define SCROLL_ON_UPDOWN_KEYS */
184     /* #define SCROLL_ON_HOMEEND_KEYS */
185    
186     /*
187     * Allow unshifted Next/Prior keys to scroll forward/back
188     * (in addition to shift+Next/shift+Prior) --pjh
189     */
190     /* #define UNSHIFTED_SCROLLKEYS */
191    
192     /* (Hops) Set to choose a number of lines of context between pages
193     * (rather than a proportion (1/5) of savedlines buffer)
194     * when paging the savedlines with SHIFT-{Prior,Next} keys.
195     */
196     #define PAGING_CONTEXT_LINES 1 /* */
197    
198     /*
199     * Have either Ctrl+Tab or Mod4+Tab emit \e\t
200     * Useful when window manager grabs Alt+Tab -- mg
201     */
202     /* #define CTRL_TAB_MAKES_META */
203     /* #define MOD4_TAB_MAKES_META */
204    
205     /*--------------------------------MOUSE---------------------------------*/
206     /*
207     * Disable sending escape sequences (up, down, page up/down)
208     * from the scrollbar when XTerm mouse reporting is enabled
209     */
210     /* #define NO_SCROLLBAR_REPORT */
211    
212     /*
213     * Default separating chars for multiple-click selection
214     * Space and tab are separate separating characters and are not settable
215     */
216 ayin 1.55 #define CUTCHARS "\"&'()*,;<=>?@[\\]^`{|}"
217 pcg 1.1
218     /*
219     * Have mouse reporting include double-click info for button1
220     */
221 ayin 1.58 /* #define MOUSE_REPORT_DOUBLECLICK */
222 pcg 1.1
223     /*
224     * Set delay between multiple click events [default: 500 milliseconds]
225     */
226     /* #define MULTICLICK_TIME 500 */
227    
228     /*
229     * Time factor to slow down a `jumpy' mouse. Motion isn't recognised until
230     * this long after the last mouse click [default: 50 milliseconds]
231     */
232     #define MOUSE_THRESHOLD 50
233    
234     /*
235     * Set delay periods for continuous scrolling with scrollbar buttons
236     */
237 root 1.17 /* #define SCROLLBAR_INITIAL_DELAY 0.33 */
238     /* #define SCROLLBAR_CONTINUOUS_DELAY 0.05 */
239 pcg 1.1
240     /*
241     * The speed of selection scrolling is proportional to the distance
242     * the mouse pointer is out of the text window. This is the max
243     * number of lines to scroll at a time.
244     */
245 root 1.20 #define SELECTION_SCROLL_MAX_LINES 8
246 pcg 1.1
247     /*
248     * The number of lines (measured in character's heights, not pixels)
249     * the pointer must be out of the window for each increase in the
250     * number of lines scrolled.
251     */
252 root 1.20 #define SELECTION_SCROLL_LINE_SPEEDUP 3
253 pcg 1.1
254     /*--------------------------------MISC----------------------------------*/
255     /*
256 ayin 1.36 * Only log in wtmp and lastlog files when we're a login shell (-ls option)
257     */
258     #define LOG_ONLY_ON_LOGIN
259    
260 pcg 1.1 /*--------------------------------BELL----------------------------------*/
261     /*
262     * Disable all bell indications
263     */
264     /* #define NO_BELL */
265    
266     /*
267     * Disable automatic de-iconify when a bell is received
268     */
269     /* #define NO_MAPALERT */
270    
271     /*
272     * Have mapAlert behaviour selectable with mapAlert resource
273     */
274     #define MAPALERT_OPTION
275    
276     /*-----------------------------SCROLL BAR-------------------------------*/
277     /*
278     * Choose the rxvt style scrollbar width
279     * - should be an even number [default: 10]
280     */
281     /* #define SB_WIDTH_RXVT 10 */
282    
283     /*
284     * Minimum and maximum widths of the scrollbar (all styles)
285     */
286     #define SB_WIDTH_MINIMUM 5
287     #define SB_WIDTH_MAXIMUM 100
288    
289     /*
290 root 1.46 * rxvt scrollbar shadow width in pixels, must be 1 or 2
291     */
292     #define SHADOW_WIDTH 1
293    
294     /*
295 pcg 1.1 * When using Rxvt scrollbar, clicking above or below the slider will move
296     * 1/4 of the screen height, if possible. Setting RXVT_SCROLL_FULL will move
297     * it one screen height less one line, if possible
298     */
299     #define RXVT_SCROLL_FULL 1
300    
301     /*
302     * (Hops) draw an internal border line on inside edge of the scrollbar
303     */
304     /* #define SB_BORDER */
305    
306     /*---------------------------MULTILINGUAL-------------------------------*/
307     /*
308     * Allow run-time selection of Meta (Alt) to set the 8th bit on
309     */
310     #define META8_OPTION
311    
312     /*---------------------------DISPLAY OPTIONS----------------------------*/
313     /*
314     * Force local connection to be socket (or other local) communication
315     */
316     /* #define LOCAL_X_IS_UNIX */
317    
318     /*
319     * Have DISPLAY environment variable & "\E[7n" transmit display with IP number
320     */
321     /* #define DISPLAY_IS_IP */
322    
323     /*
324     * Change what ESC Z transmits instead of the default "\E[?1;2c"
325     */
326     /* #define ESCZ_ANSWER "\033[?1;2C" */
327    
328     /*
329     * Allow foreground/background colour to be changed with an
330 root 1.27 * xterm escape sequence "\E]39;colour^G"
331 pcg 1.1 */
332     #define XTERM_COLOR_CHANGE
333    
334     /*
335     * Remove secondary screen's independent cursor position, a la xterm
336     */
337     /* #define NO_SECONDARY_SCREEN_CURSOR */
338    
339     /*
340     * Width of the term internal border
341     */
342     #define INTERNALBORDERWIDTH 2
343    
344     /*
345     * Width of the term external border
346     */
347     #define EXTERNALBORDERWIDTH 0
348    
349     /*
350     * Default number of extra dots between lines
351     */
352     #define LINESPACE 0
353    
354     /*
355     * Default number of lines in the scrollback buffer
356     */
357 root 1.27 #define SAVELINES 1000
358 pcg 1.1
359     /*
360 pcg 1.10 * Provide termcap/terminfo bw support (wrap backwards on cub1)
361 pcg 1.1 */
362 root 1.43 #define TERMCAP_HAS_BW 1
363 pcg 1.1
364 pcg 1.13 /*
365 root 1.43 * The duration of the visual bell flash in s. The default of 20ms
366 root 1.24 * corresponds to the delay given in the terminfo flash code.
367     */
368 root 1.43 #define VISUAL_BELL_DURATION .020
369 root 1.24
370 root 1.47 /*--------------------------------OTHER---------------------------------*/
371    
372     /*
373     * Enable the linux yield/usleep hack, which can dramatically improve
374 root 1.51 * performance by working around the linux kernel tty ratelimit bug.
375     * Unfortunately, it seems screen is negatively affected by this on some
376     * machines, so it is disabled by default. Use freebsd or any other kernel
377     * that doesn't suffer form this bug and it will be fast either way.
378     *
379     * See command.C for details.
380 root 1.47 */
381     #if __linux__
382 root 1.51 # define LINUX_YIELD_HACK 0
383 root 1.47 #endif
384    
385 pcg 1.1 #endif
386 root 1.20