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
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
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
d725ef529e
Turn remaining deprecated commands into error stubs
2022-04-01 18:27:49 -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
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
485ce07c27
Match FugitiveRemote() interface to window.location in JS
2022-02-11 13:02:45 -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
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
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
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
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
79c2b3f48d
Try nested autocmds for ReadCmd/WriteCmd
...
I'm trying to leverage OptionSet for something. Let's see if this
causes issues for anybody.
2021-12-07 09:17:47 -05:00
Tim Pope
5a24c25275
fugitive.vim 3.6
...
* Fix support for older Vim 7 patch levels.
* Support copies on :Gclog --follow.
2021-11-25 14:53:57 -05:00
Tim Pope
e47121f8fd
Fix typo
2021-11-15 00:31:32 -05:00
Tim Pope
cd67d087df
fugitive.vim 3.5
...
* Lazy initialization.
* Make status buffer diff retrieval asynchronous.
* Support jump to diff from :Git log --name-status.
* Use smudge filters when viewing blobs.
* Provide User FugitiveEditor event.
* Provide FugitiveRemote() API function.
2021-11-15 00:17:52 -05:00
Tim Pope
b736e457b3
Provide FugitiveRemote()
2021-11-13 16:25:36 -05:00
Tim Pope
88c7f867cf
Further decouple #BufReadStatus() from v:cmdbang
2021-10-16 12:58:13 -04:00
Tim Pope
dd39902e3d
Minor performance improvement to global map definition
2021-09-30 12:43:23 -04:00
Tim Pope
bb89a7a497
Invert flag for lazy initialization
...
I think this second argument might become an optional buffer number at
some point, so change the special value for lazy to an invalid buffer
number.
2021-09-19 07:54:03 -04:00
Tim Pope
e2927fb467
Force current buffer number for FugitiveStatusline()
...
This is normally the default, but might be different during an event
like FugitiveChanged.
2021-09-10 16:13:51 -04:00
Tim Pope
6b1d90251e
Support lazy initialization in statusline indicator
...
Resolves: https://github.com/tpope/vim-fugitive/issues/1834
2021-09-10 15:51:47 -04:00
Tim Pope
bb4d1dd9a8
Eliminate internal use of FugitiveCommonDir()
...
Lead by example.
2021-09-10 15:51:41 -04:00
Tim Pope
ed6b45a81a
Drop unused args parameter from :Gcommand implementations
...
We stopped using this in 6356bbc4a7 .
2021-09-07 13:56:14 -04:00
Tim Pope
6f07d7e6cd
Make initialization lazy
2021-09-06 19:03:55 -04:00
Tim Pope
2a53d79248
fugitive.vim 3.4
...
* Use jobs for all Git execution. Faster and less prone to user error.
* Stream :Git! to the preview window.
* Make :Git grep behave like other :Git commands, not :Ggrep.
* Silence output and open quickfix list on :Ggrep -q.
* Support :Ggrep outside repository with --no-index.
* Expand ##, $ENVVAR, and ~/path in arguments to :Git.
* Expand "%" and other special sequences during tab completion.
* Improve tab completion for :Git push.
* Disable -- More -- prompt on :Git push, fetch, and --no-pager.
* Provide FugitiveObject/FugitiveStageBlob/FugitivePager events.
* Simplify :Gdiffsplit "smart" split direction.
* Support jump to commit in :Git log --graph.
* Use local not upstream branch name for :GBrowse default.
* Better support for ssh config in :GBrowse.
* Replace older deprecation warnings with error messages.
* Assorted public API enhancements.
* Require Git 1.8.5 or newer.
* Require Vim 7.3 or newer. Full functionality requires Vim 8.1.
* Directly echo :Git output for trivial commands like "add" on Vim 7.
* Fix E1208 when loading plugin on Vim 8.2.3141.
2021-09-02 13:03:27 -04:00
Tim Pope
2e395fa450
Provide FugitiveDidChange()
2021-09-01 19:20:46 -04:00
Tim Pope
2f3cd4715d
Remove :Gcgrep
...
This was a hedge in case I decided to go all in with symmetry with
:Gclog. I have decided to to.
2021-09-01 19:20:46 -04:00
Tim Pope
8bdbbf88a4
Change :Gstatus to error stub
2021-09-01 17:39:28 -04:00
Tim Pope
2b37219021
Fix check for -addr=other on nvim
...
I arrived at 0.4.0 by blaming the documentation, but apparently the
feature didn't land until later.
2021-08-31 16:33:21 -04:00
Tim Pope
30bf224453
Fix direct blame maps in short files
...
Patch 8.1.560 is the gift that keeps on giving. Let's work around this
for now by bolting on a new behavior to the previously unused :0,0Git
blame. Long term, we probably want to come up with a different
interface.
2021-08-31 12:01:21 -04:00
Tim Pope
74b0960f5b
Add deprecation warning to FugitivePrepare()
...
I am eager to reclaim this verb, so let's deprecate sooner rather than
later.
2021-08-25 05:00:04 -04:00
Tim Pope
de02a4ba84
Change deprecated Git wrappers to error stubs
2021-08-25 05:00:04 -04:00
Tim Pope
93174147cd
Provide FugitiveGitVersion()
...
I should have made fugitive#GitVersion() official a long time ago.
Better late than never.
2021-08-25 05:00:04 -04:00
Tim Pope
b06ad2a839
Provide FugitiveExecute()
2021-08-25 05:00:04 -04:00
Tim Pope
89ab2d95cd
Drop Vim requirement to 7.3
...
The code base still supports 7.3 (7.2.061 to be precise) so no harm in
dropping this for one final release.
2021-08-22 22:09:48 -04:00
Tim Pope
557ef84c6d
Improve public API argument order flexibility
2021-08-22 22:09:48 -04:00
Tim Pope
4e6b7b6ce9
Don't accept 0 to refer to alternate buffer
...
This allows a sensible interpretation when using 0 as a stand-in for
"false". You can use bufnr('#') if you need the old behavior.
2021-08-21 19:55:43 -04:00
Tim Pope
98039f3349
Move FugitivePath() away from documented functions
...
This function has weird semantics and does not rise to the level of its
peers.
2021-08-20 13:09:20 -04:00
Tim Pope
aae36024b8
Introduce FugitiveShellCommand() to replace FugitivePrepare()
...
We've moved on from the shell as the one true way, so let's demote the
one true preparation function.
2021-08-20 10:24:57 -04:00
Tim Pope
2fc1a0017c
Accept buffer numbers and dictionaries in FugitiveDetect()
...
This makes it easier to use FugitiveDetect() to initialize a temp file
that sits outside of the repository.
2021-08-17 17:19:46 -04:00
Tim Pope
80e7c63fb1
Support jump to file under cursor in :Git -p grep
...
This also adds support for :Git -p status, since we basically already
have an implementation for it.
2021-08-17 17:18:20 -04:00
Tim Pope
5853cb0fc3
Tweak documentation for FugitiveResult()
2021-08-10 02:35:52 -04:00