# bug/feature request: apply textconv in "git add -p" diff output

4 messages from 2009-06-20 to 2009-06-21. Participants: Nguyen Thai Ngoc Duy, Santi Béjar, Michael J Gruber.
Thread: https://gitlist.dev/t/19874

## Nguyen Thai Ngoc Duy, 2009-06-20 07:17

Subject: bug/feature request: apply textconv in "git add -p" diff output
Message-ID: <fcaeb9bf0906200017x6cc63c29q5515c11c202e424e@mail.gmail.com>
URL: https://gitlist.dev/e/fcaeb9bf0906200017x6cc63c29q5515c11c202e424e%40mail.gmail.com

```
Hi,

I use git to manage bdf font files. It it quite cryptic so textconv
for diff output makes it much easier to keep track of changes. The
only problem is that "git add -p" does not seems to use textconv, so I
have to run in parallel "git diff" and "git add -p", then add chunks
accordingly. Can somebody add textconv support to "git add -p" please?
I'm not so good at Perl to do the job.

Thanks,
-- 
Duy

```

## Santi Béjar, 2009-06-20 07:58

Subject: Re: bug/feature request: apply textconv in "git add -p" diff output
Message-ID: <adf1fd3d0906200058o3e48018fg32c0efba5e4d62a4@mail.gmail.com>
URL: https://gitlist.dev/e/adf1fd3d0906200058o3e48018fg32c0efba5e4d62a4%40mail.gmail.com
In-Reply-To: <fcaeb9bf0906200017x6cc63c29q5515c11c202e424e@mail.gmail.com>

```
2009/6/20 Nguyen Thai Ngoc Duy <pclouds@gmail.com>
>
> Hi,
>
> I use git to manage bdf font files. It it quite cryptic so textconv
> for diff output makes it much easier to keep track of changes. The
> only problem is that "git add -p" does not seems to use textconv, so I
> have to run in parallel "git diff" and "git add -p", then add chunks
> accordingly. Can somebody add textconv support to "git add -p" please?
> I'm not so good at Perl to do the job.

While at it it would be great if one could toggle between normal diff
and --color-words in "git add -p". I tried to do it but the logic in
"git add -p" is base on lines (and not chuncks) and git diff
--color-lines changes them and my perl-fu is not so good either.

Thanks in advance,
Santi

```

## Michael J Gruber, 2009-06-20 09:41

Subject: Re: bug/feature request: apply textconv in "git add -p" diff output
Message-ID: <4A3CAEBB.9030107@drmicha.warpmail.net>
URL: https://gitlist.dev/e/4A3CAEBB.9030107%40drmicha.warpmail.net
In-Reply-To: <fcaeb9bf0906200017x6cc63c29q5515c11c202e424e@mail.gmail.com>

```
Nguyen Thai Ngoc Duy venit, vidit, dixit 20.06.2009 09:17:
> Hi,
> 
> I use git to manage bdf font files. It it quite cryptic so textconv
> for diff output makes it much easier to keep track of changes. The
> only problem is that "git add -p" does not seems to use textconv, so I
> have to run in parallel "git diff" and "git add -p", then add chunks
> accordingly. Can somebody add textconv support to "git add -p" please?
> I'm not so good at Perl to do the job.

I don't think this is possible: textconv filters are meant to produce
easily readable output from diff, but in no way are they required to be
injective mappings. So, textconv output cannot to be used in order to
specify a patch uniquely.

The appropriate approach is to use smudge/clean filters. They are
mutually inverse. And, in fact, I just checked: add -p uses the cleaned
version. So, if clean converts to "something textual" which gives you
readable diffs and meaningful stats (and smudge converts to binary bdf)
then that is the way to go.

Michael

```

## Nguyen Thai Ngoc Duy, 2009-06-21 12:17

Subject: Re: bug/feature request: apply textconv in "git add -p" diff output
Message-ID: <fcaeb9bf0906210517s49ed029fr84d31b14b0184bb7@mail.gmail.com>
URL: https://gitlist.dev/e/fcaeb9bf0906210517s49ed029fr84d31b14b0184bb7%40mail.gmail.com
In-Reply-To: <4A3CAEBB.9030107@drmicha.warpmail.net>

```
On Sat, Jun 20, 2009 at 7:41 PM, Michael J
Gruber<git@drmicha.warpmail.net> wrote:
> Nguyen Thai Ngoc Duy venit, vidit, dixit 20.06.2009 09:17:
>> Hi,
>>
>> I use git to manage bdf font files. It it quite cryptic so textconv
>> for diff output makes it much easier to keep track of changes. The
>> only problem is that "git add -p" does not seems to use textconv, so I
>> have to run in parallel "git diff" and "git add -p", then add chunks
>> accordingly. Can somebody add textconv support to "git add -p" please?
>> I'm not so good at Perl to do the job.
>
> I don't think this is possible: textconv filters are meant to produce
> easily readable output from diff, but in no way are they required to be
> injective mappings. So, textconv output cannot to be used in order to
> specify a patch uniquely.
>
> The appropriate approach is to use smudge/clean filters. They are
> mutually inverse. And, in fact, I just checked: add -p uses the cleaned
> version. So, if clean converts to "something textual" which gives you
> readable diffs and meaningful stats (and smudge converts to binary bdf)
> then that is the way to go.

Right, I did not notice because mine was line by line translation.
I'll convert it to clean filter. Thanks.
-- 
Duy

```
