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
25 0a58e722 2022-10-04 thomas .Ar command
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 07b0611c 2022-06-23 thomas Some command-specific key bindings may be prefixed with an integer, which is
59 07b0611c 2022-06-23 thomas denoted by N in the descriptions below, and is used as a modifier to the
60 07b0611c 2022-06-23 thomas operation as indicated.
62 fa502711 2022-07-03 thomas will echo digits to the screen when count modifiers are entered, and complete
63 fa502711 2022-07-03 thomas the sequence upon input of the first non-numeric character.
64 fa502711 2022-07-03 thomas Count modifiers can be aborted by entering an unmapped key.
65 634cb454 2022-07-03 thomas Once a compound command is executed, the operation can be cancelled with
68 634cb454 2022-07-03 thomas .Cm Backspace .
70 ee0cf61c 2022-10-05 thomas Global options must precede the command name, and are as follows:
71 ee0cf61c 2022-10-05 thomas .Bl -tag -width tenletters
73 ee0cf61c 2022-10-05 thomas Display usage information.
74 ee0cf61c 2022-10-05 thomas .It Fl V , -version
75 ee0cf61c 2022-10-05 thomas 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 fc2737d5 2022-09-15 thomas .It Cm H, F1
81 fc2737d5 2022-09-15 thomas Display run-time help.
82 fc2737d5 2022-09-15 thomas Key bindings for the focussed view will be displayed.
83 fc2737d5 2022-09-15 thomas Pressing this again inside the help view will toggle the display of
84 fc2737d5 2022-09-15 thomas 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 b1c950bf 2022-07-12 thomas will automatically use vertical split-screen views if the size of the
98 b1c950bf 2022-07-12 thomas terminal window is sufficiently large.
100 569abcd7 2022-07-12 thomas Switch the current split-screen layout, and render all active views in
101 569abcd7 2022-07-12 thomas this new layout.
102 b1c950bf 2022-07-12 thomas The split-screen layout can be either vertical or horizontal.
103 569abcd7 2022-07-12 thomas If the terminal is not wide enough when switching to a vertical split,
104 569abcd7 2022-07-12 thomas views will render in fullscreen.
106 53d2bdd3 2022-07-10 thomas When in a split-screen view, decrease the size of the focussed split
107 53d2bdd3 2022-07-10 thomas N increments (default: 1).
109 53d2bdd3 2022-07-10 thomas When in a split-screen view, increase the size of the focussed split
110 53d2bdd3 2022-07-10 thomas N increments (default: 1).
112 07dd3ed3 2022-08-06 thomas Go to line N in the view (default: last line).
114 07dd3ed3 2022-08-06 thomas Go to line N in the view (default: first line).
115 c72de8ab 2023-02-03 thomas .It Cm Right-arrow, l
116 c72de8ab 2023-02-03 thomas Scroll view to the right N increments (default: 1).
118 c72de8ab 2023-02-03 thomas Output moves left on the screen.
119 c72de8ab 2023-02-03 thomas .It Cm Left-arrow, h
120 c72de8ab 2023-02-03 thomas Scroll view to the left N increments (default: 1).
122 c72de8ab 2023-02-03 thomas Output moves right on the screen.
124 c72de8ab 2023-02-03 thomas Scroll view to the rightmost position.
126 c72de8ab 2023-02-03 thomas 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 56c96eff 2022-08-30 thomas .Op Fl c Ar commit
137 56c96eff 2022-08-30 thomas .Op Fl r Ar repository-path
138 56c96eff 2022-08-30 thomas .Op Ar 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 030916b5 2018-07-12 stsp This command is also executed if no explicit command is specified.
152 030916b5 2018-07-12 stsp The key bindings for
153 030916b5 2018-07-12 stsp .Cm tog log
154 07b0611c 2022-06-23 thomas are as follows (N denotes optional prefixed count modifier):
155 030916b5 2018-07-12 stsp .Bl -tag -width Ds
156 f7140bf5 2021-10-17 thomas .It Cm Down-arrow, j, >, Full stop, Ctrl-n
157 07b0611c 2022-06-23 thomas Move the selection cursor down N lines (default: 1).
158 f7140bf5 2021-10-17 thomas .It Cm Up-arrow, k, <, Comma, Ctrl-p
159 07b0611c 2022-06-23 thomas Move the selection cursor up N lines (default: 1).
160 4c2d69cb 2022-06-23 thomas .It Cm Page-down, Space, Ctrl+f, f
161 07b0611c 2022-06-23 thomas Move the selection cursor down N pages (default: 1).
162 1c5e5faa 2022-06-23 thomas .It Cm Page-up, Ctrl+b, b
163 07b0611c 2022-06-23 thomas Move the selection cursor up N pages (default: 1).
164 23427b14 2022-06-23 thomas .It Cm Ctrl+d, d
165 07b0611c 2022-06-23 thomas Move the selection cursor down N half pages (default: 1).
166 23427b14 2022-06-23 thomas .It Cm Ctrl+u, u
167 07b0611c 2022-06-23 thomas Move the selection cursor up N half pages (default: 1).
168 aa7a1117 2023-01-09 thomas .It Cm Home, =
169 912a3f79 2021-08-30 j Move the cursor to the newest commit.
170 aa7a1117 2023-01-09 thomas .It Cm End, *
171 912a3f79 2021-08-30 j Move the cursor to the oldest commit.
172 1dd93b2a 2021-08-30 stsp This will traverse all commits on the current branch which may take
173 1dd93b2a 2021-08-30 stsp a long time depending on the number of commits in branch history.
174 4b06140e 2022-03-22 thomas If needed, this operation can be cancelled with
177 9ebbe6e1 2021-08-30 stsp .Cm Backspace .
179 aa7a1117 2023-01-09 thomas Move the cursor to commit N (default: 1).
183 aa7a1117 2023-01-09 thomas but defaults to the oldest commit.
184 4c2d69cb 2022-06-23 thomas .It Cm Enter
187 030916b5 2018-07-12 stsp view showing file changes made in the currently selected commit.
191 030916b5 2018-07-12 stsp view showing the tree for the currently selected commit.
192 5036bf37 2018-09-24 stsp .It Cm Backspace
193 26f0cb24 2021-08-30 j Show log entries for the parent directory of the currently selected path.
194 26f0cb24 2021-08-30 j However when an active search is in progress or when additional commits
196 678cbce5 2019-07-28 stsp .Cm Backspace
197 26f0cb24 2021-08-30 j aborts the running operation.
199 60493ae3 2019-06-20 stsp Prompt for a search pattern and start searching for matching commits.
200 60493ae3 2019-06-20 stsp The search pattern is an extended regular expression which is matched
201 df0b3d8a 2019-06-28 stsp against a commit's author name, committer name, log message, and
202 df0b3d8a 2019-06-28 stsp commit ID SHA1 hash.
203 e6c76b79 2019-06-21 stsp Regular expression syntax is documented in
204 e6c76b79 2019-06-21 stsp .Xr re_format 7 .
206 aadc20e8 2022-09-23 thomas Prompt for a pattern and limit the log view's list of commits to those
207 aadc20e8 2022-09-23 thomas which match the pattern.
208 aadc20e8 2022-09-23 thomas If no pattern is specified, i.e. the
210 aadc20e8 2022-09-23 thomas prompt is immediately closed with the Enter key, then the pattern is
212 aadc20e8 2022-09-23 thomas Until the pattern is cleared, the limited list of commits replaces the
213 aadc20e8 2022-09-23 thomas full list of commits for all operations supported by the log view.
214 aadc20e8 2022-09-23 thomas For example, a search started with
216 aadc20e8 2022-09-23 thomas will search the limited list of commits, rather than searching all commits.
217 aadc20e8 2022-09-23 thomas The pattern is an extended regular expression which is matched
218 aadc20e8 2022-09-23 thomas against a commit's author name, committer name, log message, and
219 aadc20e8 2022-09-23 thomas commit ID SHA1 hash.
220 aadc20e8 2022-09-23 thomas Regular expression syntax is documented in
221 aadc20e8 2022-09-23 thomas .Xr re_format 7 .
223 07b0611c 2022-06-23 thomas Find the Nth next commit which matches the current search pattern (default: 1).
225 634cb454 2022-07-03 thomas Searching continues until either a match is found or
228 678cbce5 2019-07-28 stsp .Cm Backspace
229 678cbce5 2019-07-28 stsp key is pressed.
231 07b0611c 2022-06-23 thomas Find the Nth previous commit which matches the current search pattern
232 07b0611c 2022-06-23 thomas (default: 1).
234 634cb454 2022-07-03 thomas Searching continues until either a match is found or
237 678cbce5 2019-07-28 stsp .Cm Backspace
238 678cbce5 2019-07-28 stsp key is pressed.
239 bf0668dd 2019-06-26 stsp .It Cm Ctrl+l
242 01ca22b1 2020-12-07 stsp view with new commits found in the repository.
246 01ca22b1 2020-12-07 stsp view and toggle display of merged commits.
249 b672a97a 2020-01-27 stsp option determines whether merged commits are displayed initially.
253 38cb327b 2020-11-24 stsp view listing all references in the repository.
254 38cb327b 2020-11-24 stsp This can then be used to open a new
256 38cb327b 2020-11-24 stsp view for arbitrary branches and tags.
258 8eca0bdb 2023-01-02 thomas Toggle between showing the committer name and the author name.
261 030916b5 2018-07-12 stsp The options for
262 030916b5 2018-07-12 stsp .Cm tog log
263 030916b5 2018-07-12 stsp are as follows:
264 030916b5 2018-07-12 stsp .Bl -tag -width Ds
266 1137e0ae 2020-01-27 stsp Display individual commits which were merged into the current branch
267 1137e0ae 2020-01-27 stsp from other branches.
268 b672a97a 2020-01-27 stsp By default,
269 b672a97a 2020-01-27 stsp .Cm tog log
270 b672a97a 2020-01-27 stsp shows the linear history of the current branch only.
273 b672a97a 2020-01-27 stsp key binding can be used to toggle display of merged commits at run-time.
274 030916b5 2018-07-12 stsp .It Fl c Ar commit
275 030916b5 2018-07-12 stsp Start traversing history at the specified
276 030916b5 2018-07-12 stsp .Ar commit .
277 a54b6686 2019-06-28 stsp The expected argument is the name of a branch or a commit ID SHA1 hash.
278 0db75f06 2019-07-07 stsp An abbreviated hash argument will be expanded to a full SHA1 hash
279 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
280 19e70ad6 2019-05-14 stsp If this option is not specified, default to the work tree's current branch
281 19e70ad6 2019-05-14 stsp if invoked in a work tree, or to the repository's HEAD reference.
282 ecb28ae0 2018-07-16 stsp .It Fl r Ar repository-path
283 ecb28ae0 2018-07-16 stsp Use the repository at the specified path.
284 ecb28ae0 2018-07-16 stsp If not specified, assume the repository is located at or above the current
285 ecb28ae0 2018-07-16 stsp working directory.
286 212b39d1 2020-02-24 naddy If this directory is a
288 212b39d1 2020-02-24 naddy work tree, use the repository path associated with this work tree.
292 56c96eff 2022-08-30 thomas .Op Fl aw
293 56c96eff 2022-08-30 thomas .Op Fl C Ar number
294 56c96eff 2022-08-30 thomas .Op Fl r Ar repository-path
295 56c96eff 2022-08-30 thomas .Ar object1
296 56c96eff 2022-08-30 thomas .Ar object2
298 030916b5 2018-07-12 stsp Display the differences between two objects in the repository.
299 3dbaef42 2020-11-24 stsp Treat each of the two arguments as a reference, a tag name, or an object
300 3dbaef42 2020-11-24 stsp ID SHA1 hash, and display differences between the corresponding objects.
301 3dbaef42 2020-11-24 stsp Both objects must be of the same type (blobs, trees, or commits).
302 0db75f06 2019-07-07 stsp An abbreviated hash argument will be expanded to a full SHA1 hash
303 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
305 030916b5 2018-07-12 stsp The key bindings for
306 030916b5 2018-07-12 stsp .Cm tog diff
307 07b0611c 2022-06-23 thomas are as follows (N denotes optional prefixed count modifier):
308 030916b5 2018-07-12 stsp .Bl -tag -width Ds
310 64453f7e 2020-11-21 stsp Toggle treatment of file contents as ASCII text even if binary data was
312 f7140bf5 2021-10-17 thomas .It Cm Down-arrow, j, Ctrl-n
313 07b0611c 2022-06-23 thomas Scroll down N lines (default: 1).
314 f7140bf5 2021-10-17 thomas .It Cm Up-arrow, k, Ctrl-p
315 07b0611c 2022-06-23 thomas Scroll up N lines (default: 1).
316 1c5e5faa 2022-06-23 thomas .It Cm Page-down, Space, Ctrl+f, f
317 07b0611c 2022-06-23 thomas Scroll down N pages (default: 1).
318 1c5e5faa 2022-06-23 thomas .It Cm Page-up, Ctrl+b, b
319 07b0611c 2022-06-23 thomas Scroll up N pages (default: 1).
320 23427b14 2022-06-23 thomas .It Cm Ctrl+d, d
321 07b0611c 2022-06-23 thomas Scroll down N half pages (default: 1).
322 23427b14 2022-06-23 thomas .It Cm Ctrl+u, u
323 07b0611c 2022-06-23 thomas Scroll up N half pages (default: 1).
324 aa7a1117 2023-01-09 thomas .It Cm Home
325 912a3f79 2021-08-30 j Scroll to the top of the view.
326 aa7a1117 2023-01-09 thomas .It Cm End
327 912a3f79 2021-08-30 j Scroll to the bottom of the view.
329 aa7a1117 2023-01-09 thomas Scroll to line N (default: 1).
333 aa7a1117 2023-01-09 thomas but defaults to the last line in the diff.
334 82c78e96 2022-08-06 thomas .It Cm \&(
335 82c78e96 2022-08-06 thomas Navigate to the Nth previous file in the diff (default: 1).
336 82c78e96 2022-08-06 thomas .It Cm \&)
337 82c78e96 2022-08-06 thomas Navigate to the Nth next file in the diff (default: 1).
338 82c78e96 2022-08-06 thomas .It Cm \&{
339 82c78e96 2022-08-06 thomas Navigate to the Nth previous hunk in the diff (default: 1).
340 82c78e96 2022-08-06 thomas .It Cm \&}
341 82c78e96 2022-08-06 thomas Navigate to the Nth next hunk in the diff (default: 1).
343 07b0611c 2022-06-23 thomas Reduce diff context by N lines (default: 1).
345 07b0611c 2022-06-23 thomas Increase diff context by N lines (default: 1).
346 777aae21 2022-07-20 thomas .It Cm <, Comma, K
349 01ca22b1 2020-12-07 stsp view was opened via the
351 4fc71f3b 2022-07-12 thomas view, move to the Nth previous (younger) commit.
352 4fc71f3b 2022-07-12 thomas If the diff was opened via the
353 4fc71f3b 2022-07-12 thomas .Cm blame
354 4fc71f3b 2022-07-12 thomas view, move to the Nth previous line and load the corresponding commit
355 4fc71f3b 2022-07-12 thomas (default: 1).
356 777aae21 2022-07-20 thomas .It Cm >, Full stop, J
359 01ca22b1 2020-12-07 stsp view was opened via the
361 4fc71f3b 2022-07-12 thomas view, move to the Nth next (older) commit.
362 4fc71f3b 2022-07-12 thomas If the diff was opened via the
363 4fc71f3b 2022-07-12 thomas .Cm blame
364 4fc71f3b 2022-07-12 thomas view, move to the Nth next line and load the corresponding commit (default: 1).
366 0e404f95 2020-11-14 stsp Prompt for a search pattern and start searching for matching lines.
367 66dc9065 2020-02-15 stsp The search pattern is an extended regular expression.
368 66dc9065 2020-02-15 stsp Regular expression syntax is documented in
369 66dc9065 2020-02-15 stsp .Xr re_format 7 .
371 07b0611c 2022-06-23 thomas Find the Nth next line which matches the current search pattern (default: 1).
373 07b0611c 2022-06-23 thomas Find the Nth previous line which matches the current search pattern
374 07b0611c 2022-06-23 thomas (default: 1).
376 3dbaef42 2020-11-24 stsp Toggle display of whitespace-only changes.
378 adf4c9e0 2022-07-03 thomas Change the diff algorithm.
379 d40a767d 2022-07-03 thomas Supported diff algorithms are Myers (quick and dirty) and
380 d40a767d 2022-07-03 thomas Patience (slow and tidy).
381 adf4c9e0 2022-07-03 thomas This is a global setting which also affects the
382 adf4c9e0 2022-07-03 thomas .Cm blame
386 09b5bff8 2020-02-23 naddy The options for
387 09b5bff8 2020-02-23 naddy .Cm tog diff
388 09b5bff8 2020-02-23 naddy are as follows:
389 09b5bff8 2020-02-23 naddy .Bl -tag -width Ds
391 64453f7e 2020-11-21 stsp Treat file contents as ASCII text even if binary data is detected.
392 3dbaef42 2020-11-24 stsp .It Fl C Ar number
393 3dbaef42 2020-11-24 stsp Set the number of context lines shown in the diff.
394 3dbaef42 2020-11-24 stsp By default, 3 lines of context are shown.
395 09b5bff8 2020-02-23 naddy .It Fl r Ar repository-path
396 09b5bff8 2020-02-23 naddy Use the repository at the specified path.
397 09b5bff8 2020-02-23 naddy If not specified, assume the repository is located at or above the current
398 09b5bff8 2020-02-23 naddy working directory.
399 212b39d1 2020-02-24 naddy If this directory is a
401 212b39d1 2020-02-24 naddy work tree, use the repository path associated with this work tree.
403 3dbaef42 2020-11-24 stsp Ignore whitespace-only changes.
406 56c96eff 2022-08-30 thomas .Cm blame
407 56c96eff 2022-08-30 thomas .Op Fl c Ar commit
408 56c96eff 2022-08-30 thomas .Op Fl r Ar repository-path
411 030916b5 2018-07-12 stsp Display line-by-line history of a file at the specified path.
413 030916b5 2018-07-12 stsp The key bindings for
414 030916b5 2018-07-12 stsp .Cm tog blame
415 07b0611c 2022-06-23 thomas are as follows (N denotes optional prefixed count modifier):
416 030916b5 2018-07-12 stsp .Bl -tag -width Ds
417 f7140bf5 2021-10-17 thomas .It Cm Down-arrow, j, Ctrl-n
418 07b0611c 2022-06-23 thomas Move the selection cursor down N pages (default: 1).
419 f7140bf5 2021-10-17 thomas .It Cm Up-arrow, k, Ctrl-p
420 07b0611c 2022-06-23 thomas Move the selection cursor up N pages (default: 1).
421 1c5e5faa 2022-06-23 thomas .It Cm Page-down, Space, Ctrl+f, f
422 07b0611c 2022-06-23 thomas Move the selection cursor down N pages (default: 1).
423 1c5e5faa 2022-06-23 thomas .It Cm Page-up, Ctrl+b, b
424 07b0611c 2022-06-23 thomas Move the selection cursor up N pages (default: 1).
425 23427b14 2022-06-23 thomas .It Cm Ctrl+d, d
426 07b0611c 2022-06-23 thomas Move the selection cursor down N half pages (default: 1).
427 23427b14 2022-06-23 thomas .It Cm Ctrl+u, u
428 07b0611c 2022-06-23 thomas Move the selection cursor up N half pages (default: 1).
429 aa7a1117 2023-01-09 thomas .It Cm Home
430 4deef56f 2021-09-02 naddy Move the selection cursor to the first line of the file.
431 aa7a1117 2023-01-09 thomas .It Cm End
432 4deef56f 2021-09-02 naddy Move the selection cursor to the last line of the file.
434 aa7a1117 2023-01-09 thomas Move the selection cursor to line N (default: 1).
438 aa7a1117 2023-01-09 thomas but defaults to the last line in the file.
439 030916b5 2018-07-12 stsp .It Cm Enter
442 030916b5 2018-07-12 stsp view for the currently selected line's commit.
446 c0d30c23 2018-10-07 stsp view with the version of the file as found in the currently
447 c0d30c23 2018-10-07 stsp selected line's commit.
451 c0d30c23 2018-10-07 stsp view with the version of the file as found in the parent commit of the
452 c0d30c23 2018-10-07 stsp currently selected line's commit.
456 c0d30c23 2018-10-07 stsp view with the previously blamed commit.
460 eaeaa612 2022-07-20 thomas view for the currently selected annotated line.
462 0e404f95 2020-11-14 stsp Prompt for a search pattern and start searching for matching lines.
463 6c4c42e0 2019-06-24 stsp The search pattern is an extended regular expression.
464 6c4c42e0 2019-06-24 stsp Regular expression syntax is documented in
465 6c4c42e0 2019-06-24 stsp .Xr re_format 7 .
467 07b0611c 2022-06-23 thomas Find the Nth next line which matches the current search pattern (default: 1).
469 07b0611c 2022-06-23 thomas Find the Nth previous line which matches the current search pattern
470 07b0611c 2022-06-23 thomas (default: 1).
472 adf4c9e0 2022-07-03 thomas Change the diff algorithm.
473 d40a767d 2022-07-03 thomas Supported diff algorithms are Myers (quick and dirty) and
474 d40a767d 2022-07-03 thomas Patience (slow and tidy).
475 adf4c9e0 2022-07-03 thomas This is a global setting which also affects the
480 030916b5 2018-07-12 stsp The options for
481 030916b5 2018-07-12 stsp .Cm tog blame
482 030916b5 2018-07-12 stsp are as follows:
483 030916b5 2018-07-12 stsp .Bl -tag -width Ds
484 030916b5 2018-07-12 stsp .It Fl c Ar commit
485 030916b5 2018-07-12 stsp Start traversing history at the specified
486 030916b5 2018-07-12 stsp .Ar commit .
487 a54b6686 2019-06-28 stsp The expected argument is the name of a branch or a commit ID SHA1 hash.
488 0db75f06 2019-07-07 stsp An abbreviated hash argument will be expanded to a full SHA1 hash
489 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
490 69069811 2018-08-02 stsp .It Fl r Ar repository-path
491 69069811 2018-08-02 stsp Use the repository at the specified path.
492 69069811 2018-08-02 stsp If not specified, assume the repository is located at or above the current
493 69069811 2018-08-02 stsp working directory.
494 212b39d1 2020-02-24 naddy If this directory is a
496 212b39d1 2020-02-24 naddy work tree, use the repository path associated with this work tree.
500 56c96eff 2022-08-30 thomas .Op Fl c Ar commit
501 56c96eff 2022-08-30 thomas .Op Fl r Ar repository-path
502 56c96eff 2022-08-30 thomas .Op Ar path
504 030916b5 2018-07-12 stsp Display the repository tree.
507 55cccc34 2020-02-20 stsp is specified, show tree entries at this path.
509 848d6979 2019-08-12 stsp Displayed tree entries may carry one of the following trailing annotations:
510 848d6979 2019-08-12 stsp .Bl -column YXZ description
511 848d6979 2019-08-12 stsp .It @ Ta entry is a symbolic link
512 848d6979 2019-08-12 stsp .It / Ta entry is a directory
513 848d6979 2019-08-12 stsp .It * Ta entry is an executable file
514 63c5ca5d 2019-08-24 stsp .It $ Ta entry is a Git submodule
517 0d6c6ee3 2020-05-20 stsp Symbolic link entries are also annotated with the target path of the link.
519 030916b5 2018-07-12 stsp The key bindings for
520 030916b5 2018-07-12 stsp .Cm tog tree
521 07b0611c 2022-06-23 thomas are as follows (N denotes optional prefixed count modifier):
522 030916b5 2018-07-12 stsp .Bl -tag -width Ds
523 f7140bf5 2021-10-17 thomas .It Cm Down-arrow, j, Ctrl-n
524 07b0611c 2022-06-23 thomas Move the selection cursor down N lines (default: 1).
525 f7140bf5 2021-10-17 thomas .It Cm Up-arrow, k, Ctrl-p
526 07b0611c 2022-06-23 thomas Move the selection cursor up N lines (default: 1).
527 4c2d69cb 2022-06-23 thomas .It Cm Page-down, Space, Ctrl+f, f
528 07b0611c 2022-06-23 thomas Move the selection cursor down N pages (default: 1).
529 1c5e5faa 2022-06-23 thomas .It Cm Page-up, Ctrl+b, b
530 07b0611c 2022-06-23 thomas Move the selection cursor up N pages (default: 1).
531 23427b14 2022-06-23 thomas .It Cm Ctrl+d, d
532 07b0611c 2022-06-23 thomas Move the selection cursor down N half pages (default: 1).
533 23427b14 2022-06-23 thomas .It Cm Ctrl+u, u
534 07b0611c 2022-06-23 thomas Move the selection cursor up N half pages (default: 1).
535 aa7a1117 2023-01-09 thomas .It Cm Home, =
536 e4526bf5 2021-09-03 naddy Move the selection cursor to the first entry.
537 aa7a1117 2023-01-09 thomas .It Cm End, *
538 e4526bf5 2021-09-03 naddy Move the selection cursor to the last entry.
540 aa7a1117 2023-01-09 thomas Move the selection cursor to entry N (default: 1).
544 aa7a1117 2023-01-09 thomas but defaults to the last entry.
545 030916b5 2018-07-12 stsp .It Cm Enter
546 030916b5 2018-07-12 stsp Enter the currently selected directory, or switch to the
548 030916b5 2018-07-12 stsp view for the currently selected file.
552 69efd4c4 2018-07-18 stsp view for the currently selected tree entry.
556 152c1c93 2020-11-29 stsp view listing all references in the repository.
557 152c1c93 2020-11-29 stsp This can then be used to open a new
559 152c1c93 2020-11-29 stsp view for arbitrary branches and tags.
560 7837eeac 2018-09-24 stsp .It Cm Backspace
561 07b0611c 2022-06-23 thomas Move back to the Nth parent directory (default: 1).
563 c0d30c23 2018-10-07 stsp Show object IDs for all objects displayed in the
567 4eec20aa 2019-06-22 stsp Prompt for a search pattern and start searching for matching tree entries.
568 4eec20aa 2019-06-22 stsp The search pattern is an extended regular expression which is matched
569 4eec20aa 2019-06-22 stsp against the tree entry's name.
570 4eec20aa 2019-06-22 stsp Regular expression syntax is documented in
571 4eec20aa 2019-06-22 stsp .Xr re_format 7 .
573 07b0611c 2022-06-23 thomas Find the Nth next tree entry which matches the current search pattern
574 07b0611c 2022-06-23 thomas (default: 1).
576 07b0611c 2022-06-23 thomas Find the Nth previous tree entry which matches the current search pattern
577 07b0611c 2022-06-23 thomas (default: 1).
580 030916b5 2018-07-12 stsp The options for
581 030916b5 2018-07-12 stsp .Cm tog tree
582 030916b5 2018-07-12 stsp are as follows:
583 030916b5 2018-07-12 stsp .Bl -tag -width Ds
584 030916b5 2018-07-12 stsp .It Fl c Ar commit
585 030916b5 2018-07-12 stsp Start traversing history at the specified
586 030916b5 2018-07-12 stsp .Ar commit .
587 a54b6686 2019-06-28 stsp The expected argument is the name of a branch or a commit ID SHA1 hash.
588 0db75f06 2019-07-07 stsp An abbreviated hash argument will be expanded to a full SHA1 hash
589 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
590 38cb327b 2020-11-24 stsp .It Fl r Ar repository-path
591 38cb327b 2020-11-24 stsp Use the repository at the specified path.
592 38cb327b 2020-11-24 stsp If not specified, assume the repository is located at or above the current
593 38cb327b 2020-11-24 stsp working directory.
594 38cb327b 2020-11-24 stsp If this directory is a
596 38cb327b 2020-11-24 stsp work tree, use the repository path associated with this work tree.
598 56c96eff 2022-08-30 thomas .It Cm ref Op Fl r Ar repository-path
599 38cb327b 2020-11-24 stsp Display references in the repository.
601 38cb327b 2020-11-24 stsp The key bindings for
602 38cb327b 2020-11-24 stsp .Cm tog ref
603 07b0611c 2022-06-23 thomas are as follows (N denotes optional prefixed count modifier):
604 38cb327b 2020-11-24 stsp .Bl -tag -width Ds
605 f7140bf5 2021-10-17 thomas .It Cm Down-arrow, j, Ctrl-n
606 07b0611c 2022-06-23 thomas Move the selection cursor down N lines (default: 1).
607 f7140bf5 2021-10-17 thomas .It Cm Up-arrow, k, Ctrl-p
608 07b0611c 2022-06-23 thomas Move the selection cursor up N lines (default: 1).
609 4c2d69cb 2022-06-23 thomas .It Cm Page-down, Space, Ctrl+f, f
610 07b0611c 2022-06-23 thomas Move the selection cursor down N pages (default: 1).
611 1c5e5faa 2022-06-23 thomas .It Cm Page-up, Ctrl+b, b
612 07b0611c 2022-06-23 thomas Move the selection cursor up N pages (default: 1).
613 23427b14 2022-06-23 thomas .It Cm Ctrl+d, d
614 07b0611c 2022-06-23 thomas Move the selection cursor down N half pages (default: 1).
615 23427b14 2022-06-23 thomas .It Cm Ctrl+u, u
616 07b0611c 2022-06-23 thomas Move the selection cursor up N half pages (default: 1).
617 aa7a1117 2023-01-09 thomas .It Cm Home, =
618 e4526bf5 2021-09-03 naddy Move the selection cursor to the first reference.
619 aa7a1117 2023-01-09 thomas .It Cm End, *
620 e4526bf5 2021-09-03 naddy Move the selection cursor to the last reference.
622 aa7a1117 2023-01-09 thomas Move the selection cursor to reference N (default: 1).
626 aa7a1117 2023-01-09 thomas but defaults to the last reference.
627 38cb327b 2020-11-24 stsp .It Cm Enter
630 01ca22b1 2020-12-07 stsp view which begins traversing history at the commit resolved via the
631 38cb327b 2020-11-24 stsp currently selected reference.
635 c42c9805 2020-11-24 stsp view showing the tree resolved via the currently selected reference.
637 38cb327b 2020-11-24 stsp Show object IDs for all non-symbolic references displayed in the
641 84227eb1 2022-06-23 thomas Show last modified date of each displayed reference.
643 3bfadbd4 2021-11-20 thomas Toggle display order of references between sort by name and sort by timestamp.
645 38cb327b 2020-11-24 stsp Prompt for a search pattern and start searching for matching references.
646 38cb327b 2020-11-24 stsp The search pattern is an extended regular expression which is matched
647 38cb327b 2020-11-24 stsp against absolute reference names.
648 38cb327b 2020-11-24 stsp Regular expression syntax is documented in
649 38cb327b 2020-11-24 stsp .Xr re_format 7 .
651 07b0611c 2022-06-23 thomas Find the Nth next reference which matches the current search pattern
652 07b0611c 2022-06-23 thomas (default: 1).
654 07b0611c 2022-06-23 thomas Find the Nth previous reference which matches the current search pattern
655 07b0611c 2022-06-23 thomas (default: 1).
656 38cb327b 2020-11-24 stsp .It Cm Ctrl+l
657 38cb327b 2020-11-24 stsp Reload the list of references displayed by the
662 38cb327b 2020-11-24 stsp The options for
663 38cb327b 2020-11-24 stsp .Cm tog ref
664 38cb327b 2020-11-24 stsp are as follows:
665 38cb327b 2020-11-24 stsp .Bl -tag -width Ds
666 74283ab8 2020-02-07 stsp .It Fl r Ar repository-path
667 74283ab8 2020-02-07 stsp Use the repository at the specified path.
668 74283ab8 2020-02-07 stsp If not specified, assume the repository is located at or above the current
669 74283ab8 2020-02-07 stsp working directory.
670 74283ab8 2020-02-07 stsp If this directory is a
672 74283ab8 2020-02-07 stsp work tree, use the repository path associated with this work tree.
675 6d17833f 2019-11-08 stsp .Sh ENVIRONMENT
676 64486692 2022-07-07 thomas .Bl -tag -width TOG_VIEW_SPLIT_MODE
677 6d17833f 2019-11-08 stsp .It Ev TOG_COLORS
679 6d17833f 2019-11-08 stsp shows colorized output if this variable is set to a non-empty value.
680 6d17833f 2019-11-08 stsp The default color scheme can be modified by setting the environment
681 6d17833f 2019-11-08 stsp variables documented below.
682 6d17833f 2019-11-08 stsp The colors available in color schemes are
683 6d17833f 2019-11-08 stsp .Dq black ,
685 6d17833f 2019-11-08 stsp .Dq green ,
686 6d17833f 2019-11-08 stsp .Dq yellow ,
688 93a300b2 2021-08-26 stsp .Dq magenta ,
691 1d7fe5cd 2019-11-08 stsp .Dq default
692 1d7fe5cd 2019-11-08 stsp which maps to the terminal's default foreground color.
693 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_AUTHOR
694 bd15e874 2023-01-20 thomas The color used to mark up author information.
695 6d17833f 2019-11-08 stsp If not set, the default value
698 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_COMMIT
699 bd15e874 2023-01-20 thomas The color used to mark up commit IDs.
700 6d17833f 2019-11-08 stsp If not set, the default value
701 bd15e874 2023-01-20 thomas .Dq green
703 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_DATE
704 bd15e874 2023-01-20 thomas The color used to mark up date information.
705 bd15e874 2023-01-20 thomas If not set, the default value
706 bd15e874 2023-01-20 thomas .Dq yellow
708 6d17833f 2019-11-08 stsp .It Ev TOG_COLOR_DIFF_CHUNK_HEADER
709 6d17833f 2019-11-08 stsp The color used to mark up chunk header lines in diffs.
710 6d17833f 2019-11-08 stsp If not set, the default value
713 6d17833f 2019-11-08 stsp .It Ev TOG_COLOR_DIFF_META
714 6d17833f 2019-11-08 stsp The color used to mark up meta data in diffs.
715 c0b01bdb 2019-11-08 stsp If not set, the default value
718 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_DIFF_MINUS
719 bd15e874 2023-01-20 thomas The color used to mark up removed lines in diffs.
720 c0b01bdb 2019-11-08 stsp If not set, the default value
721 c0b01bdb 2019-11-08 stsp .Dq magenta
723 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_DIFF_PLUS
724 bd15e874 2023-01-20 thomas The color used to mark up added lines in diffs.
725 c0b01bdb 2019-11-08 stsp If not set, the default value
728 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_REFS_BACKUP
729 bd15e874 2023-01-20 thomas The color used to mark up references in the
730 bd15e874 2023-01-20 thomas .Dq refs/got/backup/
731 bd15e874 2023-01-20 thomas namespace.
732 11b20872 2019-11-08 stsp If not set, the default value
735 38cb327b 2020-11-24 stsp .It Ev TOG_COLOR_REFS_HEADS
736 38cb327b 2020-11-24 stsp The color used to mark up references in the
737 38cb327b 2020-11-24 stsp .Dq refs/heads/
739 38cb327b 2020-11-24 stsp If not set, the default value
742 38cb327b 2020-11-24 stsp .It Ev TOG_COLOR_REFS_REMOTES
743 38cb327b 2020-11-24 stsp The color used to mark up references in the
744 38cb327b 2020-11-24 stsp .Dq refs/remotes/
746 38cb327b 2020-11-24 stsp If not set, the default value
749 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_REFS_TAGS
750 2183bbf6 2022-01-23 thomas The color used to mark up references in the
751 bd15e874 2023-01-20 thomas .Dq refs/tags/
752 2183bbf6 2022-01-23 thomas namespace.
753 2183bbf6 2022-01-23 thomas If not set, the default value
754 bd15e874 2023-01-20 thomas .Dq magenta
756 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_TREE_DIRECTORY
757 bd15e874 2023-01-20 thomas The color used to mark up directory tree entries.
758 bd15e874 2023-01-20 thomas If not set, the default value
761 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_TREE_EXECUTABLE
762 bd15e874 2023-01-20 thomas The color used to mark up executable file tree entries.
763 bd15e874 2023-01-20 thomas If not set, the default value
764 bd15e874 2023-01-20 thomas .Dq green
766 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_TREE_SUBMODULE
767 bd15e874 2023-01-20 thomas The color used to mark up submodule tree entries.
768 bd15e874 2023-01-20 thomas If not set, the default value
769 bd15e874 2023-01-20 thomas .Dq magenta
771 bd15e874 2023-01-20 thomas .It Ev TOG_COLOR_TREE_SYMLINK
772 bd15e874 2023-01-20 thomas The color used to mark up symbolic link tree entries.
773 bd15e874 2023-01-20 thomas If not set, the default value
774 bd15e874 2023-01-20 thomas .Dq magenta
776 bd15e874 2023-01-20 thomas .It Ev TOG_DIFF_ALGORITHM
777 bd15e874 2023-01-20 thomas Determines the default diff algorithm used by
779 bd15e874 2023-01-20 thomas Supported diff algorithms are Myers (quick and dirty) and
780 bd15e874 2023-01-20 thomas Patience (slow and tidy).
781 bd15e874 2023-01-20 thomas Valid values for
782 bd15e874 2023-01-20 thomas .Ev TOG_DIFF_ALGORITHM
784 bd15e874 2023-01-20 thomas .Dq patience
786 bd15e874 2023-01-20 thomas .Dq myers .
787 bd15e874 2023-01-20 thomas If unset, the Myers diff algorithm will be used by default.
788 bd15e874 2023-01-20 thomas .It Ev TOG_VIEW_SPLIT_MODE
789 bd15e874 2023-01-20 thomas Determines the default layout of split-screen views.
790 bd15e874 2023-01-20 thomas If set to
795 bd15e874 2023-01-20 thomas will use horizontal split by default.
796 bd15e874 2023-01-20 thomas Otherwise, vertical split will be used.
799 bd15e874 2023-01-20 thomas key can be used to switch between vertical and horizontal split layout
800 bd15e874 2023-01-20 thomas at run-time.
802 030916b5 2018-07-12 stsp .Sh EXIT STATUS
803 030916b5 2018-07-12 stsp .Ex -std tog
804 030916b5 2018-07-12 stsp .Sh SEE ALSO
805 56b9a4ca 2019-06-21 stsp .Xr got 1 ,
806 56b9a4ca 2019-06-21 stsp .Xr git-repository 5 ,
807 56b9a4ca 2019-06-21 stsp .Xr re_format 7
808 030916b5 2018-07-12 stsp .Sh AUTHORS
809 60c73080 2022-07-05 thomas .An Christian Weisgerber Aq Mt naddy@openbsd.org
810 60c73080 2022-07-05 thomas .An Josh Rickmar Aq Mt jrick@zettaport.com
811 bc3056e3 2019-08-18 stsp .An Joshua Stein Aq Mt jcs@openbsd.org
812 60c73080 2022-07-05 thomas .An Mark Jamsek Aq Mt mark@jamsek.dev
813 60c73080 2022-07-05 thomas .An Martin Pieuchot Aq Mt mpi@openbsd.org
814 60c73080 2022-07-05 thomas .An Omar Polo Aq Mt op@openbsd.org
815 60c73080 2022-07-05 thomas .An Stefan Sperling Aq Mt stsp@openbsd.org
816 60c73080 2022-07-05 thomas .An Klemens Nanni Aq Mt kn@openbsd.org