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       -v=VIDEO-MODULE, --video-module=VIDEO-MODULE
87              Set emotion module to use. Choices are: auto,  gstreamer,  xine,
88              generic.
89
90       -l=LOGIN, --login=LOGIN
91              Run the shell as a login shell.  Type: BOOL.
92
93       -m=VIDEO-MUTE, --video-mute=VIDEO-MUTE
94              Set mute mode for video playback.  Type: BOOL.
95
96       -c=CURSOR-BLINK, --cursor-blink=CURSOR-BLINK
97              Set cursor blink mode.  Type: BOOL.
98
99       -G=VISUAL-BELL, --visual-bell=VISUAL-BELL
100              Set visual bell mode.  Type: BOOL.
101
102       -F, --fullscreen
103              Go into the fullscreen mode from start.
104
105       -I, --iconic
106              Go into an iconic state from the start.
107
108       -B, --borderless
109              Become a borderless managed window.
110
111       -O, --override
112              Become an override-redirect window.
113
114       -M, --maximized
115              Become maximized from the start.
116
117       -W, --nowm
118              Terminology is run without a wm.
119
120       -H, --hold
121              Don't exit when the command process exits.
122
123       -s, --single
124              Force single executable if multi-instance is enabled..
125
126       -2, --256color
127              Set TERM to xterm-256color instead of xterm.
128
129       --active-links=ACTIVATE-LINKS
130              Whether to highlight links.  Type: BOOL.
131
132       -V, --version
133              Show program version.
134
135       -C, --copyright
136              Show copyright.
137
138       -L, --license
139              Show license.
140
141       -h, --help
142              Show this message.
143
144

CONTROLS / SHORTCUTS

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

MOUSE CONTROLS

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

COMMAND MODE COMMANDS

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

THEMES:

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

COMPANION TOOLS:

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

EXTENDED ESCAPES FOR TERMINOLOGY:

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

BUGS

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

AUTHOR

581       Terminology  was written by Carsten Haitzler <raster@rasterman.com> and
582       others.  It is maintained by Boris Faure <boris@fau.re> and others. See
583       AUTHORS file for other contributors.
584
585
586
5871.6.0                            Nov 16, 2019                   TERMINOLOGY(1)
Impressum