Re: [PATCH] git-p4: add "--path-encoding" option

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2015-08-31 19.40, Junio C Hamano wrote:
> larsxschneider@xxxxxxxxx writes:

>> +test_expect_success 'Create a repo containing cp1251 encoded paths' '
>> +	cd "$cli" &&
>> +
>> +	FILENAME="$(echo "a-¤_o-¶_u-¼.txt" | iconv -f utf-8 -t cp1252)" &&
> 
> Hmm, we'd be better off not having a bare UTF-8 sequence in the
> source like this, especially when you already have the same thing
> backslash-escaped in the "expect" file below.  Perhaps
> 
> 	NAME="a-\303\244_o-\303\266_u-\303\274.txt" &&
> 
> 	UTF8=$(printf "$NAME") &&
>         CP1252=$(printf "$NAME" | iconv -t cp1252) &&
>         echo "\"$UTF8\"" >expect &&
> 
>         >"$CP1252" &&
>         p4 add "$CP1252" &&
>         ...
> 
Using file names and iconv like this may not be portable:
- cp1252 may be called CP1252 (or may not be available)
- reading from stdin is not necessarily supported by iconv
- creating files in CP1252 may not be supported under Mac OS
   (Not sure about Windows)


One solution could be to use ISO-8859-1, convert into UTF-8,
and "convert into UTF-8" one more time.

We can skip using iconv in the test case completely, and use
something like this:
(Fully untested)

UTF8=$(printf '\303\203\302\204')
NAME=$(printf '\303\204')


--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]