terminal - step-/gtkdialog GitHub Wiki
A VteTerminal packed inside a GtkScrolledWindow
<terminal tag_attr="value"...>
<variable>varname</variable>
<height>value</height>
<width>value</width>
<input>command</input>
<input file>filename</input>
<sensitive>state</sensitive>
<action>activity</action>...
<action signal="type">activity</action>...
<action function="type">parameter</action>...
</terminal>
"..." denotes acceptance of multiples of the same thing.
See the VteTerminal widget and ancestor class properties.
The following custom tag attributes are available:
Name | Description | Value | Since |
---|---|---|---|
space-expand | Pack widget expanding into space |
true or false
|
|
space-fill | Pack widget filling space |
true or false
|
|
block-function-signals | Block signal emissions from functions |
true or false
|
|
file-monitor | Emit signal when input file(s) change |
true or false
|
|
auto-refresh | Auto refresh when input file(s) change |
true or false
|
|
hscrollbar-policy | Policy for the horizontal scrollbar |
0 , 1 , 2 (always, automatic, never) |
|
vscrollbar-policy | Policy for the vertical scrollbar |
0 , 1 , 2 (always, automatic, never) |
|
font-name | Font description | Example: Monospace Bold 14
|
|
background-tint-color[1][2] | Background tint colour | A standard name, #rgb or #rrggbb | |
text-background-color | Text background colour | A standard name, #rgb or #rrggbb | |
text-foreground-color | Text foreground colour | A standard name, #rgb or #rrggbb | |
bold-foreground-color | Bold text foreground colour | A standard name, #rgb or #rrggbb | |
dim-foreground-color[2] | Dim text foreground colour | A standard name, #rgb or #rrggbb | |
cursor-background-color | Cursor background colour | A standard name, #rgb or #rrggbb | |
highlight-background-color | Highlighted text background colour | A standard name, #rgb or #rrggbb | |
argv? | Arguments starting at argv0 (command) | Example: /bin/sh
|
|
envv? | Environment variables starting at envv0 | Example: MESSAGE=Hello
|
Some of these may have tag attribute equivalents.
Name | Description | Contents | Since |
---|---|---|---|
variable | Variable name | Command's PID (0 if dead) |
|
variable export="false" | Variable name, not exported to shell | 0.8.3 | |
height | Initial height | An integer > 0 or -1 to ignore |
|
width | Initial width | An integer > 0 or -1 to ignore |
|
input | Data input source | Shell command | |
input file | Data input source | Filename | |
sensitive | Active state |
true or false
|
|
action | Execute command on default signal | Shell command | |
action | Perform function on default signal | function:parameter | |
action signal="type" | Execute command on signal | Shell command | |
action signal="type" | Perform function on signal | function:parameter | |
action function="type" | Perform function on default signal | parameter | 0.8.3 |
action condition="type" | Execute command on default signal conditionally | Shell command | 0.8.3 |
action condition="type" | Perform function on default signal conditionally | function:parameter | 0.8.3 |
action signal="type" condition="type" | Execute command on signal conditionally | Shell command | 0.8.3 |
action signal="type" condition="type" | Perform function on signal conditionally | function:parameter | 0.8.3 |
action function="type" condition="type" | Perform function on default signal conditionally | parameter | 0.8.3 |
The default signal is "child-exited", emitted when the terminal detects that the child has exited.
The "file-changed" signal is emitted if file-monitor is true and the input file being monitored has changed.
The following signals are connected-up for all widgets:
button-press-event, button-release-event, configure-event, enter-notify-event, leave-notify-event, focus-in-event, focus-out-event, hide, show, realize, key-press-event, key-release-event, map-event, unmap-event
The following functions can be performed upon this widget by any widget capable of emitting signals:
Type | Description | Parameter | Since |
---|---|---|---|
enable | Reactivate timer | Variable name | |
disable | Deactivate timer | Variable name | |
show | Show widget | Variable name | |
hide | Hide widget | Variable name | |
grabfocus | Grab input focus | Variable name | |
refresh | Reload input data | Variable name | |
clear | Reset terminal and re-execute command | Variable name |
The following general functions can be performed by any widget capable of emitting signals:
Type | Description | Parameter | Since |
---|---|---|---|
break | Break out of actions list | None | 0.8.3 |
command | Execute command | Shell command | |
exit | Exit dialog | A value for the EXIT variable |
|
closewindow | Close dialog | Variable name | |
launch | Launch dialog | Variable name | |
presentwindow | Present dialog | Variable name |
The following conditions can be used within the condition attribute of action directives:
Type | Description | Argument | Since |
---|---|---|---|
active_is_true(argument) | Active state of toggle widget | Variable name | 0.8.3 |
active_is_false(argument) | Active state of toggle widget | Variable name | 0.8.3 |
command_is_true(argument) | Output of shell command | Shell command | 0.8.3 |
command_is_false(argument) | Output of shell command | Shell command | 0.8.3 |
file_is_true(argument) | Contents of a file | Filename | 0.8.3 |
file_is_false(argument) | Contents of a file | Filename | 0.8.3 |
sensitive_is_true(argument) | Sensitive state of widget | Variable name | 0.8.3 |
sensitive_is_false(argument) | Sensitive state of widget | Variable name | 0.8.3 |
visible_is_true(argument) | Visible state of widget | Variable name | 0.8.3 |
visible_is_false(argument) | Visible state of widget | Variable name | 0.8.3 |
true means "true", "yes" or a non-zero value, false means "false", "no" or zero, therefore the shell command is expected to echo one of these values to stdout.
- There exists an equivalently named "background-tint-color" VTE property but it doesn't accept strings so it's converted by Gtkdialog.
- The "background-tint-color" and "dim-foreground-color" tag attributes are not permitted when using VTE >= 0.38 (which is the case for gtk3).
This is a non-mandatory widget that requires libvte support be built into Gtkdialog at compile time.
This widget was introduced in version 0.8.1.