ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/feature.h
Revision: 1.60
Committed: Sun Feb 17 15:41:43 2008 UTC (16 years, 4 months ago) by ayin
Content type: text/plain
Branch: MAIN
CVS Tags: rel-9_06, rel-9_05
Changes since 1.59: +5 -6 lines
Log Message:
Doc fixes.

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