Terminal emulator written with efl (enlightenment foundation libraries).
terminology [options]
This is an EFL terminal emulator with some extra bells and whistles. It has many features including split terminal support, support for tabs, preview icons for files and so on...
-e, --exec <cmnd>
Specify command to execute. Defaults to $SHELL (or passwd shell or /bin/sh) When used along with -S/--split, each argument is used as a command for a split, leaving away the extra arguments. With 3 splits, one vertical, a command on the right, an horizontal split on the left with only a command on the bottom, the following arguments should be used: --split v-h-- -e command1 $SHELL command2
-d=CURRENT-DIRECTORY, --current-directory=CURRENT-DIRECTORY
Change to directory for execution of terminal command. Type: STR.
-t=THEME, --theme=THEME
Use the named edje theme or path to theme file. Type: STR.
-b=BACKGROUND, --background=BACKGROUND
Use the named file as a background wallpaper for terminology. Type: STR.
-g=GEOMETRY, --geometry=GEOMETRY
Terminal geometry to use (eg 80x24 or 80x24+50+20 etc.). Type: STR.
-n=NAME, --name=NAME
Set window name. Type: STR.
-r=ROLE, --role=ROLE
Set window role. Type: STR.
-s=vh-, --split=vh-
Terminology can start with splits opened as described below. The arguments are a string with the following characters: -s v splits terminal vertically -s h splits horizontally - defines a placeholder for a shell or a command when used with --exec/-e Examples:
______ | | |
$ terminology -s v |__|__|
______ |_____|
$ terminology -s h |_____|
______ |__| |
$ terminology -s vh |__|__|
______ | |__|
$ terminology -s v-h |__|__|
______
$ terminology -s vh--h |__|__|
hv--v |__|__|
Type: STR.
-T=TITLE, --title=TITLE
Set window title. Type: STR.
-i=ICON-NAME, --icon-name=ICON-NAME
Set icon name. Type: STR.
-f=FONT, --font=FONT
Set font (NAME/SIZE for scalable, NAME for bitmap. Type: STR.
-v=VIDEO-MODULE, --video-module=VIDEO-MODULE
Set emotion module to use. Choices are: auto, gstreamer, xine, generic.
-l=LOGIN, --login=LOGIN
Run the shell as a login shell. Type: BOOL.
-m=VIDEO-MUTE, --video-mute=VIDEO-MUTE
Set mute mode for video playback. Type: BOOL.
-c=CURSOR-BLINK, --cursor-blink=CURSOR-BLINK
Set cursor blink mode. Type: BOOL.
-G=VISUAL-BELL, --visual-bell=VISUAL-BELL
Set visual bell mode. Type: BOOL.
-F, --fullscreen
Go into the fullscreen mode from start.
-I, --iconic
Go into an iconic state from the start.
-B, --borderless
Become a borderless managed window.
-O, --override
Become an override-redirect window.
-M, --maximized
Become maximized from the start.
-W, --nowm
Terminology is run without a wm.
-H, --hold
Don't exit when the command process exits.
-s, --single
Force single executable if multi-instance is enabled..
-2, --256color
Set TERM to xterm-256color instead of xterm.
--active-links=ACTIVATE-LINKS
Whether to highlight links. Type: BOOL.
-V, --version
Show program version.
-C, --copyright
Show copyright.
-L, --license
Show license.
-h, --help
Show this message.
Shift+PgUp
Scroll terminology one page up
Shift+PgDn
Scroll terminology one page down
Shift+Up
Scroll terminology one line up
Shift+Down
Scroll terminology one line down
Shift+Insert
Paste Clipboard (ctrl+v/c) selection
Shift+Ctrl+Insert
Paste Primary (highlight) selection
Shift+Keypad-Plus
Font size up by one unit.
Shift+Keypad-Minus
Font size down by one unit.
Shift+Keypad-Multiply
Reset font size.
Shift+Keypad-Divide
Copy highlight to Clipboard (same as ctrl+c in gui apps).
Ctrl+PgUp
Switch focus to previous terminal inside a window (when using splits).
Ctrl+PgDn
Switch focus to next terminal inside a window (when using splits).
Ctrl+Shift+h
Toggle displaying the miniview of the history.
Ctrl+Shift+t
Create a new terminal on top of current inside window (tabs).
Ctrl+Shift+End
Close the current terminal.
Ctrl+Shift+Home
Bring up "tab" switcher.
Ctrl+Shift+PgUp
Split terminal horizontally (one terminal above the other).
Ctrl+Shift+PgDn
Split terminal vertically (one terminal to the left of the other).
Alt+Home
Enter command mode (enter commands to control terminology itself)
Alt+Return
Paste primary selection.
Alt+w
Copy selection to primary.
Ctrl+Shift+c
Copy current selection to clipboard.
Ctrl+Shift+v
Paste current clipboard selection.
Ctrl+1 through Ctrl+0
Switch to terminal tab 1 through 10
Ctrl+Alt+Equal
Increase font size. Note that it works on scalable fonts only.
Ctrl+Alt+Minus
Decrease font size. Note that it works on scalable fonts only.
Ctrl+Alt+0
Reset font to default setting saved in config.
Ctrl+Alt+9
Display big font size (10x20 bitmap, or size 20 with scalable).
Right mouse click
Bring up controls menus.
Middle mouse click
Paste highlight selection.
Left mouse click/drag
Make a selection highlight.
Ctrl + Left mouse click/drag
Make a block selection.
Wheel
Scroll up or down in history.
Ctrl + Wheel
Zoom font size up/down.
To enter command mode in terminology press Alt+Home. Currently command mode understands the following commands:
f
Reset font to default setting saved in config.
f+
Increase font size. Note that it works on scalable fonts only.
f-
Decrease font size. Note that it works on scalable fonts only.
fb
Display big font size (10x20 bitmap, or size 20 with scalable).
gNxM
Make terminal NxM chars in size (if possible). e.g. g80x48 g40x20. If just one number is provided, it will use the following shortcuts: g0=80x24; g1=80x40; g2=80x60; g3=80x80; g4=120x24; g5=120x40; g6=120x60; g7=120x80; g8=120x120
b
Reset the background (no media)
bPATH
Set the background media to an absolute file PATH
Themes can be stored in ~/.config/terminology/themes/ .
[#92;033][}][COMMAND][#92;000]
i.e.
1. ESC char (\033 or 0x1b) 2. } char 3... sequence of UTF8 chars other than nul (\000 or 0x00). 4 \000 char (nul byte or 0x00 to indicate end of sequence)
e.g.
echo -n '\033}Hello world\000'
Commands:
any values inside square brackets [] are to be replaced by some content (numbers, strings, paths, url's etc.). example:
aa[PATH-OF-FILE] should be come something like:
aa/tmp/file.png
or aa[true/false] should become something like:
aatrue
or
aafalse
---
pn[FULL-PATH-OR-URL]
popup the given media file/url now
pq[FULL-PATH-OR-URL]
quque a popup for the given media file/url
bt[FULL-PATH-OR-URL]
set the terminal background media file/url temporarily
bp[FULL-PATH-OR-URL]
set the terminal background media file/url permanently
at[on/true/yes/off/false/no]
set the terminal alpha state to be on, or off temporarily
ap[on/true/yes/off/false/no]
set the terminal alpha state to be on, or off permanently
qs
query grid and font size. stdin will have written to it: W;H;FW;FH where W is the width of the terminal grid in characters where H is the height of the terminal grid in characters where FW is the width of 1 character cell in pixels where FH is the height of 1 character cell in pixels
is[CW;H;FULL-PATH-OR-URL]
insert STRETCHED media (where image will stretch to fill the cell area) and define expected cell area to be W cells wide and H cells high, with the image/media/url. where C is the replace character to be identified in later text where W is the width in character cells (up to 511). where H is the height in character cells (up to 511).
note that this escape alone has no effect. it indicates a future intention of inserting media into the terminal. the terminal will EXPECT a grid of WxH "replace characters" to follow, with each sequence of such replace characters bebung with a ib escape command and ending with an ie escape command.
the FULL-PATH-OR-URL for all the i commands (is, ic, if, it) may be of the form:
/full/path/to/file.png
OR
/full/path/to/link\n/full/path/to/file.png
where a newline character separates a URI for a link and a full path to a file to display in the region. the link is the destination URI when a user may clikc on the given media image.
example:
printf("#92;033}is#5;3;%s 00" "#92;033}ib######92;033}ie\\n" "#92;033}ib######92;033}ie\\n" "#92;033}ib######92;033}ie\\n", "/tmp/icon.png");
note that # is the replace character, and later # chars if inside begin/end escapes, will be replaced by the given media indicated in the insert media escape.
ic[CW;H;FULL-PATH-OR-URL]
insert CENTERED media (centered in cell area). otherwise paramaters are identical to the is command, but retains aspect and is padded by blank space.
if[CW;H;FULL-PATH-OR-URL]
insert FILLED media (fill in cell area). otherwise paramaters are identical to the is command but ensures the entire area is filled like a background even if media goes beyond cell bounds and is clipped.
it[CW;H;FULL-PATH-OR-URL]
insert THUMB media (thumbnail cell area). otherwise paramaters are identical to the is command, but uses thumbnail generation to make a fast to load but low resolution version (cached) of the media.
ib
begin media replace sequence run
ie
end media replace sequence run
If you find a bug or for known issues/bugs/feature requests please email [email protected] or visit the place where all the hard work is done http://phab.enlightenment.org/
Terminology was written by Carsten Haitzler <[email protected]> and others. See AUTHORS file for other contributors.