Re: 'git log' escape symbols shown as ESC[33 and ESC[m

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

 



On 01/16/2014 17:47, Jeff King wrote:
Are you using "less" as your pager (it is the default in git unless you
have set your PAGER environment variable)? If so, do you have the "R"
option set to pass through ANSI codes? Git will set this automatically
in your "LESS" variable if you do not already have such a variable (but
it will not touch it if you already have it set, and are missing "R").


I think the 'experimental' approach is simpler and better.
When the git command requiring pager is first run, git would run the pager with some simple one line escape sequence, and see if sequence is preserved. If it was preserved, git should just run with escape sequences. If the pager destroyed the sequence, git should issue a warning to the user: git: your default pager PAGER=more doesn't pass escape sequences, and they will be disabled them. You can revert this decision by changing the file ~/.git/pager.conf

This way:
* damaged sequences will not show up by default
* colors will be displayed by default when possible
* user would be informed, and will have a clear choice
* this is easy to implement, and no elaborate and obscure reasoning should be employed in the implementation

For me, if git would have told me that my pager doesn't support escape sequences, I could have taken it from there.

Yuri
--
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]