Eterm
SYNOPSIS
Eterm [options]
DESCRIPTION
Eterm -- version 0.9.1 -- is a color vt102 terminal emula-
tor 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 mini-
malism. 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 val-
ues, 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. Other-
wise 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 vari-
able is used.
--debug level
Show debugging output. level is an integer between
0 and 5 which determines how verbose the debugging
output is.
-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 man-
ager 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
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 over-
written 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 win-
dow 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 bot-
tom_right or br. Each corner specifier is then
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 per-
centages, and ops is a colon-delimited list of
operations: tiled (to tile the image), propscaled
(for proportional scaling). Note that these opera-
tions 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.
--menu-pixmap pic
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.enlighten-
ment.org/) as your window manager (or another com-
--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 por-
tions 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 speci-
fied 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 hexadeci-
mal 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 con-
trast, and both of these with gamma.
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 back-
grounds. 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.
--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.
-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. Dou-
ble-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 dou-
ble 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
est corner, and font-change resizes will cause the
Eterm window to gravitate toward that corner.
--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 scroll-
back 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
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 out-
put. This is useful for systems where syslog out-
put 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.
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, icon-
bars, 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
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 con-
tain 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/X11R6/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.1 is based on the concept of themes, it is
vital that you have a thorough understanding of the previ-
ous section before taking on this one. The previous sec-
tion 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 docu-
mentation 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 com-
posed 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 "con-
texts") 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.
ignored.)
The rest of this section will contain a step-by-step anal-
ysis of the config file, including what can go in each
section. Note that some attributes (and even entire con-
texts) 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 ear-
lier 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 new-
line.
COLOR CONTEXT
This context contains color specifications. With
the exception of the terminal colors 0-15, all col-
ors should be either a valid color name or an RGB
string as outlined in the X11(7) man page.
foreground color
Use color for the foreground (text) color.
background color
Use color for the background color.
cursor color
Use color for the cursor color.
cursor_text color
Use color for the cursor text color.
pointer color
Use color for the mouse pointer color.
video { normal | reverse }
normal will not reverse the foreground and back-
ground colors. reverse (meaning reverse video)
will.
these are dependent upon the cooperation of the
window manager.
geometry geom
Use the geometry string geom to specify the
startup geometry. geom should be in the format
WxH+X+Y where W is the width, H is the height,
and +X and +Y are the X and Y offsets. If the
signs on X and Y are positive, the coordinates
are offsets (in pixels) from the left and top,
respectively, of the screen. If the signs are
negative, the offsets are relative to the right
and bottom of the screen, respectively.
title title
Use title as the text in the title bar of the
Eterm window.
name name
Use name as the resource name of the Eterm win-
dow.
iconname name
Use name as the icon name of the Eterm window
icon.
desktop num
Start Eterm on desktop num. NOTE: This requires
a GNOME-compliant Window Manager. Please see
http://www.gnome.org/devel/gnomewm/ for more
information on the _WIN_WORKSPACE property and
how to support it.
scrollbar_type type
Use a scrollbar with the type style. type can
be any of motif, xterm, or next.
scrollbar_width num
Use a scrollbar that is num pixels wide.
font num font
font bold font
Set the numth font, or the bold font, to font.
font default num
Specifies that the numth font should be consid-
ered the "default" font.
font proportional boolean
Specifies that the font in use is proportional
and requests standard deviation-based character
cell spacing. Terminals must use fixed-width
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 speci-
fier is then followed by a color.
There are also several shortcuts for doing com-
mon 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.
icon filename
Use filename as the icon image for the Eterm
window. filename can be an absolute path, rela-
tive to the current theme, or relative to one of
the directories in the path attribute listed
below.
cache num
defines the delay, in seconds, between updates
of the background. This should be set to a rea-
sonable value to insure that Eterm doesn't spend
all its time rendering backgrounds. All the
images specify background images and have the
same syntax as the -P option above, including
the optional geometry string.
IMAGE CONTEXT
This context defines all the attributes of a par-
ticular image. There can be (and usually are) sev-
eral image contexts per theme, one for each class
of image.
type class
Specifies the type, or class, of the image that
is going to be defined in that context. This
MUST be the first attribute defined in the image
context. Valid classes are: background, trough,
anchor, up_arrow, down_arrow, left_arrow,
right_arrow, menu, menuitem, submenu, button,
and buttonbar. Note that the left and right
arrows, while valid, don't do anything just yet.
All the subsequent attributes up to the next
type definition will be applied to that image
class.
mode initial_mode [ allow allowed_modes ]
Specifies the initial mode for this image class
as well as the modes which the image class is
allowed to use. initial_mode is the mode that
the image will have on startup (unless overrid-
den by command-line options. allowed_modes is a
list of one or more modes. The image will be
prevented from switching to any mode not listed
in the allow section. If the allow section is
omitted entirely, the image will never be per-
mitted to change from the initial_mode. If no
mode line is specified for an image class, the
default is equivalent to mode solid allow solid.
Valid mode names are image (to use an image),
trans (for transparency), viewport (for viewport
mode), auto (for auto mode, which requires
Enlightenment 0.16 or better), and solid (which
is a solid color only).
state { normal | selected | clicked | disabled }
This sets the state of the image you are about
to define. Up until the next state attribute
that is encountered (or until you change types),
affect only the current state of the image class.
color fg bg
Sets the foreground and background colors for
this imageclass. The foreground color is used
for text, and the background color is used for
the object itself. If an invalid color is spec-
ified, the default value for fg is white, and
the default for bg is black.
file filename
Sets the filename from which to load the image
file. This is used for the image mode. If you
allow the image mode for your image, don't for-
get to supply an image file! Note that you can
also supply an image geometry string here by
adding an @ symbol and the geometry string to
the end of the filename. See below for the syn-
tax of the geometry string. filename must be an
absolute path or a path relative to one of the
directories in the path attribute. Note that
the image is verified and loaded when this
attribute is encountered during parsing.
geom image_geometry
Specifies the geometry and geometry-related
operations which are to be applied to the image.
This attribute only applies to image classes
using the image mode. Image geometry is speci-
fied as wxh+x+y:ops where w and h are the hori-
zontal/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 pro-
portional scaling). Note that these operations
can be combined for various effects.
cmod { image | red | green | blue } brightness [ con-
trast [ gamma ] ]
colormod { image | red | green | blue } brightness [
contrast [ gamma ] ]
Specifies a color modifier to apply to the
image. The second keyword determines whether
the modifier will be applied to the image over-
all, the red values, the green values, or the
blue values. Each of the three parameters 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
pixmap themes.
bevel { up | down } left right top bottom
Adds a bevel to an image class. This can be
done to any image class using the image or trans
modes. The parameters are pixel values which
represent the width of each edge of the bevel.
This is especially useful if you want to use
tiled images or transparency for the arrow or
anchor scrollbar widgets, or for menus.
padding left right top bottom
This is used only for the submenu image class.
It defines the amount of pixels on each side to
reserve so that the text will not overwrite part
of the image. Works just like the same option
in Enlightenment themes.
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).
title menu_title
This specifies the title for the menu to be
defined. This MUST be the first attribute given
after the "begin menu". The title must be
unique amongst all the menus. It may contain
spaces, but don't forget to enclose it in single
or double quotes if it does. Any future refer-
ences to the menu will use the title.
font font_name
Tells Eterm to use font_name as the font for
this menu. If not given, the default terminal
font is used.
sep or -
These symbols can be used as shorthand to insert
a separator into the menu.
MENUITEM CONTEXT
show what keystrokes correspond to a particular
menu item, like "C-x C-c" for the "Exit" menu-
item in an Emacs menu.
action { string | echo | submenu | script } param
action separator
Specifies the action to occur when the menuitem
is chosen. If you specify separator, nothing
else is needed. The other action types require
a parameter, param. string specifies a string
to be sent to Eterm for handling (escape codes,
for example). echo specifies a string to be
sent to the client program (for sending commands
to a shell, or keystrokes to an application like
emacs or mutt). If you use either of these
action types, param will be parsed for escape
codes (\a, C-, and the like) before being sent.
submenu specifies a submenu which should be dis-
played when this item is selected, and param is
the title of the submenu to show. The submenu
must have already been defined. The script
action type executes the Eterm-builtin script
contained in param. See the section below for
more details on the builtin Eterm functions
allowed for this action type.
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 but-
tons.
bind [ modifiers ] { keysym | button } to { string |
echo | menu | script } param
Binds a keysym or a mouse button to an action.
The action syntax follows the keyword to and is
identical to the syntax used for menus (see
above). There can be any number of modifiers
(so long as the combination is reasonable) but
only one keysym or button. Valid modifiers are
ctrl, shift, lock, mod1 through mod5, alt, meta,
and anymod (which allows any modifier). If none
are given, the keypress must not have modifier
keys in use or the action will not be triggered.
Use anymod to allow any arbitrary modifier key
to be used. The keysym can be given in text
(case-sensitive) or as a hex number. buttons
bar 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.
font font
Specifies the font in which button labels will
be displayed.
dock { top | bottom | no }
Specify whether or not to dock the buttonbar,
and if so, whether to dock it at the top or the
bottom of the Eterm window. Note that only top
and bottom are currently enabled.
visible boolean
Toggle whether or not this particular buttonbar
will be visible on startup.
button [ text ] [ icon filename ] action { string |
echo | menu | script } param
Binds an action to a button. The usage of param
and the action types work the same here as they
do for menuitems. Also note that you may spec-
ify some text or an icon or both, but you cannot
omit both.
MULTICHAR CONTEXT
Behavior for multi-byte fonts and encodings are
defined here. This context does not exist by
default.
encoding { eucj | sjis | euckr | big5 | gb |
iso-10646 }
Specifies the encoding method. Patches to sup-
port other encoding methods are encouraged.
font num font
font bold font
Set the numth multichar font, or the bold multi-
char font, to font.
XIM CONTEXT
This context controls locale-based behavior.
input_method input_method
ues are denoted by boolean. They all default to
false unless otherwise noted.
map_alert boolean
If true, Eterm will un-iconify itself when it
receives a beep (ASCII 0x07).
visual_bell boolean
If true, Eterm will flash rather than sending a
beep.
login_shell boolean
If true, Eterm will prepend '-' to the shell
name when calling it. Depending on your shell,
this may modify its startup behavior.
scrollbar boolean
This turns on and off the display of the scroll-
bar. Default is on.
utmp_logging boolean
If true, Eterm will attempt to make an entry in
the utmp file to record the login information.
Eterm may need to run privileged to do this.
meta8 boolean
Toggles the interpretation of the Meta key set-
ting the 8th bit in a character.
iconic boolean
If true, Eterm will launch as an icon.
home_on_output boolean
Zoom to the bottom of the scrollback buffer on
output.
home_on_input boolean
Zoom to the bottom of the scrollback buffer on
input.
no_input boolean
If true, Eterm will not accept any keyboard
input and will ask the window manager to not
allow it to be focused.
scrollbar_floating boolean
If true, the scrollbar will have no trough.
scrollbar_right boolean
If true, Eterm will put the scrollbar on the
right of the window (default is left).
dow, this causes Eterm to allocate an additional
pixmap the size of the terminal window into
which the background *and* the text are ren-
dered. 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 boolean
If true, Eterm will not display a text cursor.
pause boolean
After the child process terminates, Eterm will
wait for a keypress before exiting.
xterm_select boolean
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-click-
ing on the space between someone's first and
last names, or the @ sign in an e-mail address,
etc.
select_line boolean
If true, this attribute causes a triple-click to
select from the current word to the end of the
line. If off, a triple click selects the entire
line from beginning to end.
select_trailing_spaces boolean
If true, this attribute causes spaces at the end
of a line to be included as part of the selec-
tion text when selecting. The default is to
strip these trailing spaces.
report_as_keysyms boolean
Reports certain keystrokes as keysyms and modi-
fiers 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.
itrans boolean
immotile_trans boolean
Toggles the immotile transparency optimization
for transparent Eterm windows. Note that this
does NOT activate transparency; you must still
corner.
KEYBOARD CONTEXT
This context contains keyboard-related configura-
tion options.
smallfont_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).
bigfont_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).
keysym keysym string
Define keysym keysym to send string instead of
its default. keysym must be between 0xff00 and
0xffff or Eterm will complain.
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 boolean { iso | ibm }
Turn on/off greek keyboard support, and set
which greek mode to use.
app_keypad boolean
Turn on/off application keypad mode on startup.
app_cursor boolean
Turn on/off application cursor key mode on
startup.
MISC CONTEXT
This context contains miscellaneous attributes that
really didn't belong anywhere else.
Sets the minimum size, in pixels, of the scroll-
bar anchor (the part your mouse grabs onto and
moves around) to num.
border_width num
Sets the width of the border between the text
window and the X window to num.
line_space num
Put num pixels' worth of space between each row
of the terminal window.
finished_title title
Specifies that title should be displayed in the
title bar of a paused Eterm when the child pro-
cess has completed.
finished_text text
Specifies that text should be displayed in the
terminal window of a paused Eterm when the child
process has completed.
term_name name
Use name as the $TERM environment variable,
which controls which termcap/terminfo entry gets
used. The default is xterm.
exec command
Rather than executing a shell, this will cause
Eterm to spawn command as its child process.
You can only have one of these!
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.
%appname()
Returns the application name, a hyphen, and the
version number. Currently this is the string
able)
%random(params)
This function randomly chooses one of the words
which compose params and returns that. The
default themes that come with Eterm use this
function to choose random backgrounds, but back-
grounds aren't the only things that can be ran-
domized with this function. You can randomize
anything...colors, toggles, fonts, tinting, etc.
%version()
Returns the version number. Currently this is
the string 0.9.1.
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 direc-
tive 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 any-
thing 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 key-
presses, mouse buttons, menuitems, or buttonbar
buttons is a script. The script must be a single
word (i.e., 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.
copy(buffer)
Copies the current selection to the specified
clipboard or cut buffer. buffer is either a
number 0-7, in which case the selection is
kill(signal)
Sends the specified signal to Eterm's primary
child process (either your shell, or whatever
you specify for Eterm to execute). For the time
being, signal must be numeric. SIGTERM is the
default if signal is omitted.
nop()
Does absolutely nothing except waste time. :-)
paste(buffer)
Pastes the contents of the specified clipboard
or cut buffer into the terminal window. buffer
is either a number 0-7, in which case the selec-
tion is copied to the cut buffer specified, or
one of the words clipboard, primary, or sec-
ondary (or any initial substring thereof), in
which case the contents of the specified clip-
board are pasted. You may omit buffer, in which
case the default buffer is primary (XA_PRIMARY
in Xlib-speak).
save(type, filename)
Save the current theme/user configuration. type
can be either user or theme; the default is
user. filename is the file to which the set-
tings should be saved. It may contain a path
which is either absolute or relative to the
theme directory. The default filename for user
is user.cfg, and the default filename for theme
is theme.cfg.
scroll(n)
Scrolls backward or forward in the scrollback
buffer. n is a floating point number followed
by an optional unit specifier. The unit speci-
fier is one of: lines or l; pages or p; or
buffers or b. The floating point number may be
separated from the unit specifier by whitespace
or a comma, but it is not required. The float-
ing point number should be positive to scroll
down (forward) and negative to scroll up (back-
ward). For example, the key sequence Shift-PgUp
is equivalent to scroll(-1p). You may also
specify fractional quantities, such as
scroll(0.5p) to scroll down half a page. The
default unit if not specified is lines.
search(str)
Search the scrollback buffer for str and high-
light all occurances. If str is not specified,
URL(s)
Eterm Home Page -- http://www.eterm.org/
Author's Home Page -- http://www.kainx.org/
X Version 11 08 June 2002 ETERM(1)
Man(1) output converted with
man2html