On Thu, May 31, 2012 at 2:14 PM, Lanny Ripple <[email protected]> wrote: > fink sed (unexpected. .* breaks at é): > > lanny;~> echo "Rémi Leblond" | LANG=C LC_ALL=C /sw/bin/sed -ne > 's/.*/GIT_AUTHOR_NAME='\''&'\''/p' > GIT_AUTHOR_NAME='R'émi Leblond
I poked around this as much as could. It appears to be something in how the Fink sed interprets a UTF-8 string when told the locale is C (or at least, non-UTF-8). If you define LANG/LC_ALL as en_US.UTF-8 then it works. My hunch is that it's in libiconv. Fink sed links to it through libintl but Apple sed only links to libSystem. I tried compiling libiconv a couple different ways and couldn't get a different result. A better question would be, why does git redefine LANG/LC_ALL? I bet it's because they wanted sed to provide a binary copy of AUTHOR and other variables, but that seems like a very fragile thing to do when you mix regular expressions in. ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Fink-users mailing list [email protected] List archive: http://news.gmane.org/gmane.os.macosx.fink.user Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-users
