From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id CKfPK2B8N2V8fwAAG6o9tA:P1 (envelope-from ) for ; Tue, 24 Oct 2023 10:12:16 +0200 Received: from aspmx1.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id CKfPK2B8N2V8fwAAG6o9tA (envelope-from ) for ; Tue, 24 Oct 2023 10:12:16 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 25E223F227 for ; Tue, 24 Oct 2023 10:12:16 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1698135136; a=rsa-sha256; cv=none; b=Enmow9bg+agwrRSTUVP6pgcpNdLRFJ/LNSfGQB4v+Lz0Zq+0/DmnIa/rZhPqWxNQtZrI9m R55M4z6hhWpc8tT0gGmrTCW48VRv8iyklyk3hcve1vthjNynt5YfYUpiP8tuc+Ln4Ken9N AYgqAj0goWRjfWEw8e0D4jwQ9C/YolEG+Oh3638/mLflrVsRkR/cdnBNe6vzXQMwxta7vj 2ZkxcRUDCzrT2vkkZRSXYfciqzw0Z+YqZEzs4yUYEGQTr0NQiuPHLXFQeeYnSFQPXYnJ4S M0IYik5QxoCwDyp61n98wHy+nYVxd01rXjbBCCOUk+BI1bnjwZ2/p3VSax3e2A== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1698135136; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=JPb4USW+1Eij61yyZ5YJZFDaQIAA4zsvlKm2Y7mYljw=; b=OQI+JUbFQetmsUCWc3Z2sVLcTcZ2ZjNPTNa7IkLDLc/iI6w2xv1gwkk61pwbQlGaKXoeYu JOkMxeRoOJs86NA1TRlIdRBUJAMpehtT85X74cMeQ0epe4Dgovp1LTbMezZID6TM+R+NHG HpIfG8yk9eMeTWRJe0y526OwG73FDCyf/gTBjABnOAOfrfSNBeIZEdZq1Yx/cFJXujWZOg Eckec0AKv+PTMbT0p+NuW2s1gWe4zv5AiyAS1/WDOuLP7irtIb+1JwBKvI6p71XqzsAWTE /wR6vAaXEbNittAE47DnMoqQ08BZzBR0wYpbjLJLfoGRIkbrLxGPe2ki+l2qjQ== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qvCVh-0001dY-OW; Tue, 24 Oct 2023 04:11:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvCVW-0001d5-Rb for emacs-orgmode@gnu.org; Tue, 24 Oct 2023 04:11:23 -0400 Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvCVT-0005Iw-FH for emacs-orgmode@gnu.org; Tue, 24 Oct 2023 04:11:21 -0400 Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1qvCVR-0006AB-96 for emacs-orgmode@gnu.org; Tue, 24 Oct 2023 10:11:17 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: emacs-orgmode@gnu.org From: Max Nikulin Subject: Re: [RFC][PATCH] Allow to export to ascii custom link types as notes Date: Tue, 24 Oct 2023 15:11:07 +0700 Message-ID: References: <874jijaukf.fsf@localhost> <8734y1aeae.fsf@localhost> <87lebt8rrm.fsf@localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit User-Agent: Mozilla Thunderbird Content-Language: en-US, ru-RU In-Reply-To: <87lebt8rrm.fsf@localhost> Received-SPF: pass client-ip=116.202.254.214; envelope-from=geo-emacs-orgmode@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: 28 X-Spam_score: 2.8 X-Spam_bar: ++ X-Spam_report: (2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, FORGED_GMAIL_RCVD=1, FORGED_MUA_MOZILLA=2.309, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, NML_ADSP_CUSTOM_MED=0.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Scanner: mx1.migadu.com X-Migadu-Spam-Score: 1.85 X-Spam-Score: 1.85 X-Migadu-Queue-Id: 25E223F227 X-TUID: q32EdzUPLCN1 On 23/10/2023 19:09, Ihor Radchenko wrote: > Max Nikulin writes: > > 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. Adding INFO argument is a bit more burden for users, but, I think, it is acceptable. However "cond form will work without changes" is not clear for me. `org-export-custom-protocol-maybe' is called twice and depending on context the result should be either "[description]" inline or "[description] path" for note, so the code around `org-export-custom-protocol-maybe' has to be changed. >> 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] () >> man >> man (http://man.he.net/?topic=man§ion=all) > > This is probably a bug in ol-man. Which one? Absence of square brackets? Absence of angle brackets? Both? >> 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. Due to absence of square brackets around "heading" it should be treated differently from e.g. http links. It is the reason why I added a regexp to detect if a caller added square brackets: >>>>>> + (if (string-match-p "\\`\u200b*\\[.*\\]\u200b*\\'" anchor) >>>>>> + anchor >>>>>> + (format "[%s]" anchor)) I do not like repetitions in the current code.