GNU bug report logs -
#48148
27.2; ox-ascii breaks TITLE line wrongly when 2 width char is used
Previous Next
Reported by: Shingo Tanaka <shingo.fg8 <at> gmail.com>
Date: Sat, 1 May 2021 23:53:02 UTC
Severity: normal
Found in version 27.2
Done: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Hi,
When exporting org-mode document to plain text (either ascii/unicode/utf-8)
with `org-export-dispatch', Emacs translates the document title with
`org-ascii-template--document-title'. However, when 2 width character is
used, it detects the title line's width wrongly and breaks it even if the
width is not too long.
For example, when the title is "ABCDEF" (each character has width of
2), expected title would be like:
━━━━━━━━━━━━━━━
ABCDEF
━━━━━━━━━━━━━━━
However, the reality is:
━━━━━━━━━━━━━━━
ABC
DEF
━━━━━━━━━━━━━━━
This is because it uses `length' to detects the width, which only returns the
number of characters (6 in this case) but not the actual width displayed (12
in this case), and it tries to fill the line with that half width.
`string-width' should be used instead.
Here is a potential patch.
--- ox-ascii.el.org 2021-03-26 09:28:44.000000000 +0900
+++ ox-ascii.el 2021-05-02 08:11:57.657347150 +0900
@@ -1033,7 +1033,7 @@
;; Format TITLE. It may be filled if it is too wide,
;; that is wider than the two thirds of the total width.
(title-len (min (apply #'max
- (mapcar #'length
+ (mapcar #'string-width
(org-split-string
(concat title "\n" subtitle) "\n")))
(/ (* 2 text-width) 3)))
---
Shingo Tanaka
This bug report was last modified 4 years and 16 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.