Re: git gui blame utf-8 bugs
- From
Shawn O. Pearce <spearce@spearce.org>
- Date
- Dec 14, 2007, 06:47 UTC
- Message-ID
- <20071214064709.GH14735@spearce.org>
- In-Reply-To
- <20071212091744.GA5377@pvv.org>
Finn Arne Gangstad <finnag@pvv.org> wrote:
> git gui has some utf-8 bugs:
It has several. :-)
> If you do git gui blame <file>, and the file contains utf-8 text, > the lines are not parsed as utf-8, but seemingly as iso-8859-1 instead.
Right. git-gui is keying off the environment setting for LANG, so I guess its set to iso-8859-1 on your system but you are working with a utf-8 file. We've talked about using something like .gitattributes to store encoding hints, or to just put a global gui setting in ~/.gitconfig but neither has had any patches written for it.
UTF-8 is seemingly the most common encoding that git-gui is mangling so maybe we should be defaulting to utf-8 until someone codes a more intelligent patch.
Show 7 quoted lines
> Also, the hovering comment is INITIALLY shown garbled (both Author and > commit message), but if you click on a line, so that the commit > message is shown in the bottom window, the hovering message is > magically corrected to utf-8. > > The text in the lower window (showing specific commits) seems to > always be handled correctly.
That's a "feature". :-)
What's happening here is the initial hovering message is obtained from the machine formatted output from `git blame --incremental` and in that format there is no encoding header so I'm just ignoring any encoding problems.
Later when you click on a line it does `git cat-file commit $sha1` and gets the proper encoding, and corrects the strings it originally had gotten from git-blame. So the hovering message "fixes" itself later on.
Maybe here too we should be defaulting to utf-8 instead of the native encoding.
-- Shawn.