GNU bug report logs -
#48149
27.2; Wrong underline width when the line char has a width of 2
Previous Next
Full log
View this message in rfc822 format
Hello,
Shingo Tanaka <shingo.fg8 <at> gmail.com> writes:
> When exporting org-mode document to plain text (either ascii/unicode/utf-8)
> with `org-export-dispatch', Emacs inserts lines under headlines, inline
> tasks, table rows and titles of the document, TOC, list of listings, list of
> tables and footnotes. The problem is it inserts too long (double width) line
> when the line character has a width of 2.
>
> Those lines are made of 3 types of characters below (in ox-ascii.el):
> 1) org-ascii-underline
> 2) (if (eq (plist-get info :ascii-charset) 'utf-8) ?─ ?_)
> 3) (if utf8p ?━ ?_)
>
> In case of 1), it correctly takes account of the case in which the character
> has a width of 2 in `org-ascii--build-title', by dividing the line width by
> `(char-width under-char)' (line 700-701), maybe because the character is user
> configurable and its width in unknown. However, in case of 2) and
> 3), maybe because the characters is embedded in the code, it looks like only
> considering the character always has a width of 1. But the reality is
> character ?─ or ?━ can have a width of 2 in the screen displayed with some
> fonts (ex. "Noto Sans Mono CJK JP"), and in that case the line width gets
> doubled of the expected width.
>
> Attached one is a potential patch. The basic concepts are:
>
> a) Do the same in case of 2) and 3) as in case of 1)
> (dividing the line width by `(char-width under-char)',
> assuming `char-width-table' is correctly set)
>
> b) Prefer the longer line width if the width is odd, even in case of 1)
> (adding `(1- (char-width under-char))' to dividend,
> just because it should be more beautiful ;-) )
Thank you. This looks good. I cannot apply it on "maint" branch,
however. Also, a proper commit message would be nice. Could you send an
updated patch?
Moreover, have you signed FSF papers already? This is above limit for
tiny changes.
Regards,
--
Nicolas Goaziou
This bug report was last modified 2 years and 349 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.