Commit Graph

928 Commits

Author SHA1 Message Date
Lewis Russell
0595724fa9 fix(blame): parse blame info correctly
Fixes #1065
2024-06-27 10:01:23 +01:00
Lewis Russell
0e39e9afcf fix: toggle_current_line_blame
Fixes #1072
2024-06-27 09:53:37 +01:00
Lewis Russell
fa42613096 feat(config): improve deprecation message
There are Neovim users who don't know how to configure highlights.
Adjust the deprecation message to include an example of how to set a
highlight.
2024-06-25 12:00:09 +01:00
Artyom Andreev
d0db8ef6a0 fix(blame): respect original blame winbar 2024-06-25 09:25:20 +01:00
Yi Ming
17e8fd6618 fix(blame): show the winbar if the main window has it enabled 2024-06-24 19:10:51 +01:00
Lewis Russell
8df63f2ddc fix(blame): update current_line_blame when attaching 2024-06-21 15:21:24 +01:00
Lewis Russell
d03a1c9a10 fix(blame): include error message in error 2024-06-21 15:04:28 +01:00
Lewis Russell
e4efe9b99b feat: set bufname for commit buffers 2024-06-21 13:24:22 +01:00
Lewis Russell
93c38d9726 fix(blame): popupmenu error
Fixes #1061
2024-06-21 12:57:27 +01:00
Lewis Russell
0dc886637f feat(blame): set filetype to gitsigns.blame
Resolves #1049
2024-06-20 15:10:25 +01:00
Lewis Russell
9ca00df1c8 feat(blame): run formatter with pcall
If it fails, use the default format.
2024-06-20 15:00:12 +01:00
Lewis Russell
0349546134 fix(blame): track buffers changes correctly in the cache 2024-06-20 13:58:35 +01:00
Lewis Russell
bcae8395fb refactor(blame): improve color calc 2024-06-20 12:27:29 +01:00
Lewis Russell
9cdfcb5f03 perf(blame): some improvements
- Ensure ':Gitsigns blame' utilizes the blame cache.
- Rewrite the blame runner to process output incrementally.
- Make the blame cache more efficient.
- Move the blame processing code to a separate module.
2024-06-20 12:26:55 +01:00
Ben Elan
89a4dce7c9
fix(attach): resolve error viewing fugitive trees (#1058) 2024-06-20 08:54:06 +01:00
Lewis Russell
651d5ed082 refactor: simplify deprecated config handling 2024-06-19 14:58:49 +01:00
Lewis Russell
92a8fbb845 feat!: remove current_line_blame_formatter_opts
- Also make relative time the default time format for current_line_blame_formatter
- When `current_line_blame_formatter` is passed as a function it is no
  longer passed an opts argument.
2024-06-19 14:51:26 +01:00
Lewis Russell
61f5b64076 feat!: remove support for yadm 2024-06-19 14:37:25 +01:00
Lewis Russell
3d7e49c201 feat(config)!: deprecate highlight groups in config.signs
These fields haven't been documented for some time, so now hard
deprecate them.
2024-06-19 14:33:10 +01:00
Lewis Russell
9291836665 feat(nav): add target option
Allows `nav_hunk` to target staged, unstaged or all hunks.
2024-06-19 12:15:06 +01:00
Lewis Russell
7516bac563 fix(nav): misc bugs
- When constructing a list of hunks to consider for nav, make sure to
  use copies.

- Adjust the loop in `Hunks.filter_common` to run an additional
  iteration in order to finish processing.
2024-06-19 11:02:45 +01:00
Lewis Russell
3e9a98bc05 chore: update response action 2024-06-19 10:26:23 +01:00
Lewis Russell
ef54387324 chore: update issue template 2024-06-19 09:40:07 +01:00
Lewis Russell
def49e48c6 fix(util): ignore endofline when running blame 2024-06-18 17:15:20 +01:00
Lewis Russell
25b6ee4be5 feat(blame): add Gitsigns blame
Similar to fugitive blame.

Use `<CR>` on a commit line to open a menu with additional actions.

Release-As: 1.0.0
2024-06-18 17:08:59 +01:00
Lewis Russell
ceaa21f625 refactor: improve log messages output 2024-06-18 14:26:29 +01:00
Lewis Russell
f846c50724 fix(watcher): fix debounce
Fixes #1046
2024-06-18 10:34:56 +01:00
Lewis Russell
47c8e3e571 feat: tweak how commit buffers are processed
Previously when attaching to a commit buffer (via gitsigns or fugitive),
gitsigns would set the revision to diff against to the parent so the
signs of that commit would be displayed.

Now that we have staged signs, they are now used for that purpose, and
so the base is no longer set to the parent.
2024-06-13 15:03:27 +01:00
Lewis Russell
b8cf5e8efa feat(signs): able staged signs by default 2024-06-13 12:01:16 +01:00
github-actions[bot]
0b04035bb7 chore(main): release 0.9.0 2024-06-13 11:56:19 +01:00
Lewis Russell
de18f6b749 fix(watcher): throttle watcher handler
Throttle (in addition to debounce) in case the debounce delay is not
enough and to prevent too many handlers from being launched (and
interleaved).
2024-06-12 16:42:16 +01:00
Lewis Russell
4a143f13e1 chore: add timestamp to debug messages 2024-06-07 13:24:11 +01:00
Lewis Russell
54b9df401b fix(attach): fix worktree attaching
Fixes #1020
2024-06-07 13:16:59 +01:00
dundargoc
805c17f150 chore: fix typo 2024-06-07 09:43:35 +01:00
Lewis Russell
4b53134ce5 fix(watcher): workaround weird annoying libuv bug
Fixes #1027
2024-06-07 07:56:34 +01:00
Lewis Russell
379a5a915a
chore: update bug report template 2024-06-05 14:17:17 +01:00
Lewis Russell
e31d2149d9 fix: add workaround for Lazy issue 2024-06-05 10:17:10 +01:00
Lewis Russell
75dc649106 fix(attach): detach on when the buffer name changes
Fixes #1021
2024-05-29 10:00:48 +01:00
Lewis Russell
af3fdad8dd fix: handle untracked files for custom bases
Fixes #1022
2024-05-28 10:02:32 +01:00
Lewis Russell
c96e3cf476 fix: scheduling in cwd watching 2024-05-28 09:41:58 +01:00
Lewis Russell
720061aa15 feat(setup)!: make setup() synchronous
Previously `setup()` was asynchronous in order to run a system command
to check the git version.

As support for v0.8 is dropped, this is no longer required.
2024-05-28 09:35:46 +01:00
Lewis Russell
cdfcd9d39d refactor: remove vimfn signs backend
Closes #941
2024-05-23 09:39:58 +01:00
Lewis Russell
d9d94e055a feat!: drop support for nvim v0.8 2024-05-23 09:39:58 +01:00
Josh Pencheon
20f305d63b fix(blame): avoid right-aligned blame overlapping buftext
When the blame text's length exceeds the available space to
the right of the buffer's text, the intention is to switch
to the 'eol' extmark placement. However, there were a number
of issues that could trip up the time at which it swtiches
to 'eol':

- if the buffer line or virtual text contain multibyte characters,
  they weren't counted properly in terms of screen cells that they'd
  consume
- incorrect window identifer was passed when calculating the
  available space, meaning that signs/folds/numbers columns
  weren't properly accounted for
2024-05-23 08:35:41 +01:00
Lewis Russell
a28bb1db50 fix(update): always get object contents from object names
Fixes #847
2024-05-22 16:29:01 +01:00
Lewis Russell
d6a3bf0b36 ci: add testing for Nvim v0.10.0 2024-05-22 16:26:32 +01:00
Yi Ming
805610a939 fix: wrong api name in stable 2024-05-06 15:57:25 +01:00
Yi Ming
bc933d24a6 fix: use latest api in 0.10 2024-05-04 12:02:45 +01:00
Lewis Russell
9cafac31a0 fix(attach): allow attaching inside .git/
Fixes #923
2024-05-01 10:50:33 +01:00
Lewis Russell
f65d1d8201 fix(util): close file after reading 2024-05-01 10:38:52 +01:00