table of contents
ETERM(1) | X Tools | ETERM(1) |
NAME¶
Eterm - the Enlightened terminal emulator for the X Window System
SYNOPSIS¶
Eterm [options]
DESCRIPTION¶
Eterm — version 0.9.6 — is a color vt102 terminal emulator intended as an xterm(1) replacement. It is designed with a Freedom of Choice philosophy, leaving as much power, flexibility, and freedom as possible in the hands of the user. It is designed to look good and work well, but takes a feature-rich approach rather than one of minimalism. Eterm uses Imlib for advanced graphic abilities. See below for details.
OPTIONS¶
The Eterm options are listed below. In keeping with the freedom-of-choice philosophy, options may be eliminated or default values chosen at compile-time, so options and defaults listed may not accurately reflect the version installed on your system.
Options that do not take a parameter (besides -h and --help) are boolean. If you use the POSIX (short) option, you are forcing the parameter to "true". If you use the long option, you can use any of the accepted boolean values, which are "yes", "on", "1", and "true" to turn the option on, or "no", "off", "0", or "false" to turn the option off. The same is true for boolean values in the configuration file.
- -t theme, --theme theme
- Load specified theme. Consult the FAQ for more details on what constitutes an Eterm theme.
- -X conffile, --config-file conffile
- Use an alternative user config file name. Otherwise Eterm uses the default, which is user.cfg. The theme config file is always theme.cfg.
- -d displayname, --display displayname
- Attempt to open a window on the named X display displayname. In the absence of this option, the display specified by the DISPLAY environment variable is used.
- --debug level
- Show debugging output. level is an integer between 0 and 5 which determines how verbose the debugging output is.
- --install
- Tells Eterm to install its own colormap rather than using the default one.
- -h, --help
- Print out a message describing available options.
- --version
- Print Eterm version and compile-time configuration.
- -r, --reverse-video
- Reverse video, swaps the foreground and background colors.
- -b color, --background-color color
- Set color as the background color. NOTE: this will actually be the foreground color if reverse video is also selected.
- -f color, --foreground-color color
- Set color as the foreground (text) color. NOTE: this will actually be the background color if reverse video is also selected.
- --color0 color
- ...
- --color15 color
- Use color as color X.
- --colorBD color
- Use color as the bold color.
- --colorUL color
- Use color as the underline color.
- --pointer-color color
- Use color as the pointer color.
- -c color, --cursor-color color
- Use color as the cursor color.
- --cursor-text-color color
- Use color as the cursor text color.
- -g geom, --geometry geom
- Window geometry as Width x Height+X coord+Y coord, i.e 100x200+0+100
- -i,--iconic
- Start in iconified state (only if the window manager supports iconification).
- -n name, --name name
- Sets name of current instance to name. This will affect the icon title and the window title string unless they are otherwise explicitly set.
- -T title, --title title
- Sets window's title text to title.
- --icon-name text
- Sets the icon title text to text.
- -B type, --scrollbar-type type
- Specifies the type scrollbar style should be used. type can be any of motif, xterm, or next.
- --scrollbar-width width
- Set the width of the scrollbar, in pixels, to width. Eterm does not impose any restrictions on this value, but it should be reasonable.
- -D desktop, --desktop desktop
- Starts the Eterm on the specified desktop. desktop should be an integer between 0 and your highest-numbered desktop. NOTE: You must have a GNOME-compliant window manager for this feature to work. Please see http://www.gnome.org/devel/gnomewm/ for more information on the _WIN_WORKSPACE property and how to support it.
- --line-space num
- Size of the extra gap, in pixels, to provide between lines in the terminal window.
- --bold-font font
- Sets the bold text font to font.
- -F font, --font font
- Sets the normal text font to font.
- --default-font-index num
- Specifies the index of the default (normal) text font.
- --font1 font
- ...
- --font4 font
- Sets the font at the specified index (1-4) to font.
- --proportional
- Specifies that the font in use is proportional and requests standard deviation-based character cell spacing. Terminals must use fixed-width character cells to maintain proper columnal alignment, even when proportionally-spaced fonts are in use. Some proportionally-spaced fonts vary greatly between the minimum and maximum character widths. This option chooses a character cell size which is up to two standard deviations above the average character width but will not exceed the maximum width of the largest glyph. Note that characters larger than the chosen cell width will overwrite (or be overwritten by) other characters and may tend to leave pixel droppings. This behavior is an expected side-effect of an imperfect scenario. If you object to this behavior, do not use this option.
- --font-fx effects
- Specifies the effects to apply to the terminal window font. The value of
effects is a single string containing a series of corner/color
pairs. These pairs define toward which corner a drop shadow of each
character should be made, and what color that shadow will be. The corner
is specified first using the following keywords: top_left or
tl, top_right or tr, bottom_left or bl,
and bottom_right or br. Each corner specifier is then
followed by a color.
There are also several shortcuts for doing common effects. You can get a single-color outline by using the keyword outline followed by a color. A single-color drop shadow is also available using the keyword shadow followed by an optional corner specifier (bottom_right being the default) and a color. For a 3-D embossed look, use emboss dark_color light_color. The opposite effect, a carved-out look, can be obtained with carved dark_color light_color. (Of course, with those last two, the 3-D look will only work if you choose the light and dark colors wisely.)
Finally, for no font effects at all, simply specify the keyword none.
The default value is bottom_right black which yields a black drop shadow, greatly improving the visibility of lightly-colored fonts on top of light spots in a background image. Note that font effects are not active in solid color mode.
- -P pic, --background-pixmap pic
- Use pic as the background image. pic can be in any format that Imlib understands. Currently this means just about anything, including JPG, PNG, GIF, TIFF, PPM, etc. The image is tiled by default. To specify alternate geometry, follow the filename with an @ sign and the geometry string. Image geometry is specified as @wxh+x+y:ops where w and h are the horizontal/vertical scaling percentages, x and y are the horizontal/vertical alignment percentages, and ops is a colon-delimited list of operations: tiled (to tile the image), propscaled (for proportional scaling). Note that these operations can be combined for various effects.
- -I pic, --icon pic
- Sets the icon pixmap file to pic. Works similarly to the -P option above.
- --up-arrow-pixmap pic
- As above, except the scrollbar's up-arrow is set.
- --down-arrow-pixmap pic
- As above, except the scrollbar's down-arrow is set.
- --trough-pixmap pic
- As above, except the scrollbar's background (trough) is set.
- --anchor-pixmap pic
- As above, except the scrollbar's anchor image is set.
- As above, except the menu background image is set.
- -O, --trans
- This gives a pseudo-transparent Eterm. The image is taken directly from the root window, so any requests for changing the pixmap are ignored. If you do not use Enlightenment (http://www.enlightenment.org/) as your window manager (or another compliant window manager...I have been told that WindowMaker works also), you will need to use the Esetroot program (found in the utils/ directory) to set your root background image.
- -0, --itrans
- Activate the immotile transparency optimization for transparent Eterm windows. Note that this does NOT activate transparency; you must still include the -O or --trans option. This option should be used on transparent windows which are shaded or tinted and which do not move around on the desktop much. See the Mon Mar 6 21:11:13 PST 2000 ChangeLog entry for a more detailed explanation.
- --viewport-mode
- This activates a special Eterm mode which is hard to describe in words. Basically, imagine the effect you get with pseudo-transparency, where the desktop background moves through the Eterm window as you move the window, so that it always aligns with the desktop image. Now, imagine the same effect, but the image used isn't the desktop image but any pixmap you choose. The image is scaled or tiled up to the size of the desktop, and dragging the Eterm around the screen reveals different portions of the image as you move, much like a small viewport window in a ship or submarine does. The effect is especially keen if you open several Eterms in this mode with the same image.
- --shade percentage
- Shade the background image/transparency by a specified percentage.
- --tint mask
- --tint color
- Tints the background pixmap (either an image file or the transparent
portion can be shaded). The mask is an integer, usually specified
in hexadecimal in the form 0xRRGGBB, where RR,
GG, and BB are hexadecimal numbers between 00 and
ff (0 and 255 decimal) which represent the brightness
of the image's red, green, and blue values, respectively. A value of
00 will mask that color out entirely, while a value of ff
will not change that color at all.
You may also specify an X color such as grey75 or MidnightBlue or #babb7f instead of a mask.
- --cmod brightness [ contrast [ gamma ] ]
- Specifies a color modifier to apply to the image overall. Each of the three values is a number greater than or equal to 0. The numbers can be specified as decimal, octal (if preceded by "0"), or hexadecimal (if preceded by "0x"). A value of 256 (0x100) represents 100%, or "leave that value unchanged." 0 represents 0%, 512 (0x200) is 200%, etc. However, be aware that overflow can occur with excessively high values. Only the brightness value is required for this option. Keep in mind, though, that you must specify brightness with contrast, and both of these with gamma.
- --cmod-red brightness [ contrast [ gamma ] ]
- Same as above, except that the modifier applies to the red values of the image.
- --cmod-green brightness [ contrast [ gamma ] ]
- Same as above, except that the modifier applies to the green values of the image.
- --cmod-blue brightness [ contrast [ gamma ] ]
- Same as above, except that the modifier applies to the blue values of the image.
- -p newpath, --path newpath
- Sets the pic search path. When the --background-pixmap or other pixmap options are used, this path will be used to find the image.
- --cache size
- Specify the size in bytes for the Imlib2 cache.
- -N list, --anim list
- Specifies an animation list to be use in cycling the background pixmap. The list consists of two or more words. The first word defines the delay, in seconds, between updates of the background. This should be set to a reasonable value to insure that Eterm doesn't spend all its time rendering backgrounds. All remaining words specify background images and have the same syntax as the -P option above, including the optional geometry string.
- -M font, --mfont font
- Sets the normal multibyte text font to font.
- --mfont1 font
- ...
- --mfont4 font
- Sets multibyte font X to font.
- --mencoding encoding
- Sets multichar encoding mode (eucj or sjis or euckr)
- --input-method method
- Sets XIM input method
- --preedit-type type
- Sets XIM preedit type
- -l, --login-shell
- Makes the new shell a login shell.
- -s, --scrollbar
- Enables the scrollbar. (Default)
- -u, --utmp-logging
- Tries to enable proper utmp logging. For this to work, Eterm probably needs to run setuid or setgid, usually setuid root.
- -v, --visual-bell
- Enables the "visual bell". Means the window will flash or blink rather than beep.
- -H, --home-on-output
- Jump to bottom on output.
- --home-on-input
- Jump to bottom on input.
- -q, --no-input
- Keeps Eterm from accepting keyboard input, and keeps the window manager from focusing it. Useful for log tailers and such.
- --scrollbar-right
- Display scrollbar on the right hand side.
- --scrollbar-floating
- Display the scrollbar without a trough.
- --scrollbar-popup
- Display the scrollbar only when the Eterm window is focused.
- -x, --borderless
- This option forces Eterm to have no borders.
- -S, --sticky
- Start Eterm as a sticky window (shows on all desktops)
- -m, --map-alert
- Un-iconify on beep.
- -8, --meta8
- Causes the Meta key to set the 8th bit in the char.
- --double-buffer
- Rather than drawing text directly onto the window, this option causes Eterm to allocate an additional pixmap the size of the terminal window into which the background *and* the text are rendered. This pixmap is then set as the window background. Double-buffering uses additional memory in the X server, but it allows Eterm to ignore expose events so redraws are faster.
- --no-cursor
- Disables the text cursor.
- --pause
- After the child process terminates, Eterm will wait for a keypress before exiting.
- --xterm-select
- Duplicate's xterm's treatment of cutchars. The only real difference is what happens when you double click on a single cutchar between two words. If this option is on, only that single character gets selected. If it is off, that character is selected along with the two words. The latter behavior is useful for double-clicking on the space between someone's first and last names, or the @ sign in an e-mail address, etc.
- --select-line
- If activated, this option causes a triple click to select the entire line from beginning to end. If off, a triple-click selects just from the current word to the end of the line.
- --select-trailing-spaces
- Determines whether or not trailing spaces in a selection are maintained (on) or discarded (off).
- --report-as-keysyms
- Reports certain keystrokes as keysyms and modifiers rather than escape sequences. NOTE: This option is intended for use only with programs that support this special Eterm mode. Do not enable it unless you are executing a program which uses this mode.
- Toggle the display of all buttonbars.
- --resize-gravity
- If true, Eterm will automatically detect the nearest corner, and font-change resizes will cause the Eterm window to gravitate toward that corner.
- --overstrike-bold
- If true (default), Eterm will simulate a bold font by printing each character twice, offsetting the second pass by one pixel. This makes the characters seem thicker without the need for a special font. You may wish to disable this if you use a specific color for bold.
- --bold-brightens-foreground
- If true (default), Eterm will use the "bold" ANSI color attribute to brighten the foreground color by using the high-intensity colors (8 through 15) rather than the low-intensity colors (0 through 7). Note that having a specific color selected for bold will override this.
- --blink-brightens-background
- If true (default), Eterm will use the "blink" ANSI color attribute to brighten the background color by using the high-intensity colors (8 through 15) rather than the low-intensity colors (0 through 7).
- --colors-suppress-bold
- If true (default), any colored text (that is, any text not rendered using the default foreground color) will not be given any other special treatment for bolding (e.g., bold font or bold overstrike).
- --big-font-key keysym
- Specify a keysym to increase the font size. Default is Shift and the + key on the keypad. Ctrl-> or Meta-> may also work (if you #define one of the hotkeys in src/feature.h).
- --small-font-key keysym
- Specify a keysym to decrease the font size. Default is Shift and the - key on the keypad. Ctrl-< or Meta-< may also work (if you #define one of the hotkeys in src/feature.h).
- --meta-mod num
- Specify which X modifier (1-5) to treat as the Meta key. See xmodmap(1) and the output of xmodmap -pm for more details.
- --alt-mod num
- Same as --meta-mod, but for the Alt key.
- --numlock-mod num
- Same as --meta-mod, but for the NumLock key.
- --greek-keyboard mode
- Use Greek keyboard mapping (iso or ibm).
- --app-keypad
- Start Eterm in application keypad mode (as opposed to normal keypad mode).
- --app-cursor
- Start Eterm in application cursor key mode (as opposed to normal cursor key mode).
- -L num, --save-lines num
- Set the number of lines in the scrollback buffer to num.
- -a size, --min-anchor-size size
- Specifies the minimum size, in pixels high, of the scrollbar anchor. NOTE: This causes abnormal scrolling behavior when combined with large scrollback buffers!
- -w width, --border-width width
- Set the window's border width to width. The border this controls is the gap between the edge of the X window and the edge of the terminal window; this has nothing to do with the window border's your window manager supplies.
- --print-pipe pipe
- The pipe for the PrintScreen function.
- --cut-chars separators
- The separators for double-click selection.
- --finished-title title
- Specifies the string Eterm should add to its title bar if --pause is specified and the child process completes.
- --finished-text text
- Same as above, but displays text in the terminal window.
- --term-name TERM
- Use TERM for the value $TERM.
- --pipe-name pipe
- Specifies a named pipe from which to display output. This is useful for systems where syslog output goes to a named pipe, like /dev/xconsole on Debian.
- -a line, --attribute line
- This option is used to pass config file attributes on the command line. line should be a single string, so you will almost certainly have to quote it. The first word of line must be the context (see config file section below) which should parse the rest of the line. So, for example, you could specify the foreground color like so: -a 'color foreground blue'. Or you could add a binding: -a 'actions bind anymod button1 to script exit'. Note that this option may only be used with config file attributes that are not context-sensitive; i.e., menus and imageclasses cannot be specified using this option.
- -C, --console
- Grab console messages. Depending on your system, Eterm may need to be setuid root to do this.
- -e command, --exec command
- Execute command rather than a shell. Forces Eterm mode.
- -U URL, --url URL
- Pick up a "screen" session at URL rather than a local (-U "") one. URLs look like so (screen://user@host.dom:port/screen_options), with all parts optional, defaulting to "screen://current_user@localhost:22/-RDD". Forces Escreen mode, overrides --exec. Note that only screen-options (see "man screen") are allowed; do not pass a command (with or without arguments) here: to pass a command to the screen-session, use screen [<options>] <command> [<args>] instead.
- -Z lclport:fw:fwport,delay, --fw lclport:fw:fwport,delay
- The URL given to -U is in an intranet behind firewall fw so we'll build an SSH-tunnel to that firewall (to port 22/SSH, or fwport if given) from our local machine (using any available port-number, or lclport if given). Then, after delay seconds (or a sensible default if not given), we will try to open a screen session on the host behind the firewall using ssh -p localport ... localhost screen cf. ssh -L
THEMES¶
Eterm is built on the philosophy of Freedom of Choice. Each user should be able to choose the environment in which he or she wishes to exist, and the tools used should support that. In accordance with that philosophy, Eterm is extremely configurable. Eterm supports a concept called "themes," which should be familiar to users of Enlightenment, icewm, or Microsoft Windows 95/98/NT. The general concept of a theme is a collection of resources that change as many aspects of a programs look and feel as possible. For example, an Enlightenment theme allows you to customize menus, window borders, desktops, icons, iconbars, and everything else about how E looks and feels.
An Eterm theme consists of a primary configuration file, always called "theme.cfg", residing in a directory bearing the same name as the theme. This directory must be a child of one of the directories specified by CONFIG_SEARCH_PATH in src/feature.h. The theme may also contain additional configuration files referenced by the primary theme.cfg file, as well as pixmaps, menu files, documentation, etc., which are allowable as extensions to the minimum requirement of an Eterm theme.
By convention and default, Eterm themes should be stored under ~/.Eterm/themes/<theme_name>/ or /usr/share/Eterm/themes/<theme_name>.
Eterm now supports the existence of a user configuration file as a supplement to the theme configuration file. The default name for this file is user.cfg, and it follows the exact same syntax as any other configuration file. It is searched for using the same algorithm used for the theme.cfg file, and any settings in the user.cfg will override any previous values for those settings defined by the theme. Thus, it is recommended that any user.cfg files not be complete config files, but rather only contain those values which the user wishes to explicitly override.
NOTE: If you have a user.cfg file in the Eterm theme directory or in ~/.Eterm/, it will override any previous settings, even if you are running a different theme. For example, if you run the trans theme, but ~/.Eterm/themes/Eterm/user.cfg has a mode line which sets the image mode to "image" rather than "trans," you will not get transparency. This is why user.cfg files should be kept small and only override settings that you know you want to enforce. If, on the other hand, you were running the trans theme and had a user.cfg file in the trans theme (or in ~/.Eterm/themes/trans/), that user.cfg would be found before the one in the Eterm theme.
Almost all command line options can be enabled/disabled in the theme's configuration file (the default is /usr/share/Eterm/themes/Eterm/theme.cfg). The next section contains details on the format and usage of the configuration file.
CONFIGURATION¶
Since Eterm 0.9.6 is based on the concept of themes, it is vital that you have a thorough understanding of the previous section before taking on this one. The previous section and this one were written by the same person who wrote the Eterm code which handles options, config files, and themes, so it's probably the most authoritative documentation on the subject you're going to find.
From here on out, I will assume you've read the above text and know how to change the default value for the theme. It is highly recommended that you have a copy of the Eterm theme config file that comes with Eterm handy while you read this documentation.
Okay, first the general idea. The theme.cfg file is composed of comments and non-comments. Comments begin with a pound sign and continue to the end of the line. Lines of whitespace are also ignored. The rest of the file is the config stuff, which is divided into sections (called "contexts") and variables (called "attributes"). There are several contexts which are listed below in sections. Each attribute must be inside a certain context to be valid. For instance, while the "foreground" attribute is perfectly acceptable in the color context, it would be rejected if found in, say, the toggles context. This allows for better organization of the config file as well as for multiple contexts to have attributes of the same name (like the scrollbar attributes in the color and toggles section).
Each context must be enclosed in a begin...end pair that specifies the type of section. The statement "begin toggles" starts the toggles context, and the next "end" statement would terminate it. (You'll notice that some "end" statements have the context name after them. This is for readability only; any text after the word "end" is ignored.)
The rest of this section will contain a step-by-step analysis of the config file, including what can go in each section. Note that some attributes (and even entire contexts) may not be available depending on what support was compiled into Eterm by the person who built it.
- MAGIC NUMBER
-
The first line of the config file must contain a "magic number" type line that lets Eterm verify that it's reading an Eterm config file and not something else (like an Enlightenment 0.13 and earlier config file). The line should look like this:
<Eterm-VERSION>
where VERSION is the Eterm version for which the config file is intended. For example, config files written for Eterm 0.9 should have "<Eterm-0.9>" as their first line, followed immediately by a newline.
- COLOR CONTEXT
-
This context contains color specifications. With the exception of the terminal colors 0-15, all colors should be either a valid color name or an RGB string as outlined in the X11(7) man page.
background color
cursor color
cursor_text color
pointer color
video { normal | reverse }
color num color
color { bd | ul } color
- ATTRIBUTES CONTEXT
-
This context contains X11 attributes. Most of these are dependent upon the cooperation of the window manager.
title title
name name
iconname name
desktop num
scrollbar_type type
scrollbar_width num
font num font
font bold font
font default num
font proportional boolean
font fx effects
There are also several shortcuts for doing common effects. You can get a single-color outline by using the keyword outline followed by a color. A single-color drop shadow is also available using the keyword shadow followed by an optional corner specifier (bottom_right being the default) and a color. For a 3-D embossed look, use emboss dark_color light_color. The opposite effect, a carved-out look, can be obtained with carved dark_color light_color. (Of course, with those last two, the 3-D look will only work if you choose the light and dark colors wisely.)
Finally, for no font effects at all, simply specify the keyword none.
The default value is bottom_right black which yields a black drop shadow, greatly improving the visibility of lightly-colored fonts on top of light spots in a background image. Note that font effects are not active in solid color mode.
- IMAGECLASSES CONTEXT
-
This context contains global image attributes. It also provides the parent context for defining images via the "image" context.
cache num
path directory_list
anim interval images ...
- IMAGE CONTEXT
-
This context defines all the attributes of a particular image. There can be (and usually are) several image contexts per theme, one for each class of image.
The above attributes affect the image class as a whole. All remaining attributes in this context affect only the current state of the image class.
colormod { image | red | green | blue } brightness [ contrast [ gamma ] ]
- MENU CONTEXT
-
This context is used to create a menu. There is one instance of this context per menu, and the menus should be defined in submenu-menu order; i.e., any menu that refers to another menu (as its submenu) should be defined after the submenu is defined. Within the menu context, there should be a menuitem subcontext for each menu item (with the exception of the shorthand for separators).
- MENUITEM CONTEXT
-
This is a subcontext of the menu context which creates a single item for a menu. There can be (and usually are) several menuitem contexts per menu.
action separator
- ACTION CONTEXT
-
Actions are key or mouse button bindings which activate certain behaviors. Any action that can be triggered through an escape code can be bound to a key or mouse button, with or without modifiers. You can also bind menus to keystrokes or mouse buttons.
- BUTTON_BAR CONTEXT
-
The buttonbar is an addition to Eterm 0.9.1 which allows users to have a fully-customizeable buttonbar at the top or bottom of each terminal window. Buttons on the buttonbar can be used just like menuitems; they can popup menus (like a menubar), or they can activate any other action a menuitem can.
dock { top | bottom | no }
visible boolean
button [ text ] [ icon filename ] action { string | echo | menu | script } param
- MULTICHAR CONTEXT
-
Behavior for multi-byte fonts and encodings are defined here. This context does not exist by default.
- XIM CONTEXT
-
This context controls locale-based behavior.
- ESCREEN CONTEXT
-
This context allows for customizations specific to Escreen mode. See the Escreen section below for more details.
Any params that are given are passed directly to the underlying protocol and are separated from each other by a plus sign (+).
- TOGGLES CONTEXT
-
This context contains boolean variables which can be toggled on or off. Valid values for the attributes in this section are "yes", "on", "1", and "true" to turn the option on, or "no", "off", "0", or "false" to turn the option off. These values are denoted by boolean. They all default to false unless otherwise noted.
visual_bell boolean
login_shell boolean
scrollbar boolean
utmp_logging boolean
meta8 boolean
iconic boolean
home_on_output boolean
home_on_input boolean
no_input boolean
scrollbar_floating boolean
scrollbar_right boolean
scrollbar_popup boolean
borderless boolean
double_buffer boolean
no_cursor boolean
pause boolean
xterm_select boolean
select_line boolean
select_trailing_spaces boolean
report_as_keysyms boolean
itrans boolean
immotile_trans boolean
buttonbar boolean
resize_gravity boolean
overstrike_bold boolean
bold_brightens_foreground boolean
blink_brightens_background boolean
colors_suppress_bold boolean
sticky boolean
- KEYBOARD CONTEXT
-
This context contains keyboard-related configuration options.
bigfont_key keysym
keysym keysym string
meta_mod num
alt_mod num
numlock_mod num
greek boolean { iso | ibm }
app_keypad boolean
app_cursor boolean
- MISC CONTEXT
-
This context contains miscellaneous attributes that really didn't belong anywhere else.
save_lines num
cut_chars string
min_anchor_size num
border_width num
line_space num
finished_title title
finished_text text
term_name name
exec command
- BUILT-IN FUNCTIONS
-
Eterm has a set of built-in functions which are available in config files. Each one accepts zero or more parameters and outputs a series of zero or more words. "Words" are defined in shell terms; i.e., words are separated by whitespace, and single or double quotes can be used to encapsulate words which contain whitespace themselves. You also employ backquotes to execute a command whose output can become part of the config file itself or can be passed to a built-in function as its parameter list. Built-in functions and backquotes may be used anywhere their output would be valid. Built-in functions are prefixed with the % character.
%exec(command)
%get(variable)
%put(variable value)
%random(params)
%version()
- PREPROCESSING
-
Eterm supports the %include file directive to allow for separation of the configuration information into multiple files. Eterm will load and parse file just like any other config file, but will treat its contents as if they replaced the directive itself.
You may also request that the config file be run through an external preprocessor (such as m4 or cpp) before Eterm reads it. This is done via the %preproc command directive. You may specify anything you like for command so long as it accepts input on STDIN and sends output to STDOUT. See the menus.cfg file in the default chooser theme for an example.
- SCRIPT FUNCTIONS
-
One of the action types which can be bound to keypresses, mouse buttons, menuitems, or buttonbar buttons is a script. The script must be a single word (i.e., containing no spaces or enclosed in quotes) and consists of one or more calls to the script functions below. Each call is separated from the next by a semicolon (;). Function parameters are enclosed in parentheses; the parentheses are optional if no parameters are to be passed. Commas and/or whitespace separate parameters from each other.
echo(string)
es_display(cmd, params)
Aliases: es_disp
prev - Switch to the previous display
next - Switch to the next display
toggle - Toggle display
new - Create a new display. A name for the new display may be passed as a parameter, or ask to prompt the user for the name.
rename - Change the name of the current display. A name for the new display may be passed as a parameter, or ask to prompt the user for the name.
kill - Terminate the current (or specified) display.
watch - Toggle monitoring of the current/specified display for activity.
scrollback - View the scrollback for the current/specified display.
es_region(cmd, params)
Aliases: es_reg es_win es_window
prev - Switch to the previous region
next - Switch to the next region
toggle - Toggle region
new - Create a new region. A name for the new region may be passed as a parameter, or ask to prompt the user for the name.
rename - Change the name of the current region. A name for the new region may be passed as a parameter, or ask to prompt the user for the name.
kill - Terminate the current (or specified) region.
only - Maximize the current/specified region to the full display.
watch - Toggle monitoring of the current/specified region for activity.
scrollback - View the scrollback for the current/specified region.
es_statement(statement)
es_reset()
Aliases: es_rst
exec_dialog(command)
exit(message)
exit(code)
Aliases: die quit
kill(signal)
msgbox(message)
nop()
paste(buffer)
save(type, filename)
save_buff(filename)
scroll(n)
search(str)
spawn(command)
Aliases: exec
string(string)
ESCREEN¶
Escreen is a screen/twin interface layer which allows Eterm to interoperate with GNU screen and with Massimiliano Ghilardi's twin software. This allows Eterm to support multiple subshell sessions within a single window. On the surface, this feature works similarly to the "tabbed" sessions offered by programs like konsole and multi-gnome-terminal. However, Escreen has the advantage of being an interface to existing software, thus providing additional capabilities like multiple regions per display, detach/reattach capability, seamless remote session support, firewall support, and more.
Escreen support is still somewhat experimental and is thus not compiled into Eterm by default. To enable it, you must compile with --enable-escreen and/or --enable-etwin (depending on whether you have screen, twin, or both). If you installed from a package, you can use Eterm --version and check for either +ESCREEN (enabled) or -ESCREEN (disabled).
For best results, if you wish to use Escreen mode, do so by invoking Eterm with the Escreen theme (Eterm -t Escreen). This theme supplies default key bindings, the basic Escreen menu, color definitions, etc. for use by the Escreen engine. Most importantly, it supplies the required url parameter in order to invoke Escreen mode.
Consult the README.Escreen file for more in-depth discussion of Escreen mode.
AUTHORS¶
Michael Jennings (mej@eterm.org)
URL(s)¶
Eterm Home Page -- http://www.eterm.org/
Author's Home Page -- http://www.kainx.org/
17 August 2008 | X Version 11 |