Re: [PATCH 5/6] config docs: Provide for config to specify tags not to abbreviate
From: Junio C Hamano <hidden>
Date: 2016-11-09 05:55:39
Ian Jackson [off-list ref] writes:
quoted
I think the two things I found weird were: - it's in the "log" section, which makes me think it's an option for git-log. But it's not. I'm not sure what the _right_ section is, but hopefully it would make it clear that this is command-agnostic. Something like "gui.abbrevTags" might be OK (and as you note, has precedence). But of course it's possible that a command like "tig" could learn to support it. I'm not sure if that counts as a GUI or not. :)I don't really have an opinion about the name. gui.abbrevTags would be a possibility. (It's a bit odd that implicitly, the default would be `*'.)
I have trouble with both "log" and "abbrev" in the name. Perhaps I am biased by our recent discussion on a feature in the core that we use the word "abbrev" to describe, but I fear that most Git users, when told the word, would imagine the act of shortening 40-hex full object name down to shorter but still unique prefix, not the "this refname is too long, so let's show only the first few letters in GUI label". And I do not think we would want "log" or any core side Porcelain command to have too many "information losing" options like this "truncate refnames down to a point where it is no longer unique and meaningful". GUI tools can get away with doing sos because they can arrange these truncated labels to react to end-user input (e.g. the truncated Tag in the history display of gitk could be made to react to mouse-over and pop-up to show a full name, for example), but the output from the core side is pretty much fixed once it is emitted. So my first preference would be to teach gitk such a "please clarify" UI-reaction, if it does not know how to do so yet. There is no need for a configuration variable anywhere with this approach. If you do want to add a configuration to show fuller name in the tag, which would make it unnecessary for the user to do "please clarify, as I am hovering over what I want to get details of" action, that may also be a good way to go. But I think the right place to do so would be Edit -> Preferences menu in Gitk, and the settings will be stored in ~/.gitk or ~/.config/git/gitk or whatever gitk-specific place.