summaryrefslogtreecommitdiffstats
path: root/docs/source/hotkeys.rst
blob: f91c1e80a64f83c6527f3f91d258bd908f89be85 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
.. _hotkeys:

Hotkey Reference
================

This reference covers the keys used to control **lnav**.  Consult the `built-in
help <https://github.com/tstack/lnav/blob/master/src/help.txt>`_ in **lnav** for
a more detailed explanation of each key.

Spatial Navigation
------------------

The majority of these hotkeys should be available in all views.

.. list-table::
   :header-rows: 1
   :widths: 6 6 6 20

   * - Keypress
     -
     -
     - Command
   * - :kbd:`Space`
     - :kbd:`PgDn`
     -
     - Down a page
   * - :kbd:`b`
     - :kbd:`Backspace`
     - :kbd:`PgUp`
     - Up a page
   * - :kbd:`j`
     - :kbd:`↓`
     -
     - Down a line
   * - :kbd:`k`
     - :kbd:`↑`
     -
     - Up a line
   * - :kbd:`h`
     - :kbd:`←`
     -
     - Left half a page.  In the log view, pressing left while at the start of
       the message text will reveal the source file name for each line.
       Pressing again will reveal the full path.
   * - :kbd:`Shift` + :kbd:`h`
     - :kbd:`Shift` + :kbd:`←`
     -
     - Left ten columns
   * - :kbd:`l`
     - :kbd:`→`
     -
     - Right half a page
   * - :kbd:`Shift` + :kbd:`l`
     - :kbd:`Shift` + :kbd:`→`
     -
     - Right ten columns
   * - :kbd:`Home`
     - :kbd:`g`
     -
     - Top of the view
   * - :kbd:`End`
     - :kbd:`G`
     -
     - Bottom of the view
   * - :kbd:`e`
     - :kbd:`Shift` + :kbd:`e`
     -
     - Next/previous error
   * - :kbd:`w`
     - :kbd:`Shift` + :kbd:`w`
     -
     - Next/previous warning
   * - :kbd:`n`
     - :kbd:`Shift` + :kbd:`n`
     -
     - Next/previous search hit
   * - :kbd:`>`
     - :kbd:`<`
     -
     - Next/previous search hit (horizontal)
   * - :kbd:`f`
     - :kbd:`Shift` + :kbd:`f`
     -
     - Next/previous file
   * - :kbd:`u`
     - :kbd:`Shift` + :kbd:`u`
     -
     - Next/previous bookmark
   * - :kbd:`o`
     - :kbd:`Shift` + :kbd:`o`
     -
     - Forward/backward through log messages with a matching "opid" field
   * - :kbd:`s`
     - :kbd:`Shift` + :kbd:`s`
     -
     - Next/previous slow down in the log message rate
   * - :kbd:`{`
     - :kbd:`}`
     -
     - Previous/next location in history

Chronological Navigation
------------------------

These hotkeys are only functional on views that are time-based, like the log
view or the histogram view.

.. list-table::
   :header-rows: 1
   :widths: 5 5 20

   * - Keypress
     -
     - Command
   * - :kbd:`d`
     - :kbd:`Shift` + :kbd:`d`
     - Forward/backward 24 hours
   * - :kbd:`1` - :kbd:`6`
     - :kbd:`Shift` + :kbd:`1` - :kbd:`6`
     - Next/previous n'th ten minute of the hour
   * - :kbd:`7`
     - :kbd:`8`
     - Previous/next minute
   * - :kbd:`0`
     - :kbd:`Shift` + :kbd:`0`
     - Next/previous day
   * - :kbd:`r`
     - :kbd:`Shift` + :kbd:`r`
     - Forward/backward by the relative time that was last used with the goto command.

Breadcrumb Navigation
---------------------

The following hotkeys are related to the breadcrumb bar that is below the top
status bar.

.. list-table::
   :header-rows: 1
   :widths: 5 20

   * - Keypress
     - Description
   * - :kbd:`ENTER`
     - Focus on the breadcrumb bar.  Or, if the bar is currently focused,
       accept the selected value and drop focus.
   * - :kbd:`Escape`
     - Drop focus on the breadcrumb bar.
   * - :kbd:`←`
     - Select the crumb to the left. If the first crumb is selected, the
       selection will wrap around to the last crumb.
   * - :kbd:`→`
     - Accept the current value, which might mean navigating to the value in
       the view, then selecting the crumb to the right.
   * - :kbd:`Ctrl` + :kbd:`a`
     - Select the first crumb.
   * - :kbd:`Ctrl` + :kbd:`e`
     - Select the last crumb.
   * - :kbd:`↓`
     - Select the next value in the crumb dropdown.
   * - :kbd:`↑`
     - Select the previous value in the crumb dropdown.
   * - :kbd:`Home`
     - Select the first value in the crumb dropdown.
   * - :kbd:`End`
     - Select the last value in the crumb dropdown.

While a crumb is selected, you can perform a fuzzy search on the possible
values by typing in the value you are interested in.

.. _hotkeys_bookmarks:

Bookmarks
---------

.. list-table::
   :header-rows: 1
   :widths: 5 20

   * - Keypress
     - Command
   * - :kbd:`m`
     - Mark/unmark the top line
   * - :kbd:`Shift` + :kbd:`m`
     - Mark/unmark the range of lines from the last marked to the top
   * - :kbd:`Shift` + :kbd:`j`
     - Mark/unmark the next line after the previously marked
   * - :kbd:`Shift` + :kbd:`k`
     - Mark/unmark the previous line
   * - :kbd:`c`
     - Copy marked lines to the clipboard
   * - :kbd:`Shift` + :kbd:`c`
     - Clear marked lines

.. _hotkeys_display:

Display
-------

.. list-table::
   :header-rows: 1
   :widths: 5 20

   * - Keypress
     - Command
   * - :kbd:`?`
     - View/leave builtin help
   * - :kbd:`q`
     - Return to the previous view/quit
   * - :kbd:`Shift` + :kbd:`q`
     - Return to the previous view/quit while matching the top times of the two views
   * - :kbd:`a`
     - Restore the view that was previously popped with 'q/Q'
   * - :kbd:`Shift` + :kbd:`a`
     - Restore the view that was previously popped with 'q/Q' and match the top times of the views
   * - :kbd:`Shift` + :kbd:`p`
     - Switch to/from the pretty-printed view of the displayed log or text files
   * - :kbd:`Shift` + :kbd:`t`
     - Display elapsed time between lines
   * - :kbd:`t`
     - Switch to/from the text file view
   * - :kbd:`i`
     - Switch to/from the histogram view
   * - :kbd:`Shift` + :kbd:`i`
     - Switch to/from the histogram view
   * - :kbd:`v`
     - Switch to/from the SQL result view
   * - :kbd:`Shift` + :kbd:`v`
     - Switch to/from the SQL result view and move to the corresponding in the
       log_line column
   * - :kbd:`p`
     - Toggle the display of the log parser results
   * - :kbd:`Tab`
     - In the log/text views, focus on the configuration panel for editing
       filters and examining the list of loaded files.  In the SQL result view,
       cycle through columns to display as bar graphs
   * - :kbd:`Ctrl` + :kbd:`l`
     - Switch to lo-fi mode.  The displayed log lines will be dumped to the
       terminal without any decorations so they can be copied easily.
   * - :kbd:`Ctrl` + :kbd:`w`
     - Toggle word-wrap.
   * - :kbd:`Ctrl` + :kbd:`p`
     - Show/hide the data preview panel that may be opened when entering
       commands or SQL queries.
   * - :kbd:`Ctrl` + :kbd:`f`
     - Toggle the enabled/disabled state of all filters in the current view.
   * - :kbd:`x`
     - Toggle the hiding of log message fields. The hidden fields will be
       replaced with three bullets and highlighted in yellow.
   * - :kbd:`=`
     - Pause/unpause loading of new file data.

Session
-------

.. list-table::
   :header-rows: 1
   :widths: 5 20

   * - Keypress
     - Command
   * - :kbd:`Ctrl` + :kbd:`R`
     - Reset the current :ref:`session<sessions>` state.  The session state
       includes things like filters, bookmarks, and hidden fields.

Query Prompts
-------------

.. list-table::
   :header-rows: 1
   :widths: 5 20

   * - Keypress
     - Command
   * - :kbd:`/`
     - Search for lines matching a regular expression
   * - :kbd:`;`
     - Open the :ref:`sql-ext` to execute SQL statements/queries
   * - :kbd:`:`
     - Execute an internal command, see :ref:`commands` for more information
   * - :kbd:`\|`
     - Execute an lnav script located in a format directory
   * - :kbd:`Ctrl` + :kbd:`]`
     - Abort the prompt

Customizing
-----------

You can customize the behavior of hotkeys by defining your own keymaps.
Consult the :ref:`Keymaps<keymaps>` configuration section for more information.