Re: [PATCH v4] pretty-formats: add hard truncation, without ellipsis, options
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Dec 7, 2022, 00:54 UTC
- Message-ID
- <xmqq359s824t.fsf@gitster.g>
- In-Reply-To
- <093e1dca-b9d4-f1f2-0845-ad6711622cf5@iee.email>
Philip Oakley <philipoakley@iee.email> writes:
Show 8 quoted lines
>> and "..[3][4]", respectively. It also is clear that Trunk >> and Ltrunk can do "[1][2][3]" and "[2][3][4]", respectively. We >> truncate the given string so that we fill the alloted display >> columns fully. > > While this example is clear, it's not clear what should be done if we > have mixed width strings, e.g. with emojis, as the boundaries in random > text will also be randomly placed.
As long as wider letters have widths that is integral of the narrowest letters (ASCII?), "use N columns, padding with '.' if needed" has a reasonable solution, no? "[1]A[2]" occupies 2+1+2 columns, so trunc that is given only 3 (or 4) columns can drop the last "[2]" and fit "[1]A" in the given columns with padding.
> I'll at least work on the doc clarification regarding the column width, > column position and wide char (2-col) issue, and hopefully a few failing > tests for the combing code point and the wide char fitment issue.
Thanks, that would give us a very good starting point.