Tim Pope
f48cbb92c5
Read more of config file for core.worktree check
...
References: https://github.com/tpope/vim-fugitive/issues/1920
2022-05-21 21:35:50 -04:00
Tim Pope
589e8b51c2
Track correct window when blaming twice-open buffer
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1992
2022-05-21 21:35:49 -04:00
Tim Pope
5b62c75238
Extract Git dir cache keys to local variables
...
Allow for a non-string representation of the repository to replace the
dir parameter.
2022-05-14 02:35:39 -04:00
Tim Pope
a8139d37b2
Properly normalize Git dir in 'keywordprg'
2022-05-13 01:56:20 -04:00
Tim Pope
f529acef74
Force Vim path normalization in fugitive#Path()
...
This only matters for use cases where the paths differ by more than just
slashes (theoretically possible with mixed WSL setups).
2022-05-11 02:12:21 -04:00
Tim Pope
87923d1b1b
Fix HEAD cache expiry on FugitiveDidChange()
2022-05-11 00:23:14 -04:00
Tim Pope
af8b352dbf
Remove redundant "dir" keys from dictionaries
2022-05-11 00:23:14 -04:00
Tim Pope
b81c59bd6a
Remove fugitive#head()
2022-05-10 22:47:05 -04:00
Tim Pope
b7287bd542
Provide explicit explanation of command naming
2022-04-26 16:21:33 -04:00
Tim Pope
b5bbd0d181
Clarify ~ and P maps in blame window
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1980
2022-04-21 15:05:35 -04:00
Tim Pope
b04708af2d
Revert "Avoid IO from ":p" during detection"
...
This change failed to account for the directory edge case, where ":p:h"
has the very nice property of giving us back the original input, due to
":p" appending a trailing slash. Without this, we fail to detect when
editing the root of the repository.
This reverts commit 1b811b88a4 .
Resolves: https://github.com/tpope/vim-fugitive/issues/1978
Resolves: https://github.com/tpope/vim-fugitive/issues/1979
2022-04-20 23:25:14 -04:00
Tim Pope
1b811b88a4
Avoid IO from ":p" during detection
2022-04-20 18:29:45 -04:00
Tim Pope
ed1ff363df
Remove another acwrite check
2022-04-20 18:29:45 -04:00
Tim Pope
e064f42770
Don't consider buftype=acwrite buffers to have real filenames
...
Immediately after I changed this I rediscovered the documentation at
`:help E676`.
2022-04-20 18:28:44 -04:00
Maksim Odnoletkov
70251a915f
Show local commits when no upstream is set
...
References: https://github.com/tpope/vim-fugitive/issues/1963
Resolves: https://github.com/tpope/vim-fugitive/issues/1977
2022-04-20 14:47:15 -04:00
Tim Pope
200593827e
Adjust handling of 'buftype' during detection
2022-04-19 18:35:15 -04:00
Tim Pope
4b0f2b6045
Default g:ceiling_directories to parent of $HOME
...
References: https://github.com/tpope/vim-fugitive/issues/1457
2022-04-14 02:31:49 -04:00
Tim Pope
a252be79c0
Check for ch_close_in() to ensure full Vim jobs support
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1973
2022-04-12 19:51:42 -04:00
Tim Pope
cba863444c
Move unpushed sections above unpulled, again
...
This reverts commit 279d56eb47
(effectively).
References: https://github.com/tpope/vim-fugitive/issues/1963
2022-04-05 12:13:40 -04:00
Tim Pope
d725ef529e
Turn remaining deprecated commands into error stubs
2022-04-01 18:27:49 -04:00
Tim Pope
8f169a84ff
Allow simultaneous blames in diffed buffers
...
References: https://github.com/tpope/vim-fugitive/pull/1327
2022-04-01 18:27:49 -04:00
Tim Pope
d9a914b14d
Replace 'cursorbind' in blame with manual line syncing
...
This is the only way to sync the line without also syncing the column.
Syncing the column is particularly problematic when it causes the blame
window to vertically scroll while typing.
2022-04-01 18:27:44 -04:00
Tim Pope
c0701f7a0e
Fix expansion of SSH host aliases
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1962
2022-03-30 11:08:14 -04:00
Tim Pope
321328c6c5
Avoid I/O from ":p" when handling temp files
...
This isn't a big deal for temp files themselves, but if we're checking
an arbitrary buffer, it's possible we'll end up hitting a slow network
share just to find out if the path is relative.
This new s:AbsoluteVimPath() helper could potentially be reused in a lot
of places. But this diff is big enough as is; save that for later.
2022-03-26 15:41:55 -04:00
Tim Pope
8157efff49
Provide g:fugitive_defer_to_existing_maps
...
References: https://github.com/tpope/vim-fugitive/issues/1425
2022-03-25 18:08:01 -04:00
Tim Pope
b6405d8908
Provide literally named <Plug> maps
...
For every map X, also provide a map <Plug>fugitive:X.
References: https://github.com/tpope/vim-fugitive/issues/1425
2022-03-25 17:50:32 -04:00
Tim Pope
5716e11776
Fix line wrap in README
2022-03-24 08:02:43 -04:00
Tim Pope
46652a304f
Add :GUnlink, like in eunuch.vim
...
This currently mirrors :GRemove, but gives us the option to add a third
variant.
2022-03-09 10:50:24 -05:00
Tim Pope
afd6c13c6b
Fix infinite loop when summary window contains no sections
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1954
2022-03-01 07:35:31 -05:00
Tim Pope
485ce07c27
Match FugitiveRemote() interface to window.location in JS
2022-02-11 13:02:45 -05:00
Tim Pope
c29ef11cd6
Parse anchor in remote URL
...
I've never seen this in practice, but if it does happen, we shouldn't
include it in the value for "path".
2022-02-11 13:02:45 -05:00
Tim Pope
6c19f1ddfb
More robut escaping of +cmd arguments
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1938
2022-02-02 11:53:01 -05:00
Tim Pope
a443104489
Add czs as :Git stash push --staged
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1941
2022-02-02 05:49:09 -05:00
Roger Bongers
59529a2c36
Add basic bisect subcommand completion
2022-01-24 21:13:07 -05:00
Tim Pope
a93ceff61f
Support extensions.worktreeConfig
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1898
2022-01-13 14:06:42 -05:00
Tim Pope
f4d94c5985
Move CommonDir() from autoload to plugin
2022-01-11 18:47:38 -05:00
Tim Pope
bb4f9e660b
Add core.worktree to FAQ
2022-01-11 18:39:40 -05:00
Tim Pope
189e3c406e
Eliminate filereadable() guards by catching readfile() error
2022-01-11 18:36:36 -05:00
Tim Pope
944dc602c6
Require core.bare=true for bare repositories
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1920
2022-01-11 13:50:55 -05:00
Tim Pope
fa20e5e77c
Remove :silent from all :checktime uses
...
This can appear to hang with 'noautoread', or if the buffer has changed
in memory. In reality it's not hanging, it's just silenced the
interactive prompt.
Resolves: https://github.com/tpope/vim-fugitive/issues/1917
2022-01-10 11:08:29 -05:00
Tim Pope
57968b63c2
Support tab complete of :Git push remote \+branch
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1916
2022-01-05 11:10:57 -05:00
Tim Pope
88a97127d1
Account for optional escaping in tab complete
...
Tab complete results are always passed to fnameescape(), which can
result in the output having more backslashes than the input, causing
those results to be filtered out. Attempt to reconcile this.
References: https://github.com/tpope/vim-fugitive/issues/1916
2022-01-05 11:08:38 -05:00
Tim Pope
b6dbb97759
Extend lazy detection to netrw
...
The requires dropping support for b:netrw_curdir, which was added in
fecd42864a for the vague reason of
handling "unusually named netrw buffers". I'll figure out what to do
about those alleged buffers when one of them surfaces again.
2022-01-05 11:07:15 -05:00
Tim Pope
b1c3cdffc9
Fix status reload after staging entire section
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1912
2021-12-29 16:50:00 -05:00
Tim Pope
ee992c808c
Narrow application of broken jobwait() workaround
...
Neovim seemlingly forces a redraw if :sleep is called while defocused,
but only if at least one FocusGained/FocusLost autocommand is defined.
The purpose of this :sleep is to force the exit callback to run when
jobwait() erroneously refuses to do the job. Our exit callback removes
the job from the dictionary, so we can use the lack of a job key in any
dictionary as a signal that we can skip it. Hacks on top of hacks.
Resolves: https://github.com/tpope/vim-fugitive/issues/1909
References: https://github.com/tpope/vim-fugitive/issues/1857
2021-12-28 16:03:34 -05:00
Tim Pope
831fdab983
Simplify extraction of directory of buffer name
...
The behavior of :p is more predictable than I realized when I first
wrote this.
2021-12-28 16:03:34 -05:00
Tim Pope
da30818d17
Resize EDITOR window automatically when necessary
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1907
2021-12-24 12:53:00 -05:00
Tim Pope
ab57abf1d0
Don't feedkeys() into terminal window
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1908
2021-12-23 21:47:29 -05:00
Tim Pope
f18571e647
Remove redundant ":p" modification during detection
...
Every ":p" does I/O to check for a directory, so let's do away with the
belt-and-suspenders usage.
2021-12-23 15:00:14 -05:00
Tim Pope
3fb9beacbc
Fix possible infinite loop
2021-12-12 13:28:20 -05:00