2 030916b5 2018-07-12 stsp .\" Copyright (c) 2018 Stefan Sperling
4 030916b5 2018-07-12 stsp .\" Permission to use, copy, modify, and distribute this software for any
5 030916b5 2018-07-12 stsp .\" purpose with or without fee is hereby granted, provided that the above
6 030916b5 2018-07-12 stsp .\" copyright notice and this permission notice appear in all copies.
8 030916b5 2018-07-12 stsp .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 030916b5 2018-07-12 stsp .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 030916b5 2018-07-12 stsp .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 030916b5 2018-07-12 stsp .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 030916b5 2018-07-12 stsp .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 030916b5 2018-07-12 stsp .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 030916b5 2018-07-12 stsp .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 030916b5 2018-07-12 stsp .Dd $Mdocdate$
21 aee2a8bd 2019-08-05 stsp .Nd Git repository browser
22 030916b5 2018-07-12 stsp .Sh SYNOPSIS
26 030916b5 2018-07-12 stsp .Op Ar arg ...
30 030916b5 2018-07-12 stsp .Sh DESCRIPTION
32 aee2a8bd 2019-08-05 stsp is an interactive read-only browser for Git repositories.
33 030916b5 2018-07-12 stsp This repository format is described in
34 5e5560e1 2018-08-01 stsp .Xr git-repository 5 .
37 0cf4efb1 2018-09-29 stsp supports several types of views which display repository data:
38 87aa0e98 2018-08-18 stsp .Bl -tag -width Ds
39 9419758a 2019-03-27 stsp .It Log view
40 87aa0e98 2018-08-18 stsp Displays commits in the repository's history.
41 87aa0e98 2018-08-18 stsp This view is displayed initially if no
43 ee85c5e8 2020-02-29 stsp is specified, or if just a
45 87aa0e98 2018-08-18 stsp is specified.
46 9419758a 2019-03-27 stsp .It Diff view
47 87aa0e98 2018-08-18 stsp Displays changes made in a particular commit.
48 9419758a 2019-03-27 stsp .It Blame view
49 87aa0e98 2018-08-18 stsp Displays the line-by-line history of a file.
50 9419758a 2019-03-27 stsp .It Tree view
51 87aa0e98 2018-08-18 stsp Displays the tree corresponding to a particular commit.
52 38cb327b 2020-11-24 stsp .It Ref view
53 38cb327b 2020-11-24 stsp Displays references in the repository.
57 87aa0e98 2018-08-18 stsp provides global and command-specific key bindings and options.
58 640cd7ff 2022-06-22 mark Some command-specific key bindings may be prefixed with an integer, which is
59 640cd7ff 2022-06-22 mark denoted by N in the descriptions below, and is used as a modifier to the
60 640cd7ff 2022-06-22 mark operation as indicated.
62 f0032ce6 2022-07-02 mark will echo digits to the screen when count modifiers are entered, and complete
63 f0032ce6 2022-07-02 mark the sequence upon input of the first non-numeric character.
64 f0032ce6 2022-07-02 mark Count modifiers can be aborted by entering an unmapped key.
65 a6d37fac 2022-07-03 mark Once a compound command is executed, the operation can be cancelled with
68 a6d37fac 2022-07-03 mark .Cm Backspace .
70 3b95caf0 2022-10-04 stsp Global options must precede the command name, and are as follows:
71 3b95caf0 2022-10-04 stsp .Bl -tag -width tenletters
73 3b95caf0 2022-10-04 stsp Display usage information.
74 3b95caf0 2022-10-04 stsp .It Fl V , -version
75 3b95caf0 2022-10-04 stsp Display program version and exit immediately.
78 87aa0e98 2018-08-18 stsp The global key bindings are:
79 87aa0e98 2018-08-18 stsp .Bl -tag -width Ds
80 ec2a9698 2022-09-15 mark .It Cm H, F1
81 ec2a9698 2022-09-15 mark Display run-time help.
82 ec2a9698 2022-09-15 mark Key bindings for the focussed view will be displayed.
83 ec2a9698 2022-09-15 mark Pressing this again inside the help view will toggle the display of
84 ec2a9698 2022-09-15 mark key bindings for all
91 87aa0e98 2018-08-18 stsp Quit the view which is in focus.
93 c0d30c23 2018-10-07 stsp Switch focus between views.
95 c0d30c23 2018-10-07 stsp Toggle fullscreen mode for a split-screen view.
97 67d6e2c2 2022-07-12 stsp will automatically use vertical split-screen views if the size of the
98 67d6e2c2 2022-07-12 stsp terminal window is sufficiently large.
100 2572d286 2022-07-12 stsp Switch the current split-screen layout, and render all active views in
101 2572d286 2022-07-12 stsp this new layout.
102 67d6e2c2 2022-07-12 stsp The split-screen layout can be either vertical or horizontal.
103 2572d286 2022-07-12 stsp If the terminal is not wide enough when switching to a vertical split,
104 2572d286 2022-07-12 stsp views will render in fullscreen.
106 3c1dfe12 2022-07-08 mark When in a split-screen view, decrease the size of the focussed split
107 3c1dfe12 2022-07-08 mark N increments (default: 1).
109 3c1dfe12 2022-07-08 mark When in a split-screen view, increase the size of the focussed split
110 3c1dfe12 2022-07-08 mark N increments (default: 1).
112 94b80cfa 2022-08-01 mark Go to line N in the view (default: last line).
114 94b80cfa 2022-08-01 mark Go to line N in the view (default: first line).
115 d627976f 2023-02-01 mark .It Cm Right-arrow, l
116 d627976f 2023-02-01 mark Scroll view to the right N increments (default: 1).
118 d627976f 2023-02-01 mark Output moves left on the screen.
119 d627976f 2023-02-01 mark .It Cm Left-arrow, h
120 d627976f 2023-02-01 mark Scroll view to the left N increments (default: 1).
122 d627976f 2023-02-01 mark Output moves right on the screen.
124 d627976f 2023-02-01 mark Scroll view to the rightmost position.
126 d627976f 2023-02-01 mark Scroll view left to the start of the line.
129 030916b5 2018-07-12 stsp The commands for
131 030916b5 2018-07-12 stsp are as follows:
132 030916b5 2018-07-12 stsp .Bl -tag -width blame
136 5fc4f020 2022-08-30 op .Op Fl c Ar commit
137 5fc4f020 2022-08-30 op .Op Fl r Ar repository-path
140 030916b5 2018-07-12 stsp Display history of a repository.
143 ecb28ae0 2018-07-16 stsp is specified, show only commits which modified this path.
144 dc990cbf 2020-02-22 stsp If invoked in a work tree, the
146 dc990cbf 2020-02-22 stsp is interpreted relative to the current working directory,
147 dc990cbf 2020-02-22 stsp and the work tree's path prefix is implicitly prepended.
148 dc990cbf 2020-02-22 stsp Otherwise, the path is interpreted relative to the repository root.
150 c935fd51 2023-07-23 mark If invoked in a work tree, the log entry of the work tree's base commit will
151 c935fd51 2023-07-23 mark be prefixed with one of the following annotations:
152 c935fd51 2023-07-23 mark .Bl -column YXZ description
153 c935fd51 2023-07-23 mark .It * Ta work tree's base commit and the base commit of all tracked files
154 c935fd51 2023-07-23 mark matches the branch tip
155 c935fd51 2023-07-23 mark .It \(a~ Ta work tree comprises mixed commits or its base commit is out-of-date
158 030916b5 2018-07-12 stsp This command is also executed if no explicit command is specified.
160 030916b5 2018-07-12 stsp The key bindings for
161 030916b5 2018-07-12 stsp .Cm tog log
162 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
163 030916b5 2018-07-12 stsp .Bl -tag -width Ds
164 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, >, Full stop, Ctrl-n
165 640cd7ff 2022-06-22 mark Move the selection cursor down N lines (default: 1).
166 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, <, Comma, Ctrl-p
167 640cd7ff 2022-06-22 mark Move the selection cursor up N lines (default: 1).
168 48bb96f0 2022-06-20 naddy .It Cm Page-down, Space, Ctrl+f, f
169 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
170 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
171 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
172 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
173 640cd7ff 2022-06-22 mark Move the selection cursor down N half pages (default: 1).
174 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
175 640cd7ff 2022-06-22 mark Move the selection cursor up N half pages (default: 1).
176 0b3f028d 2023-01-09 mark .It Cm Home, =
177 912a3f79 2021-08-30 j Move the cursor to the newest commit.
178 0b3f028d 2023-01-09 mark .It Cm End, *
179 912a3f79 2021-08-30 j Move the cursor to the oldest commit.
180 1dd93b2a 2021-08-30 stsp This will traverse all commits on the current branch which may take
181 1dd93b2a 2021-08-30 stsp a long time depending on the number of commits in branch history.
182 e38d4cde 2022-03-21 naddy If needed, this operation can be cancelled with
185 9ebbe6e1 2021-08-30 stsp .Cm Backspace .
187 0b3f028d 2023-01-09 mark Move the cursor to commit N (default: 1).
191 0b3f028d 2023-01-09 mark but defaults to the oldest commit.
192 48bb96f0 2022-06-20 naddy .It Cm Enter
195 030916b5 2018-07-12 stsp view showing file changes made in the currently selected commit.
196 28c5a828 2024-08-08 mark If a commit is marked with the
198 28c5a828 2024-08-08 mark key map, open a diff view showing file changes made between the marked commit
199 28c5a828 2024-08-08 mark and the currently selected commit.
201 28c5a828 2024-08-08 mark Mark or unmark the selected commit.
202 28c5a828 2024-08-08 mark When a commit is marked,
203 28c5a828 2024-08-08 mark pressing the
205 28c5a828 2024-08-08 mark key on another selected commit opens a
207 28c5a828 2024-08-08 mark view showing the changes between the marked commit and the
208 28c5a828 2024-08-08 mark currently selected commit.
212 030916b5 2018-07-12 stsp view showing the tree for the currently selected commit.
213 5036bf37 2018-09-24 stsp .It Cm Backspace
214 26f0cb24 2021-08-30 j Show log entries for the parent directory of the currently selected path.
215 26f0cb24 2021-08-30 j However when an active search is in progress or when additional commits
217 678cbce5 2019-07-28 stsp .Cm Backspace
218 26f0cb24 2021-08-30 j aborts the running operation.
220 60493ae3 2019-06-20 stsp Prompt for a search pattern and start searching for matching commits.
221 60493ae3 2019-06-20 stsp The search pattern is an extended regular expression which is matched
222 df0b3d8a 2019-06-28 stsp against a commit's author name, committer name, log message, and
224 e6c76b79 2019-06-21 stsp Regular expression syntax is documented in
225 e6c76b79 2019-06-21 stsp .Xr re_format 7 .
227 e19e72cd 2022-09-23 stsp Prompt for a pattern and limit the log view's list of commits to those
228 e19e72cd 2022-09-23 stsp which match the pattern.
229 e19e72cd 2022-09-23 stsp If no pattern is specified, i.e. the
231 e19e72cd 2022-09-23 stsp prompt is immediately closed with the Enter key, then the pattern is
233 e19e72cd 2022-09-23 stsp Until the pattern is cleared, the limited list of commits replaces the
234 e19e72cd 2022-09-23 stsp full list of commits for all operations supported by the log view.
235 e19e72cd 2022-09-23 stsp For example, a search started with
237 e19e72cd 2022-09-23 stsp will search the limited list of commits, rather than searching all commits.
238 e19e72cd 2022-09-23 stsp The pattern is an extended regular expression which is matched
239 e19e72cd 2022-09-23 stsp against a commit's author name, committer name, log message, and
241 e19e72cd 2022-09-23 stsp Regular expression syntax is documented in
242 e19e72cd 2022-09-23 stsp .Xr re_format 7 .
244 640cd7ff 2022-06-22 mark Find the Nth next commit which matches the current search pattern (default: 1).
246 a6d37fac 2022-07-03 mark Searching continues until either a match is found or
249 678cbce5 2019-07-28 stsp .Cm Backspace
250 678cbce5 2019-07-28 stsp key is pressed.
252 640cd7ff 2022-06-22 mark Find the Nth previous commit which matches the current search pattern
253 640cd7ff 2022-06-22 mark (default: 1).
255 a6d37fac 2022-07-03 mark Searching continues until either a match is found or
258 678cbce5 2019-07-28 stsp .Cm Backspace
259 678cbce5 2019-07-28 stsp key is pressed.
260 bf0668dd 2019-06-26 stsp .It Cm Ctrl+l
263 01ca22b1 2020-12-07 stsp view with new commits found in the repository.
267 01ca22b1 2020-12-07 stsp view and toggle display of merged commits.
270 b672a97a 2020-01-27 stsp option determines whether merged commits are displayed initially.
274 38cb327b 2020-11-24 stsp view listing all references in the repository.
275 38cb327b 2020-11-24 stsp This can then be used to open a new
277 38cb327b 2020-11-24 stsp view for arbitrary branches and tags.
279 3bf00f25 2023-01-02 stsp Toggle between showing the committer name and the author name.
282 030916b5 2018-07-12 stsp The options for
283 030916b5 2018-07-12 stsp .Cm tog log
284 030916b5 2018-07-12 stsp are as follows:
285 030916b5 2018-07-12 stsp .Bl -tag -width Ds
287 1137e0ae 2020-01-27 stsp Display individual commits which were merged into the current branch
288 1137e0ae 2020-01-27 stsp from other branches.
289 b672a97a 2020-01-27 stsp By default,
290 b672a97a 2020-01-27 stsp .Cm tog log
291 b672a97a 2020-01-27 stsp shows the linear history of the current branch only.
294 b672a97a 2020-01-27 stsp key binding can be used to toggle display of merged commits at run-time.
295 030916b5 2018-07-12 stsp .It Fl c Ar commit
296 030916b5 2018-07-12 stsp Start traversing history at the specified
297 030916b5 2018-07-12 stsp .Ar commit .
298 9468754e 2024-08-01 op The expected argument is a commit ID, or a reference name or keyword
299 c4df265e 2023-07-19 mark which will be resolved to a commit ID.
300 9468754e 2024-08-01 op An abbreviated hash argument will be expanded to a full commit ID
301 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
302 c4df265e 2023-07-19 mark The keywords
306 c4df265e 2023-07-19 mark resolve to the work tree's base commit and branch head, respectively.
307 c4df265e 2023-07-19 mark The former is only valid if invoked in a work tree, while the latter will
308 c4df265e 2023-07-19 mark resolve to the tip of the work tree's current branch if invoked in a
309 c4df265e 2023-07-19 mark work tree, otherwise it will resolve to the repository's HEAD reference.
310 c4df265e 2023-07-19 mark Keywords and references may be appended with
314 c4df265e 2023-07-19 mark modifiers and an optional integer N to denote the
315 c4df265e 2023-07-19 mark Nth descendant or antecedent by first parent traversal, respectively;
316 c4df265e 2023-07-19 mark for example,
317 c4df265e 2023-07-19 mark .Sy :head:-2
318 c4df265e 2023-07-19 mark denotes the work tree branch head's 2nd generation ancestor, and
319 c4df265e 2023-07-19 mark .Sy :base:+4
320 c4df265e 2023-07-19 mark denotes the 4th generation descendant of the work tree's base commit.
322 c4df265e 2023-07-19 mark .Sy foobar:+3
323 c4df265e 2023-07-19 mark will denote the 3rd generation descendant of the commit resolved by the
330 c4df265e 2023-07-19 mark modifier without a trailing integer has an implicit
334 c4df265e 2023-07-19 mark .Sy :base:+
335 c4df265e 2023-07-19 mark is equivalent to
336 c4df265e 2023-07-19 mark .Sy :base:+1
338 ecb28ae0 2018-07-16 stsp .It Fl r Ar repository-path
339 ecb28ae0 2018-07-16 stsp Use the repository at the specified path.
340 ecb28ae0 2018-07-16 stsp If not specified, assume the repository is located at or above the current
341 ecb28ae0 2018-07-16 stsp working directory.
342 212b39d1 2020-02-24 naddy If this directory is a
344 212b39d1 2020-02-24 naddy work tree, use the repository path associated with this work tree.
349 5fc4f020 2022-08-30 op .Op Fl C Ar number
350 5fc4f020 2022-08-30 op .Op Fl r Ar repository-path
354 030916b5 2018-07-12 stsp Display the differences between two objects in the repository.
355 c4df265e 2023-07-19 mark Treat each of the two arguments as a reference, a tag name, an object
356 9468754e 2024-08-01 op ID, or a keyword and display differences between the corresponding
358 3dbaef42 2020-11-24 stsp Both objects must be of the same type (blobs, trees, or commits).
359 9468754e 2024-08-01 op An abbreviated hash argument will be expanded to a full commit ID
360 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
361 c4df265e 2023-07-19 mark The keywords
365 c4df265e 2023-07-19 mark resolve to the work tree's base commit and branch head, respectively.
366 c4df265e 2023-07-19 mark The former is only valid if invoked in a work tree, while the latter will
367 c4df265e 2023-07-19 mark resolve to the tip of the work tree's current branch if invoked in a
368 c4df265e 2023-07-19 mark work tree, otherwise it will resolve to the repository's HEAD reference.
369 c4df265e 2023-07-19 mark Keywords and references may be appended with
373 c4df265e 2023-07-19 mark modifiers and an optional integer N to denote the
374 c4df265e 2023-07-19 mark Nth descendant or antecedent by first parent traversal, respectively;
375 c4df265e 2023-07-19 mark for example,
376 c4df265e 2023-07-19 mark .Sy :head:-2
377 c4df265e 2023-07-19 mark denotes the work tree branch head's 2nd generation ancestor, and
378 c4df265e 2023-07-19 mark .Sy :base:+4
379 c4df265e 2023-07-19 mark denotes the 4th generation descendant of the work tree's base commit.
381 c4df265e 2023-07-19 mark .Sy foobar:+3
382 c4df265e 2023-07-19 mark will denote the 3rd generation descendant of the commit resolved by the
389 c4df265e 2023-07-19 mark modifier without a trailing integer has an implicit
393 c4df265e 2023-07-19 mark .Sy :base:+
394 c4df265e 2023-07-19 mark is equivalent to
395 c4df265e 2023-07-19 mark .Sy :base:+1
398 030916b5 2018-07-12 stsp The key bindings for
399 030916b5 2018-07-12 stsp .Cm tog diff
400 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
401 030916b5 2018-07-12 stsp .Bl -tag -width Ds
403 64453f7e 2020-11-21 stsp Toggle treatment of file contents as ASCII text even if binary data was
405 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, Ctrl-n
406 640cd7ff 2022-06-22 mark Scroll down N lines (default: 1).
407 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, Ctrl-p
408 640cd7ff 2022-06-22 mark Scroll up N lines (default: 1).
409 61417565 2022-06-20 mark .It Cm Page-down, Space, Ctrl+f, f
410 640cd7ff 2022-06-22 mark Scroll down N pages (default: 1).
411 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
412 640cd7ff 2022-06-22 mark Scroll up N pages (default: 1).
413 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
414 640cd7ff 2022-06-22 mark Scroll down N half pages (default: 1).
415 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
416 640cd7ff 2022-06-22 mark Scroll up N half pages (default: 1).
417 0b3f028d 2023-01-09 mark .It Cm Home
418 912a3f79 2021-08-30 j Scroll to the top of the view.
420 912a3f79 2021-08-30 j Scroll to the bottom of the view.
422 0b3f028d 2023-01-09 mark Scroll to line N (default: 1).
426 0b3f028d 2023-01-09 mark but defaults to the last line in the diff.
428 c7d5c43c 2022-08-04 mark Navigate to the Nth previous file in the diff (default: 1).
430 c7d5c43c 2022-08-04 mark Navigate to the Nth next file in the diff (default: 1).
432 c7d5c43c 2022-08-04 mark Navigate to the Nth previous hunk in the diff (default: 1).
434 c7d5c43c 2022-08-04 mark Navigate to the Nth next hunk in the diff (default: 1).
436 640cd7ff 2022-06-22 mark Reduce diff context by N lines (default: 1).
438 640cd7ff 2022-06-22 mark Increase diff context by N lines (default: 1).
439 2b3e6702 2022-07-20 mark .It Cm <, Comma, K
442 01ca22b1 2020-12-07 stsp view was opened via the
444 c0f61fa4 2022-07-11 mark view, move to the Nth previous (younger) commit.
445 c0f61fa4 2022-07-11 mark If the diff was opened via the
447 c0f61fa4 2022-07-11 mark view, move to the Nth previous line and load the corresponding commit
448 c0f61fa4 2022-07-11 mark (default: 1).
449 2b3e6702 2022-07-20 mark .It Cm >, Full stop, J
452 01ca22b1 2020-12-07 stsp view was opened via the
454 c0f61fa4 2022-07-11 mark view, move to the Nth next (older) commit.
455 c0f61fa4 2022-07-11 mark If the diff was opened via the
457 c0f61fa4 2022-07-11 mark view, move to the Nth next line and load the corresponding commit (default: 1).
459 e11883f0 2024-08-16 mark Write the currently viewed diff to a patch file in
461 e11883f0 2024-08-16 mark The patch pathname is drawn to the status line.
463 0e404f95 2020-11-14 stsp Prompt for a search pattern and start searching for matching lines.
464 66dc9065 2020-02-15 stsp The search pattern is an extended regular expression.
465 66dc9065 2020-02-15 stsp Regular expression syntax is documented in
466 66dc9065 2020-02-15 stsp .Xr re_format 7 .
468 640cd7ff 2022-06-22 mark Find the Nth next line which matches the current search pattern (default: 1).
470 640cd7ff 2022-06-22 mark Find the Nth previous line which matches the current search pattern
471 640cd7ff 2022-06-22 mark (default: 1).
473 3dbaef42 2020-11-24 stsp Toggle display of whitespace-only changes.
475 917d79a7 2022-07-01 stsp Change the diff algorithm.
476 41e8d27d 2022-07-03 stsp Supported diff algorithms are Myers (quick and dirty) and
477 41e8d27d 2022-07-03 stsp Patience (slow and tidy).
478 917d79a7 2022-07-01 stsp This is a global setting which also affects the
483 09b5bff8 2020-02-23 naddy The options for
484 09b5bff8 2020-02-23 naddy .Cm tog diff
485 09b5bff8 2020-02-23 naddy are as follows:
486 09b5bff8 2020-02-23 naddy .Bl -tag -width Ds
488 64453f7e 2020-11-21 stsp Treat file contents as ASCII text even if binary data is detected.
489 3dbaef42 2020-11-24 stsp .It Fl C Ar number
490 3dbaef42 2020-11-24 stsp Set the number of context lines shown in the diff.
491 3dbaef42 2020-11-24 stsp By default, 3 lines of context are shown.
492 09b5bff8 2020-02-23 naddy .It Fl r Ar repository-path
493 09b5bff8 2020-02-23 naddy Use the repository at the specified path.
494 09b5bff8 2020-02-23 naddy If not specified, assume the repository is located at or above the current
495 09b5bff8 2020-02-23 naddy working directory.
496 212b39d1 2020-02-24 naddy If this directory is a
498 212b39d1 2020-02-24 naddy work tree, use the repository path associated with this work tree.
500 3dbaef42 2020-11-24 stsp Ignore whitespace-only changes.
504 5fc4f020 2022-08-30 op .Op Fl c Ar commit
505 5fc4f020 2022-08-30 op .Op Fl r Ar repository-path
508 030916b5 2018-07-12 stsp Display line-by-line history of a file at the specified path.
510 030916b5 2018-07-12 stsp The key bindings for
511 030916b5 2018-07-12 stsp .Cm tog blame
512 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
513 030916b5 2018-07-12 stsp .Bl -tag -width Ds
514 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, Ctrl-n
515 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
516 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, Ctrl-p
517 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
518 61417565 2022-06-20 mark .It Cm Page-down, Space, Ctrl+f, f
519 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
520 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
521 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
522 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
523 640cd7ff 2022-06-22 mark Move the selection cursor down N half pages (default: 1).
524 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
525 640cd7ff 2022-06-22 mark Move the selection cursor up N half pages (default: 1).
526 0b3f028d 2023-01-09 mark .It Cm Home
527 4deef56f 2021-09-02 naddy Move the selection cursor to the first line of the file.
529 4deef56f 2021-09-02 naddy Move the selection cursor to the last line of the file.
531 0b3f028d 2023-01-09 mark Move the selection cursor to line N (default: 1).
535 0b3f028d 2023-01-09 mark but defaults to the last line in the file.
536 030916b5 2018-07-12 stsp .It Cm Enter
539 030916b5 2018-07-12 stsp view for the currently selected line's commit.
543 c0d30c23 2018-10-07 stsp view with the version of the file as found in the currently
544 c0d30c23 2018-10-07 stsp selected line's commit.
548 c0d30c23 2018-10-07 stsp view with the version of the file as found in the parent commit of the
549 c0d30c23 2018-10-07 stsp currently selected line's commit.
553 c0d30c23 2018-10-07 stsp view with the previously blamed commit.
557 05f04cdf 2022-07-20 mark view for the currently selected annotated line.
559 0e404f95 2020-11-14 stsp Prompt for a search pattern and start searching for matching lines.
560 6c4c42e0 2019-06-24 stsp The search pattern is an extended regular expression.
561 6c4c42e0 2019-06-24 stsp Regular expression syntax is documented in
562 6c4c42e0 2019-06-24 stsp .Xr re_format 7 .
564 640cd7ff 2022-06-22 mark Find the Nth next line which matches the current search pattern (default: 1).
566 640cd7ff 2022-06-22 mark Find the Nth previous line which matches the current search pattern
567 640cd7ff 2022-06-22 mark (default: 1).
569 917d79a7 2022-07-01 stsp Change the diff algorithm.
570 41e8d27d 2022-07-03 stsp Supported diff algorithms are Myers (quick and dirty) and
571 41e8d27d 2022-07-03 stsp Patience (slow and tidy).
572 917d79a7 2022-07-01 stsp This is a global setting which also affects the
577 030916b5 2018-07-12 stsp The options for
578 030916b5 2018-07-12 stsp .Cm tog blame
579 030916b5 2018-07-12 stsp are as follows:
580 030916b5 2018-07-12 stsp .Bl -tag -width Ds
581 030916b5 2018-07-12 stsp .It Fl c Ar commit
582 030916b5 2018-07-12 stsp Start traversing history at the specified
583 030916b5 2018-07-12 stsp .Ar commit .
584 9468754e 2024-08-01 op The expected argument is a commit ID, or a reference name or keyword
585 c4df265e 2023-07-19 mark which will be resolved to a commit ID.
586 9468754e 2024-08-01 op An abbreviated hash argument will be expanded to a full commit ID
587 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
588 c4df265e 2023-07-19 mark The keywords
592 c4df265e 2023-07-19 mark resolve to the work tree's base commit and branch head, respectively.
593 c4df265e 2023-07-19 mark The former is only valid if invoked in a work tree, while the latter will
594 c4df265e 2023-07-19 mark resolve to the tip of the work tree's current branch if invoked in a
595 c4df265e 2023-07-19 mark work tree, otherwise it will resolve to the repository's HEAD reference.
596 c4df265e 2023-07-19 mark Keywords and references may be appended with
600 c4df265e 2023-07-19 mark modifiers and an optional integer N to denote the
601 c4df265e 2023-07-19 mark Nth descendant or antecedent by first parent traversal, respectively;
602 c4df265e 2023-07-19 mark for example,
603 c4df265e 2023-07-19 mark .Sy :head:-2
604 c4df265e 2023-07-19 mark denotes the work tree branch head's 2nd generation ancestor, and
605 c4df265e 2023-07-19 mark .Sy :base:+4
606 c4df265e 2023-07-19 mark denotes the 4th generation descendant of the work tree's base commit.
608 c4df265e 2023-07-19 mark .Sy foobar:+3
609 c4df265e 2023-07-19 mark will denote the 3rd generation descendant of the commit resolved by the
616 c4df265e 2023-07-19 mark modifier without a trailing integer has an implicit
620 c4df265e 2023-07-19 mark .Sy :base:+
621 c4df265e 2023-07-19 mark is equivalent to
622 c4df265e 2023-07-19 mark .Sy :base:+1
624 69069811 2018-08-02 stsp .It Fl r Ar repository-path
625 69069811 2018-08-02 stsp Use the repository at the specified path.
626 69069811 2018-08-02 stsp If not specified, assume the repository is located at or above the current
627 69069811 2018-08-02 stsp working directory.
628 212b39d1 2020-02-24 naddy If this directory is a
630 212b39d1 2020-02-24 naddy work tree, use the repository path associated with this work tree.
634 5fc4f020 2022-08-30 op .Op Fl c Ar commit
635 5fc4f020 2022-08-30 op .Op Fl r Ar repository-path
638 030916b5 2018-07-12 stsp Display the repository tree.
641 55cccc34 2020-02-20 stsp is specified, show tree entries at this path.
643 848d6979 2019-08-12 stsp Displayed tree entries may carry one of the following trailing annotations:
644 848d6979 2019-08-12 stsp .Bl -column YXZ description
645 848d6979 2019-08-12 stsp .It @ Ta entry is a symbolic link
646 848d6979 2019-08-12 stsp .It / Ta entry is a directory
647 848d6979 2019-08-12 stsp .It * Ta entry is an executable file
648 63c5ca5d 2019-08-24 stsp .It $ Ta entry is a Git submodule
651 0d6c6ee3 2020-05-20 stsp Symbolic link entries are also annotated with the target path of the link.
653 030916b5 2018-07-12 stsp The key bindings for
654 030916b5 2018-07-12 stsp .Cm tog tree
655 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
656 030916b5 2018-07-12 stsp .Bl -tag -width Ds
657 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, Ctrl-n
658 640cd7ff 2022-06-22 mark Move the selection cursor down N lines (default: 1).
659 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, Ctrl-p
660 640cd7ff 2022-06-22 mark Move the selection cursor up N lines (default: 1).
661 48bb96f0 2022-06-20 naddy .It Cm Page-down, Space, Ctrl+f, f
662 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
663 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
664 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
665 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
666 640cd7ff 2022-06-22 mark Move the selection cursor down N half pages (default: 1).
667 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
668 640cd7ff 2022-06-22 mark Move the selection cursor up N half pages (default: 1).
669 0b3f028d 2023-01-09 mark .It Cm Home, =
670 e4526bf5 2021-09-03 naddy Move the selection cursor to the first entry.
671 0b3f028d 2023-01-09 mark .It Cm End, *
672 e4526bf5 2021-09-03 naddy Move the selection cursor to the last entry.
674 0b3f028d 2023-01-09 mark Move the selection cursor to entry N (default: 1).
678 0b3f028d 2023-01-09 mark but defaults to the last entry.
679 030916b5 2018-07-12 stsp .It Cm Enter
680 030916b5 2018-07-12 stsp Enter the currently selected directory, or switch to the
682 030916b5 2018-07-12 stsp view for the currently selected file.
686 69efd4c4 2018-07-18 stsp view for the currently selected tree entry.
690 152c1c93 2020-11-29 stsp view listing all references in the repository.
691 152c1c93 2020-11-29 stsp This can then be used to open a new
693 152c1c93 2020-11-29 stsp view for arbitrary branches and tags.
694 7837eeac 2018-09-24 stsp .It Cm Backspace
695 640cd7ff 2022-06-22 mark Move back to the Nth parent directory (default: 1).
697 c0d30c23 2018-10-07 stsp Show object IDs for all objects displayed in the
701 4eec20aa 2019-06-22 stsp Prompt for a search pattern and start searching for matching tree entries.
702 4eec20aa 2019-06-22 stsp The search pattern is an extended regular expression which is matched
703 4eec20aa 2019-06-22 stsp against the tree entry's name.
704 4eec20aa 2019-06-22 stsp Regular expression syntax is documented in
705 4eec20aa 2019-06-22 stsp .Xr re_format 7 .
707 640cd7ff 2022-06-22 mark Find the Nth next tree entry which matches the current search pattern
708 640cd7ff 2022-06-22 mark (default: 1).
710 640cd7ff 2022-06-22 mark Find the Nth previous tree entry which matches the current search pattern
711 640cd7ff 2022-06-22 mark (default: 1).
714 030916b5 2018-07-12 stsp The options for
715 030916b5 2018-07-12 stsp .Cm tog tree
716 030916b5 2018-07-12 stsp are as follows:
717 030916b5 2018-07-12 stsp .Bl -tag -width Ds
718 030916b5 2018-07-12 stsp .It Fl c Ar commit
719 030916b5 2018-07-12 stsp Start traversing history at the specified
720 030916b5 2018-07-12 stsp .Ar commit .
721 9468754e 2024-08-01 op The expected argument is a commit ID, or a reference name or keyword
722 c4df265e 2023-07-19 mark which will be resolved to a commit ID.
723 9468754e 2024-08-01 op An abbreviated hash argument will be expanded to a full commit ID
724 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
725 c4df265e 2023-07-19 mark The keywords
729 c4df265e 2023-07-19 mark resolve to the work tree's base commit and branch head, respectively.
730 c4df265e 2023-07-19 mark The former is only valid if invoked in a work tree, while the latter will
731 c4df265e 2023-07-19 mark resolve to the tip of the work tree's current branch if invoked in a
732 c4df265e 2023-07-19 mark work tree, otherwise it will resolve to the repository's HEAD reference.
733 c4df265e 2023-07-19 mark Keywords and references may be appended with
737 c4df265e 2023-07-19 mark modifiers and an optional integer N to denote the
738 c4df265e 2023-07-19 mark Nth descendant or antecedent by first parent traversal, respectively;
739 c4df265e 2023-07-19 mark for example,
740 c4df265e 2023-07-19 mark .Sy :head:-2
741 c4df265e 2023-07-19 mark denotes the work tree branch head's 2nd generation ancestor, and
742 c4df265e 2023-07-19 mark .Sy :base:+4
743 c4df265e 2023-07-19 mark denotes the 4th generation descendant of the work tree's base commit.
745 c4df265e 2023-07-19 mark .Sy foobar:+3
746 c4df265e 2023-07-19 mark will denote the 3rd generation descendant of the commit resolved by the
753 c4df265e 2023-07-19 mark modifier without a trailing integer has an implicit
757 c4df265e 2023-07-19 mark .Sy :base:+
758 c4df265e 2023-07-19 mark is equivalent to
759 c4df265e 2023-07-19 mark .Sy :base:+1
761 38cb327b 2020-11-24 stsp .It Fl r Ar repository-path
762 38cb327b 2020-11-24 stsp Use the repository at the specified path.
763 38cb327b 2020-11-24 stsp If not specified, assume the repository is located at or above the current
764 38cb327b 2020-11-24 stsp working directory.
765 38cb327b 2020-11-24 stsp If this directory is a
767 38cb327b 2020-11-24 stsp work tree, use the repository path associated with this work tree.
769 5fc4f020 2022-08-30 op .It Cm ref Op Fl r Ar repository-path
770 38cb327b 2020-11-24 stsp Display references in the repository.
772 38cb327b 2020-11-24 stsp The key bindings for
773 38cb327b 2020-11-24 stsp .Cm tog ref
774 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
775 38cb327b 2020-11-24 stsp .Bl -tag -width Ds
776 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, Ctrl-n
777 640cd7ff 2022-06-22 mark Move the selection cursor down N lines (default: 1).
778 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, Ctrl-p
779 640cd7ff 2022-06-22 mark Move the selection cursor up N lines (default: 1).
780 48bb96f0 2022-06-20 naddy .It Cm Page-down, Space, Ctrl+f, f
781 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
782 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
783 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
784 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
785 640cd7ff 2022-06-22 mark Move the selection cursor down N half pages (default: 1).
786 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
787 640cd7ff 2022-06-22 mark Move the selection cursor up N half pages (default: 1).
788 0b3f028d 2023-01-09 mark .It Cm Home, =
789 e4526bf5 2021-09-03 naddy Move the selection cursor to the first reference.
790 0b3f028d 2023-01-09 mark .It Cm End, *
791 e4526bf5 2021-09-03 naddy Move the selection cursor to the last reference.
793 0b3f028d 2023-01-09 mark Move the selection cursor to reference N (default: 1).
797 0b3f028d 2023-01-09 mark but defaults to the last reference.
798 38cb327b 2020-11-24 stsp .It Cm Enter
801 01ca22b1 2020-12-07 stsp view which begins traversing history at the commit resolved via the
802 38cb327b 2020-11-24 stsp currently selected reference.
806 c42c9805 2020-11-24 stsp view showing the tree resolved via the currently selected reference.
808 38cb327b 2020-11-24 stsp Show object IDs for all non-symbolic references displayed in the
812 b4996bee 2022-06-16 stsp Show last modified date of each displayed reference.
814 7f66531d 2021-11-16 stsp Toggle display order of references between sort by name and sort by timestamp.
816 38cb327b 2020-11-24 stsp Prompt for a search pattern and start searching for matching references.
817 38cb327b 2020-11-24 stsp The search pattern is an extended regular expression which is matched
818 38cb327b 2020-11-24 stsp against absolute reference names.
819 38cb327b 2020-11-24 stsp Regular expression syntax is documented in
820 38cb327b 2020-11-24 stsp .Xr re_format 7 .
822 640cd7ff 2022-06-22 mark Find the Nth next reference which matches the current search pattern
823 640cd7ff 2022-06-22 mark (default: 1).
825 640cd7ff 2022-06-22 mark Find the Nth previous reference which matches the current search pattern
826 640cd7ff 2022-06-22 mark (default: 1).
827 38cb327b 2020-11-24 stsp .It Cm Ctrl+l
828 38cb327b 2020-11-24 stsp Reload the list of references displayed by the
833 38cb327b 2020-11-24 stsp The options for
834 38cb327b 2020-11-24 stsp .Cm tog ref
835 38cb327b 2020-11-24 stsp are as follows:
836 38cb327b 2020-11-24 stsp .Bl -tag -width Ds
837 74283ab8 2020-02-07 stsp .It Fl r Ar repository-path
838 74283ab8 2020-02-07 stsp Use the repository at the specified path.
839 74283ab8 2020-02-07 stsp If not specified, assume the repository is located at or above the current
840 74283ab8 2020-02-07 stsp working directory.
841 74283ab8 2020-02-07 stsp If this directory is a
843 74283ab8 2020-02-07 stsp work tree, use the repository path associated with this work tree.
846 6d17833f 2019-11-08 stsp .Sh ENVIRONMENT
847 d2366e29 2022-07-07 mark .Bl -tag -width TOG_VIEW_SPLIT_MODE
848 6d17833f 2019-11-08 stsp .It Ev TOG_COLORS
850 6d17833f 2019-11-08 stsp shows colorized output if this variable is set to a non-empty value.
851 6d17833f 2019-11-08 stsp The default color scheme can be modified by setting the environment
852 6d17833f 2019-11-08 stsp variables documented below.
853 6d17833f 2019-11-08 stsp The colors available in color schemes are
854 6d17833f 2019-11-08 stsp .Dq black ,
856 6d17833f 2019-11-08 stsp .Dq green ,
857 6d17833f 2019-11-08 stsp .Dq yellow ,
859 93a300b2 2021-08-26 stsp .Dq magenta ,
862 1d7fe5cd 2019-11-08 stsp .Dq default
863 1d7fe5cd 2019-11-08 stsp which maps to the terminal's default foreground color.
864 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_AUTHOR
865 7713cc5e 2023-01-20 op The color used to mark up author information.
866 6d17833f 2019-11-08 stsp If not set, the default value
869 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_COMMIT
870 7713cc5e 2023-01-20 op The color used to mark up commit IDs.
871 6d17833f 2019-11-08 stsp If not set, the default value
874 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_DATE
875 7713cc5e 2023-01-20 op The color used to mark up date information.
876 7713cc5e 2023-01-20 op If not set, the default value
879 6d17833f 2019-11-08 stsp .It Ev TOG_COLOR_DIFF_CHUNK_HEADER
880 6d17833f 2019-11-08 stsp The color used to mark up chunk header lines in diffs.
881 6d17833f 2019-11-08 stsp If not set, the default value
884 6d17833f 2019-11-08 stsp .It Ev TOG_COLOR_DIFF_META
885 6d17833f 2019-11-08 stsp The color used to mark up meta data in diffs.
886 c0b01bdb 2019-11-08 stsp If not set, the default value
889 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_DIFF_MINUS
890 7713cc5e 2023-01-20 op The color used to mark up removed lines in diffs.
891 c0b01bdb 2019-11-08 stsp If not set, the default value
892 c0b01bdb 2019-11-08 stsp .Dq magenta
894 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_DIFF_PLUS
895 7713cc5e 2023-01-20 op The color used to mark up added lines in diffs.
896 c0b01bdb 2019-11-08 stsp If not set, the default value
899 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_REFS_BACKUP
900 7713cc5e 2023-01-20 op The color used to mark up references in the
901 7713cc5e 2023-01-20 op .Dq refs/got/backup/
903 11b20872 2019-11-08 stsp If not set, the default value
906 38cb327b 2020-11-24 stsp .It Ev TOG_COLOR_REFS_HEADS
907 38cb327b 2020-11-24 stsp The color used to mark up references in the
908 38cb327b 2020-11-24 stsp .Dq refs/heads/
910 38cb327b 2020-11-24 stsp If not set, the default value
913 38cb327b 2020-11-24 stsp .It Ev TOG_COLOR_REFS_REMOTES
914 38cb327b 2020-11-24 stsp The color used to mark up references in the
915 38cb327b 2020-11-24 stsp .Dq refs/remotes/
917 38cb327b 2020-11-24 stsp If not set, the default value
920 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_REFS_TAGS
921 cc488aa7 2022-01-23 stsp The color used to mark up references in the
922 7713cc5e 2023-01-20 op .Dq refs/tags/
924 cc488aa7 2022-01-23 stsp If not set, the default value
927 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_TREE_DIRECTORY
928 7713cc5e 2023-01-20 op The color used to mark up directory tree entries.
929 7713cc5e 2023-01-20 op If not set, the default value
932 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_TREE_EXECUTABLE
933 7713cc5e 2023-01-20 op The color used to mark up executable file tree entries.
934 7713cc5e 2023-01-20 op If not set, the default value
937 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_TREE_SUBMODULE
938 7713cc5e 2023-01-20 op The color used to mark up submodule tree entries.
939 7713cc5e 2023-01-20 op If not set, the default value
942 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_TREE_SYMLINK
943 7713cc5e 2023-01-20 op The color used to mark up symbolic link tree entries.
944 7713cc5e 2023-01-20 op If not set, the default value
947 7713cc5e 2023-01-20 op .It Ev TOG_DIFF_ALGORITHM
948 7713cc5e 2023-01-20 op Determines the default diff algorithm used by
950 7713cc5e 2023-01-20 op Supported diff algorithms are Myers (quick and dirty) and
951 7713cc5e 2023-01-20 op Patience (slow and tidy).
952 7713cc5e 2023-01-20 op Valid values for
953 7713cc5e 2023-01-20 op .Ev TOG_DIFF_ALGORITHM
958 2e2450f5 2023-10-04 mark If unset, the Patience diff algorithm will be used by default.
959 7713cc5e 2023-01-20 op .It Ev TOG_VIEW_SPLIT_MODE
960 7713cc5e 2023-01-20 op Determines the default layout of split-screen views.
966 7713cc5e 2023-01-20 op will use horizontal split by default.
967 7713cc5e 2023-01-20 op Otherwise, vertical split will be used.
970 7713cc5e 2023-01-20 op key can be used to switch between vertical and horizontal split layout
973 030916b5 2018-07-12 stsp .Sh EXIT STATUS
974 030916b5 2018-07-12 stsp .Ex -std tog
975 030916b5 2018-07-12 stsp .Sh SEE ALSO
976 56b9a4ca 2019-06-21 stsp .Xr got 1 ,
977 56b9a4ca 2019-06-21 stsp .Xr git-repository 5 ,
978 56b9a4ca 2019-06-21 stsp .Xr re_format 7
979 030916b5 2018-07-12 stsp .Sh AUTHORS
980 8ca658b9 2022-07-05 stsp .An Christian Weisgerber Aq Mt naddy@openbsd.org
981 8ca658b9 2022-07-05 stsp .An Josh Rickmar Aq Mt jrick@zettaport.com
982 bc3056e3 2019-08-18 stsp .An Joshua Stein Aq Mt jcs@openbsd.org
983 8ca658b9 2022-07-05 stsp .An Mark Jamsek Aq Mt mark@jamsek.dev
984 8ca658b9 2022-07-05 stsp .An Martin Pieuchot Aq Mt mpi@openbsd.org
985 8ca658b9 2022-07-05 stsp .An Omar Polo Aq Mt op@openbsd.org
986 8ca658b9 2022-07-05 stsp .An Stefan Sperling Aq Mt stsp@openbsd.org
987 8ca658b9 2022-07-05 stsp .An Klemens Nanni Aq Mt kn@openbsd.org