Re: [PATCH (GIT-GUI,GITK) 6/8] gitk: Port new encoding logic from git-gui.
From: Johannes Sixt <hidden>
Date: 2016-06-15 22:45:23
Subsystem:
the rest · Maintainer:
Linus Torvalds
Alexander Gavrilov schrieb:
On Fri, Sep 19, 2008 at 4:10 PM, Johannes Sixt [off-list ref] wrote:quoted
If I run $ LANG=C gitk 146ed90 with this series on the git-gui repository, then I hoped to see the text in the patches in the right encoding. But I understand that I expected too much - the patch text is just a stream of bytes that comes from different files, and the best you can do is to apply the system encoding. But if the view is switched to the tree view, and file contents are inspected, then this patch should help. But it doesn't. If you look at po/ja.po, it is appearent that the file was not read as UTF-8, which is dictated by .gitattributes.On my system everything works. You must have made a mistake somewhere.
Indeed. I was running above command form a git.git clone. Now, looking at anything that is in 146ed90 produces paths like po/de.po po/ja.po Yet, .gitattributes says this: /po/*.po encoding=UTF-8 which does not match any of the *.po files because the *.po are one level deeper inside git-gui/po/. The change below made a difference. Everything's fine now!
diff --git a/git-gui/.gitattributes b/git-gui/.gitattributes
index f96112d..8ad5766 100644
--- a/git-gui/.gitattributes
+++ b/git-gui/.gitattributes@@ -1,3 +1,3 @@ * encoding=US-ASCII git-gui.sh encoding=UTF-8 -/po/*.po encoding=UTF-8 +*.po encoding=UTF-8
Also, it should work in the patch mode as well: it reads the patch as binary, and decodes each line separately, based on the encoding determined for the current file.
This is great. But we'll have to see how this works on a multi-file diff on Windows. (I sense slowness.) Thanks, -- Hannes