Org-mode mailing list
help / color / mirror / Atom feed
From: Tim Cross <theophilusx@gmail.com>
To: emacs-orgmode@gnu.org
Subject: Re: [BUG] Fill-paragraph issue with hidden emphasis markers and composed characters
Date: Tue, 10 Aug 2021 11:34:23 +1000
Message-ID: <87pmumgjl4.fsf@gmail.com> (raw)

I was able to reproduce this using Emacs 28.0.50 and emacs -Q.

It is important to ensure both of the below paragraphs are completely
'unwrapped' i.e. all on one line and then wrap them with M-q.

The result seems counter-intuitive to me - the second paragraph with an
extra character is wrapped correctly. The first paragraph has the first
line broken too early.

This is likely going to be a very difficult issue to fix. I'm not sure
how fill column mode is aware of add on features like prettify symbols
and hidden emphasis markers. Obviously it is aware at some level because
it does wrap the second paragraph correctly. My wild guess would be that
the second one works because the additional character breaks up the
'special' handling and allows fill column to correctly calculate the
'virtual' line length.

Lucas Viana <lucasvianareis@gmail.com> writes:

> Dear list,
>
> I'm not sure if this is a general issue with fill-paragraph or with the way org hides emphasis markers, but I'm facing a problem with bare emacs +
> org.
>
> Steps to reproduce:
> 1. Start emacs -Q (no configuration)
> 2. Set some variables:
>
> (setq org-pretty-entities t
>       org-hide-emphasis-markers t
>       fill-column 80)
>
> 3. Create an empty org-mode buffer with the following paragraph:
> ""
> This is a /italic sentence for a buggy/ \alpha\beta\gamma\delta\nu\epsilon
> paragraph in terms of filling, see, it's not filled yet and still the line above
> ends early.
> ""
>
> So far so good, and with the previous config the emphasis markers are now hidden and the greek letters appear as unicode characters.
>
> 4. Hit M-q (either fill-paragraph or org-fill-paragraph, both have the same issue)
> The first line wrongly wraps after "buggy" and leaves a big empty space after that, as if the greek letters were not composed.
>
> 5. In the same buffer, compare the behaviour with this paragraph (very similar, but note the ! character after "buggy"):
> ""
> This is a /italic sentence for a buggy/ ! \alpha\beta\gamma\delta\nu\epsilon
> paragraph in terms of filling, see, it's not filled yet and still the line above
> ends early.
> ""
>
> When I fill this slightly different paragraph with M-q, it wraps the text in the right way and the first line is completely filled.
>
> So the issue happens when a hidden emphasis marker is immediately followed (maybe after a space) by a composed character like \alpha. I am also
> facing the same issue when the characters are composed by prettify-symbols-mode instead of org-pretty-entities, and also with other types of
> hidden emphasis markers. If org-hide-emphasis-markers is disabled then the issue doesn't happen.
>
>
> Emacs  : GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.29, cairo version 1.17.4)
>  of 2021-07-09
> Package: Org mode version 9.5 (9.5-b83ae59 @ /home/lucas/.emacs.d/.local/straight/build-28.0.50/org/)



next prev parent reply	other threads:[~2021-08-10  1:45 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-06 17:07 Lucas Viana
2021-08-10  1:34  Tim Cross [this message]
2021-08-10 22:57  Rudolf Adamkovič


Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,

Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

List information: https://orgmode.org

switches of git-send-email(1):

git send-email \
--to=theophilusx@gmail.com \
--cc=emacs-orgmode@gnu.org \

https://kernel.org/pub/software/scm/git/docs/git-send-email.html



Org-mode mailing list

This inbox may be cloned and mirrored by anyone:

git clone --mirror https://orgmode.org/list/0 list/git/0.git

# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 list list/ https://orgmode.org/list \
emacs-orgmode@gnu.org
public-inbox-index list

Example config snippet for mirrors.
Newsgroups are available over NNTP:
nntp://news.yhetil.org/yhetil.emacs.orgmode
nntp://news.gmane.io/gmane.emacs.orgmode

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git