Eterm
Eterm - the Enlightened terminal emulator for the X Window
System
SYNOPSIS
Eterm [options]
DESCRIPTION
Eterm -- version 0.9 -- 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, flex-
ibility, 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 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
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.
--menu-color color
Use color as the menu color (only makes sense if
menu is enabled).
--menu-text-color color
Use color as the menu text color (only makes sense
if menu is enabled).
-S color, --scrollbar-color color
Use color as the scrollbar color (only makes sense
if scrollbar is enabled).
--unfocused-menu-color color
Use color as the menu color when window does not
have focus (only makes sense if scrollbar is
enabled).
Use color as the scrollbar color when window does
not have focus (only makes sense if scrollbar is
enabled).
--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
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-com-
pliant 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
Sets the bold text font to font.
-F font, --font font
Sets the normal text font to font.
--font1 font
...
--font4 font
Sets font X to font.
-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), scaled (for
horizontal and vertical scaling), hscaled (for hor-
izontal scaling), vscaled (for vertical scaling),
and propscaled (for proportional scaling). Note
that some of 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.
--menu-pixmap pic
As above, except the menu background image is set.
-O, --trans
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-
pliant window manager...I have been told that Win-
dowMaker works also), you will need to use the
Esetroot program (found in the utils/ directory) to
set your root background image.
--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.
--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.
--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-
-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 have the same syntax
as the background attribute in a configuration file
(two integers followed by the image filename),
except that the two integers are optional. If they
are specified, remember to group them with the
filename using quotes. The following are both
valid:
Eterm -N '10 image1.jpg image2.jpg'
Eterm -N '10 "0 0 image1.jpg" "-1 -1
image2.jpg"'
-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
Jump to bottom on output.
--home-on-input
Jump to bottom on input.
-E, --home-on-refresh
Jump to bottom on refresh (^L)
--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.
-m, --map-alert
Un-iconify on beep.
-8, --meta8
Causes the Meta key to set the 8th bit in the char.
--backing-store
If supported by the X server, tries to use backing
store for faster refreshes.
--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
--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.
--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
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
window manager supplies.
--print-pipe pipe
The pipe for the PrintScreen function.
--cut-chars separators
The seperators for double-click selection.
--term-name TERM
Use TERM for the value $TERM.
-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 wishes to exist, and the tools he uses 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
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 require-
ment of an Eterm theme.
By convention and default, Eterm themes should be stored
under ~/.Eterm/themes/<theme_name>/ or
file as a suppliment 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 con-
tain those values which the user wishes to 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 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
fectly 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 tog-
gles section).
Each context must be enclosed in a begin...end pair that
specifies the type of section. The statement "begin tog-
gles" 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 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.
MAIN CONTEXT
There are very few things that are valid within the
"main" context. In fact, the only non-comment
lines allowed in the main context are begin's and
end's for other contexts. Each context can have
any number of subcontexts, but only a few actually
have any. Valid subcontexts for main are color,
attributes, imageclasses, menu, actions, multichar,
xim, toggles, keyboard, and misc. They can appear
in any order. The order I list them here is simply
the order in which they appear in the default
themes, which was arbitrarily chosen for continu-
ity. So that you can follow along easily, I'll
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.
menu color
Use color for the menu color.
unfocused_menu color
Use color for the unfocused menu color.
menu_text color
Use color for the menu text color.
scrollbar color
Use color for the scrollbar color.
unfocused_scrollbar color
Use color for the scrollbar color if Eterm is
unfocused.
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.
color num color
Set terminal color num (0-15) to the color name,
string, or set of 3 decimal/hex/octal RGB values
specified by color.
color { bd | ul } color
Set terminal bold (bd) or underline (ul) color
to the color name, string, or set of 3 deci-
mal/hex/octal RGB values specified by color.
This context contains X11 attributes. Most of
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 (0-4), or the bold font, to
font.
IMAGECLASSES CONTEXT
This context contains global image attributes. It
also provides the parent context for defining
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
above.
path directory_list
Specifies a colon-delimited list of directories
relative to which Eterm should search for image
and menu files. The syntax for directory_list
is precisely the same as that of the $PATH envi-
ronment variable in UNIX shells.
anim interval images ...
Specifies an animation list to be use in cycling
the background pixmap. interval defines the
delay, in seconds, between updates of the back-
ground. This should be set to a reasonable
value to insure that Eterm doesn't spend all its
time rendering backgrounds. All remaining words
have the same syntax as the background attribute
in a configuration file (two integers followed
by the image filename), except that the two
integers are optional. If they are specified,
remember to group them with the filename using
quotes. The following are both valid:
anim 10 image1.jpg image2.jpg
anim 10 "0 0 image1.jpg" "-1 -1 image2.jpg"
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, and submenu. 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
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 }
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),
all attributes will apply to that particular
state of the image. You should at minimum
define the normal state of the image. It will
be used as the default if the attributes for the
selected and/or clicked states are not speci-
fied. However, each image state has self-con-
tained options. Therefore, if you define multi-
ple states for an image class, you must define
ALL attributes needed by that state. The sample
themes supplied with Eterm demonstrate how to
define 1-, 2-, and 3-state images.
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.
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
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), scaled (for horizon-
tal and vertical scaling), hscaled (for horizon-
tal scaling), vscaled (for vertical scaling),
and propscaled (for proportional scaling). Note
that some of 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
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.
border left right top bottom
Specifies that the image has borders which
should not be scaled with the rest of the image.
This is primarily used for images that have a
beveled look, so that the bevel will not end up
getting scaled and lose the bevel effect. All
four parameter values are in pixels, just like
the equivalent options for E themes and Gtk+
pixmap themes.
bevel 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.
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
This is a subcontext of the menu context which cre-
ates a single item for a menu. There can be (and
usually are) several menuitem contexts per menu.
text label
This is the text that is displayed for this
menuitem. It is left-justified in the menu win-
dow. It can have spaces, but enclose label in
quotes if it does.
rtext label
This is text which is right-justified next to
menu item, like "C-x C-c" for the "Exit" menu-
item in an Emacs menu.
action { string | echo | submenu } 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. param is the
title of the submenu to show. The submenu must
have already been defined.
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 } 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
but only one keysym or button. Valid modifiers
are ctrl, shift, lock, mod1 through mod5, alt
and meta (which are equivalent to mod1), 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 should
be specified as button1 through button5.
MULTICHAR CONTEXT
defined here. This context does not exist by
default.
encoding { eucj | sjis | euckr }
Specifies the encoding method. Patches to sup-
port other encoding methods are encouraged.
font num font
font bold font
Set the numth multichar font (0-4), or the bold
multichar font, to font.
XIM CONTEXT
This context controls locale-based behavior. It,
too, does not exist by default.
input_method input_method
Specify your input method program of choice.
preedit_type { OverTheSpot | OffTheSpot | Root }
Specify your preedit type of choice.
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 val-
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-
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_echo 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.
home_on_refresh boolean
Zoom to the bottom of the scrollback buffer on
refresh (Ctrl-L).
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).
scrollbar_popup boolean
If true, Eterm will hide the scrollbar when the
Eterm window loses focus and restore it when
focus is regained. Default is to not change the
scrollbar state based on focus.
borderless boolean
If true, Eterm will run with no window borders.
This also means that the window can not be moved
or resized. You will want to specify a geometry
with this attribute.
backing_store boolean
If true, Eterm will use a backing store.
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.
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.
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
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.
print_pipe command
Set the command to which to pipe print requests
(printscreen) to command.
save_lines num
Set the number of lines in the scrollback buffer
to num.
cut_chars string
Define the characters used as word delimiters to
the characters contained in string.
min_anchor_size num
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.
term_name name
Use name as the $TERM environment variable,
which controls which termcap/terminfo entry gets
used. The default is xterm.
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. They can be used any-
where their output would be valid. Built-in func-
tions are prefixed with the % character.
%random(params)
This function randomly chooses one of the words
which compose params and returns that. "Words"
are defined in shell terms, meaning that single
or double quotes can be used to separate indi-
vidual words of params which contain spaces.
And you can even get creative and use a back-
quote-executed command to generate the list of
words to pass to %random(). The default themes
that come with Eterm demonstrate this technique,
in fact. But keep in mind that random pixmaps
aren't the only thing you can do with this func-
tion. You can randomize anything...colors, tog-
gles, fonts, tinting...you name it!
%exec(command)
Executes command and returns the result. Basi-
cally it's exactly like using backquotes.
%appname()
Returns the application name, a hyphen, and the
version number. Currently this is the string
Eterm-0.9.
%version()
Returns the version number. Currently this is
the string 0.9.
INCLUDES
Eterm supports the %include file directive to allow
for separation of the configuration information
into multiple files.
AUTHORS
Michael Jennings (mej@eterm.org) and Tuomo Venalainen
(vendu@cc.hut.fi). Man page re-written for version 0.8 by
Shaleh (shaleh@debian.org).
Eterm Home Page -- http://www.eterm.org/
Eterm FAQ -- http://www.eterm.org/FAQ.html
Eterm I-Docs -- http://eterm.i-docs.org/
Man(1) output converted with
man2html