emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Ihor Radchenko <yantar92@posteo.net>
To: Max Nikulin <manikulin@gmail.com>
Cc: emacs-orgmode@gnu.org
Subject: Re: [RFC][PATCH] Allow to export to ascii custom link types as notes
Date: Mon, 23 Oct 2023 12:09:17 +0000	[thread overview]
Message-ID: <87lebt8rrm.fsf@localhost> (raw)
In-Reply-To: <uh5jp1$8bm$1@ciao.gmane.io>

Max Nikulin <manikulin@gmail.com> writes:

>> I am not sure what you mean by callback.
>
> Originally I had an idea that :export should call some function that 
> adds a note to info. Now I have another proposal. Instead of returning a 
> cons, :export function should return result of some new function, e.g. 
> (org-ascii-make-link-with-note NOTE DESCRIPTION), so a `cons' or a plist 
> becomes an implementation detail that may be changed any time.

Then, `org-ascii-make-link-with-note' may as well receive and modify
INFO plist. This way, ((org-export-custom-protocol-maybe link desc 'ascii info)) 
cond form will work without changes as `org-ascii-make-link-with-note`
will do all the necessary processing.

> ... The only 
> inconvenience is necessity to declare this function to allow lazy 
> loading of ox-ascii and perhaps to avoid circular dependencies.

This is not a problem.
If lazy loading is desired, one may simply use (require 'ox-ascii)
inside :export function to trigger loading when necessary.

>> May you provide an example when the angle brackets are not added?
>
> angle and square brackets inconsistency
>
> --- 8< ---
> # (require 'ol-man)
> # (setq org-ascii-links-to-notes nil)
>
> - web :: [[http://orgmode.org][Org mode]]
> - man :: [[man:man][man]]
> - internal :: [[Heading][heading]]
>
> * Heading
> --- >8 ---
> --- 8< ---
> web
>        [Org mode] (<http://orgmode.org>)
> man
>        man (http://man.he.net/?topic=man&section=all)

This is probably a bug in ol-man.

> internal
>        heading (See section 1)

I see no problem here - internal links are special, and it makes sense to
drop angle brackets, unlike external web links that are often marked
with angle brackets in the wild.

> 1 Heading
> ═════════
> --- >8 ---
>
>>>>> +           (if (string-match-p "\\`\u200b*\\[.*\\]\u200b*\\'" anchor)
>>>>> +               anchor
>>>>> +	     (format "[%s]" anchor))
>>>>
>>>> This is out of scope of the patch, isn't it?
>>>
>>> Not really.
>> 
>> Do you mean "this is out of scope"?
>
> I mean, it is a related change. E.g. ox-html and ox-latex do not add 
> square brackets around link descriptions, it is specifics of ox-ascii. 
> Square brackets are sometimes added for inline links, sometimes they are 
> not. Square brackets are always added for links as notes. I would avoid 
> duplicated square brackets when links are formatted as notes and for 
> inline links when description is formatted with brackets.

I did not mean unrelated to ox-ascii. I meant unrelated to "add new
feature allowing more flexibility for :export property of links when
exporting to ASCII".

I see handling anchors as a bugfix that should be discussed and
committed separately.

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>


  reply	other threads:[~2023-10-23 12:09 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-20 17:21 [RFC][PATCH] Allow to export to ascii custom link types as notes Max Nikulin
2023-10-22  9:13 ` Ihor Radchenko
2023-10-22 17:05   ` Max Nikulin
2023-10-23  9:17     ` Ihor Radchenko
2023-10-23 11:00       ` Max Nikulin
2023-10-23 12:09         ` Ihor Radchenko [this message]
2023-10-24  8:11           ` Max Nikulin
2023-10-24 10:40             ` Ihor Radchenko
2023-10-24 15:06               ` [PATCH] ox-ascii.el: Consistently add brackets around links (was: Re: [RFC][PATCH] Allow to export to ascii custom link types as notes) Max Nikulin
2023-10-25 10:34                 ` Ihor Radchenko
2023-10-26 16:46                   ` man pages references (Re: [PATCH] ox-ascii.el: Consistently add brackets around links) Max Nikulin
2023-11-05 12:08                     ` Ihor Radchenko
2023-10-27 14:36               ` [RFC][PATCH] Allow to export to ascii custom link types as notes Max Nikulin
2023-10-25 15:16           ` [RFC][PATCH v2] " Max Nikulin
2023-11-07  9:30             ` Ihor Radchenko
2023-11-07 11:48               ` Max Nikulin
2023-11-07 11:58                 ` Ihor Radchenko
2023-11-08 10:23                   ` Max Nikulin
2023-11-08 10:45                     ` Ihor Radchenko
2023-11-08 10:57                       ` Max Nikulin
2023-11-08 11:16                         ` Ihor Radchenko
2023-11-09 11:12                           ` Max Nikulin
2023-11-11 11:17                             ` Ihor Radchenko

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=87lebt8rrm.fsf@localhost \
    --to=yantar92@posteo.net \
    --cc=emacs-orgmode@gnu.org \
    --cc=manikulin@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).