1TERMINOLOGY(1)               Terminology man page               TERMINOLOGY(1)
2
3
4

NAME

6       Terminology - Terminal Emulator written with EFL (Enlightenment Founda‐
7       tion Libraries).
8

SYNOPSIS

10       terminology [options]
11

DESCRIPTION

13       This is an EFL terminal emulator with some extra  bells  and  whistles.
14       It  has  many  features  including  split terminal support, support for
15       tabs, preview icons for files and so on...
16

OPTIONS

18       -e, --exec <cmnd>
19              Specify command to execute.  Defaults to $SHELL (or passwd shell
20              or  /bin/sh)  When  used along with -S/--split, each argument is
21              used as a command for a split, leaving away the extra arguments.
22              With 3 splits, one vertical, a command on the right, an horizon‐
23              tal split on the left with only a command  on  the  bottom,  the
24              following  arguments  should  be used: --split v-h-- -e command1
25              $SHELL command2
26
27       -d=CURRENT-DIRECTORY, --current-directory=CURRENT-DIRECTORY
28              Change to directory for execution of  terminal  command.   Type:
29              STR.
30
31       -t=THEME, --theme=THEME
32              Use the named edje theme or path to theme file.  Type: STR.
33
34       -b=BACKGROUND, --background=BACKGROUND
35              Use  the  named  file as a background wallpaper for terminology.
36              Type: STR.
37
38       -g=GEOMETRY, --geometry=GEOMETRY
39              Terminal geometry to use (eg 80x24 or 80x24+50+20 etc.).   Type:
40              STR.
41
42       -n=NAME, --name=NAME
43              Set window name.  Type: STR.
44
45       -r=ROLE, --role=ROLE
46              Set window role.  Type: STR.
47
48       -S=vh-, --split=vh-
49              Terminology  can  start  with  splits opened as described below.
50              The arguments are a string with the following characters:
51               -S v splits terminal vertically
52               -S h splits horizontally
53               - defines a placeholder for a shell or a command when used with
54               --exec/-e
55               Examples:
56                                    ______
57                                    |  |  |
58               $ terminology -S v   |__|__|
59
60                                    ______
61                                    |_____|
62               $ terminology -S h   |_____|
63
64                                     ______
65                                     |__|  |
66               $ terminology -S vh   |__|__|
67
68                                     ______
69                                     |  |__|
70               $ terminology -S v-h  |__|__|
71
72                                       ______
73               $ terminology -S vh--h  |__|__|
74                                hv--v  |__|__|
75               Type: STR.
76
77       -T=TITLE, --title=TITLE
78              Set window title.  Type: STR.
79
80       -i=ICON-NAME, --icon-name=ICON-NAME
81              Set icon name.  Type: STR.
82
83       -f=FONT, --font=FONT
84              Set font (NAME/SIZE for scalable, NAME for bitmap.  Type: STR.
85
86       -l=LOGIN, --login=LOGIN
87              Run the shell as a login shell.  Type: BOOL.
88
89       -m=VIDEO-MUTE, --video-mute=VIDEO-MUTE
90              Set mute mode for video playback.  Type: BOOL.
91
92       -c=CURSOR-BLINK, --cursor-blink=CURSOR-BLINK
93              Set cursor blink mode.  Type: BOOL.
94
95       -G=VISUAL-BELL, --visual-bell=VISUAL-BELL
96              Set visual bell mode.  Type: BOOL.
97
98       -F, --fullscreen
99              Go into the fullscreen mode from start.
100
101       -I, --iconic
102              Go into an iconic state from the start.
103
104       -B, --borderless
105              Become a borderless managed window.
106
107       -O, --override
108              Become an override-redirect window.
109
110       -M, --maximized
111              Become maximized from the start.
112
113       -W, --nowm
114              Terminology is run without a wm.
115
116       -H, --hold
117              Don't exit when the command process exits.
118
119       -s, --single
120              Force single executable if multi-instance is enabled..
121
122       -2, --256color
123              Set TERM to xterm-256color instead of xterm.
124
125       --active-links=ACTIVATE-LINKS
126              Whether to highlight links.  Type: BOOL.
127
128       --no-wizard
129              Do not display the wizard on start up.  Type: BOOL.
130
131       --scale=SCALE
132              Scaling factor to use on the UI.  Type: DOUBLE.
133
134       -V, --version
135              Show program version.
136
137       -C, --copyright
138              Show copyright.
139
140       -L, --license
141              Show license.
142
143       -h, --help
144              Show this message.
145
146

CONTROLS / SHORTCUTS

148       Shift+PgUp
149              Scroll terminology one page up.
150
151       Shift+PgDn
152              Scroll terminology one page down.
153
154       Shift+Up
155              Scroll terminology one line up.
156
157       Shift+Down
158              Scroll terminology one line down.
159
160       Shift+Home
161              Scroll terminology to the top of the backlog.
162
163       Shift+End
164              Reset scroll in terminology.
165
166       Shift+Left
167              Switch focus to previous terminal inside  a  window  when  using
168              splits, or the previous tab.
169
170       Shift+Right
171              Switch focus to next terminal inside a window when using splits,
172              or the next tab.
173
174       Shift+Insert
175              Paste Clipboard (ctrl+v/c) selection.
176
177       Shift+Ctrl+Insert
178              Paste Primary (highlight) selection.
179
180       Shift+Keypad-Plus
181              Font size up by one unit.
182
183       Shift+Keypad-Minus
184              Font size down by one unit.
185
186       Shift+Keypad-Multiply
187              Reset font size.
188
189       Shift+Keypad-Divide
190              Copy highlight to Clipboard (same as ctrl+c in gui apps).
191
192       Ctrl+PgUp
193              Switch focus to previous terminal inside  a  window  when  using
194              splits, or the previous tab.
195
196       Ctrl+PgDn
197              Switch focus to next terminal inside a window when using splits,
198              or the next tab.
199
200       Ctrl+Shift+h
201              Toggle displaying the miniview of the history.
202
203       Ctrl+Alt+t
204              Set tab's title.
205
206       Ctrl+Shift+t
207              Create a new terminal on top of current inside window (tabs).
208
209       Ctrl+Shift+n
210              Launch new terminology.
211
212       Ctrl+Shift+End
213              Close the current terminal.
214
215       Ctrl+Shift+Home
216              Bring up "tab" switcher.
217
218       Ctrl+Shift+PgUp
219              Split terminal horizontally (one terminal above the other).
220
221       Ctrl+Shift+PgDn
222              Split terminal vertically (one  terminal  to  the  left  of  the
223              other).
224
225       Alt+Home
226              Enter  command  mode  (enter  commands  to  control  terminology
227              itself).
228
229       Alt+Return
230              Paste primary selection.
231
232       Alt+g  Group input: send input to all visible terminals in the window
233
234       Alt+Shift+g
235              Group input: send input to all terminals in the window
236
237       Alt+w  Copy selection to primary.
238
239       Alt+Up Focus the terminal above
240
241       Alt+Down
242              Focus the terminal down
243
244       Alt+Left
245              Focus the terminal on the left
246
247       Alt+Right
248              Focus the terminal on the right
249
250       Ctrl+Shift+c
251              Copy current selection to clipboard.
252
253       Ctrl+Shift+v
254              Paste current clipboard selection.
255
256       Ctrl+1 through Ctrl+0
257              Switch to terminal tab 1 through 10.
258
259       Ctrl+Alt+Equal
260              Increase font size. Note that it works on scalable fonts only.
261
262       Ctrl+Alt+Minus
263              Decrease font size. Note that it works on scalable fonts only.
264
265       Ctrl+Alt+0
266              Reset font to default setting saved in config.
267
268       Ctrl+Alt+9
269              Display big font size (10x20 bitmap, or size 20 with scalable).
270
271

MOUSE CONTROLS

273       Right mouse click
274              Bring up controls menus.
275
276       Middle mouse click
277              Paste highlight selection.
278
279       Left mouse click/drag
280              Make a selection highlight.
281
282       Ctrl + Left mouse click/drag
283              Make a block selection.
284
285       Wheel  Scroll up or down in history.
286
287       Ctrl + Wheel
288              Zoom font size up/down.
289
290

COMMAND MODE COMMANDS

292       To enter command mode in terminology press Alt+Home. Currently  command
293       mode understands the following commands:
294
295       f      Reset font to default setting saved in config.
296
297       f+     Increase font size. Note that it works on scalable fonts only.
298
299       f-     Decrease font size. Note that it works on scalable fonts only.
300
301       fb     Display big font size (10x20 bitmap, or size 20 with scalable).
302
303       gNxM   Make  terminal  NxM  chars  in  size  (if possible). e.g. g80x48
304              g40x20.  If just one number is provided, it will use the follow‐
305              ing   shortcuts:   g0=80x24;   g1=80x40;   g2=80x60;   g3=80x80;
306              g4=120x24; g5=120x40; g6=120x60; g7=120x80; g8=120x120
307
308       b      Reset the background (no media).
309
310       bPATH  Set the background media to an absolute file PATH.
311
312

THEMES:

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

COMPANION TOOLS:

319       tyls   List directory contents with bells and whistles
320
321       tyalpha
322              Set transparency level of the background
323
324       tybg   Change the background image
325
326       tycat  Display inline a media file or a URI
327
328       typop  Display in a popup a media file or a URI
329
330       tyq    Queue media files or URI to be popped up
331
332       tysend Send files to the terminal (useful through ssh)
333
334

EXTENDED ESCAPES FOR TERMINOLOGY:

336       [\033][}][COMMAND][\000]
337              i.e.
338                1.   ESC char (\033 or 0x1b)
339                2.   } char
340                3... sequence of UTF8 chars other than nul (\000 or 0x00).
341                4     \000 char (nul byte or 0x00 to indicate end of sequence)
342              e.g.
343                echo -n '\033}Hello world\000'
344
345              Commands:
346
347              any values inside square brackets [] are to be replaced by  some
348              content (numbers, strings, paths, url's etc.). example:
349
350              aa[PATH-OF-FILE] should be come something like:
351                aa/tmp/file.png  or  aa[true/false]  should  become  something
352              like:
353                aatrue or
354                aafalse
355
356              ---
357
358              pn[FULL-PATH-OR-URL]
359                popup the given media file/url now.
360
361              pq[FULL-PATH-OR-URL]
362                queue a popup for the given media file/url.
363
364              bt[FULL-PATH-OR-URL]
365                set the terminal background media file/url temporarily.
366
367              bp[FULL-PATH-OR-URL]
368                set the terminal background media file/url permanently.
369
370              at[on/true/yes/off/false/no]
371                set the terminal alpha state to be on, or off temporarily.
372
373              ap[on/true/yes/off/false/no]
374                set the terminal alpha state to be on, or off permanently.
375
376              qs
377                query grid and font size. stdin will have written to it:
378                  W;H;FW;FH
379                where W is the width of the terminal grid in characters
380                where H is the height of the terminal grid in characters
381                where FW is the width of 1 character cell in pixels
382                where FH is the height of 1 character cell in pixels
383
384              is[CW;H;FULL-PATH-OR-URL]
385                insert STRETCHED media (where image will stretch to fill the
386                  cell area) and define expected cell area to be W cells
387                  wide and H cells high, with the image/media/url.
388                where C is the replace character to be identified in later
389                  text where W is the width in character cells (up to 511).
390                where H is the height in character cells (up to 511).
391
392                note that this escape alone has  no  effect.  It  indicates  a
393              future  intention of inserting media into the terminal. the ter‐
394              minal will EXPECT a grid of WxH "replace characters" to  follow,
395              with  each  sequence of such replace characters bebung with a ib
396              escape command and ending with an ie escape command.
397
398                the FULL-PATH-OR-URL for all  the i commands (is,
399                ic, if, it) may be of the form:
400
401                  /full/path/to/file.png
402
403                OR
404
405                  /full/path/to/link0full/path/to/file.png
406
407                  where a newline character separates a URI for a link and
408                    a full path to a file to display in the region. the link
409                    is the destination URI when a user may click on the given
410                    media image.
411
412                  example:
413
414                    printf("\ 33}is#5;3;%s 00"
415                           "\ 33}ib#####\ 33}ie\0
416                           "\ 33}ib#####\ 33}ie\0
417                           "\ 33}ib#####\ 33}ie\0, "/tmp/icon.png");
418
419                  note that # is the replace character, and later #  chars  if
420              inside  begin/end  escapes,  will be replaced by the given media
421              indicated in the insert media escape.
422
423              ic[CW;H;FULL-PATH-OR-URL]
424                insert CENTERED media (centered in cell area). Otherwise
425                  parameters are identical to the is command, but
426                  retains aspect and is padded by blank space.
427
428              if[CW;H;FULL-PATH-OR-URL]
429                insert FILLED media (fill in cell area). Otherwise parameters
430                  are identical to the is command but ensures the entire
431                  area is filled like a background even if media goes beyond
432                  cell bounds and is clipped.
433
434              it[CW;H;FULL-PATH-OR-URL]
435                insert THUMB media (thumbnail cell area). Otherwise parameters
436                  are identical to the is command, but uses thumbnail
437                  generation to make a fast to load but low resolution version
438                  (cached) of the media.
439
440              it[CW;H;LINK\nFULL-PATH-OR-URL]
441                  insert THUMB media with link (thumbnail cell  area).  Other‐
442              wise parameters
443                  are  identical to the is command, but uses thumbnail genera‐
444              tion to
445                  make a fast to load but low resolution version  (cached)  of
446              the media.
447                  LINK  is a path (or url) to open _when_ the thumb is clicked
448              on by the
449                  user.
450
451              ij[CW;H;FULL-PATH\nGROUP][\n][cmd1][\r\n][cmd2]...
452                  insert EDJE object with file path given, and the group  name
453              given.
454                  The command list (and the \n whitespace delimiter before the
455              list)
456                  is optional, but is executed/parsed before  display  of  the
457              actual
458                  object  to  do things like initialize its initial state. See
459              `iC`
460                  command for more details on the command list.
461
462                  Be aware that once you have an object with an assigned chan‐
463              nel id,
464                  it  can send back signals and messages via escapes on stdin.
465              These
466                  escapes will follow terminology extended escape format
467                  (ESC + } ...  00), and the content will be one of:
468
469                    ;CHID\ndrag\nPART NAME\nVAL1\nVAL2
470                    ;CHID\ndrag,start\nPART NAME\nVAL1\nVAL2
471                    ;CHID\ndrag,stop\nPART NAME\nVAL1\nVAL2
472                    ;CHID\ndrag,step\nPART NAME\nVAL1\nVAL2
473                    ;CHID\drag,set\nPART NAME\nVAL1\nVAL2
474                    signal;CHID\nSIGNAL STRING\nSOURCE STRING
475                    message;CHID\nOPCODE ID\nstring\nSTRING1
476                    message;CHID\nOPCODE ID\nint\nINT1
477                    message;CHID\nOPCODE ID\nfloat\nFLOAT1
478                    message;CHID\nOPCODE
479              ID\nstring_set\nSTRING1\nSTRING2\nSTRING3...
480                    message;CHID\nOPCODE ID\nint_set\nINT1\nINT2\nINT3...
481                    message;CHID\nOPCODE
482              ID\nfloat_set\nFLOAT1\nFLOAT2\nFLOAT3...
483                    message;CHID\nOPCODE ID\nstring_int\nSTRING1\nINT1
484                    message;CHID\nOPCODE ID\nstring_float\nSTRING1\nFLOAT1
485                    message;CHID\nOPCODE
486              ID\nstring_int_set\nSTRING1\nINT1\nINT2\nINT3...
487                    message;CHID\nOPCODE
488              ID\nstring_float_set\nSTRING1\nFLOAT1\nFLOAT2\nFLOAT3...
489
490              iC[CHID]\n[cmd1][\r\n][cmd2][\r\n][cmd3]...
491                  send a COMMAND (cmd1, cmd2, cmd3 etc.) to an existing named
492                  channel id CHID. this can be a list of  1  or  more  command
493              strings,
494                  with  each  string  broken  by a continuous sequence of 1 or
495              more \r
496                  and/or \n characters. e.g. "\n", "\r", "\r\n",
497                  "\n\r", "\n\r\n\n\n", etc.
498
499                  commands understood are:
500
501                    text\nPART NAME\nTEXT STRING
502                      set the text of "PART NAME" to string "TEXT STRING"
503
504                    emit\nSIGNAL STRING\nSOURCE STRING
505                      emit signal "SIGNAL STRING" "SOURCE STRING"
506
507                    drag\nPART NAME\n[value|size|step|page]\nVAL1\nVAL2
508                      manipulate dragable of name "PART NAME" and either set
509                      "value", "size", "step" or "page" properties
510                      to "VAL1" and "VAL2" for x and y, where
511                      VAL1 and VAL2 are floating point values
512
513                    chid\nCHANNEL ID
514                      set the channel id of a given edje object (only valid in
515              setup
516                      commands  for the inline edje object) to "CHANNEL ID" so
517              it can
518                      be addressed later.
519
520                    message\nOPCODE
521              ID\n[string|int|float|string_set|int_set|...
522                    float_set|string|int|string_float|string_int_set|...
523                    string_float_set]\n[message data]
524                      send  a  message with opcode (integer) id "OPCODE ID" of
525              one of
526                      the given types supported ("string", "int", "float",
527                      etc.) and then with the given "message data" at the end.
528                      message data format depends on message type:
529                      string:           STRING1
530                      int:              INT1
531                      float:            FLOAT1
532                      string_set:       STRING1\nSTRING2\nSTRING3...
533                      int_set:          INT1\nINT2\nINT3...
534                      float_set:        FLOAT1\nFLOAT2\nFLOAT3...
535                      string_int:       STRING1\nINT1
536                      string_float:     STRING1\nFLOAT1
537                      string_int_set:   STRING1\nINT1\nINT2\nINT3...
538                      string_float_set: STRING1\nFLOAT1\nFLOAT2\nFLOAT3...
539
540              ib
541                begin media replace sequence run.
542
543              ie
544                end media replace sequence run.
545
546              fr[PATH/FILE]
547                begin file send for a file named PATH / FILE
548
549              fs[SIZE_BYTES]
550                set the size in bytes of a file send started with the above fr
551              escape
552
553              fd[CHECKSUM DATA]
554                block of data for the current file transfer with checksum as a
555                string decimal which is the sum of every byte when taken as an
556                unsigned  char  per byte. the checksum is a signed 32bit inte‐
557              ger.
558                the checksum is the sum of the data after escaping. 4 bits  at
559              a
560                time  per  data  byte, encoded with high bits in one byte then
561              low
562                bits, with the bits encoded as 4 bit value being 0x40 + 4  bit
563              value
564                per  byte.  (@  == 0x0, A == 0x1, B == 0x2, ... N == 0xe, O ==
565              0xf).
566                so to rebuild a byte will be (((bytes[0] - 0x40) & 0xf) <<  4)
567              |
568                ((bytes[1] - 0x40) & 0xf) per byte pair in the data block.
569
570              fx
571                exit  file  send mode (normally at the end of the file or when
572              it's
573                complete)
574
575

BUGS

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

AUTHOR

583       Terminology was written by Carsten Haitzler <raster@rasterman.com>  and
584       others.  It is maintained by Boris Faure <boris@fau.re> and others. See
585       AUTHORS file for other contributors.
586
587
588
5891.8.1                            Aug 11, 2020                   TERMINOLOGY(1)
Impressum