Problem: gitrevlist's keywordprg "git show" doesn't realise that input
should never be interpreted as an option. (Note that it is in
practice impossible to pass a value that is interpreted as an
option, but this expresses intent and is defensive.)
Solution: pass --end-of-options to force input to be interpreted as
arguments.
related: vim/vim#20702
closes: vim/vim#21472https://github.com/vim/vim/commit/4eae1d03e82c5b775a25c097509562efd350a8a3
Co-authored-by: Fionn Fitzmaurice <git@fionn.computer>
Problem: filetype: .git-blame-ignore-revs file is not recognized
Solution: Detect .git-blame-ignore-revs file as gitrevlist filetype,
include syntax and filetype plugins (Fionn Fitzmaurice)
A Git revision list is
> a list of object names (i.e. one unabbreviated SHA-1 per line)...,
> comments (#), empty lines, and any leading and trailing whitespace are
> ignored.
(from Git's fsck.skipList documentation).
The default output of git rev-list will match this. It is also suitable
as input to git blame --ignore-revs-file.
This adds filetype detection matching .git-blame-ignore-revs files,
syntax highlighting and basic filetype settings.
closes: vim/vim#20702https://github.com/vim/vim/commit/a8d5be92845df7fc0e9e4399545bd5c01bba536a
Co-authored-by: Fionn Fitzmaurice <fionn@github.com>