emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Jean Louis <bugs@gnu.support>
To: Robert Weiner <rswgnu@gmail.com>
Cc: Eduardo Ochs <eduardoochs@gmail.com>,
	emacs-org list <emacs-orgmode@gnu.org>
Subject: Re: Org, Hyperbole, and eev
Date: Tue, 11 Oct 2022 07:59:57 +0300	[thread overview]
Message-ID: <Y0T4TcbxZb3/ciJ+@protected.localdomain> (raw)
In-Reply-To: <C759C91D-89B2-4CC9-95F5-A15B02BE1102@gmail.com>

* Robert Weiner <rswgnu@gmail.com> [2022-10-11 05:43]:
> I know this does not address everything you want but if you leverage
> Hyperbole’s capabilities, you’ll probably be able to get what you
> want with a lot less code.

What I want is to be able to interpolate links like: ⟦ (some-link) ⟧ on
the fly similarly Org links, in such way that whatever function
`some-link' returns it would be displayed on its place. Function may
return string or string as button or anything else. Then similarly to
org-toggle-link-display I wish to fontify such buttons in editable
buffer and be able to reverse it back. I guess for that to work text
properties shall be able to remember the button ⟦ (some-link) ⟧. But I
do not know much about it, I am learning.

I already use that system though not in editing mode. I have editing
more wher I can see ⟦ something ⟧ and I have presentation mode, where
source is interpolated on the fly and I can see interpolated values or
button links. 

System of interpolation spare me time.

> First, creating an explicit button displays only the button name as
> you like, fontified as you like, and with the button action hidden.
> So then you need to write a function that adds or removed the button
> action from the buffer when you want to see it, utilizing existing
> Hyperbole code from the actype or action class for manipulating
> actions.

> For your generalized syntax, I think you would be better off using
> the angle brackets of Hyperbole’s action buttons but you could
> instead use the defil macro to create your own link button type and
> delimiter format with just a few lines of code.  Just follow the
> example in the docstring for that macro.

I already use Hyperbole on links like ⟦ (rcd-db-tabulated-edit-entry "people" 1) ⟧
or ⟦ (hyperscope-action 587) ⟧ (the last one brings me to mail mode
with prepared email headers writing email).

It is not hard:
(defil rcd-template-eval "⟦ " " ⟧" ".*" "{M-: \\& RET}")

I can use command to interpolate the source and present it. It works
well. Editing in the same time with interpolated links is what I
miss. That I have in Org mode, but links miss dynamic capacity.

> Org probably has similar capabilities with its link types though not
> as flexible with the syntax.

I would use Org buttons, but they do not have disappearing or dynamic
capacity. 

Text could have Hyperlinks, and be well referenced that way. In export
or interpolating mode, depending of the export type or major mode,
hyperlinks themselves may decide how to interpolate, if to disappear
from text, or if to convert themselves into Org links or into HTML
links, Markdown links, or Emacs links.


-- 
Jean

Take action in Free Software Foundation campaigns:
https://www.fsf.org/campaigns

In support of Richard M. Stallman
https://stallmansupport.org/


  reply	other threads:[~2022-10-11  6:14 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-26 15:56 Org, Hyperbole, and eev Eduardo Ochs
2022-06-26 16:28 ` Robert Weiner
2022-06-26 17:51   ` Eduardo Ochs
2022-06-26 18:23     ` Robert Weiner
2022-06-26 19:45       ` Eduardo Ochs
2022-06-26 20:23         ` Robert Weiner
2022-06-26 23:25           ` Eduardo Ochs
2022-06-27  0:49           ` Robert Weiner
2022-06-27  3:48             ` Eduardo Ochs
2022-06-27  4:11               ` Robert Weiner
2022-06-28  4:43                 ` Eduardo Ochs
2022-09-27 15:10                   ` Jean Louis
2022-09-27 16:22                     ` Eduardo Ochs
2022-09-27 21:16                       ` Jean Louis
2022-09-27 21:58                         ` Jean Louis
2022-09-28  0:52                           ` Eduardo Ochs
2022-09-28  6:04                             ` Jean Louis
2022-09-28 10:15                               ` Eduardo Ochs
2022-09-29  9:22                                 ` Jean Louis
2022-10-08  0:28                                   ` Eduardo Ochs
2022-10-08  1:25                                     ` Jean Louis
2022-10-11  2:42                                       ` Robert Weiner
2022-10-11  4:59                                         ` Jean Louis [this message]
2022-09-29  9:42                                 ` Jean Louis
2022-09-29 11:55                                   ` Quiliro Ordóñez
2022-09-28  3:52                         ` Ihor Radchenko
2022-09-28  9:16                           ` Jean Louis
2022-09-29  4:07                             ` Ihor Radchenko
2022-09-29  9:59                               ` Jean Louis
2022-06-28  4:48             ` Eduardo Ochs
2022-06-28  6:26               ` Robert Weiner
2022-09-27 14:43             ` Jean Louis
2022-09-27 14:16       ` Jean Louis

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,
  and reply-to-all from there: mbox

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

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Y0T4TcbxZb3/ciJ+@protected.localdomain \
    --to=bugs@gnu.support \
    --cc=eduardoochs@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=rswgnu@gmail.com \
    /path/to/YOUR_REPLY

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

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).