1ETERM(1) X Tools ETERM(1)
2
3
4
6 Eterm - the Enlightened terminal emulator for the X Window System
7
9 Eterm [options]
10
11
13 Eterm — version 0.9.6 — is a color vt102 terminal emulator intended as
14 an xterm(1) replacement. It is designed with a Freedom of Choice phi‐
15 losophy, leaving as much power, flexibility, and freedom as possible in
16 the hands of the user. It is designed to look good and work well, but
17 takes a feature-rich approach rather than one of minimalism. Eterm
18 uses Imlib for advanced graphic abilities. See below for details.
19
21 The Eterm options are listed below. In keeping with the freedom-of-
22 choice philosophy, options may be eliminated or default values chosen
23 at compile-time, so options and defaults listed may not accurately
24 reflect the version installed on your system.
25
26 Options that do not take a parameter (besides -h and --help) are bool‐
27 ean. If you use the POSIX (short) option, you are forcing the parame‐
28 ter to "true". If you use the long option, you can use any of the
29 accepted boolean values, which are "yes", "on", "1", and "true" to turn
30 the option on, or "no", "off", "0", or "false" to turn the option off.
31 The same is true for boolean values in the configuration file.
32
33 -t theme, --theme theme
34 Load specified theme. Consult the FAQ for more details on what
35 constitutes an Eterm theme.
36
37 -X conffile, --config-file conffile
38 Use an alternative user config file name. Otherwise Eterm uses
39 the default, which is user.cfg. The theme config file is always
40 theme.cfg.
41
42 -d displayname, --display displayname
43 Attempt to open a window on the named X display displayname. In
44 the absence of this option, the display specified by the DISPLAY
45 environment variable is used.
46
47 --debug level
48 Show debugging output. level is an integer between 0 and 5
49 which determines how verbose the debugging output is.
50
51 --install
52 Tells Eterm to install its own colormap rather than using the
53 default one.
54
55 -h, --help
56 Print out a message describing available options.
57
58 --version
59 Print Eterm version and compile-time configuration.
60
61 -r, --reverse-video
62 Reverse video, swaps the foreground and background colors.
63
64 -b color, --background-color color
65 Set color as the background color. NOTE: this will actually be
66 the foreground color if reverse video is also selected.
67
68 -f color, --foreground-color color
69 Set color as the foreground (text) color. NOTE: this will actu‐
70 ally be the background color if reverse video is also selected.
71
72 --color0 color
73
74 ...
75
76 --color15 color
77 Use color as color X.
78
79 --colorBD color
80 Use color as the bold color.
81
82 --colorUL color
83 Use color as the underline color.
84
85 --pointer-color color
86 Use color as the pointer color.
87
88 -c color, --cursor-color color
89 Use color as the cursor color.
90
91 --cursor-text-color color
92 Use color as the cursor text color.
93
94 -g geom, --geometry geom
95 Window geometry as Width x Height+X coord+Y coord, i.e
96 100x200+0+100
97
98 -i,--iconic
99 Start in iconified state (only if the window manager supports
100 iconification).
101
102 -n name, --name name
103 Sets name of current instance to name. This will affect the
104 icon title and the window title string unless they are otherwise
105 explicitly set.
106
107 -T title, --title title
108 Sets window's title text to title.
109
110 --icon-name text
111 Sets the icon title text to text.
112
113 -B type, --scrollbar-type type
114 Specifies the type scrollbar style should be used. type can be
115 any of motif, xterm, or next.
116
117 --scrollbar-width width
118 Set the width of the scrollbar, in pixels, to width. Eterm does
119 not impose any restrictions on this value, but it should be rea‐
120 sonable.
121
122 -D desktop, --desktop desktop
123 Starts the Eterm on the specified desktop. desktop should be an
124 integer between 0 and your highest-numbered desktop. NOTE: You
125 must have a GNOME-compliant window manager for this feature to
126 work. Please see http://www.gnome.org/devel/gnomewm/ for more
127 information on the _WIN_WORKSPACE property and how to support
128 it.
129
130 --line-space num
131 Size of the extra gap, in pixels, to provide between lines in
132 the terminal window.
133
134 --bold-font font
135 Sets the bold text font to font.
136
137 -F font, --font font
138 Sets the normal text font to font.
139
140 --default-font-index num
141 Specifies the index of the default (normal) text font.
142
143 --font1 font
144
145 ...
146
147 --font4 font
148 Sets the font at the specified index (1-4) to font.
149
150 --proportional
151 Specifies that the font in use is proportional and requests
152 standard deviation-based character cell spacing. Terminals must
153 use fixed-width character cells to maintain proper columnal
154 alignment, even when proportionally-spaced fonts are in use.
155 Some proportionally-spaced fonts vary greatly between the mini‐
156 mum and maximum character widths. This option chooses a charac‐
157 ter cell size which is up to two standard deviations above the
158 average character width but will not exceed the maximum width of
159 the largest glyph. Note that characters larger than the chosen
160 cell width will overwrite (or be overwritten by) other charac‐
161 ters and may tend to leave pixel droppings. This behavior is an
162 expected side-effect of an imperfect scenario. If you object to
163 this behavior, do not use this option.
164
165 --font-fx effects
166 Specifies the effects to apply to the terminal window font. The
167 value of effects is a single string containing a series of cor‐
168 ner/color pairs. These pairs define toward which corner a drop
169 shadow of each character should be made, and what color that
170 shadow will be. The corner is specified first using the follow‐
171 ing keywords: top_left or tl, top_right or tr, bottom_left or
172 bl, and bottom_right or br. Each corner specifier is then fol‐
173 lowed by a color.
174
175 There are also several shortcuts for doing common effects. You
176 can get a single-color outline by using the keyword outline fol‐
177 lowed by a color. A single-color drop shadow is also available
178 using the keyword shadow followed by an optional corner speci‐
179 fier (bottom_right being the default) and a color. For a 3-D
180 embossed look, use emboss dark_color light_color. The opposite
181 effect, a carved-out look, can be obtained with carved
182 dark_color light_color. (Of course, with those last two, the
183 3-D look will only work if you choose the light and dark colors
184 wisely.)
185
186 Finally, for no font effects at all, simply specify the keyword
187 none.
188
189 The default value is bottom_right black which yields a black
190 drop shadow, greatly improving the visibility of lightly-colored
191 fonts on top of light spots in a background image. Note that
192 font effects are not active in solid color mode.
193
194 -P pic, --background-pixmap pic
195 Use pic as the background image. pic can be in any format that
196 Imlib understands. Currently this means just about anything,
197 including JPG, PNG, GIF, TIFF, PPM, etc. The image is tiled by
198 default. To specify alternate geometry, follow the filename
199 with an @ sign and the geometry string. Image geometry is spec‐
200 ified as @wxh+x+y:ops where w and h are the horizontal/vertical
201 scaling percentages, x and y are the horizontal/vertical align‐
202 ment percentages, and ops is a colon-delimited list of opera‐
203 tions: tiled (to tile the image), propscaled (for proportional
204 scaling). Note that these operations can be combined for vari‐
205 ous effects.
206
207 -I pic, --icon pic
208 Sets the icon pixmap file to pic. Works similarly to the -P
209 option above.
210
211 --up-arrow-pixmap pic
212 As above, except the scrollbar's up-arrow is set.
213
214 --down-arrow-pixmap pic
215 As above, except the scrollbar's down-arrow is set.
216
217 --trough-pixmap pic
218 As above, except the scrollbar's background (trough) is set.
219
220 --anchor-pixmap pic
221 As above, except the scrollbar's anchor image is set.
222
223 --menu-pixmap pic
224 As above, except the menu background image is set.
225
226 -O, --trans
227 This gives a pseudo-transparent Eterm. The image is taken
228 directly from the root window, so any requests for changing the
229 pixmap are ignored. If you do not use Enlightenment
230 (http://www.enlightenment.org/) as your window manager (or
231 another compliant window manager...I have been told that Window‐
232 Maker works also), you will need to use the Esetroot program
233 (found in the utils/ directory) to set your root background
234 image.
235
236 -0, --itrans
237 Activate the immotile transparency optimization for transparent
238 Eterm windows. Note that this does NOT activate transparency;
239 you must still include the -O or --trans option. This option
240 should be used on transparent windows which are shaded or tinted
241 and which do not move around on the desktop much. See the Mon
242 Mar 6 21:11:13 PST 2000 ChangeLog entry for a more detailed
243 explanation.
244
245 --viewport-mode
246 This activates a special Eterm mode which is hard to describe in
247 words. Basically, imagine the effect you get with pseudo-trans‐
248 parency, where the desktop background moves through the Eterm
249 window as you move the window, so that it always aligns with the
250 desktop image. Now, imagine the same effect, but the image used
251 isn't the desktop image but any pixmap you choose. The image is
252 scaled or tiled up to the size of the desktop, and dragging the
253 Eterm around the screen reveals different portions of the image
254 as you move, much like a small viewport window in a ship or sub‐
255 marine does. The effect is especially keen if you open several
256 Eterms in this mode with the same image.
257
258 --shade percentage
259 Shade the background image/transparency by a specified percent‐
260 age.
261
262 --tint mask
263
264 --tint color
265 Tints the background pixmap (either an image file or the trans‐
266 parent portion can be shaded). The mask is an integer, usually
267 specified in hexadecimal in the form 0xRRGGBB, where RR, GG,
268 and BB are hexadecimal numbers between 00 and ff (0 and 255 dec‐
269 imal) which represent the brightness of the image's red, green,
270 and blue values, respectively. A value of 00 will mask that
271 color out entirely, while a value of ff will not change that
272 color at all.
273
274 You may also specify an X color such as grey75 or MidnightBlue
275 or #babb7f instead of a mask.
276
277 --cmod brightness [ contrast [ gamma ] ]
278 Specifies a color modifier to apply to the image overall. Each
279 of the three values is a number greater than or equal to 0. The
280 numbers can be specified as decimal, octal (if preceded by "0"),
281 or hexadecimal (if preceded by "0x"). A value of 256 (0x100)
282 represents 100%, or "leave that value unchanged." 0 represents
283 0%, 512 (0x200) is 200%, etc. However, be aware that overflow
284 can occur with excessively high values. Only the brightness
285 value is required for this option. Keep in mind, though, that
286 you must specify brightness with contrast, and both of these
287 with gamma.
288
289 --cmod-red brightness [ contrast [ gamma ] ]
290 Same as above, except that the modifier applies to the red val‐
291 ues of the image.
292
293 --cmod-green brightness [ contrast [ gamma ] ]
294 Same as above, except that the modifier applies to the green
295 values of the image.
296
297 --cmod-blue brightness [ contrast [ gamma ] ]
298 Same as above, except that the modifier applies to the blue val‐
299 ues of the image.
300
301 -p newpath, --path newpath
302 Sets the pic search path. When the --background-pixmap or other
303 pixmap options are used, this path will be used to find the
304 image.
305
306 --cache size
307 Specify the size in bytes for the Imlib2 cache.
308
309 -N list, --anim list
310 Specifies an animation list to be use in cycling the background
311 pixmap. The list consists of two or more words. The first word
312 defines the delay, in seconds, between updates of the back‐
313 ground. This should be set to a reasonable value to insure that
314 Eterm doesn't spend all its time rendering backgrounds. All
315 remaining words specify background images and have the same syn‐
316 tax as the -P option above, including the optional geometry
317 string.
318
319 -M font, --mfont font
320 Sets the normal multibyte text font to font.
321
322 --mfont1 font
323
324 ...
325
326 --mfont4 font
327 Sets multibyte font X to font.
328
329 --mencoding encoding
330 Sets multichar encoding mode (eucj or sjis or euckr)
331
332 --input-method method
333 Sets XIM input method
334
335 --preedit-type type
336 Sets XIM preedit type
337
338 -l, --login-shell
339 Makes the new shell a login shell.
340
341 -s, --scrollbar
342 Enables the scrollbar. (Default)
343
344 -u, --utmp-logging
345 Tries to enable proper utmp logging. For this to work, Eterm
346 probably needs to run setuid or setgid, usually setuid root.
347
348 -v, --visual-bell
349 Enables the "visual bell". Means the window will flash or blink
350 rather than beep.
351
352 -H, --home-on-output
353 Jump to bottom on output.
354
355 --home-on-input
356 Jump to bottom on input.
357
358 -q, --no-input
359 Keeps Eterm from accepting keyboard input, and keeps the window
360 manager from focusing it. Useful for log tailers and such.
361
362 --scrollbar-right
363 Display scrollbar on the right hand side.
364
365 --scrollbar-floating
366 Display the scrollbar without a trough.
367
368 --scrollbar-popup
369 Display the scrollbar only when the Eterm window is focused.
370
371 -x, --borderless
372 This option forces Eterm to have no borders.
373
374 -S, --sticky
375 Start Eterm as a sticky window (shows on all desktops)
376
377 -m, --map-alert
378 Un-iconify on beep.
379
380 -8, --meta8
381 Causes the Meta key to set the 8th bit in the char.
382
383 --double-buffer
384 Rather than drawing text directly onto the window, this option
385 causes Eterm to allocate an additional pixmap the size of the
386 terminal window into which the background *and* the text are
387 rendered. This pixmap is then set as the window background.
388 Double-buffering uses additional memory in the X server, but it
389 allows Eterm to ignore expose events so redraws are faster.
390
391 --no-cursor
392 Disables the text cursor.
393
394 --pause
395 After the child process terminates, Eterm will wait for a key‐
396 press before exiting.
397
398 --xterm-select
399 Duplicate's xterm's treatment of cutchars. The only real dif‐
400 ference is what happens when you double click on a single
401 cutchar between two words. If this option is on, only that sin‐
402 gle character gets selected. If it is off, that character is
403 selected along with the two words. The latter behavior is use‐
404 ful for double-clicking on the space between someone's first and
405 last names, or the @ sign in an e-mail address, etc.
406
407 --select-line
408 If activated, this option causes a triple click to select the
409 entire line from beginning to end. If off, a triple-click
410 selects just from the current word to the end of the line.
411
412 --select-trailing-spaces
413 Determines whether or not trailing spaces in a selection are
414 maintained (on) or discarded (off).
415
416 --report-as-keysyms
417 Reports certain keystrokes as keysyms and modifiers rather than
418 escape sequences. NOTE: This option is intended for use only
419 with programs that support this special Eterm mode. Do not
420 enable it unless you are executing a program which uses this
421 mode.
422
423 --buttonbar
424 Toggle the display of all buttonbars.
425
426 --resize-gravity
427 If true, Eterm will automatically detect the nearest corner, and
428 font-change resizes will cause the Eterm window to gravitate
429 toward that corner.
430
431 --overstrike-bold
432 If true (default), Eterm will simulate a bold font by printing
433 each character twice, offsetting the second pass by one pixel.
434 This makes the characters seem thicker without the need for a
435 special font. You may wish to disable this if you use a spe‐
436 cific color for bold.
437
438 --bold-brightens-foreground
439 If true (default), Eterm will use the "bold" ANSI color
440 attribute to brighten the foreground color by using the high-
441 intensity colors (8 through 15) rather than the low-intensity
442 colors (0 through 7). Note that having a specific color
443 selected for bold will override this.
444
445 --blink-brightens-background
446 If true (default), Eterm will use the "blink" ANSI color
447 attribute to brighten the background color by using the high-
448 intensity colors (8 through 15) rather than the low-intensity
449 colors (0 through 7).
450
451 --colors-suppress-bold
452 If true (default), any colored text (that is, any text not ren‐
453 dered using the default foreground color) will not be given any
454 other special treatment for bolding (e.g., bold font or bold
455 overstrike).
456
457 --big-font-key keysym
458 Specify a keysym to increase the font size. Default is Shift
459 and the + key on the keypad. Ctrl-> or Meta-> may also work (if
460 you #define one of the hotkeys in src/feature.h).
461
462 --small-font-key keysym
463 Specify a keysym to decrease the font size. Default is Shift
464 and the - key on the keypad. Ctrl-< or Meta-< may also work (if
465 you #define one of the hotkeys in src/feature.h).
466
467 --meta-mod num
468 Specify which X modifier (1-5) to treat as the Meta key. See
469 xmodmap(1) and the output of xmodmap -pm for more details.
470
471 --alt-mod num
472 Same as --meta-mod, but for the Alt key.
473
474 --numlock-mod num
475 Same as --meta-mod, but for the NumLock key.
476
477 --greek-keyboard mode
478 Use Greek keyboard mapping (iso or ibm).
479
480 --app-keypad
481 Start Eterm in application keypad mode (as opposed to normal
482 keypad mode).
483
484 --app-cursor
485 Start Eterm in application cursor key mode (as opposed to normal
486 cursor key mode).
487
488 -L num, --save-lines num
489 Set the number of lines in the scrollback buffer to num.
490
491 -a size, --min-anchor-size size
492 Specifies the minimum size, in pixels high, of the scrollbar
493 anchor. NOTE: This causes abnormal scrolling behavior when com‐
494 bined with large scrollback buffers!
495
496 -w width, --border-width width
497 Set the window's border width to width. The border this con‐
498 trols is the gap between the edge of the X window and the edge
499 of the terminal window; this has nothing to do with the window
500 border's your window manager supplies.
501
502 --print-pipe pipe
503 The pipe for the PrintScreen function.
504
505 --cut-chars separators
506 The seperators for double-click selection.
507
508 --finished-title title
509 Specifies the string Eterm should add to its title bar if
510 --pause is specified and the child process completes.
511
512 --finished-text text
513 Same as above, but displays text in the terminal window.
514
515 --term-name TERM
516 Use TERM for the value $TERM.
517
518 --pipe-name pipe
519 Specifies a named pipe from which to display output. This is
520 useful for systems where syslog output goes to a named pipe,
521 like /dev/xconsole on Debian.
522
523 -a line, --attribute line
524 This option is used to pass config file attributes on the com‐
525 mand line. line should be a single string, so you will almost
526 certainly have to quote it. The first word of line must be the
527 context (see config file section below) which should parse the
528 rest of the line. So, for example, you could specify the fore‐
529 ground color like so: -a 'color foreground blue'. Or you could
530 add a binding: -a 'actions bind anymod button1 to script exit'.
531 Note that this option may only be used with config file
532 attributes that are not context-sensitive; i.e., menus and
533 imageclasses cannot be specified using this option.
534
535 -C, --console
536 Grab console messages. Depending on your system, Eterm may need
537 to be setuid root to do this.
538
539 -e command, --exec command
540 Execute command rather than a shell. Forces Eterm mode.
541
542 -U URL, --url URL
543 Pick up a "screen" session at URL rather than a local (-U "")
544 one. URLs look like so
545 (screen://user@host.dom:port/screen_options), with all parts
546 optional, defaulting to "screen://current_user@local‐
547 host:22/-RDD". Forces Escreen mode, overrides --exec. Note that
548 only screen-options (see "man screen") are allowed; do not pass
549 a command (with or without arguments) here: to pass a command to
550 the screen-session, use screen [<options>] <command> [<args>]
551 instead.
552
553 -Z lclport:fw:fwport,delay, --fw lclport:fw:fwport,delay
554 The URL given to -U is in an intranet behind firewall fw so
555 we'll build an SSH-tunnel to that firewall (to port 22/SSH, or
556 fwport if given) from our local machine (using any available
557 port-number, or lclport if given). Then, after delay seconds (or
558 a sensible default if not given), we will try to open a screen
559 session on the host behind the firewall using ssh -p localport
560 ... localhost screen cf. ssh -L
561
562
564 Eterm is built on the philosophy of Freedom of Choice. Each user
565 should be able to choose the environment in which he or she wishes to
566 exist, and the tools used should support that. In accordance with that
567 philosophy, Eterm is extremely configurable. Eterm supports a concept
568 called "themes," which should be familiar to users of Enlightenment,
569 icewm, or Microsoft Windows 95/98/NT. The general concept of a theme
570 is a collection of resources that change as many aspects of a programs
571 look and feel as possible. For example, an Enlightenment theme allows
572 you to customize menus, window borders, desktops, icons, iconbars, and
573 everything else about how E looks and feels.
574
575 An Eterm theme consists of a primary configuration file, always called
576 "theme.cfg", residing in a directory bearing the same name as the
577 theme. This directory must be a child of one of the directories speci‐
578 fied by CONFIG_SEARCH_PATH in src/feature.h. The theme may also contain
579 additional configuration files referenced by the primary theme.cfg
580 file, as well as pixmaps, menu files, documentation, etc., which are
581 allowable as extensions to the minimum requirement of an Eterm theme.
582
583 By convention and default, Eterm themes should be stored under
584 ~/.Eterm/themes/<theme_name>/ or /usr/share/Eterm/themes/<theme_name>.
585
586 Eterm now supports the existence of a user configuration file as a sup‐
587 pliment to the theme configuration file. The default name for this
588 file is user.cfg, and it follows the exact same syntax as any other
589 configuration file. It is searched for using the same algorithm used
590 for the theme.cfg file, and any settings in the user.cfg will override
591 any previous values for those settings defined by the theme. Thus, it
592 is recommended that any user.cfg files not be complete config files,
593 but rather only contain those values which the user wishes to explic‐
594 itly override.
595
596 NOTE: If you have a user.cfg file in the Eterm theme directory or in
597 ~/.Eterm/, it will override any previous settings, even if you are run‐
598 ning a different theme. For example, if you run the trans theme, but
599 ~/.Eterm/themes/Eterm/user.cfg has a mode line which sets the image
600 mode to "image" rather than "trans," you will not get transparency.
601 This is why user.cfg files should be kept small and only override set‐
602 tings that you know you want to enforce. If, on the other hand, you
603 were running the trans theme and had a user.cfg file in the trans theme
604 (or in ~/.Eterm/themes/trans/), that user.cfg would be found before the
605 one in the Eterm theme.
606
607 Almost all command line options can be enabled/disabled in the theme's
608 configuration file (the default is
609 /usr/share/Eterm/themes/Eterm/theme.cfg). The next section contains
610 details on the format and usage of the configuration file.
611
612
614 Since Eterm 0.9.6 is based on the concept of themes, it is vital that
615 you have a thorough understanding of the previous section before taking
616 on this one. The previous section and this one were written by the
617 same person who wrote the Eterm code which handles options, config
618 files, and themes, so it's probably the most authoritative documenta‐
619 tion on the subject you're going to find.
620
621 From here on out, I will assume you've read the above text and know how
622 to change the default value for the theme. It is highly recommended
623 that you have a copy of the Eterm theme config file that comes with
624 Eterm handy while you read this documentation.
625
626 Okay, first the general idea. The theme.cfg file is composed of com‐
627 ments and non-comments. Comments begin with a pound sign and continue
628 to the end of the line. Lines of whitespace are also ignored. The
629 rest of the file is the config stuff, which is divided into sections
630 (called "contexts") and variables (called "attributes"). There are
631 several contexts which are listed below in sections. Each attribute
632 must be inside a certain context to be valid. For instance, while the
633 "foreground" attribute is perfectly acceptable in the color context, it
634 would be rejected if found in, say, the toggles context. This allows
635 for better organization of the config file as well as for multiple con‐
636 texts to have attributes of the same name (like the scrollbar
637 attributes in the color and toggles section).
638
639 Each context must be enclosed in a begin...end pair that specifies the
640 type of section. The statement "begin toggles" starts the toggles con‐
641 text, and the next "end" statement would terminate it. (You'll notice
642 that some "end" statements have the context name after them. This is
643 for readability only; any text after the word "end" is ignored.)
644
645 The rest of this section will contain a step-by-step analysis of the
646 config file, including what can go in each section. Note that some
647 attributes (and even entire contexts) may not be available depending on
648 what support was compiled into Eterm by the person who built it.
649
650 MAGIC NUMBER
651
652 The first line of the config file must contain a "magic number"
653 type line that lets Eterm verify that it's reading an Eterm con‐
654 fig file and not something else (like an Enlightenment 0.13 and
655 earlier config file). The line should look like this:
656
657 <Eterm-VERSION>
658
659 where VERSION is the Eterm version for which the config file is
660 intended. For example, config files written for Eterm 0.9
661 should have "<Eterm-0.9>" as their first line, followed immedi‐
662 ately by a newline.
663
664 COLOR CONTEXT
665
666 This context contains color specifications. With the exception
667 of the terminal colors 0-15, all colors should be either a valid
668 color name or an RGB string as outlined in the X11(7) man page.
669
670 foreground color
671 Use color for the foreground (text) color.
672
673 background color
674 Use color for the background color.
675
676 cursor color
677 Use color for the cursor color.
678
679 cursor_text color
680 Use color for the cursor text color.
681
682 pointer color
683 Use color for the mouse pointer color.
684
685 video { normal | reverse }
686 normal will not reverse the foreground and background colors.
687 reverse (meaning reverse video) will.
688
689 color num color
690 Set terminal color num (0-15) to the color name, string, or
691 set of 3 decimal/hex/octal RGB values specified by color.
692
693 color { bd | ul } color
694 Set terminal bold (bd) or underline (ul) color to the color
695 name, string, or set of 3 decimal/hex/octal RGB values speci‐
696 fied by color.
697
698
699 ATTRIBUTES CONTEXT
700
701 This context contains X11 attributes. Most of these are depen‐
702 dent upon the cooperation of the window manager.
703
704 geometry geom
705 Use the geometry string geom to specify the startup geometry.
706 geom should be in the format WxH+X+Y where W is the width, H
707 is the height, and +X and +Y are the X and Y offsets. If the
708 signs on X and Y are positive, the coordinates are offsets
709 (in pixels) from the left and top, respectively, of the
710 screen. If the signs are negative, the offsets are relative
711 to the right and bottom of the screen, respectively.
712
713 title title
714 Use title as the text in the title bar of the Eterm window.
715
716 name name
717 Use name as the resource name of the Eterm window.
718
719 iconname name
720 Use name as the icon name of the Eterm window icon.
721
722 desktop num
723 Start Eterm on desktop num. NOTE: This requires a GNOME-com‐
724 pliant Window Manager. Please see
725 http://www.gnome.org/devel/gnomewm/ for more information on
726 the _WIN_WORKSPACE property and how to support it.
727
728 scrollbar_type type
729 Use a scrollbar with the type style. type can be any of
730 motif, xterm, or next.
731
732 scrollbar_width num
733 Use a scrollbar that is num pixels wide.
734
735 font num font
736 font bold font
737 Set the numth font, or the bold font, to font.
738
739 font default num
740 Specifies that the numth font should be considered the
741 "default" font.
742
743 font proportional boolean
744 Specifies that the font in use is proportional and requests
745 standard deviation-based character cell spacing. Terminals
746 must use fixed-width character cells to maintain proper
747 columnal alignment, even when proportionally-spaced fonts are
748 in use. Some proportionally-spaced fonts vary greatly
749 between the minimum and maximum character widths. This
750 option chooses a character cell size which is up to two stan‐
751 dard deviations above the average character width but will
752 not exceed the maximum width of the largest glyph. Note that
753 characters larger than the chosen cell width will overwrite
754 (or be overwritten by) other characters and may tend to leave
755 pixel droppings. This behavior is an expected side-effect of
756 an imperfect scenario. If you object to this behavior, do
757 not use this option.
758
759 font fx effects
760 Specifies the effects to apply to the terminal window font.
761 The value of effects is a single string containing a series
762 of corner/color pairs. These pairs define toward which cor‐
763 ner a drop shadow of each character should be made, and what
764 color that shadow will be. The corner is specified first
765 using the following keywords: top_left or tl, top_right or
766 tr, bottom_left or bl, and bottom_right or br. Each corner
767 specifier is then followed by a color.
768
769 There are also several shortcuts for doing common effects.
770 You can get a single-color outline by using the keyword out‐
771 line followed by a color. A single-color drop shadow is also
772 available using the keyword shadow followed by an optional
773 corner specifier (bottom_right being the default) and a
774 color. For a 3-D embossed look, use emboss dark_color
775 light_color. The opposite effect, a carved-out look, can be
776 obtained with carved dark_color light_color. (Of course,
777 with those last two, the 3-D look will only work if you
778 choose the light and dark colors wisely.)
779
780 Finally, for no font effects at all, simply specify the key‐
781 word none.
782
783 The default value is bottom_right black which yields a black
784 drop shadow, greatly improving the visibility of lightly-col‐
785 ored fonts on top of light spots in a background image. Note
786 that font effects are not active in solid color mode.
787
788
789 IMAGECLASSES CONTEXT
790
791 This context contains global image attributes. It also provides
792 the parent context for defining images via the "image" context.
793
794 icon filename
795 Use filename as the icon image for the Eterm window. file‐
796 name can be an absolute path, relative to the current theme,
797 or relative to one of the directories in the path attribute
798 listed below.
799
800 cache num
801 Sets the Imlib2 cache size to num bytes. The default is 0.
802
803 path directory_list
804 Specifies a colon-delimited list of directories relative to
805 which Eterm should search for image and menu files. The syn‐
806 tax for directory_list is precisely the same as that of the
807 $PATH environment variable in UNIX shells.
808
809 anim interval images ...
810 Specifies an animation list to be use in cycling the back‐
811 ground pixmap. The interval defines the delay, in seconds,
812 between updates of the background. This should be set to a
813 reasonable value to insure that Eterm doesn't spend all its
814 time rendering backgrounds. All the images specify back‐
815 ground images and have the same syntax as the -P option
816 above, including the optional geometry string.
817
818
819 IMAGE CONTEXT
820
821 This context defines all the attributes of a particular image.
822 There can be (and usually are) several image contexts per theme,
823 one for each class of image.
824
825 type class
826 Specifies the type, or class, of the image that is going to
827 be defined in that context. This MUST be the first attribute
828 defined in the image context. Valid classes are: background,
829 trough, anchor, up_arrow, down_arrow, left_arrow,
830 right_arrow, menu, menuitem, submenu, button, and buttonbar.
831 Note that the left and right arrows, while valid, don't do
832 anything just yet. All the subsequent attributes up to the
833 next type definition will be applied to that image class.
834
835 mode initial_mode [ allow allowed_modes ]
836 Specifies the initial mode for this image class as well as
837 the modes which the image class is allowed to use. ini‐
838 tial_mode is the mode that the image will have on startup
839 (unless overridden by command-line options. allowed_modes is
840 a list of one or more modes. The image will be prevented
841 from switching to any mode not listed in the allow section.
842 If the allow section is omitted entirely, the image will
843 never be permitted to change from the initial_mode. If no
844 mode line is specified for an image class, the default is
845 equivalent to mode solid allow solid. Valid mode names are
846 image (to use an image), trans (for transparency), viewport
847 (for viewport mode), auto (for auto mode, which requires
848 Enlightenment 0.16 or better), and solid (which is a solid
849 color only).
850
851 state { normal | selected | clicked | disabled }
852 This sets the state of the image you are about to define. Up
853 until the next state attribute that is encountered (or until
854 you change types), all attributes will apply to that particu‐
855 lar state of the image. You should at minimum define the
856 normal state of the image. It will be used as the default if
857 the attributes for the other states are not specified. How‐
858 ever, each image state has self-contained options. There‐
859 fore, if you define multiple states for an image class, you
860 must define ALL attributes needed by that state. The sample
861 themes supplied with Eterm demonstrate how to define 1-, 2-,
862 3-, and 4-state images.
863
864 The above attributes affect the image class as a whole. All
865 remaining attributes in this context affect only the current state
866 of the image class.
867
868 color fg bg
869 Sets the foreground and background colors for this image‐
870 class. The foreground color is used for text, and the back‐
871 ground color is used for the object itself. If an invalid
872 color is specified, the default value for fg is white, and
873 the default for bg is black.
874
875 file filename
876 Sets the filename from which to load the image file. This is
877 used for the image mode. If you allow the image mode for
878 your image, don't forget to supply an image file! Note that
879 you can also supply an image geometry string here by adding
880 an @ symbol and the geometry string to the end of the file‐
881 name. See below for the syntax of the geometry string.
882 filename must be an absolute path or a path relative to one
883 of the directories in the path attribute. Note that the
884 image is verified and loaded when this attribute is encoun‐
885 tered during parsing.
886
887 geom image_geometry
888 Specifies the geometry and geometry-related operations which
889 are to be applied to the image. This attribute only applies
890 to image classes using the image mode. Image geometry is
891 specified as wxh+x+y:ops where w and h are the horizon‐
892 tal/vertical scaling percentages, x and y are the horizon‐
893 tal/vertical alignment percentages, and ops is a colon-delim‐
894 ited list of operations: tiled (to tile the image), prop‐
895 scaled (for proportional scaling). Note that these opera‐
896 tions can be combined for various effects.
897
898 cmod { image | red | green | blue } brightness [ contrast [ gamma
899 ] ]
900 colormod { image | red | green | blue } brightness [ contrast [
901 gamma ] ]
902 Specifies a color modifier to apply to the image. The second
903 keyword determines whether the modifier will be applied to
904 the image overall, the red values, the green values, or the
905 blue values. Each of the three parameters is a number
906 greater than or equal to 0. The numbers can be specified as
907 decimal, octal (if preceded by "0"), or hexadecimal (if pre‐
908 ceded by "0x"). A value of 256 (0x100) represents 100%, or
909 "leave that value unchanged." 0 represents 0%, 512 (0x200)
910 is 200%, etc. However, be aware that overflow can occur with
911 excessively high values. Only the brightness value is
912 required for this option. Keep in mind, though, that you
913 must specify brightness with contrast, and both of these with
914 gamma.
915
916 border left right top bottom
917 Specifies that the image has borders which should not be
918 scaled with the rest of the image. This is primarily used
919 for images that have a beveled look, so that the bevel will
920 not end up getting scaled and lose the bevel effect. All
921 four parameter values are in pixels, just like the equivalent
922 options for E themes and Gtk+ pixmap themes.
923
924 bevel { up | down } left right top bottom
925 Adds a bevel to an image class. This can be done to any
926 image class using the image or trans modes. The parameters
927 are pixel values which represent the width of each edge of
928 the bevel. This is especially useful if you want to use
929 tiled images or transparency for the arrow or anchor scroll‐
930 bar widgets, or for menus.
931
932 padding left right top bottom
933 This is used only for the submenu image class. It defines
934 the amount of pixels on each side to reserve so that the text
935 will not overwrite part of the image. Works just like the
936 same option in Enlightenment themes.
937
938
939
940 MENU CONTEXT
941
942 This context is used to create a menu. There is one instance of
943 this context per menu, and the menus should be defined in sub‐
944 menu-menu order; i.e., any menu that refers to another menu (as
945 its submenu) should be defined after the submenu is defined.
946 Within the menu context, there should be a menuitem subcontext
947 for each menu item (with the exception of the shorthand for sep‐
948 arators).
949
950 title menu_title
951 This specifies the title for the menu to be defined. This
952 MUST be the first attribute given after the "begin menu".
953 The title must be unique amongst all the menus. It may con‐
954 tain spaces, but don't forget to enclose it in single or dou‐
955 ble quotes if it does. Any future references to the menu
956 will use the title.
957
958 font font_name
959 Tells Eterm to use font_name as the font for this menu. If
960 not given, the default terminal font is used.
961
962 sep or -
963 These symbols can be used as shorthand to insert a separator
964 into the menu.
965
966
967
968 MENUITEM CONTEXT
969
970 This is a subcontext of the menu context which creates a single
971 item for a menu. There can be (and usually are) several menu‐
972 item contexts per menu.
973
974 text label
975 This is the text that is displayed for this menuitem. It is
976 left-justified in the menu window. It can have spaces, but
977 enclose label in quotes if it does.
978
979 rtext label
980 This is text which is right-justified next to the menuitem
981 text. This is generally used to show what keystrokes corre‐
982 spond to a particular menu item, like "C-x C-c" for the
983 "Exit" menuitem in an Emacs menu.
984
985 action { string | echo | submenu | script } param
986 action separator
987 Specifies the action to occur when the menuitem is chosen.
988 If you specify separator, nothing else is needed. The other
989 action types require a parameter, param. string specifies a
990 string to be sent to Eterm for handling (escape codes, for
991 example). echo specifies a string to be sent to the client
992 program (for sending commands to a shell, or keystrokes to an
993 application like emacs or mutt). If you use either of these
994 action types, param will be parsed for escape codes (\a, C-,
995 and the like) before being sent. submenu specifies a submenu
996 which should be displayed when this item is selected, and
997 param is the title of the submenu to show. The submenu must
998 have already been defined. The script action type executes
999 the Eterm-builtin script contained in param. See the section
1000 below for more details on the builtin Eterm functions allowed
1001 for this action type.
1002
1003
1004
1005 ACTION CONTEXT
1006
1007 Actions are key or mouse button bindings which activate certain
1008 behaviors. Any action that can be triggered through an escape
1009 code can be bound to a key or mouse button, with or without mod‐
1010 ifiers. You can also bind menus to keystrokes or mouse buttons.
1011
1012 bind [ modifiers ] { keysym | button } to { string | echo | menu |
1013 script } param
1014 Binds a keysym or a mouse button to an action. The action
1015 syntax follows the keyword to and is identical to the syntax
1016 used for menus (see above). There can be any number of modi‐
1017 fiers (so long as the combination is reasonable) but only one
1018 keysym or button. Valid modifiers are ctrl, shift, lock,
1019 mod1 through mod5, alt, meta, and anymod (which allows any
1020 modifier). If none are given, the keypress must not have
1021 modifier keys in use or the action will not be triggered.
1022 Use anymod to allow any arbitrary modifier key to be used.
1023 The keysym can be given in text (case-sensitive) or as a hex
1024 number. buttons should be specified as button1 through but‐
1025 ton5. Also note that alt and meta will be equivalent to one
1026 or more of mod1 through mod5, as well as perhaps each other,
1027 based on your modifier settings. You can view these settings
1028 using xmodmap -pm. See also the alt_mod and meta_mod options
1029 below.
1030
1031
1032
1033 BUTTON_BAR CONTEXT
1034
1035 The buttonbar is an addition to Eterm 0.9.1 which allows users
1036 to have a fully-customizeable buttonbar at the top or bottom of
1037 each terminal window. Buttons on the buttonbar can be used just
1038 like menuitems; they can popup menus (like a menubar), or they
1039 can activate any other action a menuitem can.
1040
1041 font font
1042 Specifies the font in which button labels will be displayed.
1043
1044 dock { top | bottom | no }
1045 Specify whether or not to dock the buttonbar, and if so,
1046 whether to dock it at the top or the bottom of the Eterm win‐
1047 dow. Note that only top and bottom are currently enabled.
1048
1049 visible boolean
1050 Toggle whether or not this particular buttonbar will be visi‐
1051 ble on startup.
1052
1053 button [ text ] [ icon filename ] action { string | echo | menu |
1054 script } param
1055 Binds an action to a button. The usage of param and the
1056 action types work the same here as they do for menuitems.
1057 Also note that you may specify some text or an icon or both,
1058 but you cannot omit both.
1059
1060
1061 MULTICHAR CONTEXT
1062
1063 Behavior for multi-byte fonts and encodings are defined here.
1064 This context does not exist by default.
1065
1066 encoding { eucj | sjis | euckr | big5 | gb | iso-10646 }
1067 Specifies the encoding method. Patches to support other
1068 encoding methods are encouraged.
1069
1070 font num font
1071 Set the numth multichar font to font.
1072
1073
1074
1075 XIM CONTEXT
1076
1077 This context controls locale-based behavior.
1078
1079 input_method input_method
1080 Specify your input method program of choice.
1081
1082 preedit_type { OverTheSpot | OffTheSpot | Root }
1083 Specify your preedit type of choice.
1084
1085
1086
1087 ESCREEN CONTEXT
1088
1089 This context allows for customizations specific to Escreen mode.
1090 See the Escreen section below for more details.
1091
1092 url protocol://user@host:port/params
1093 Connect to (or create) a particular screen session via a URL-
1094 type construct. Standard URL rules apply. The protocol
1095 should be either screen (the default) or twin. If user,
1096 host, and/or port are specified, an ssh connection is made to
1097 the remote server using the given login information. The
1098 default is to create/attach to a local session.
1099
1100 Any params that are given are passed directly to the underly‐
1101 ing protocol and are separated from each other by a plus sign
1102 (+).
1103
1104 firewall localport:firewall:remoteport
1105 Bounce the connection through a firewall via ssh.
1106
1107 delay secs
1108 Specify the amount of time to wait before sending the
1109 screen/twin initialization sequence. This is required to
1110 insure that the remote session has been established prior to
1111 sending the init sequence.
1112
1113 bbar_font font
1114 Font to use for the Escreen buttonbar. The default is
1115 -*-helvetica-medium-r-normal--10-*-*-*-p-*-iso8859-1.
1116
1117 bbar_dock { top | bottom | no }
1118 Dock the Escreen buttonbar as specified. Note that only top
1119 and bottom are currently enabled.
1120
1121
1122
1123 TOGGLES CONTEXT
1124
1125 This context contains boolean variables which can be toggled on
1126 or off. Valid values for the attributes in this section are
1127 "yes", "on", "1", and "true" to turn the option on, or "no",
1128 "off", "0", or "false" to turn the option off. These values are
1129 denoted by boolean. They all default to false unless otherwise
1130 noted.
1131
1132 map_alert boolean
1133 If true, Eterm will un-iconify itself when it receives a beep
1134 (ASCII 0x07).
1135
1136 visual_bell boolean
1137 If true, Eterm will flash rather than sending a beep.
1138
1139 login_shell boolean
1140 If true, Eterm will prepend '-' to the shell name when call‐
1141 ing it. Depending on your shell, this may modify its startup
1142 behavior.
1143
1144 scrollbar boolean
1145 This turns on and off the display of the scrollbar. Default
1146 is on.
1147
1148 utmp_logging boolean
1149 If true, Eterm will attempt to make an entry in the utmp file
1150 to record the login information. Eterm may need to run priv‐
1151 ileged to do this.
1152
1153 meta8 boolean
1154 Toggles the interpretation of the Meta key setting the 8th
1155 bit in a character.
1156
1157 iconic boolean
1158 If true, Eterm will launch as an icon.
1159
1160 home_on_output boolean
1161 Zoom to the bottom of the scrollback buffer on output.
1162
1163 home_on_input boolean
1164 Zoom to the bottom of the scrollback buffer on input.
1165
1166 no_input boolean
1167 If true, Eterm will not accept any keyboard input and will
1168 ask the window manager to not allow it to be focused.
1169
1170 scrollbar_floating boolean
1171 If true, the scrollbar will have no trough.
1172
1173 scrollbar_right boolean
1174 If true, Eterm will put the scrollbar on the right of the
1175 window (default is left).
1176
1177 scrollbar_popup boolean
1178 If true, Eterm will hide the scrollbar when the Eterm window
1179 loses focus and restore it when focus is regained. Default
1180 is to not change the scrollbar state based on focus.
1181
1182 borderless boolean
1183 If true, Eterm will run with no window borders. This also
1184 means that the window can not be moved or resized. You will
1185 want to specify a geometry with this attribute.
1186
1187 double_buffer boolean
1188 Rather than drawing text directly onto the window, this
1189 causes Eterm to allocate an additional pixmap the size of the
1190 terminal window into which the background *and* the text are
1191 rendered. This pixmap is then set as the window background.
1192 Double-buffering uses additional memory in the X server, but
1193 it allows Eterm to ignore expose events so redraws are
1194 faster.
1195
1196 no_cursor boolean
1197 If true, Eterm will not display a text cursor.
1198
1199 pause boolean
1200 After the child process terminates, Eterm will wait for a
1201 keypress before exiting.
1202
1203 xterm_select boolean
1204 Duplicate's xterm's treatment of cutchars. The only real
1205 difference is what happens when you double click on a single
1206 cutchar between two words. If this option is on, only that
1207 single character gets selected. If it is off, that character
1208 is selected along with the two words. The latter behavior is
1209 useful for double-clicking on the space between someone's
1210 first and last names, or the @ sign in an e-mail address,
1211 etc.
1212
1213 select_line boolean
1214 If true, this attribute causes a triple click to select the
1215 entire line from beginning to end. If false (default), a
1216 triple-click selects from the current word to the end of the
1217 line.
1218
1219 select_trailing_spaces boolean
1220 If true, this attribute causes spaces at the end of a line to
1221 be included as part of the selection text when selecting.
1222 The default is to strip these trailing spaces.
1223
1224 report_as_keysyms boolean
1225 Reports certain keystrokes as keysyms and modifiers rather
1226 than escape sequences. NOTE: This option is intended for use
1227 only with programs that support this special Eterm mode. Do
1228 not enable it unless you are executing a program which uses
1229 this mode.
1230
1231 itrans boolean
1232 immotile_trans boolean
1233 Toggles the immotile transparency optimization for transpar‐
1234 ent Eterm windows. Note that this does NOT activate trans‐
1235 parency; you must still activate "trans" mode for the back‐
1236 ground image. This option should be used on transparent win‐
1237 dows which are shaded or tinted and which do not move around
1238 on the desktop much. See the Mon Mar 6 21:11:13 PST 2000
1239 ChangeLog entry for a more detailed explanation.
1240
1241 buttonbar boolean
1242 Toggle the display of all buttonbars.
1243
1244 resize_gravity boolean
1245 If true, Eterm will automatically detect the nearest corner,
1246 and font-change resizes will cause the Eterm window to gravi‐
1247 tate toward that corner.
1248
1249 overstrike_bold boolean
1250 If true (default), Eterm will simulate a bold font by print‐
1251 ing each character twice, offsetting the second pass by one
1252 pixel. This makes the characters seem thicker without the
1253 need for a special font. You may wish to disable this if you
1254 use a specific color for bold.
1255
1256 bold_brightens_foreground boolean
1257 If true (default), Eterm will use the "bold" ANSI color
1258 attribute to brighten the foreground color by using the high-
1259 intensity colors (8 through 15) rather than the low-intensity
1260 colors (0 through 7). Note that having a specific color
1261 selected for bold will override this.
1262
1263 blink_brightens_background boolean
1264 If true (default), Eterm will use the "blink" ANSI color
1265 attribute to brighten the background color by using the high-
1266 intensity colors (8 through 15) rather than the low-intensity
1267 colors (0 through 7).
1268
1269 colors_suppress_bold boolean
1270 If true (default), any colored text (that is, any text not
1271 rendered using the default foreground color) will not be
1272 given any other special treatment for bolding (e.g., bold
1273 font or bold overstrike).
1274
1275 sticky boolean
1276 If true, Eterm will make its window sticky (shows on all
1277 desktops).
1278
1279
1280 KEYBOARD CONTEXT
1281
1282 This context contains keyboard-related configuration options.
1283
1284 smallfont_key keysym
1285 Specify a keysym to decrease the font size. Default is Shift
1286 and the - key on the keypad. Ctrl-< or Meta-< may also work
1287 (if you #define one of the hotkeys in src/feature.h).
1288
1289 bigfont_key keysym
1290 Specify a keysym to increase the font size. Default is Shift
1291 and the + key on the keypad. Ctrl-> or Meta-> may also work
1292 (if you #define one of the hotkeys in src/feature.h).
1293
1294 keysym keysym string
1295 Define keysym keysym to send string instead of its default.
1296 keysym must be between 0xff00 and 0xffff or Eterm will com‐
1297 plain.
1298
1299 meta_mod num
1300 Specify which X modifier (1-5) to treat as the Meta key. See
1301 xmodmap(1) and the output of xmodmap -pm for more details.
1302
1303 alt_mod num
1304 Same as meta_mod, but for the Alt key.
1305
1306 numlock_mod num
1307 Same as meta_mod, but for the NumLock key.
1308
1309 greek boolean { iso | ibm }
1310 Turn on/off greek keyboard support, and set which greek mode
1311 to use.
1312
1313 app_keypad boolean
1314 Turn on/off application keypad mode on startup.
1315
1316 app_cursor boolean
1317 Turn on/off application cursor key mode on startup.
1318
1319
1320 MISC CONTEXT
1321
1322 This context contains miscellaneous attributes that really
1323 didn't belong anywhere else.
1324
1325 print_pipe command
1326 Set the command to which to pipe print requests (printscreen)
1327 to command.
1328
1329 save_lines num
1330 Set the number of lines in the scrollback buffer to num.
1331
1332 cut_chars string
1333 Define the characters used as word delimiters to the charac‐
1334 ters contained in string.
1335
1336 min_anchor_size num
1337 Sets the minimum size, in pixels, of the scrollbar anchor
1338 (the part your mouse grabs onto and moves around) to num.
1339
1340 border_width num
1341 Sets the width of the border between the text window and the
1342 X window to num.
1343
1344 line_space num
1345 Put num pixels' worth of space between each row of the termi‐
1346 nal window.
1347
1348 finished_title title
1349 Specifies that title should be displayed in the title bar of
1350 a paused Eterm when the child process has completed.
1351
1352 finished_text text
1353 Specifies that text should be displayed in the terminal win‐
1354 dow of a paused Eterm when the child process has completed.
1355
1356 term_name name
1357 Use name as the $TERM environment variable, which controls
1358 which termcap/terminfo entry gets used. The default is
1359 Eterm.
1360
1361 exec command
1362 Rather than executing a shell, this will cause Eterm to spawn
1363 command as its child process. You can only have one of
1364 these!
1365
1366
1367 BUILT-IN FUNCTIONS
1368
1369 Eterm has a set of built-in functions which are available in
1370 config files. Each one accepts zero or more parameters and out‐
1371 puts a series of zero or more words. "Words" are defined in
1372 shell terms; i.e., words are separated by whitespace, and single
1373 or double quotes can be used to encapsulate words which contain
1374 whitespace themselves. You also employ backquotes to execute a
1375 command whose output can become part of the config file itself
1376 or can be passed to a built-in function as its parameter list.
1377 Built-in functions and backquotes may be used anywhere their
1378 output would be valid. Built-in functions are prefixed with the
1379 % character.
1380
1381 %appname()
1382 Returns the application name, a hyphen, and the version num‐
1383 ber. Currently this is the string Eterm-0.9.6.
1384
1385 %exec(command)
1386 Executes command and returns the result. Basically it's
1387 exactly like using backquotes.
1388
1389 %get(variable)
1390 Retrieve the value of a config file variable. Refer to the
1391 %put() function below.
1392
1393 %put(variable value)
1394 Create a config variable named variable and assign it the
1395 value of value. The value can then subsequently be retrieved
1396 using %get(variable)
1397
1398 %random(params)
1399 This function randomly chooses one of the words which compose
1400 params and returns that. The default themes that come with
1401 Eterm use this function to choose random backgrounds, but
1402 backgrounds aren't the only things that can be randomized
1403 with this function. You can randomize anything...colors,
1404 toggles, fonts, tinting, etc.
1405
1406 %version()
1407 Returns the version number. Currently this is the string
1408 0.9.6.
1409
1410
1411 PREPROCESSING
1412
1413 Eterm supports the %include file directive to allow for separa‐
1414 tion of the configuration information into multiple files.
1415 Eterm will load and parse file just like any other config file,
1416 but will treat its contents as if they replaced the directive
1417 itself.
1418
1419 You may also request that the config file be run through an
1420 external preprocessor (such as m4 or cpp) before Eterm reads it.
1421 This is done via the %preproc command directive. You may spec‐
1422 ify anything you like for command so long as it accepts input on
1423 STDIN and sends output to STDOUT. See the menus.cfg file in the
1424 default chooser theme for an example.
1425
1426
1427 SCRIPT FUNCTIONS
1428
1429 One of the action types which can be bound to keypresses, mouse
1430 buttons, menuitems, or buttonbar buttons is a script. The
1431 script must be a single word (i.e., containing no spaces or
1432 enclosed in quotes) and consists of one or more calls to the
1433 script functions below. Each call is separated from the next by
1434 a semicolon (;). Function parameters are enclosed in parenthe‐
1435 ses; the parentheses are optional if no parameters are to be
1436 passed. Commas and/or whitespace separate parameters from each
1437 other.
1438
1439 copy(buffer)
1440 Copies the current selection to the specified clipboard or
1441 cut buffer. buffer is either a number 0-7, in which case the
1442 selection is copied to the cut buffer specified, or one of
1443 the words clipboard, primary, or secondary (or any initial
1444 substring thereof), in which case the selection is copied to
1445 the specified clipboard. You may omit buffer, in which case
1446 the default buffer is primary (XA_PRIMARY in Xlib-speak).
1447
1448 echo(string)
1449 Send the specified string to the subcommand. Exactly equiva‐
1450 lent to the echo action.
1451
1452 es_display(cmd, params)
1453 Aliases: es_disp
1454 This is a master function which permits manipulation of
1455 Escreen displays through the use of a series of subcommands.
1456 The specified cmd determines what, if any, params are permit‐
1457 ted. Available subcommands are:
1458 goto - Switch to the specified display (0-9)
1459 prev - Switch to the previous display
1460 next - Switch to the next display
1461 toggle - Toggle display
1462 new - Create a new display. A name for the new display
1463 may be passed as a parameter, or ask to prompt the user
1464 for the name.
1465 rename - Change the name of the current display. A name
1466 for the new display may be passed as a parameter, or ask
1467 to prompt the user for the name.
1468 kill - Terminate the current (or specified) display.
1469 watch - Toggle monitoring of the current/specified dis‐
1470 play for activity.
1471 scrollback - View the scrollback for the current/speci‐
1472 fied display.
1473
1474 es_region(cmd, params)
1475 Aliases: es_reg es_win es_window
1476 This is a master function which permits manipulation of
1477 Escreen display regions through the use of a series of sub‐
1478 commands. The specified cmd determines what, if any, params
1479 are permitted. Available subcommands are:
1480 goto - Switch to the specified region (0-9)
1481 prev - Switch to the previous region
1482 next - Switch to the next region
1483 toggle - Toggle region
1484 new - Create a new region. A name for the new region
1485 may be passed as a parameter, or ask to prompt the user
1486 for the name.
1487 rename - Change the name of the current region. A name
1488 for the new region may be passed as a parameter, or ask
1489 to prompt the user for the name.
1490 kill - Terminate the current (or specified) region.
1491 only - Maximize the current/specified region to the full
1492 display.
1493 watch - Toggle monitoring of the current/specified
1494 region for activity.
1495 scrollback - View the scrollback for the current/speci‐
1496 fied region.
1497
1498 es_statement(statement)
1499 Execute an Escreen (screen/twin) command directly.
1500
1501 es_reset()
1502 Aliases: es_rst
1503 Reset the Escreen session
1504
1505 exec_dialog(command)
1506 The same as exec/spawn, but this function presents the user
1507 with a dialog box in which she can edit/confirm the command
1508 to be run and specify additional parameters if needed.
1509
1510 exit(message)
1511 exit(code)
1512 Aliases: die quit
1513 Exit Eterm with an optional message or an integer return
1514 code. Either parameter may be specified, but not both. If
1515 neither is specified, a code of 0 (zero) is the default.
1516
1517 kill(signal)
1518 Sends the specified signal to Eterm's primary child process
1519 (either your shell, or whatever you specify for Eterm to exe‐
1520 cute). For the time being, signal must be numeric. SIGTERM
1521 is the default if signal is omitted.
1522
1523 msgbox(message)
1524 Displays a small dialog box containing message and waits for
1525 a keypress before continuing.
1526
1527 nop()
1528 Does absolutely nothing except waste time. :-)
1529
1530 paste(buffer)
1531 Pastes the contents of the specified clipboard or cut buffer
1532 into the terminal window. buffer is either a number 0-7, in
1533 which case the selection is pasted from the cut buffer speci‐
1534 fied, or one of the words clipboard, primary, or secondary
1535 (or any initial substring thereof), in which case the con‐
1536 tents of the specified clipboard are pasted. You may omit
1537 buffer, in which case the default buffer is primary (XA_PRI‐
1538 MARY in Xlib-speak).
1539
1540 save(type, filename)
1541 Save the current theme/user configuration. type can be
1542 either user or theme; the default is user. filename is the
1543 file to which the settings should be saved. It may contain a
1544 path which is either absolute or relative to the theme direc‐
1545 tory. The default filename for user is user.cfg, and the
1546 default filename for theme is theme.cfg.
1547
1548 save_buff(filename)
1549 Dumps the contents of the scrollback buffer to the specified
1550 file.
1551
1552 scroll(n)
1553 Scrolls backward or forward in the scrollback buffer. n is a
1554 floating point number followed by an optional unit specifier.
1555 The unit specifier is one of: lines or l; pages or p; or buf‐
1556 fers or b. The floating point number may be separated from
1557 the unit specifier by whitespace or a comma, but it is not
1558 required. The floating point number should be positive to
1559 scroll down (forward) and negative to scroll up (backward).
1560 For example, the key sequence Shift-PgUp is equivalent to
1561 scroll(-1p). You may also specify fractional quantities,
1562 such as scroll(0.5p) to scroll down half a page. The default
1563 unit if not specified is lines.
1564
1565 search(str)
1566 Presents a dialog box into which the user may enter a search
1567 term. The default value is set to str. All occurances of
1568 the specified search string are highlighted in the scrollback
1569 buffer, and Eterm jumps back to the most recent one. Search‐
1570 ing again with the same keyword will clear the previous high‐
1571 lighting.
1572
1573 spawn(command)
1574 Aliases: exec
1575 Spawns a secondary child process to execute command, or Eterm
1576 if no value is passed.
1577
1578 string(string)
1579 The specified string is parsed via Eterm. This is exactly
1580 identical to the string action.
1581
1582
1583
1585 Escreen is a screen/twin interface layer which allows Eterm to interop‐
1586 erate with GNU screen and with Massimiliano Ghilardi's twin software.
1587 This allows Eterm to support multiple subshell sessions within a single
1588 window. On the surface, this feature works similarly to the "tabbed"
1589 sessions offered by programs like konsole and multi-gnome-terminal.
1590 However, Escreen has the advantage of being an interface to existing
1591 software, thus providing additional capabilities like multiple regions
1592 per display, detach/reattach capability, seamless remote session sup‐
1593 port, firewall support, and more.
1594
1595 Escreen support is still somewhat experimental and is thus not compiled
1596 into Eterm by default. To enable it, you must compile with --enable-
1597 escreen and/or --enable-etwin (depending on whether you have screen,
1598 twin, or both). If you installed from a package, you can use Eterm
1599 --version and check for either +ESCREEN (enabled) or -ESCREEN (dis‐
1600 abled).
1601
1602 For best results, if you wish to use Escreen mode, do so by invoking
1603 Eterm with the Escreen theme (Eterm -t Escreen). This theme supplies
1604 default key bindings, the basic Escreen menu, color definitions, etc.
1605 for use by the Escreen engine. Most importantly, it supplies the
1606 required url parameter in order to invoke Escreen mode.
1607
1608 Consult the README.Escreen file for more in-depth discussion of Escreen
1609 mode.
1610
1611
1613 Michael Jennings (mej@eterm.org)
1614
1615
1617 Eterm Home Page -- http://www.eterm.org/
1618 Author's Home Page -- http://www.kainx.org/
1619
1620
1621
1622X Version 11 28 January 2020 ETERM(1)