jesseduffield.lazygit/pkg/utils
Stefan Haller 8731d8a51b Rework the custom pager config (rename to diff renderer)
For a long time lazygit has used the term "custom pager" to refer to
what's really a "diff renderer". A pager is a program that allows you to
view output page by page (hence the name), e.g. less; lazygit's custom
diff renderers are not pagers. It used the term only because the feature
is implemented using git's GIT_PAGER env var, but that's an
implementation detail.

Rename the 'git.pagers' config to 'git.diffRenderers', and restructure
its elements while we're at it to make things clearer:

- Add a 'type' field to explicitly specify which type of diff renderer
  it is (the two fundamentally different ones are 'stdinFilter' and
  'extDiff').
- Add a third type, 'rawGit', which has an 'args' field that makes it
  easy to use 'git --color-words' as a custom renderer
- Unify the old 'pager' and 'externalDiffCommand' fields to a single
  'command' field for both types

Existing config files are migrated automatically.
2026-07-31 08:42:51 +02:00
..
yaml_utils Rework the custom pager config (rename to diff renderer) 2026-07-31 08:42:51 +02:00
color.go Store TextStyle in Pipe struct as pointer 2025-04-29 14:57:15 +02:00
color_test.go Fix Decolorise to also strip hyperlinks 2024-08-24 10:36:01 +02:00
date.go Make UnixToDateSmart timezone-deterministic 2026-05-02 17:59:27 +02:00
date_test.go Make UnixToDateSmart timezone-deterministic 2026-05-02 17:59:27 +02:00
dummies.go Move NewDummyCommon to pkg/common 2025-05-06 09:43:26 +02:00
errors.go move OS commands into their own package 2020-09-29 20:48:49 +10:00
formatting.go Replace go-runewidth with uniseg 2025-12-23 16:49:16 +01:00
formatting_test.go Replace go-runewidth with uniseg 2025-12-23 16:49:16 +01:00
history_buffer.go chore: use errors.New to replace fmt.Errorf with no parameters. 2024-04-24 16:21:34 +08:00
history_buffer_test.go Add search history 2023-09-20 08:35:41 +03:00
io.go Fix ForEachLineInFile to not lose the last line if it doesn't end with a LF 2024-10-09 15:37:08 +02:00
io_test.go Fix ForEachLineInFile to not lose the last line if it doesn't end with a LF 2024-10-09 15:37:08 +02:00
lines.go Replace go-runewidth with uniseg 2025-12-23 16:49:16 +01:00
lines_test.go Copy gocui files into lazygit repo under pkg/gocui 2026-04-30 14:29:08 +02:00
once_writer.go add deadlock mutex package 2022-08-07 11:16:14 +10:00
once_writer_test.go Enable revive linter, and fix a bunch of warnings 2025-06-30 19:13:20 +02:00
rebase_todo.go Move dragged commits in one rebase 2026-07-31 08:37:28 +02:00
rebase_todo_test.go Move dragged commits in one rebase 2026-07-31 08:37:28 +02:00
regexp.go add FindNamedMatches function in utils 2021-12-26 16:48:23 +11:00
regexp_test.go add FindNamedMatches function in utils 2021-12-26 16:48:23 +11:00
search.go Enable intrange linter, and fix warnings 2025-06-30 18:30:11 +02:00
search_test.go Rename FuzzySearch to FilterStrings 2024-03-17 11:55:30 +01:00
slice.go Modernize all codes 2025-11-15 10:46:23 +01:00
slice_test.go Remove redundant variable dedeclarations 2024-05-19 16:38:21 +10:00
string_pool.go Store Commit.Hash by pointer (kept in a pool of hashes) 2025-04-29 14:57:15 +02:00
string_stack.go start refactoring gui 2022-03-17 19:13:40 +11:00
template.go Modernize all codes 2025-11-15 10:46:23 +01:00
template_test.go fix: fix ReplacePlaceholderString 2023-01-18 20:56:22 +09:00
thread_safe_map.go use thread safe map 2022-10-02 20:57:44 -07:00
thread_safe_map_test.go Enable intrange linter, and fix warnings 2025-06-30 18:30:11 +02:00
utils.go Expand a leading ~ in worktree paths to the home directory 2026-07-03 18:53:05 +02:00
utils_test.go Expand a leading ~ in worktree paths to the home directory 2026-07-03 18:53:05 +02:00