Provided by: terminology-data_1.3.2-1_all bug

NAME

       Terminology - Terminal Emulator written with EFL (Enlightenment Foundation Libraries).

SYNOPSIS

       terminology [options]

DESCRIPTION

       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...

OPTIONS

       -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.

CONTROLS / SHORTCUTS

       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+Home
              Scroll terminology to the top of the backlog.

       Shift+End
              Reset scroll in terminology.

       Shift+Left
              Switch  focus  to  previous  terminal  inside  a  window  when using splits, or the
              previous tab.

       Shift+Right
              Switch focus to next terminal inside a window when using splits, or the next tab.

       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,  or  the
              previous tab.

       Ctrl+PgDn
              Switch focus to next terminal inside a window when using splits, or the next tab.

       Ctrl+Shift+h
              Toggle displaying the miniview of the history.

       Ctrl+Alt+t
              Set tab's title.

       Ctrl+Shift+t
              Create a new terminal on top of current inside window (tabs).

       Ctrl+Shift+n
              Launch new terminology.

       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+g  Group input: send input to all visible terminals in the window

       Alt+Shift+g
              Group input: send input to all terminals in the window

       Alt+w  Copy selection to primary.

       Alt+Up Focus the terminal above

       Alt+Down
              Focus the terminal down

       Alt+Left
              Focus the terminal on the left

       Alt+Right
              Focus the terminal on the right

       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).

MOUSE CONTROLS

       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.

COMMAND MODE COMMANDS

       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:

       Apart  from   the   ones   shipped   with   Terminology,   themes   can   be   stored   in
       ~/.config/terminology/themes/.

COMPANION TOOLS:

       tyls   List directory contents with bells and whistles

       tyalpha
              Set transparency level of the background

       tybg   Change the background image

       tycat  Display inline a media file or a URI

       typop  Display in a popup a media file or a URI

       tyq    Queue media files or URI to be popped up

       tysend Send files to the terminal (useful through ssh)

EXTENDED ESCAPES FOR TERMINOLOGY:

       [\033][}][COMMAND][\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]
                queue 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/link0full/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 click on the given
                    media image.

                  example:

                    printf("\ 33}is#5;3;%s 00"
                           "\ 33}ib#####\ 33}ie\0
                           "\ 33}ib#####\ 33}ie\0
                           "\ 33}ib#####\ 33}ie\0, "/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
                  parameters 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 parameters
                  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 parameters
                  are identical to the is command, but uses thumbnail
                  generation to make a fast to load but low resolution version
                  (cached) of the media.

              it[CW;H;LINK\nFULL-PATH-OR-URL]
                  insert THUMB media with link (thumbnail cell area). Otherwise parameters
                  are identical to the is command, but uses thumbnail generation to
                  make a fast to load but low resolution version (cached) of the media.
                  LINK is a path (or url) to open _when_ the thumb is clicked on by the
                  user.

              ij[CW;H;FULL-PATH\nGROUP][\n][cmd1][\r\n][cmd2]...
                  insert EDJE object with file path given, and the group name given.
                  The command list (and the \n whitespace delimiter before the list)
                  is optional, but is executed/parsed before display of the actual
                  object to do things like initialize its initial state. See `iC`
                  command for more details on the command list.

                  Be aware that once you have an object with an assigned channel id,
                  it can send back signals and messages via escapes on stdin. These
                  escapes will follow terminology extended escape format
                  (ESC + } ...  00), and the content will be one of:

                    ;CHID\ndrag\nPART NAME\nVAL1\nVAL2
                    ;CHID\ndrag,start\nPART NAME\nVAL1\nVAL2
                    ;CHID\ndrag,stop\nPART NAME\nVAL1\nVAL2
                    ;CHID\ndrag,step\nPART NAME\nVAL1\nVAL2
                    ;CHID\drag,set\nPART NAME\nVAL1\nVAL2
                    signal;CHID\nSIGNAL STRING\nSOURCE STRING
                    message;CHID\nOPCODE ID\nstring\nSTRING1
                    message;CHID\nOPCODE ID\nint\nINT1
                    message;CHID\nOPCODE ID\nfloat\nFLOAT1
                    message;CHID\nOPCODE ID\nstring_set\nSTRING1\nSTRING2\nSTRING3...
                    message;CHID\nOPCODE ID\nint_set\nINT1\nINT2\nINT3...
                    message;CHID\nOPCODE ID\nfloat_set\nFLOAT1\nFLOAT2\nFLOAT3...
                    message;CHID\nOPCODE ID\nstring_int\nSTRING1\nINT1
                    message;CHID\nOPCODE ID\nstring_float\nSTRING1\nFLOAT1
                    message;CHID\nOPCODE ID\nstring_int_set\nSTRING1\nINT1\nINT2\nINT3...
                    message;CHID\nOPCODE ID\nstring_float_set\nSTRING1\nFLOAT1\nFLOAT2\nFLOAT3...

              iC[CHID]\n[cmd1][\r\n][cmd2][\r\n][cmd3]...
                  send a COMMAND (cmd1, cmd2, cmd3 etc.) to an existing named
                  channel id CHID. this can be a list of 1 or more command strings,
                  with each string broken by a continuous sequence of 1 or more \r
                  and/or \n characters. e.g. "\n", "\r", "\r\n",
                  "\n\r", "\n\r\n\n\n", etc.

                  commands understood are:

                    text\nPART NAME\nTEXT STRING
                      set the text of "PART NAME" to string "TEXT STRING"

                    emit\nSIGNAL STRING\nSOURCE STRING
                      emit signal "SIGNAL STRING" "SOURCE STRING"

                    drag\nPART NAME\n[value|size|step|page]\nVAL1\nVAL2
                      manipulate dragable of name "PART NAME" and either set
                      "value", "size", "step" or "page" properties
                      to "VAL1" and "VAL2" for x and y, where
                      VAL1 and VAL2 are floating point values

                    chid\nCHANNEL ID
                      set the channel id of a given edje object (only valid in setup
                      commands for the inline edje object) to "CHANNEL ID" so it can
                      be addressed later.

                    message\nOPCODE ID\n[string|int|float|string_set|int_set|...
                    float_set|string|int|string_float|string_int_set|...
                    string_float_set]\n[message data]
                      send a message with opcode (integer) id "OPCODE ID" of one of
                      the given types supported ("string", "int", "float",
                      etc.) and then with the given "message data" at the end.
                      message data format depends on message type:
                      string:           STRING1
                      int:              INT1
                      float:            FLOAT1
                      string_set:       STRING1\nSTRING2\nSTRING3...
                      int_set:          INT1\nINT2\nINT3...
                      float_set:        FLOAT1\nFLOAT2\nFLOAT3...
                      string_int:       STRING1\nINT1
                      string_float:     STRING1\nFLOAT1
                      string_int_set:   STRING1\nINT1\nINT2\nINT3...
                      string_float_set: STRING1\nFLOAT1\nFLOAT2\nFLOAT3...

              ib
                begin media replace sequence run.

              ie
                end media replace sequence run.

              fr[PATH/FILE]
                begin file send for a file named PATH / FILE

              fs[SIZE_BYTES]
                set the size in bytes of a file send started with the above fr escape

              fd[CHECKSUM DATA]
                block of data for the current file transfer with checksum as a
                string decimal which is the sum of every byte when taken as an
                unsigned char per byte. the checksum is a signed 32bit integer.
                the checksum is the sum of the data after escaping. 4 bits at a
                time per data byte, encoded with high bits in one byte then low
                bits, with the bits encoded as 4 bit value being 0x40 + 4 bit value
                per byte. (@ == 0x0, A == 0x1, B == 0x2, ... N == 0xe, O == 0xf).
                so to rebuild a byte will be (((bytes[0] - 0x40) & 0xf) << 4) |
                ((bytes[1] - 0x40) & 0xf) per byte pair in the data block.

              fx
                exit file send mode (normally at the end of the file or when it's
                complete)

BUGS

       If you find a bug or for known issues/bugs/feature requests  please  email  enlightenment-
       devel@lists.sourceforge.net   or  visit  the  place  where  all  the  hard  work  is  done
       http://phab.enlightenment.org/

AUTHOR

       Terminology was written by Carsten Haitzler  <raster@rasterman.com>  and  others.   It  is
       maintained  by  Boris  Faure  <boris@fau.re>  and  others.  See  AUTHORS  file  for  other
       contributors.