Hi, I just realized that I completely failed to offer my enthusiasm not only for the idea of this patch series and the resulting graphs, but also at the really high quality of the contribution. Thanks, James, for working on this! And now just quickly... On Sat, 12 Oct 2019, Junio C Hamano wrote: > James Coglan <jcoglan@xxxxxxxxx> writes: > > > - We only need to consider the width of a small set of characters: > > { | / \ _ - . * }. We don't need to worry about Unicode, and the > > simple character counting in graph.c was working fine. > > I have to warn you that we saw attempts to step outside these ASCII > graphics and use Unicode characters for prettier output in the past. > If you can do so without too much complexity, I'd suggest you try > not to close the door to those people who follow your footsteps to > further improve the system by pursuing the avenue further. That is a very valid point, I think. There are really pretty Unicode characters out there that I could totally see in a nice commit graph. At that stage, we would have to use `int utf8_strnwidth(const char *string, int len, int skip_ansi)` anyway (because of the `skip_ansi` that saves us _a lot_ of work). In this case, I doubt that it makes sense to keep a running tally of the width. It would be faster, or at least similarly fast, to just run `utf8_strnwidth()` on the final string that we want to measure. Ciao, Dscho