* Bug: org-toggle-link-display and org-hide-emphasis-markers [9.4 (9.4-44-g5272d9-elpaplus @ /home/gustavo/.emacs.d/elpa/org-plus-contrib-20201123/)]
@ 2020-11-24 0:32 Gustavo Barros
2021-05-01 16:42 ` Bastien
0 siblings, 1 reply; 5+ messages in thread
From: Gustavo Barros @ 2020-11-24 0:32 UTC (permalink / raw)
To: emacs-orgmode
Hi All,
when using `org-hide-emphasis-markers', making links visible with
`org-toggle-link-display' also unhides the emphasis markers. I believe
this to be unexpected behavior (it certainly is to me), but I might be
wrong here, given that the emphasis markers are explicitly set to a
`org-link' invisible property (which see).
An ECM to reproduce the issue is:
- Start `emacs -Q'
- Do an initial setup:
#+begin_src emacs-lisp
(add-to-list 'load-path "~/.emacs.d/elpa/org-plus-contrib-20201123")
(setq org-hide-emphasis-markers t)
#+end_src
- Open an Org buffer with contents:
#+begin_src org
[[https://orgmode.org/][Org mode for Emacs]]
,*bold*
#+end_src
given the settings, both the link and emphasis markers should be
invisible.
- Call `M-x org-toggle-link-display', see that both the link and the
emphasis markers are made visible. Toggle it again, and both are
invisible.
As far as I dug, the reason for this behavior lies in
`org-do-emphasis-faces' which indeed uses the `org-link' invisible
property to hide the links (at the very end of the function):
#+begin_src emacs-lisp
(when (and org-hide-emphasis-markers
(not (org-at-comment-p)))
(add-text-properties (match-end 4) (match-beginning 5)
'(invisible org-link))
(add-text-properties (match-beginning 3) (match-end 3)
'(invisible org-link)))
#+end_src
So that `org-toggle-link-display' cannot really distinguish an emphasis
marker from an actual link when it removes `org-link' from the
invisibility-spec.
I don't know why this is done this way in `org-do-emphasis-faces', so I
might be missing something, but it does lead to this peculiar behavior
of `org-toggle-link-display'.
Best regards,
Gustavo.
Emacs : GNU Emacs 27.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.20, cairo version 1.16.0)
of 2020-08-11
Package: Org mode version 9.4 (9.4-44-g5272d9-elpaplus @
/home/gustavo/.emacs.d/elpa/org-plus-contrib-20201123/)
current state:
==============
(setq
org-src-mode-hook '(org-src-babel-configure-edit-buffer
org-src-mode-configure-edit-buffer)
org-link-shell-confirm-function 'yes-or-no-p
org-metadown-hook '(org-babel-pop-to-session-maybe)
org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
org-mode-hook '(#[0 "\300\301\302\303\304$\207" [add-hook
change-major-mode-hook org-show-all append local] 5]
#[0 "\300\301\302\303\304$\207"
[add-hook change-major-mode-hook
org-babel-show-result-all append local] 5]
org-babel-result-hide-spec org-babel-hide-all-hashes
org-eldoc-load)
org-archive-hook '(org-attach-archive-delete-maybe)
org-confirm-elisp-link-function 'yes-or-no-p
org-agenda-before-write-hook '(org-agenda-add-entry-text)
org-metaup-hook '(org-babel-load-in-session-maybe)
org-bibtex-headline-format-function #[257 "\300\236A\207" [:title] 3
"\n\n(fn ENTRY)"]
org-babel-pre-tangle-hook '(save-buffer)
org-tab-first-hook '(org-babel-hide-result-toggle-maybe
org-babel-header-arg-expand)
org-hide-emphasis-markers t
org-agenda-loop-over-headlines-in-active-region nil
org-src-lang-modes '(("redis" . redis) ("php" . php) ("arduino"
. arduino) ("C" . c) ("C++" . c++)
("asymptote" . asy) ("bash" . sh) ("beamer"
. latex) ("calc" . fundamental) ("cpp" . c++)
("ditaa" . artist) ("dot" . fundamental) ("elisp"
. emacs-lisp) ("ocaml" . tuareg)
("screen" . shell-script) ("shell" . sh) ("sqlite"
. sql))
org-occur-hook '(org-first-headline-recenter)
org-cycle-hook '(org-cycle-hide-archived-subtrees
org-cycle-hide-drawers org-cycle-show-empty-lines
org-optimize-window-after-visibility-change)
org-speed-command-hook '(org-speed-command-activate
org-babel-speed-command-activate)
org-export-before-parsing-hook '(org-attach-expand-links)
org-confirm-shell-link-function 'yes-or-no-p
org-link-parameters '(("attachment" :follow org-attach-follow :complete
org-attach-complete-link)
("id" :follow org-id-open) ("eww" :follow
org-eww-open :store org-eww-store-link)
("rmail" :follow org-rmail-open :store
org-rmail-store-link)
("mhe" :follow org-mhe-open :store
org-mhe-store-link)
("irc" :follow org-irc-visit :store
org-irc-store-link :export org-irc-export)
("info" :follow org-info-open :export
org-info-export :store org-info-store-link)
("gnus" :follow org-gnus-open :store
org-gnus-store-link)
("docview" :follow org-docview-open :export
org-docview-export :store
org-docview-store-link)
("bibtex" :follow org-bibtex-open :store
org-bibtex-store-link)
("bbdb" :follow org-bbdb-open :export
org-bbdb-export :complete org-bbdb-complete-link
:store org-bbdb-store-link)
("w3m" :store org-w3m-store-link) ("file+sys")
("file+emacs")
("shell" :follow org-link--open-shell)
("news" :follow
#[514 "\301\300\302Q\"\207" ["news" browse-url
":"] 6 "\n\n(fn URL ARG)"])
("mailto" :follow
#[514 "\301\300\302Q\"\207" ["mailto" browse-url
":"] 6 "\n\n(fn URL ARG)"])
("https" :follow
#[514 "\301\300\302Q\"\207" ["https" browse-url
":"] 6 "\n\n(fn URL ARG)"])
("http" :follow
#[514 "\301\300\302Q\"\207" ["http" browse-url
":"] 6 "\n\n(fn URL ARG)"])
("ftp" :follow
#[514 "\301\300\302Q\"\207" ["ftp" browse-url
":"] 6 "\n\n(fn URL ARG)"])
("help" :follow org-link--open-help) ("file"
:complete org-link-complete-file)
("elisp" :follow org-link--open-elisp) ("doi"
:follow org-link--open-doi))
org-link-elisp-confirm-function 'yes-or-no-p
)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug: org-toggle-link-display and org-hide-emphasis-markers [9.4 (9.4-44-g5272d9-elpaplus @ /home/gustavo/.emacs.d/elpa/org-plus-contrib-20201123/)]
2020-11-24 0:32 Bug: org-toggle-link-display and org-hide-emphasis-markers [9.4 (9.4-44-g5272d9-elpaplus @ /home/gustavo/.emacs.d/elpa/org-plus-contrib-20201123/)] Gustavo Barros
@ 2021-05-01 16:42 ` Bastien
2021-05-01 20:41 ` Gustavo Barros
0 siblings, 1 reply; 5+ messages in thread
From: Bastien @ 2021-05-01 16:42 UTC (permalink / raw)
To: Gustavo Barros; +Cc: emacs-orgmode
Hi Gustavo,
Gustavo Barros <gusbrs.2016@gmail.com> writes:
> when using `org-hide-emphasis-markers', making links visible with
> `org-toggle-link-display' also unhides the emphasis markers. I believe
> this to be unexpected behavior (it certainly is to me), but I might be
> wrong here, given that the emphasis markers are explicitly set to a
> `org-link' invisible property (which see).
thanks for reporting this, I've committed 842ab092a in maint which
should fix it.
I hope the change does not break anyone's code: perhaps some people
use custom code to hide/show emphasis markers based on the org-link
invisible property specs.
In any case, I don't think `org-toggle-link-display' should display
emphasis markers.
--
Bastien
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug: org-toggle-link-display and org-hide-emphasis-markers [9.4 (9.4-44-g5272d9-elpaplus @ /home/gustavo/.emacs.d/elpa/org-plus-contrib-20201123/)]
2021-05-01 16:42 ` Bastien
@ 2021-05-01 20:41 ` Gustavo Barros
2021-05-02 6:30 ` Bastien
0 siblings, 1 reply; 5+ messages in thread
From: Gustavo Barros @ 2021-05-01 20:41 UTC (permalink / raw)
To: Bastien; +Cc: emacs-orgmode
Hi Bastien,
On Sat, 01 May 2021 at 13:42, Bastien <bzg@gnu.org> wrote:
> Hi Gustavo,
>
> Gustavo Barros <gusbrs.2016@gmail.com> writes:
>
>> when using `org-hide-emphasis-markers', making links visible with
>> `org-toggle-link-display' also unhides the emphasis markers. I
>> believe
>> this to be unexpected behavior (it certainly is to me), but I might
>> be
>> wrong here, given that the emphasis markers are explicitly set to a
>> `org-link' invisible property (which see).
>
> thanks for reporting this, I've committed 842ab092a in maint which
> should fix it.
>
Thank you for looking into this, and for the fix.
> I hope the change does not break anyone's code: perhaps some people
> use custom code to hide/show emphasis markers based on the org-link
> invisible property specs.
>
> In any case, I don't think `org-toggle-link-display' should display
> emphasis markers.
I'm not sure either. Perhaps that was the reason why `org-link' was
used as the invisibility property there in the first place. If you
think that is a concern, perhaps adding something as `org-emph' to the
invisibility specs and using it there instead of leaving the markers in
the default group might be a good idea. This way it would be possible
to toggle the markers selectively, as it is done with the links. I'm
not sure this is granted, but one reasonable hypothesis why `org-link'
was used there in the first place is that some degree of selective
toggling of the markers was somehow demanded.
Best,
Gustavo.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug: org-toggle-link-display and org-hide-emphasis-markers [9.4 (9.4-44-g5272d9-elpaplus @ /home/gustavo/.emacs.d/elpa/org-plus-contrib-20201123/)]
2021-05-01 20:41 ` Gustavo Barros
@ 2021-05-02 6:30 ` Bastien
2021-05-02 16:06 ` Gustavo Barros
0 siblings, 1 reply; 5+ messages in thread
From: Bastien @ 2021-05-02 6:30 UTC (permalink / raw)
To: Gustavo Barros; +Cc: emacs-orgmode
Gustavo Barros <gusbrs.2016@gmail.com> writes:
> This way it would be
> possible to toggle the markers selectively, as it is done with the
> links. I'm not sure this is granted, but one reasonable hypothesis
> why `org-link' was used there in the first place is that some degree
> of selective toggling of the markers was somehow demanded.
Yes, this came to my mind too, but I will refrain from adding this
new toggling capability for emphasis markers until people convince
us it has to be implemented.
--
Bastien
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug: org-toggle-link-display and org-hide-emphasis-markers [9.4 (9.4-44-g5272d9-elpaplus @ /home/gustavo/.emacs.d/elpa/org-plus-contrib-20201123/)]
2021-05-02 6:30 ` Bastien
@ 2021-05-02 16:06 ` Gustavo Barros
0 siblings, 0 replies; 5+ messages in thread
From: Gustavo Barros @ 2021-05-02 16:06 UTC (permalink / raw)
To: Bastien; +Cc: emacs-orgmode
Hi Bastien,
On Sun, 02 May 2021 at 03:30, Bastien <bzg@gnu.org> wrote:
> Gustavo Barros <gusbrs.2016@gmail.com> writes:
>
>> This way it would be
>> possible to toggle the markers selectively, as it is done with the
>> links. I'm not sure this is granted, but one reasonable hypothesis
>> why `org-link' was used there in the first place is that some degree
>> of selective toggling of the markers was somehow demanded.
>
> Yes, this came to my mind too, but I will refrain from adding this
> new toggling capability for emphasis markers until people convince
> us it has to be implemented.
I'm fine with that. I have no particular opinion on the matter, I was
really just speculating why that might have ended there in the first
place. That said, nothing to add here, except: thanks again.
Gustavo.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2021-05-02 16:12 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-11-24 0:32 Bug: org-toggle-link-display and org-hide-emphasis-markers [9.4 (9.4-44-g5272d9-elpaplus @ /home/gustavo/.emacs.d/elpa/org-plus-contrib-20201123/)] Gustavo Barros
2021-05-01 16:42 ` Bastien
2021-05-01 20:41 ` Gustavo Barros
2021-05-02 6:30 ` Bastien
2021-05-02 16:06 ` Gustavo Barros
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).