Commit Graph

1171 Commits

Author SHA1 Message Date
Tim Pope
d2abfca08f Refactor run loop 2020-05-31 00:50:49 -04:00
Tim Pope
e87fe092a2 Extract s:RunEdit() 2020-05-31 00:50:49 -04:00
Maksim Odnoletkov
5d32f75289 Fix stash map
`czz` used to act without confirmation before. But
6b40e51008 changed it to require `<CR>`.
Given that `czw` keeps working without confirmation and that there
is a separate `cz<Space>` map - seems like the change was not intended?
2020-05-28 17:05:45 -04:00
Tim Pope
caf3b1d569 Don't default :Git grep to --column
If you want this, you can pass --column yourself, or set the grep.column
config option.  This is probably going to change for :Ggrep, too.
2020-04-24 23:05:39 -04:00
Tim Pope
f17a91d010 Provide completion relative to working directory 2020-04-24 23:01:38 -04:00
Tim Pope
5dfe8581ca Extract :Ggrep/:Glgrep wrapper function 2020-04-24 23:01:38 -04:00
Tim Pope
92ad06f70d Use parameterized Git dir when completing heads 2020-04-24 23:01:37 -04:00
Tim Pope
05bbfcd0dc Remove commit entry from :{range}Glog 2020-04-21 13:44:34 -04:00
Tim Pope
85e2c73830 Favor :Ggrep over :Git grep
I'm starting to think :Git grep shouldn't be special cased.
Occasionally it is desirable to see grep results without clobbering the
quickfix list.

Reserve -O/--open-files-in-pager to opt into quickfix behavior, as this
fits well with Fugitive's use of a temp buffer as the Git pager.
2020-04-12 11:47:38 -04:00
Tim Pope
f5391f0bfc Fix race condition resuming job after editor invocation
Closes https://github.com/tpope/vim-fugitive/issues/1489
2020-04-12 11:47:38 -04:00
Tim Pope
53dd9b3957 Encapsulate update-index --index-info 2020-04-08 04:06:24 -04:00
Tim Pope
792f51a58b Leverage Git config retrieval helpers 2020-04-08 02:51:55 -04:00
Tim Pope
a9bf9de61d Move Quickfix section under Git section 2020-04-08 02:51:55 -04:00
Tim Pope
9a4d730270 Drop support for :{windowheight}Git
Ever since Vim gained -addr=, it's been impossible to define a command
that accepts both marks like '< (requires -addr=lines) an and a count
that's beyond the end of the file (requires -addr=other).  This means
:Git needs to pick sides between :'<,'>Git blame and :{windowheight}Git
log, and the former is much more important than the latter.
2020-03-12 10:23:56 -04:00
Patrice Peterson
ccf582838b Fix some inconsistencies in help mappings
Some didn't use `<silent>` or `<C-U>`.
2020-03-12 09:30:14 -04:00
Patrice Peterson
d3cdb3208d Have remaining mappings use S:Map()
There were a few mappings left that weren't customizable with
g:[onx]remap. This makes them configurable.
2020-03-12 09:30:14 -04:00
Tim Pope
5ad42e307f Factor in 8.2.0239 when checking for job env support 2020-03-10 12:46:26 -04:00
Tim Pope
68f570ec38 Enable closing stdin by pressing CTRL-D
This provides a way to use commands like :Git hash-object --stdin
without a PTY, which is not to say that there are any such commands that
one would actually want to use.  It also has debugging applications.
2020-03-10 12:46:26 -04:00
Tim Pope
12e43b62cc Don't use "Head:" header for commit under cursor
This is the first line of the file so it's an annoyingly aggressive
default.
2020-03-10 12:46:26 -04:00
Tim Pope
ffd7042c15 Fix echoed line during :Gread 2020-03-10 12:46:26 -04:00
Tim Pope
dbc8d9a32c Fix list indexing bug 2020-03-05 13:21:50 -05:00
Tim Pope
e06005a742 Fix staging hunk that comes after binary file
Closes https://github.com/tpope/vim-fugitive/issues/1462
2020-03-05 08:43:03 -05:00
Tim Pope
8388b6d0fb Use status headers for commit maps
Closes https://github.com/tpope/vim-fugitive/issues/1485
2020-03-04 10:30:20 -05:00
Tim Pope
7ae214e445 Fix erroneous temp buffer on non-listing :Git branch 2020-03-03 09:36:04 -05:00
Tim Pope
3c3e6ea67b Support most top level Git options 2020-03-02 04:24:26 -05:00
Tim Pope
8aaf744f2a Don't rely on rebase --autosquash shorthand
I'm starting to think this is more confusing than helpful.
2020-03-02 04:24:26 -05:00
Tim Pope
d102dd92fd Fix :GRename ../
Closes https://github.com/tpope/vim-fugitive/issues/1481
2020-03-02 02:40:09 -05:00
Tim Pope
3bd69748c3 Remove remaining :Gsubcmd calls from implementation 2020-02-29 22:37:57 -05:00
Tim Pope
e84f023edf Remove redundant exists(':Gblame') check
This command used to be restricted to file and blob buffers, but now
it's global, not to mention deprecated, and the check serves no purpose.
2020-02-29 22:37:57 -05:00
Tim Pope
d0dceb9feb Change subtopic help tag style from :Git- to :Git_
This is less Git-like, but a bit more Vim-like, and doesn't force us
into the awkward :Git---paginate.
2020-02-29 22:37:57 -05:00
Tim Pope
025151bc78 Fix deletion of trailing fold upon loading blob
Closes https://github.com/tpope/vim-fugitive/issues/1479
2020-02-29 22:37:45 -05:00
Tim Pope
aada6479cf Use :Gsubcmd completion for :Git subcmd 2020-02-29 07:38:35 -05:00
Tim Pope
6b40e51008 Remove most uses of s:EchoExec()
This function was intended to avoid the press ENTER prompt for brief
output, but the new :Git job based runner now does that more
effectively.  Remove all old uses of it except the U map, which I am
electing to keep quiet on older versions of Vim.
2020-02-29 07:38:35 -05:00
Tim Pope
c452181975 Remove old :Git! temp buffer behavior
Rip the band-aid off now so we can reclaim it for something else sooner
rather than later.

If you're trying to support both old and new versions of Fugitive,
exists('*FugitiveConfigGetAll') will be true on versions where
--paginate is supported.  In a pinch you can also swap in :Gsplit!, but
that's eventually going away too.
2020-02-23 18:10:47 -05:00
Tim Pope
430253c302 Drop support for non-PTY :!
The experience without a PTY is pretty lackluster, and if you're using a
GUI or Windows, there's probably nothing stopping you from upgrading to
a version of Vim with job support.
2020-02-23 18:10:47 -05:00
Tim Pope
a5c921190a Override existing config values on :Git -c config.option= 2020-02-23 15:41:10 -05:00
Tim Pope
31629d8bd1 Use :read for :{range}Git! --paginate 2020-02-23 00:26:37 -05:00
Tim Pope
5a5a95b90a Tease apart bang and non-bang variants of :Gread 2020-02-23 00:26:36 -05:00
Tim Pope
2acea41bef Handle custom Git executable for :Git --paginate 2020-02-22 20:14:33 -05:00
Tim Pope
c0aad3ac78 Update internal uses of :Git! to :Git --paginate 2020-02-22 20:14:33 -05:00
Tim Pope
8b83d6ec6c Use :pedit for :Git! --paginate 2020-02-22 20:14:33 -05:00
Tim Pope
efb1c8a29d Add - map for Push header 2020-02-22 20:14:33 -05:00
Rob Pilling
9e4a5239ee Respect 'wildignorecase' when completing :Gedit 2020-02-20 16:07:24 -05:00
Rob Pilling
349b18d373 Pull out s:fileignorecase() 2020-02-20 16:07:24 -05:00
Tim Pope
2e67f82b79 Refine handling of pagination via temp buffer
Use temp buffer for output of any command for which the Git
configuration option of pager.<command> is true.  Avoid using a temp
buffer if the value is false, even for commands like "show" where we
normally would.  If the configuration value is present and can't be
interpreted as a Boolean, punt to a :terminal where Git will invoke it
directly.

Generate and use custom config dictionary that includes -c values passed
to :Git.  This enables `:Git -c pager.status status` to correctly use a
pager.

Paginate "config", "branch", and "tag" for certain argument lists,
matching the logic found in the Git source code as closely as possible.
These 3 commands were identified as having special pagination logic by
the presence of the DELAY_PAGER_CONFIG flag on their definitions in
git.c.

Paginate "am --show-current-patch".

References https://github.com/tpope/vim-fugitive/issues/1415
2020-02-18 21:00:01 -05:00
Tim Pope
a81ba999e8 Correctly treat config keys without values as true 2020-02-18 20:59:50 -05:00
Tim Pope
d10dc9ea93 Quarantine deprecated commands in documentation 2020-02-18 14:09:24 -05:00
Tim Pope
2401f1a7da Work around minibufexpl/autochdir induced error
Closes https://github.com/tpope/vim-fugitive/issues/1456
2020-02-18 12:33:58 -05:00
Appu Joseph
81ca98d7e8 Fix Trailing Characters, Invalid range error for :<count>Gstatus
Correct the position of newly added keepalt option from
'botright <count>keepalt split' to 'botright keepalt <count>split'
2020-02-18 10:15:07 -05:00
Tim Pope
9f69019424 Partially support :Git difftool on old Git 2020-02-15 20:18:15 -05:00