Re: [RFC] i18n.pathencoding
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 6, 2012, 03:24 UTC
- Message-ID
- <7vwr076dg7.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <5047ACE7.3050000@web.de>
Torsten Bögershausen <tboegi@web.de> writes:
Show 48 quoted lines
> On 05.09.12 13:11, Nguyen Thai Ngoc Duy wrote: >> On Wed, Sep 5, 2012 at 12:19 AM, Junio C Hamano <gitster@pobox.com> wrote: >>> Nguyen Thai Ngoc Duy <pclouds@gmail.com> writes: >>>> On Sat, Sep 1, 2012 at 1:11 PM, Torsten Bögershausen <tboegi@web.de> wrote: >>>>> @@ -476,7 +476,7 @@ int parse_options(int argc, const char **argv, const char *prefix, >>>>> usage_with_options(usagestr, options); >>>>> } >>>>> >>>>> - precompose_argv(argc, argv); >>>>> + reencode_argv(argc, argv); >>>>> return parse_options_end(&ctx); >>>>> } >>>> >>>> If you have to re-encode command line arguments, what about paths >>>> coming --stdin or a file? >>> >>> That problem is inherited from the MacOS precompose topic this one >>> builds on. Not that it is unimportant to fix, though. >> >> On fixing that. 76759c7 describes the change as: >> >> The argv[] conversion allows to use the TAB filename completion done >> by the shell on command line. It tolerates other tools which use >> readdir() to feed decomposed file names into git. >> >> How come git's internal conversion helps TAB filename completion, >> which is done before git is executed? > > Because the shell use readdir() itself when <TAB> is pressed > > $echo Bö > Bö > $echo Ba > Ba > $ls > Bo ̈ > Ba > > # The terminal program of Mac OS shows the decomposed "ö" correctly, > "Bö" is shown as "Bö", while xterm shows "Bö" as "Bo ̈", > that is "o" followod by a "combining diaresis". > > The shell seems to do the same: > to add Bö to git, > > $git add Bo<TAB> > > needs to be used. > And as a result, the sheel will pass the "o" in decomposed unicode to git, > which is corrected in precompose_argv().
Well explained; this does not have anything to do with what Git outputs.