gui-wm/hikari/files/hikari.1
author gabriel
Wed, 13 Jan 2021 09:17:39 +0000
changeset 6 34fc7a87c4eb
parent 0 22d142c795ec
permissions -rw-r--r--
qtdbus test
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
22d142c795ec Initial commit
gabriel
parents:
diff changeset
     1
.\" Automatically generated by Pandoc 2.9.2.1
22d142c795ec Initial commit
gabriel
parents:
diff changeset
     2
.\"
22d142c795ec Initial commit
gabriel
parents:
diff changeset
     3
.TH "HIKARI" "1" "" "2.2.2" "hikari - Wayland Compositor"
22d142c795ec Initial commit
gabriel
parents:
diff changeset
     4
.hy
22d142c795ec Initial commit
gabriel
parents:
diff changeset
     5
.SH NAME
22d142c795ec Initial commit
gabriel
parents:
diff changeset
     6
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
     7
\f[B]hikari\f[R] - Wayland Compositor
22d142c795ec Initial commit
gabriel
parents:
diff changeset
     8
.SH SYNTAX
22d142c795ec Initial commit
gabriel
parents:
diff changeset
     9
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    10
\f[B]hikari\f[R] [-vh] [-a <executable>] [-c <config>]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    11
.SH DESCRIPTION
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    12
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    13
\f[B]hikari\f[R] is a stacking Wayland compositor with additional tiling
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    14
capabilities, it is heavily inspired by the Calm Window manager
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    15
(cwm(1)).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    16
Its core concepts are views, workspaces, sheets and groups.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    17
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    18
The following options are available:
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    19
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    20
-a \f[I]<executable>\f[R] Specify autostart executable.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    21
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    22
-c \f[I]<config>\f[R] Specify a configuration file.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    23
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    24
-h Show this message and quit.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    25
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    26
-v Show version and quit.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    27
.SH CONCEPTS
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    28
.SS View
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    29
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    30
\f[I]Views\f[R] are basically the windows of a Wayland client.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    31
Each \f[I]view\f[R] belongs to at most one sheet and can also belong to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    32
at most one group.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    33
A \f[I]view\f[R] can be in several states.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    34
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    35
\f[B]hidden\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    36
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    37
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    38
\f[I]Hidden\f[R] \f[I]views\f[R] are not displayed on the workspace.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    39
Hiding a \f[I]view\f[R] removes this \f[I]view\f[R] from the workspace.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    40
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    41
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    42
\f[B]tiled\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    43
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    44
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    45
A \f[I]tiled\f[R] \f[I]view\f[R] is part of a layout.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    46
They can never be \f[I]floating\f[R] or \f[I]invisible\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    47
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    48
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    49
\f[B]floating\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    50
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    51
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    52
\f[I]Floating\f[R] \f[I]views\f[R] can never become part of a layout.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    53
The floating state is indicated using a tilde in the sheet indicator.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    54
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    55
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    56
\f[B]invisible\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    57
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    58
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    59
When a \f[I]view\f[R] is set into \f[I]invisible\f[R] state it will not
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    60
be displayed when switching to the containing sheet and stay hidden
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    61
until it is explicitly requested to be shown.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    62
This can be used to keep long running \f[I]views\f[R] from cluttering
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    63
the workspace.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    64
An \f[I]invisible\f[R] \f[I]view\f[R] can never be \f[I]tiled\f[R] and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    65
are indicated using square brackets in the sheet indicator.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    66
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    67
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    68
\f[B]maximized\f[R] (horizontal, vertical and full)
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    69
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    70
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    71
Views with such a state can take up the entire horizontal and or
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    72
vertical space of a workspace.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    73
\f[I]Tiled\f[R] \f[I]views\f[R] can also be maximized.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    74
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    75
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    76
\f[B]borrowed\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    77
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    78
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    79
Borrowing happens when a workspace contains a \f[I]view\f[R] that view
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    80
that is not part of the \f[B]current sheet\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    81
These views are called \f[I]borrowed\f[R] views and are indicated by the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    82
sheet indicator using the string \[lq]\f[B]x\f[R] \[at]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    83
\f[B]y\f[R]\[rq], where \f[B]x\f[R] is the sheet the \f[I]view\f[R] is a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    84
member of and \f[B]y\f[R] is the sheet that is currently borrowing the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    85
\f[I]view\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    86
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    87
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    88
\f[B]public\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    89
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    90
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    91
\f[I]Public\f[R] views are also displayed on the lock screen, in this
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    92
case they will never accept input.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    93
Views that display sensible information should never be marked as
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    94
\f[I]public\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    95
The public state is indicated using an exclamation mark in the sheet
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    96
indicator.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    97
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    98
.SS Workspace
22d142c795ec Initial commit
gabriel
parents:
diff changeset
    99
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   100
A \f[I]workspace\f[R] is the set of views that are currently visible.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   101
Unlike in most other Wayland compositors, \f[B]hikari\f[R] only has a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   102
single \f[I]workspace\f[R] for each output and we only manipulate its
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   103
content using actions.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   104
While this seems like a superficial distinction it is important to keep
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   105
in mind for some actions to make sense.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   106
When switching to a sheet this sheet becomes the \f[B]workspace
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   107
sheet\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   108
On startup a \f[I]workspace\f[R] sheet is \f[B]1\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   109
Views on a \f[I]workspace\f[R] are stacked from bottom to top, where the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   110
next view is higher up the stack and the previous view is one below.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   111
This order can be changed by raising or lowering views individually via
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   112
actions.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   113
Selecting a view via cycling actions automatically raises this view to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   114
the top of the stacking order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   115
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   116
\f[B]hikari\f[R] provides multiple ways to \f[I]cycle\f[R] the views on
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   117
a \f[I]workspace\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   118
Cycling is a way to navigate to a view using key bindings.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   119
.SS Sheet
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   120
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   121
A \f[I]sheet\f[R] is a collection of views, each view can only be a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   122
member of a single \f[I]sheet\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   123
Switching between sheets will replace the current content of the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   124
workspace with all the views that are a member of the selected
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   125
\f[I]sheet\f[R], this \f[I]sheet\f[R] will also become the \f[B]current
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   126
sheet\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   127
\f[B]hikari\f[R] has 9 general purpose sheets that correspond to the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   128
numbers \f[B]1\f[R] to \f[B]9\f[R] and a special purpose \f[I]sheet\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   129
\f[B]0\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   130
Views that are a member of \f[I]sheet\f[R] \f[B]0\f[R] will always be
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   131
visible but stacked below the views of the selected \f[I]sheet\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   132
A \f[I]sheet\f[R] that contains views is called \f[B]inhabited\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   133
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   134
When switching to a different sheet the current \f[B]current sheet\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   135
becomes the \f[B]alternate sheet\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   136
.SS Group
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   137
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   138
\f[I]Groups\f[R] are a bit more fine grained than sheets.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   139
Like sheets, \f[I]groups\f[R] are a collection of views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   140
Unlike sheets you can have a arbitrary number of \f[I]groups\f[R] and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   141
each \f[I]group\f[R] can have an arbitrary name.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   142
Views from one \f[I]group\f[R] can be spread among all available sheets.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   143
Some actions act on entire \f[I]groups\f[R] rather than individual
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   144
views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   145
.SS Layout
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   146
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   147
Each sheet can have at most one \f[I]layout\f[R] for tiling views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   148
Applying a \f[I]layout\f[R] to a sheet introduces an additional ordering
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   149
for views which is not altered by raising or lowering, which can be used
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   150
to traverse the \f[I]layout\f[R] in the expected order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   151
Each \f[I]layout\f[R] can be stored in one of the \f[I]layout\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   152
register \f[B]a\f[R] to \f[B]z\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   153
.SS View indicators
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   154
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   155
\f[I]View indicators\f[R] show information about the current view as
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   156
well as views belonging to the same group.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   157
They outline the border of the current view as well as all view borders
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   158
belonging to the same group (obscured view borders will shine through
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   159
the obscuring view).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   160
The focused view will also display so called \f[B]indicator bars\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   161
Each bar holds some information, like title, sheet information, group
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   162
and its mark (if one has been set for the view).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   163
.SS Marks
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   164
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   165
\f[I]Marks\f[R] can be used to \[lq]speed dial\[rq] views, even if they
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   166
are on a sheet other than the \f[B]current sheet\f[R] (note: such views
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   167
will become \f[B]borrowed\f[R] in the process).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   168
\f[I]Marks\f[R] are represented by characters from \f[B]a\f[R] to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   169
\f[B]z\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   170
When jumping to a \f[I]mark\f[R] the view will be brought forward and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   171
focused.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   172
If no view is bound to a \f[I]mark\f[R] the user can specify a command
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   173
that is executed instead.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   174
This can be used to start an application that binds itself to this
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   175
\f[I]mark\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   176
.SS Mode
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   177
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   178
\f[B]hikari\f[R] is a modal Wayland compositor and therefore offers
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   179
several \f[I]modes\f[R] for actions like changing a views group, mark or
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   180
sheet as well a jumping to marks or grabbing input events and layout
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   181
selection.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   182
.SH CONFIGURATION
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   183
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   184
\f[B]hikari\f[R] is configured using libucl(3) as a configuration file
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   185
format.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   186
The configuration is located under
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   187
\f[I]$XDG_CONFIG_HOME/hikari/hikari.conf\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   188
If this file is not found \f[B]hikari\f[R] is going to try
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   189
\f[I]hikari.conf\f[R] from the install \f[I]etc\f[R] directory.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   190
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   191
The default configuration is going to use \f[B]$TERMINAL\f[R] as your
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   192
standard terminal application.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   193
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   194
On startup \f[B]hikari\f[R] attempts to execute
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   195
\f[I]\[ti]/.config/hikari/autostart\f[R] to autostart applications.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   196
.SH ACTIONS
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   197
.SS General actions
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   198
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   199
\f[B]lock\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   200
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   201
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   202
Lock \f[B]hikari\f[R] and turn off all outputs.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   203
To unlock you need to enter your password and press enter.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   204
Being able to unlock requires \f[I]hikari-unlocker\f[R] to be in the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   205
\f[B]PATH\f[R] and running with setuid(2) root privileges (those are
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   206
required to check if the entered password is correct).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   207
\f[I]hikari-unlocker\f[R] also needs pam.conf(5) to be aware of its
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   208
existence, therefore there must be a \f[I]hikari-unlocker\f[R] service
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   209
file in \f[I]pam.d\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   210
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   211
The lock screen displays all views that are marked as \f[B]public\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   212
which allows applications to provide information to the user when the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   213
computer is locked (e.g.\ a clock).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   214
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   215
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   216
\f[B]quit\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   217
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   218
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   219
Issues a quit operation to all views, allowing them to prompt their
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   220
shutdown dialog if they have any.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   221
Issuing this operation again during shutdown will terminate
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   222
\f[B]hikari\f[R] right away.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   223
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   224
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   225
\f[B]reload\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   226
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   227
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   228
Reload and apply the configuration.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   229
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   230
.SS Group actions
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   231
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   232
\f[B]group-cycle-[next|prev]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   233
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   234
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   235
Cycle to the next or previous group according to the stacking order by
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   236
cycling through the top most view of each group.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   237
The \f[I]next\f[R] view is further up the stack and the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   238
\f[I]previous\f[R] view is further down the stack.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   239
Reaching each end of the stack just wraps around.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   240
Once a view is selected it will be raised to the top of the stacking
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   241
order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   242
Selecting happens by releasing the modifier key.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   243
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   244
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   245
\f[B]group-cycle-view-[next|prev|first|last]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   246
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   247
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   248
Cycle through all visible views inside of a group.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   249
Once a view is selected it will be raised to the top of the stacking
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   250
order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   251
Selecting happens by releasing the modifier key.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   252
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   253
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   254
\f[B]group-hide\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   255
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   256
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   257
Hides all visible views of the group of the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   258
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   259
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   260
\f[B]group-lower\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   261
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   262
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   263
Lowers all visible views of the group of the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   264
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   265
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   266
\f[B]group-only\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   267
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   268
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   269
Hides all visible views not belonging to the group of the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   270
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   271
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   272
\f[B]group-raise\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   273
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   274
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   275
Raises all visible views of the group of the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   276
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   277
.SS Layout actions
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   278
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   279
\f[B]layout-apply-[a-z]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   280
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   281
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   282
Applies the layout in the according register to the current
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   283
\f[B]workspace sheet\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   284
If the register happens to be empty this is a no-op.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   285
If the view that currently has focus can be tiled and is not borrowed it
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   286
will get raised to the top of the stack.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   287
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   288
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   289
\f[B]layout-cycle-view-[next|prev|first|last]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   290
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   291
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   292
Cycle to the next or previous group according to the layout order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   293
Once a view is selected it will be raised to the top of the stacking
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   294
order, the layout order will remain unchanged.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   295
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   296
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   297
\f[B]layout-exchange-view-[next|prev|main]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   298
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   299
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   300
Swaps the focused view with the next, previous or main view in the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   301
layout order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   302
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   303
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   304
\f[B]layout-reset\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   305
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   306
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   307
Resets the geometry of all views in the current layout.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   308
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   309
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   310
\f[B]layout-restack-[append|prepend]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   311
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   312
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   313
Adds non-floating sheet views to an existing layout without changing
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   314
layout order of already tiled views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   315
If no layout is present the default layout for the current sheet is
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   316
applied.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   317
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   318
.SS Mark actions
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   319
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   320
\f[B]mark-show-[a-z]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   321
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   322
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   323
Shows the view bound to the according mark.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   324
If no view is bound to the mark an optional command for this mark can be
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   325
executed, if none is specified this action is a no-op.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   326
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   327
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   328
\f[B]mark-switch-to-[a-z]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   329
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   330
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   331
Switches to the workspace containing the view bound to the according
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   332
mark.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   333
If no view is bound to the mark an optional command for this mark can be
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   334
executed, if none is specified this action is a no-op.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   335
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   336
.SS Mode actions
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   337
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   338
\f[B]mode-enter-group-assign\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   339
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   340
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   341
Entering \f[I]group-assign-mode\f[R] allows the user to change the group
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   342
of the currently focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   343
Groups that do no exist yet get created.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   344
Groups that become empty get destroyed.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   345
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   346
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   347
\f[B]mode-enter-input-grab\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   348
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   349
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   350
Redirect all input events directly to the focused view without the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   351
compositor interfering.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   352
Focus will not leave this view anymore until the mode exits or the view
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   353
closes.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   354
To exit this mode, reissue the same key binding that started this mode.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   355
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   356
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   357
\f[B]mode-enter-layout\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   358
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   359
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   360
Layout selection awaits one of the layout registers to be selected.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   361
Valid registers range from \f[B]a\f[R] to \f[B]z\f[R] and \f[B]0\f[R] to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   362
\f[B]9\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   363
\f[I]ESC\f[R] cancels this mode without selecting a layout.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   364
If the layout register happens to be empty this action is a no-op.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   365
If the view that currently has focus can be tiled and is not borrowed it
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   366
will get raised to the top of the stack.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   367
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   368
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   369
\f[B]mode-enter-mark-assign\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   370
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   371
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   372
To change the mark of a view enter mark assign mode and select a mark
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   373
between \f[B]a\f[R] and \f[B]z\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   374
This mode turns the mark indicator bar into an input field.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   375
The selection is finalized by pressing \f[I]Enter\f[R] or canceled by
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   376
pressing \f[I]ESC\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   377
If a mark has already been taken the conflicting window will be
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   378
indicated.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   379
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   380
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   381
\f[B]mode-enter-mark-select\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   382
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   383
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   384
Mark selection allows to bring forward a view bound to a mark by
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   385
selecting that mark.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   386
When entering this mode \f[B]hikari\f[R] awaits the name of the mark to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   387
be issued.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   388
If that mark is bound to a view that view is shown, in the case that
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   389
this view is not a member of the \f[B]current sheet\f[R] it is
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   390
considered \f[B]borrowed\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   391
If no view is bound to this mark and the mark has been configured to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   392
execute a command when empty, this command gets executed.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   393
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   394
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   395
\f[B]mode-enter-mark-switch-select\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   396
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   397
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   398
This action works just like \f[B]mode-enter-mark-select\f[R] with the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   399
exception that is switches to the workspace of the bound view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   400
If the mark is not bound it stays on the same workspace.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   401
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   402
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   403
\f[B]mode-enter-move\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   404
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   405
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   406
Moving around views with a pointer device is what this mode is for.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   407
Once entered the pointer will jump to the top left corner of the focused
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   408
view and start moving the view around with the pointer.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   409
When releasing any key this mode is canceled automatically.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   410
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   411
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   412
\f[B]mode-enter-resize\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   413
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   414
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   415
Resizing around views with a pointer device is what this mode is for.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   416
Once entered the pointer will join to the bottom right corner of the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   417
focused view and start resizing the view with the pointer.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   418
When releasing any key this mode is canceled automatically.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   419
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   420
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   421
\f[B]mode-enter-sheet-assign\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   422
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   423
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   424
Entering this mode lets the user change the sheet of a view by pressing
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   425
the number of the target sheet.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   426
If multiple outputs are available they can be cycled using
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   427
\f[I]TAB\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   428
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   429
.SS Sheet actions
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   430
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   431
\f[B]sheet-show-all\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   432
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   433
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   434
Clears the current workspace and populates it with all views that are a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   435
member of its current sheet.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   436
This includes \f[B]invisible\f[R] views as well.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   437
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   438
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   439
\f[B]sheet-show-group\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   440
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   441
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   442
Clears the current workspace and populates it with all views that are a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   443
member of its current sheet and the group of the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   444
This includes \f[B]invisible\f[R] views as well.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   445
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   446
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   447
\f[B]sheet-show-invisible\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   448
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   449
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   450
Clears the current workspace and populates it with all
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   451
\f[B]invisible\f[R] views that are a member of its current sheet.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   452
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   453
.SS View actions
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   454
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   455
\f[B]view-cycle-[next|prev]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   456
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   457
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   458
Cycle through all visible views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   459
The \f[I]next\f[R] view is further up the stack and the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   460
\f[I]previous\f[R] view is further down the stack.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   461
Reaching each end of the stack just wraps around.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   462
Once a view is selected it will be raised to the top of the stacking
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   463
order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   464
Selecting happens by releasing the modifier key.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   465
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   466
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   467
\f[B]view-decrease-size-[up|down|left|right]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   468
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   469
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   470
Decreases the size of the focused view by the amount of pixels set as
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   471
\f[B]step\f[R] value into the given direction
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   472
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   473
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   474
\f[B]view-hide\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   475
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   476
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   477
Hides the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   478
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   479
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   480
\f[B]view-increase-size-[up|down|left|right]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   481
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   482
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   483
Increases the size of the focused view by the amount of pixels set as
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   484
\f[B]step\f[R] value into the given direction
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   485
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   486
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   487
\f[B]view-lower\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   488
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   489
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   490
Lowers the focused view to the bottom of the stacking order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   491
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   492
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   493
\f[B]view-move-[up|down|left|right]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   494
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   495
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   496
Moves the focused view \f[B]step\f[R] pixels into the given direction.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   497
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   498
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   499
\f[B]view-move-[center[|-left|-right]|[bottom|top]-[left|middle|right]]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   500
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   501
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   502
Moves the focused view to the given position on the output.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   503
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   504
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   505
\f[B]view-only\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   506
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   507
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   508
Hides every other view except the focused one.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   509
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   510
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   511
\f[B]view-pin-to-sheet-[0-9|alternate|current]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   512
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   513
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   514
Pins the focused view to a given sheet.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   515
If the sheet is not currently a \f[B]current sheet\f[R] or sheet
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   516
\f[B]0\f[R] the view becomes hidden.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   517
Pinning a view to the \f[B]current sheet\f[R] makes sense for
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   518
\f[B]borrowed views\f[R] which takes this view from its original view
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   519
and pin it to the current one.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   520
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   521
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   522
\f[B]view-quit\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   523
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   524
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   525
Closes the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   526
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   527
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   528
\f[B]view-raise\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   529
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   530
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   531
Raises the view to the top of the stacking order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   532
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   533
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   534
\f[B]view-reset-geometry\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   535
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   536
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   537
Resetting view geometry brings a view back to its original size and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   538
position.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   539
This means that maximization will be undone and the view will also be
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   540
taken out of a layout if it has been a part of one before.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   541
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   542
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   543
\f[B]view-snap-[up|down|left|right]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   544
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   545
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   546
Snap the focused view into the specified direction.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   547
Views can snap to the edge of the screen as well as to the borders of
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   548
neighboring views (in this case the \f[B]gap\f[R] setting is respected).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   549
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   550
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   551
\f[B]view-toggle-floating\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   552
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   553
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   554
Toggles the floating state of the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   555
Floating views can not be part of a layout.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   556
If a view that is already tiled is set to floating state it will be
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   557
taken out of the layout and reset its geometry.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   558
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   559
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   560
\f[B]view-toggle-invisible\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   561
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   562
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   563
Toggles the invisible state of the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   564
A view in invisible state is not displayed if a user switches to the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   565
sheet containing this view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   566
They need to be shown explicitly, either by using marks or by issuing
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   567
actions showing views in this state.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   568
Iconified views can not be part of a layout.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   569
If a view that is already tiled is set to invisible state it will be
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   570
taken out of the layout and reset its geometry.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   571
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   572
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   573
\f[B]view-toggle-maximize-[full|horizontal|vertical]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   574
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   575
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   576
Maximizes the focused view in the given direction.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   577
Maximization state complement each other so maximizing a view
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   578
horizontally and then vertically adds up to a full maximization state
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   579
and so on.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   580
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   581
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   582
\f[B]view-toggle-public\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   583
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   584
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   585
Toggles the public state of the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   586
Public views are also displayed on the lock screen (note: they do not
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   587
accept any input when the screen is locked though).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   588
These views should only contain information that should be displayed
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   589
when the screen is locked, such as clocks or the progress of a long
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   590
running process, they should never contain sensitive information.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   591
The public state is indicated in the sheet indicator bar via
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   592
\f[B]!\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   593
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   594
.SS VT actions
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   595
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   596
\f[B]vt-switch-to-[1-9]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   597
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   598
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   599
Switches to another virtual terminal.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   600
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   601
.SS Workspace actions
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   602
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   603
\f[B]workspace-clear\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   604
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   605
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   606
Clears the current workspace.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   607
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   608
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   609
\f[B]workspace-cycle-[next|prev]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   610
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   611
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   612
Cycle through available workspaces selecting the view that had focus
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   613
last.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   614
If that view is no longer visible the first view of the \f[B]current
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   615
sheet\f[R] of that workspace is selected .
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   616
In both cases the cursor gets centered on that view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   617
If the \f[B]current sheet\f[R] is empty this moves the cursor into the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   618
center of the target workspace.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   619
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   620
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   621
\f[B]workspace-show-all\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   622
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   623
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   624
Clears the current workspace and populates it with all views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   625
This includes \f[B]invisible\f[R] views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   626
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   627
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   628
\f[B]workspace-show-group\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   629
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   630
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   631
Raises the focused view, clears the current workspace and populates it
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   632
with all views that are a member of the group of the focused view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   633
This includes \f[B]invisible\f[R] views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   634
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   635
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   636
\f[B]workspace-show-invisible\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   637
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   638
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   639
Clears the current workspace and populates it with all
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   640
\f[B]invisible\f[R] views that belong to that workspace.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   641
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   642
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   643
\f[B]workspace-switch-to-sheet-[0-9|alternate|current]\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   644
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   645
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   646
Clears the current workspace and populates it with all views that are a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   647
member of the specified sheet.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   648
This action also sets the \f[B]current sheet\f[R] of the workspace to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   649
this very sheet.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   650
Views that are a member of sheet \f[B]0\f[R] will also be displayed on
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   651
the bottom of the stacking order.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   652
Switching to the current sheet will reset the state of the sheet
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   653
e.g.\ hiding borrowed views, showing views that have previously been
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   654
hidden and hiding views that are in invisible state.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   655
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   656
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   657
\f[B]workspace-switch-to-sheet-[next|prev]-inhabited\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   658
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   659
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   660
Switch to the next or previous sheet (excluding \f[B]00\f[R]) that
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   661
contains at least one member.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   662
If none exists is a no-op.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   663
This action also sets the \f[B]current sheet\f[R] of the workspace to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   664
this sheet.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   665
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   666
.SH USER DEFINED ACTIONS
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   667
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   668
Actions can also be user defined, this is done in the \f[I]actions\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   669
section of the configuration file.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   670
A user defined action consists of a name and a command that should be
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   671
run when the action has been issued.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   672
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   673
To define an action \f[I]action-terminal\f[R] that launches sakura(1)
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   674
one needs to defined the following.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   675
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   676
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   677
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   678
terminal = sakura
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   679
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   680
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   681
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   682
Now we can bind the newly defined \f[I]action-terminal\f[R] to a key
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   683
combination in the \f[I]bindings\f[R] section.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   684
.SH BINDINGS
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   685
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   686
Actions can be bound to keys and mouse buttons.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   687
The \f[I]bindings\f[R] section in the configuration file is used for
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   688
this matter.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   689
Keys can be specified by using either key symbols or codes.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   690
A key combination starts with a string identifying the modifiers for the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   691
bindings.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   692
There are 5 valid modifiers.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   693
A valid modifier string is a combination of the following modifiers.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   694
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   695
\f[B]L\f[R] (Logo)
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   696
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   697
\f[B]S\f[R] (Shift)
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   698
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   699
\f[B]C\f[R] (Control)
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   700
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   701
\f[B]A\f[R] (Alt)
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   702
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   703
\f[B]5\f[R] (AltGR)
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   704
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   705
If we want to omit the modifier for a key binding we signal this by
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   706
using \[lq]0\[rq] instead of a modifier string.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   707
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   708
Following the modifier string a key symbol or code can be stated.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   709
If we are using a key symbol to identify a key combination we are using
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   710
\[lq]+\[rq] followed by the symbol in the case of a key code we are
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   711
using \[lq]-\[rq] followed by the numerical key code.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   712
Key symbols and codes can be determined using wev(1).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   713
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   714
Once a key combination has been identified it can be bound to an action.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   715
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   716
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   717
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   718
\[dq]LS+a\[dq] = action1 # symbol binding
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   719
\[dq]LS-38\[dq] = action2 # code binding
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   720
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   721
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   722
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   723
The \f[I]bindings\f[R] section can contain 2 subsections
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   724
\f[I]keyboard\f[R] and \f[I]mouse\f[R] for keyboard and mouse bindings.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   725
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   726
Valid values for mouse button names are \f[I]right\f[R],
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   727
\f[I]middle\f[R], \f[I]left\f[R], \f[I]side\f[R], \f[I]extra\f[R],
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   728
\f[I]forward\f[R], \f[I]back\f[R] and \f[I]task\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   729
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   730
Bindings can have a dedicated \f[I]end\f[R] action that gets triggered
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   731
whenever a key is released or additional keys are pressed.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   732
It ensures that a \f[I]begin\f[R] action definitely is followed by the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   733
\f[I]end\f[R] action.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   734
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   735
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   736
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   737
\[dq]L+t\[dq]  = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   738
  begin = action-push-to-talk-start
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   739
  end = action-push-to-talk-stop
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   740
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   741
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   742
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   743
.SH MARK CONFIGURATION
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   744
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   745
Marks can be used to quickly navigate to views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   746
They can also execute commands when they are not currently bound to a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   747
view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   748
This functionality can be used to start an application that can then
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   749
take over that mark using auto configuration.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   750
Note that the started application does not automatically take over the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   751
mark.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   752
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   753
To specify commands that are issued on unassigned marks one can specify
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   754
the commands associated with the mark in the \f[I]marks\f[R] section in
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   755
the configuration file.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   756
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   757
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   758
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   759
marks {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   760
  s = sakura
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   761
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   762
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   763
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   764
.SH VIEW CONFIGURATION
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   765
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   766
When an application start its views can be automatically configured by
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   767
\f[B]hikari\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   768
Each view has a property called \f[I]id\f[R], in the \f[I]views\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   769
section this can be used to specify certain properties you want for that
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   770
view to apply.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   771
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   772
\f[B]floating\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   773
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   774
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   775
Takes a boolean to specify the view\[cq]s \f[B]floating\f[R] state on
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   776
startup.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   777
The default value is \f[I]false\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   778
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   779
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   780
\f[B]focus\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   781
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   782
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   783
Takes a boolean to specify if the view should automatically grab focus
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   784
when it appears for the first time.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   785
This is useful for views that appear at a specified position.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   786
The default value is \f[I]false\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   787
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   788
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   789
\f[B]group\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   790
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   791
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   792
Automatically assign this view to a group (if the group does not exist
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   793
it is created automatically).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   794
If no group is specified a group name equal to the view \f[I]id\f[R] is
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   795
chosen.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   796
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   797
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   798
\f[B]inherit\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   799
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   800
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   801
Lets the user specify a list of properties which should be inherited to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   802
child views (e.g.\ dialogs).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   803
To inherit a property just state the name of the property as a string.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   804
Additionally use an object to overwrite specific values if they should
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   805
differ from the parent\[cq]s configuration.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   806
Values that are not explicitly inherited resort to their default.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   807
If \f[B]inherit\f[R] is not specified the child view is going to use the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   808
parent\[cq]s configuration.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   809
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   810
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   811
\f[B]invisible\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   812
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   813
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   814
Takes a boolean to specify the view\[cq]s \f[B]invisible\f[R] state on
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   815
startup.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   816
The default value is \f[I]false\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   817
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   818
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   819
\f[B]mark\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   820
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   821
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   822
Assign a mark to the view.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   823
This only takes effect if that mark is not already bound to another view
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   824
already.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   825
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   826
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   827
\f[B]position\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   828
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   829
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   830
Positions a newly created view to the given coordinates.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   831
\f[B]hikari\f[R] allows two ways to define a view position.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   832
One way is to specify absolute position stating the \f[B]x\f[R] and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   833
\f[B]y\f[R] coordinates as a object, the other one is by stating them as
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   834
one of the following options:
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   835
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   836
\f[I]bottom-left\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   837
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   838
\f[I]bottom-middle\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   839
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   840
\f[I]bottom-right\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   841
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   842
\f[I]center\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   843
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   844
\f[I]center-left\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   845
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   846
\f[I]center-right\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   847
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   848
\f[I]top-left\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   849
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   850
\f[I]top-middle\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   851
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   852
\f[I]top-right\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   853
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   854
This allows positioning a view relative to the output.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   855
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   856
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   857
\f[B]public\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   858
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   859
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   860
Takes a boolean to specify the view\[cq]s \f[B]public\f[R] state on
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   861
startup.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   862
The default value is \f[I]false\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   863
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   864
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   865
\f[B]sheet\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   866
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   867
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   868
Takes an integer that references the sheet this view should be assigned
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   869
to.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   870
If the \f[B]current sheet\f[R] is unequal to this sheet or \f[B]0\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   871
this view automatically is considered to be \f[B]borrowed\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   872
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   873
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   874
To configure views of the \f[B]systat\f[R] \f[I]id\f[R] to become a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   875
member of the group \f[I]monitor\f[R] and automatically assign them to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   876
sheet \f[B]0\f[R] with a given position and focus grabbing we would do
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   877
something like this.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   878
Child views inherit the \f[B]group\f[R] and \f[B]sheet\f[R] property
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   879
while overwriting \f[B]floating\f[R] to \f[I]true\f[R], all the other
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   880
properties are set to their respective default values.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   881
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   882
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   883
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   884
systat = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   885
  group = monitor
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   886
  sheet = 0
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   887
  position = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   888
    x = 1429
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   889
    y = 1077
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   890
  }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   891
  focus = true
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   892
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   893
  inherit = [ group, sheet, { floating = true } ]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   894
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   895
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   896
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   897
.SH LAYOUTS
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   898
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   899
\f[B]hikari\f[R] is not a tiling compositor so naturally some things
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   900
will behave a bit differently compared to traditional tiling approaches.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   901
First and foremost, \f[B]hikari\f[R] tries to minimize operations that
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   902
will affect a lot of views at the same time e.g.\ opening a new view
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   903
will not automatically insert a view into an existing layout and resize
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   904
all of the already tiled views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   905
To insert a view into an existing layout the user has to issue a tiling
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   906
action.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   907
This way opening a new view does not scramble an existing layout and the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   908
user can actively decide when to incorporate a view into a layout.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   909
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   910
A layout is bound to a sheet, each sheet can have at most one layout and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   911
laying out a sheet will incorporate all of its views unless they are
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   912
\f[B]invisible\f[R] or \f[B]floating\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   913
Resetting a layout will reset the geometry of all of the laid out views
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   914
to its original geometry (also resetting maximization).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   915
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   916
Configuring layouts happens in the \f[I]layouts\f[R] section in the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   917
configuration file.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   918
Layouts are assigned to layout registers from \f[B]a\f[R] to \f[B]z\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   919
and special layout registers \f[B]0\f[R] to \f[B]9\f[R] which correspond
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   920
to default layouts for a respective sheet.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   921
A layout itself is a combination of splits and containers with tiling
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   922
algorithms.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   923
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   924
Splits are used to subdivide regions of space and containers are used to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   925
consume views and layout them according to a specific tiling algorithm.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   926
.SS Splits
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   927
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   928
A layout subdivides the screen space using splits.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   929
Dividing up the screen space uses a binary space partitioning approach.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   930
One can split a region of space horizontally or vertically into to new
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   931
regions which can contain either another split or a container with a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   932
tiling algorithm.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   933
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   934
To split up the screen vertically into two equally sized section one has
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   935
to specify when the \f[I]left\f[R] and \f[I]right\f[R] hand side of the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   936
split should contain.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   937
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   938
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   939
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   940
{
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   941
  left = ...
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   942
  right = ...
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   943
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   944
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   945
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   946
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   947
Respectively to split horizontally you have to specify \f[I]top\f[R] and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   948
\f[I]bottom\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   949
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   950
Notice that the order in which you specify \f[I]left\f[R],
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   951
\f[I]right\f[R], \f[I]top\f[R] and \f[I]bottom\f[R] is important, since
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   952
it defined the orientation of the split.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   953
The side of the split that gets specified first is the part the gets
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   954
filled first when tiling a sheet, it becomes the dominant part of the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   955
split.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   956
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   957
Sometimes splitting a region of space should not result in equally sized
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   958
subdivisions and the dominant part of the split should be scaled up or
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   959
down.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   960
This can be done by specifying the \f[I]scale\f[R] attribute which can
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   961
vary between \f[B]0.1\f[R] to \f[B]0.9\f[R], if no \f[I]scale\f[R] is
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   962
specified this value defaults to \f[B]0.5\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   963
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   964
To horizontally split a region on space where the top portion of the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   965
split should take up 75% would be specified like so:
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   966
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   967
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   968
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   969
{
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   970
  scale = 0.75
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   971
  top = ...
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   972
  bottom = ...
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   973
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   974
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   975
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   976
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   977
Additionally to setting a fixed \f[I]scale\f[R] value, \f[B]hikari\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   978
allows to specify a \f[I]scale\f[R] object with \f[I]min\f[R] and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   979
\f[I]max\f[R] values.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   980
This is called dynamic scaling, and it uses the size of the first view
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   981
inside the container to determine the size of the entire container.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   982
The \f[I]min\f[R] and \f[I]max\f[R] values are used to specify possible
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   983
minimum and maximum scale values for the container.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   984
Omitting the values for \f[I]min\f[R] or \f[I]max\f[R] sets the former
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   985
to \f[B]0.1\f[R] and the latter to \f[B]0.9\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   986
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   987
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   988
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   989
{
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   990
  scale = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   991
    min = 0.5
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   992
    max = 0.75
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   993
  }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   994
  left = single
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   995
  right = stack
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   996
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   997
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   998
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
   999
.SS Containers
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1000
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1001
Containers consume a number of views and arrange them according to a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1002
tiling algorithm.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1003
There are 6 different tiling algorithms that you can assign to a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1004
container.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1005
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1006
\f[B]empty\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1007
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1008
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1009
This is one of the simplest algorithms, it does not consume any views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1010
This is used if a user desired to have a container of a layout to remain
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1011
empty e.g.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1012
preventing the layout to cover up a portion of the workspace.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1013
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1014
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1015
\f[B]single\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1016
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1017
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1018
Containers using the \f[B]single\f[R] layout only consume one view which
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1019
takes up the entire container.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1020
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1021
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1022
\f[B]full\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1023
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1024
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1025
Each view inside of a container using this algorithm will take up the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1026
entire size of the container.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1027
All of the views are stacked up on top of each other.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1028
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1029
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1030
\f[B]stack\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1031
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1032
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1033
The \f[B]stack\f[R] algorithm tries to give every view the container
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1034
consumes an equal amount of vertical space (excess space is given to the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1035
first view).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1036
The order in which stacking works is from top to bottom.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1037
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1038
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1039
\f[B]queue\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1040
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1041
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1042
The \f[B]queue\f[R] algorithm tries to give every view the container
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1043
consumes an equal amount of horizontal space (excess space is given to
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1044
the first view).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1045
The order in which stacking works is from left to right.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1046
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1047
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1048
\f[B]grid\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1049
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1050
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1051
A grid tries to give each view the containers consumes an equal amount
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1052
of horizontal and vertical space (excess space is given to the first
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1053
view, and therefore first row of the grid).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1054
If the amount of views can not be split up into equal rows and column
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1055
the last part of the grid will not be filled.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1056
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1057
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1058
The easiest way to define a layout is by simply stating the tiling
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1059
algorithm.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1060
Binding a fullscreen layout to the layout register \f[B]f\f[R] can be
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1061
trivially achieved.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1062
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1063
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1064
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1065
f = full
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1066
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1067
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1068
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1069
This layout does not subdivide the screen using splits in any way.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1070
The container takes up the entire screen space (respecting gap settings)
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1071
and uses the \f[B]full\f[R] algorithm to arrange the views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1072
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1073
More complex layouts might demand that the user specifies the number of
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1074
views that the container may contain up to a maximum.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1075
This can be achieved by specifying a container object.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1076
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1077
To define a \f[B]queue\f[R] container that contains up to 4 views one
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1078
would define it like that:
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1079
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1080
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1081
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1082
{
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1083
  views = 4
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1084
  layout = queue
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1085
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1086
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1087
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1088
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1089
Just stating the tiling algorithm is a short-hand for a layout object
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1090
with where \f[I]views\f[R] is set to 256.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1091
.SH UI CONFIGURATION
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1092
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1093
Getting everything to look right is an important aspect of feeling
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1094
\[lq]at home\[rq].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1095
\f[B]hikari\f[R] offers a couple of options to tweak visuals to the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1096
users content.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1097
All of these configuration options are part of the \f[I]ui\f[R] section.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1098
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1099
\f[B]border\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1100
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1101
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1102
Defines the thickness of view borders in pixels.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1103
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1104
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1105
Standard border thickness is set to \f[B]1\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1106
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1107
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1108
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1109
border = 1
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1110
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1111
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1112
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1113
\f[B]gap\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1114
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1115
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1116
A gap is some extra space that is left between views when using a layout
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1117
or snapping views.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1118
The value also specifies a pixel value.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1119
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1120
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1121
The standard \f[B]gap\f[R] value is 5.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1122
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1123
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1124
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1125
gap = 5
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1126
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1127
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1128
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1129
\f[B]font\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1130
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1131
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1132
Specifies the font that is used for indicator bars.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1133
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1134
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1135
\f[B]hikari\f[R] uses \f[I]monospace 10\f[R] as its default font
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1136
setting.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1137
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1138
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1139
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1140
font = \[dq]monospace 10\[dq]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1141
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1142
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1143
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1144
\f[B]step\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1145
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1146
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1147
The step value defines how many pixels move and resize operations should
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1148
cover.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1149
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1150
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1151
The standard \f[B]step\f[R] value is 100.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1152
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1153
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1154
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1155
step = 100
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1156
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1157
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1158
.SS Colorschemes
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1159
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1160
\f[B]hikari\f[R] uses color to indicate different states of views and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1161
their indicator bars.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1162
By specifying a \f[I]colorscheme\f[R] section the user can control these
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1163
colors.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1164
A colorscheme is a number of properties that can be changed
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1165
individually.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1166
Colors are specified using hexadecimal RGB values (e.g.\ 0xE6DB74).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1167
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1168
\f[B]active\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1169
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1170
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1171
Indicates view focus.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1172
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1173
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1174
\f[B]background\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1175
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1176
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1177
Specifies the background color.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1178
This will be obscured by a wallpaper
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1179
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1180
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1181
\f[B]conflict\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1182
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1183
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1184
Conflicts can happen when the user attempts to overwrite something (e.g.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1185
binding a mark to a view that is already taken up by another view) or
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1186
does something illegal (e.g.\ defining a new group with a leading digit
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1187
in its name).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1188
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1189
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1190
\f[B]first\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1191
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1192
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1193
Signals that the indicated view is the topmost view of a group.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1194
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1195
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1196
\f[B]foreground\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1197
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1198
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1199
Font color for indicator bars.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1200
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1201
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1202
\f[B]grouped\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1203
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1204
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1205
Views that belong to the same group are indicated using this color.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1206
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1207
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1208
\f[B]inactive\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1209
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1210
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1211
Indicates that a view does not have focus.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1212
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1213
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1214
\f[B]insert\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1215
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1216
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1217
Indicates indicator bars that are in insert mode (e.g.\ assigning a view
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1218
to a group) or views that have an input grab using
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1219
\f[I]mode-enter-input-grab\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1220
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1221
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1222
\f[B]selected\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1223
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1224
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1225
This color is used to indicate that a view is selected.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1226
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1227
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1228
These are the default settings for the \f[B]hikari\f[R] colorscheme.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1229
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1230
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1231
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1232
colorscheme {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1233
  background = 0x282C34
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1234
  foreground = 0x000000
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1235
  selected   = 0xF5E094
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1236
  grouped    = 0xFDAF53
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1237
  first      = 0xB8E673
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1238
  conflict   = 0xED6B32
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1239
  insert     = 0xE3C3FA
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1240
  active     = 0xFFFFFF
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1241
  inactive   = 0x465457
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1242
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1243
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1244
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1245
.SH INPUTS
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1246
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1247
The \f[I]inputs\f[R] section is used to configure input devices.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1248
Device names can be determined using libinput(1).
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1249
.SS Pointers
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1250
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1251
Pointers can be configured in the \f[I]pointers\f[R] subsection.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1252
The following options are available.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1253
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1254
\f[B]accel\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1255
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1256
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1257
Sets mouse acceleration for the pointer device to a value between
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1258
\f[B]-1\f[R] and \f[B]1\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1259
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1260
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1261
\f[B]disable-while-typing\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1262
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1263
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1264
Enable or disable \f[I]disable-while-typing\f[R] if available.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1265
This setting expects a boolean value.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1266
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1267
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1268
\f[B]middle-emulation\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1269
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1270
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1271
Enable or disable middle click emulation if available.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1272
This setting expects a boolean value.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1273
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1274
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1275
\f[B]natural-scrolling\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1276
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1277
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1278
Enable or disable \f[I]natural-scrolling\f[R] if available.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1279
This setting expects a boolean value.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1280
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1281
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1282
\f[B]scroll-button\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1283
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1284
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1285
Configures the pointer scroll button.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1286
Valid values are \f[I]right\f[R], \f[I]middle\f[R], \f[I]left\f[R],
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1287
\f[I]side\f[R], \f[I]extra\f[R], \f[I]forward\f[R], \f[I]back\f[R] and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1288
\f[I]task\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1289
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1290
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1291
\f[B]scroll-method\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1292
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1293
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1294
Sets the pointers scroll method.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1295
Valid values are \f[I]no-scroll\f[R], \f[I]on-button-down\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1296
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1297
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1298
\f[B]tap\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1299
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1300
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1301
Enable or disable \f[I]tap\f[R] if available.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1302
This setting expects a boolean value.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1303
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1304
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1305
\f[B]tap-drag\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1306
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1307
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1308
Enable or disable \f[I]tap-drag\f[R] if available.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1309
This setting expects a boolean value.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1310
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1311
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1312
\f[B]tap-drag-lock\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1313
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1314
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1315
Enable or disable \f[I]tap-drag-lock\f[R] if available.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1316
This setting expects a boolean value.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1317
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1318
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1319
Configuring the \f[I]System mouse\f[R] input device could look like
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1320
this.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1321
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1322
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1323
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1324
inputs {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1325
  pointers {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1326
    \[dq]System mouse\[dq] = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1327
      accel = 1.0
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1328
      scroll-method = on-button-down
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1329
      scroll-button = middle
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1330
    }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1331
  }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1332
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1333
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1334
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1335
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1336
A special name \[lq]*\[rq] is used to address all pointers.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1337
Values defined for this pseudo pointer override unconfigured values for
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1338
any other pointer.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1339
.SS Keyboards
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1340
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1341
\f[C]hikari\f[R] is using \f[C]xkb\f[R] to configure its keyboards via
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1342
the \f[I]keyboards\f[R] section.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1343
\f[C]xkb\f[R] rules can be set independently or via a file using the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1344
\f[I]xkb\f[R] attribute.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1345
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1346
To specify rules individually one can use the following options.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1347
Refer to xkeyboard-config(7) for possible settings.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1348
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1349
\f[B]rules\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1350
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1351
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1352
Specifies the \f[C]xkb\f[R] rules.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1353
The default value is \f[C]evdev\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1354
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1355
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1356
\f[B]model\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1357
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1358
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1359
Sets the keyboard model.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1360
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1361
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1362
\f[B]layout\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1363
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1364
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1365
Sets the keyboard layout.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1366
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1367
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1368
\f[B]variant\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1369
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1370
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1371
Sets the keyboard variant.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1372
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1373
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1374
\f[B]options\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1375
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1376
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1377
Sets keyboard options.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1378
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1379
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1380
Additionally \f[B]hikari\f[R] can also configure key repeat using the
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1381
following attributes.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1382
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1383
\f[B]repeat-delay\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1384
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1385
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1386
Takes a positive integer to specify the key repeat delay in
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1387
milliseconds.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1388
The default value is 600.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1389
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1390
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1391
\f[B]repeat-rate\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1392
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1393
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1394
Takes a positive integer to specify the key repeat rate in Hz.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1395
The default value is 25.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1396
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1397
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1398
Configuring the \f[I]AT keyboard\f[R] input device could look like this.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1399
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1400
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1401
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1402
inputs {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1403
  keyboards {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1404
    \[dq]*\[dq] = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1405
      xkb = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1406
        layout = \[dq]de(nodeadkeys)\[dq]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1407
        options = \[dq]caps:escape\[dq]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1408
      }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1409
      repeat-rate = 25
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1410
      repeat-delay = 600
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1411
    }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1412
  }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1413
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1414
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1415
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1416
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1417
A special name \[lq]*\[rq] is used to address all keyboards.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1418
Values defined for this pseudo keyboard override unconfigured values for
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1419
any other pointer.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1420
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1421
Keyboards can also be configured using \f[I]XKB\f[R] environment
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1422
variables.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1423
\f[C]hikari\f[R] will automatically fall back to these settings if a
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1424
keyboard is not explicitly configured.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1425
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1426
\f[B]XKB_DEFAULT_LAYOUT\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1427
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1428
\f[B]XKB_DEFAULT_MODEL\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1429
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1430
\f[B]XKB_DEFAULT_OPTIONS\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1431
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1432
\f[B]XKB_DEFAULT_RULES\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1433
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1434
To specify a layout set \f[B]XKB_DEFAULT_LAYOUT\f[R] to the desired
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1435
layout.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1436
This needs to happen before starting \f[B]hikari\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1437
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1438
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1439
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1440
XKB_DEFAULT_LAYOUT \[dq]de(nodeadkeys),de\[dq]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1441
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1442
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1443
.SS Switches
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1444
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1445
Switches can be configured in the \f[I]switches\f[R] subsection.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1446
A switch just takes an action and functions like a regular key binding
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1447
using the name of the switch as an identifier.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1448
The \f[I]begin\f[R] action is triggered when turning the switch on and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1449
\f[I]end\f[R] is triggered when turning it off.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1450
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1451
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1452
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1453
inputs {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1454
  switches {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1455
    \[dq]Control Method Lid Switch\[dq] = lock
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1456
  }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1457
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1458
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1459
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1460
.SH OUTPUTS
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1461
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1462
The \f[I]outputs\f[R] section allows users to define the background and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1463
position for a output using its name.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1464
A special name \[lq]*\[rq] is used to address all outputs.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1465
Values defined for this pseudo output override unconfigured values for
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1466
any other output.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1467
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1468
Backgrounds are configured via the \f[I]background\f[R] attribute which
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1469
can be either the path to the background image, or an object which
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1470
enables the user to define additional attributes for the background
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1471
image.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1472
Background file format has to be \f[I]PNG\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1473
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1474
When defining a \f[I]background\f[R] object the following attributes are
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1475
available.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1476
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1477
\f[B]path\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1478
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1479
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1480
This attribute giving the \f[I]path\f[R] to the wallpaper image file is
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1481
mandatory.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1482
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1483
.IP \[bu] 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1484
\f[B]fit\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1485
.RS 2
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1486
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1487
Specifies how the wallpaper should be displayed.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1488
Available options are \f[I]center\f[R], \f[I]stretch\f[R] and
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1489
\f[I]tile\f[R].
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1490
\f[I]stretch\f[R] is the default even when specifying the background
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1491
image as a string.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1492
.RE
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1493
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1494
Configuring output \f[I]eDP-1\f[R] and \f[I]WL-1\f[R] could look like
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1495
this.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1496
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1497
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1498
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1499
outputs {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1500
  \[dq]eDP-1\[dq] = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1501
    background = \[dq]/path/to/wallpaper\[dq]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1502
  }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1503
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1504
  WL-1 = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1505
    background = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1506
      path = \[dq]/path/to/wallpaper\[dq]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1507
      fit = center
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1508
    }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1509
  }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1510
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1511
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1512
.fi
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1513
.PP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1514
Output position can be given explicitly using the \f[I]position\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1515
attribute.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1516
If none is given during startup \f[B]hikari\f[R] will automatically
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1517
configure the output.
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1518
.IP
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1519
.nf
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1520
\f[C]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1521
\[dq]eDP-1\[dq] = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1522
  position = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1523
    x = 1680
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1524
    y = 0
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1525
  }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1526
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1527
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1528
\[dq]HDMI-A-1\[dq] = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1529
  position = {
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1530
    x = 0
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1531
    y = 0
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1532
  }
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1533
}
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1534
\f[R]
22d142c795ec Initial commit
gabriel
parents:
diff changeset
  1535
.fi