[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#37189: 25.4.1: vc-hg-ignore implementation is missing
From: |
Dmitry Gutov |
Subject: |
bug#37189: 25.4.1: vc-hg-ignore implementation is missing |
Date: |
Fri, 20 Mar 2020 01:42:45 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 |
Hi Wolfgang,
On 25.02.2020 04:22, Wolfgang Scherer wrote:
I would like to discuss overall strategy first. Since I have a fully
working implementation for all supported backends at
https://github.com/wolfmanx/vc-ign that does not interfere with the
current vc commands, it would be helpful, if you could load it and
evaluate the use cases 'z i' and 'z p' in 'vc-dir-mode', 'C-x v z i'
and 'C-x v z p' in 'dired-mode' and in a file buffer, just to see if
we can agree on a direction before discussing details.
I've read the patch you posted to this discussion, and there are some
definitely good things in there, but I wonder if we can make some
progress first without redoing everything quite as much.
The majority of backends don't support regexp ignores (AFAIK), so maybe
it's not worth bringing that notion at the top of the API. If we can let
individual backends handle this case in their implementations correctly,
that would be better. Then the ignore-param-regexp and ignore-param
generics might not be necessary. Though we could add some other(s).
I think a good point to start is the elimination of all
backend-specific 'vc-ignore' implementations ('vc-cvs-ignore',
'vc-svn-ignore'). That is one goal which is easily achievable. The
benefit is a uniform implementation across all backends with
'vc-default-ignore' as the central implementation of algorithms,
without duplication of code in backends.
First: the name of 'vc-default-ignore' itself implies that there have to
be backend-specific implementations. That's what the -default- in the
name is for. Likewise for vc-default-get-ignore-file-and-pattern.
Some other thoughts:
* Why go to this much indirection with 'ignore-param' when we could have
a backend method that would escape and anchor file name? It doesn't look
like that option would take more code.
* Since when AS-IS is t vc-default-get-ignore-file-and-pattern is not
doing much, maybe vc-ignore-file and vc-ignore-file shouldn't carry this
distinction this long through the call stack.
If vc-ignore-file calls a backend method that turns the file name into a
pattern which doesn't need any further special handling, it even could
call vc-ignore-pattern with the resulting value.
* Shouldn't vc-ignore-fileset takes the fileset and loop through it
calling vc-ignore-file with each value?
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- bug#37189: 25.4.1: vc-hg-ignore implementation is missing,
Dmitry Gutov <=