From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id BtDJABFQdl+WPwAA0tVLHw (envelope-from ) for ; Thu, 01 Oct 2020 21:54:25 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id 0PGDNxBQdl/yMAAAB5/wlQ (envelope-from ) for ; Thu, 01 Oct 2020 21:54:24 +0000 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 45B4294023B for ; Thu, 1 Oct 2020 21:54:24 +0000 (UTC) Received: from localhost ([::1]:43886 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kO6Wr-0001uM-SD for larch@yhetil.org; Thu, 01 Oct 2020 17:54:21 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:33360) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kO6WT-0001ty-VL for emacs-orgmode@gnu.org; Thu, 01 Oct 2020 17:53:57 -0400 Received: from mail-pj1-x1035.google.com ([2607:f8b0:4864:20::1035]:32964) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kO6WR-0003HE-MY for emacs-orgmode@gnu.org; Thu, 01 Oct 2020 17:53:57 -0400 Received: by mail-pj1-x1035.google.com with SMTP id e15so820310pjg.0 for ; Thu, 01 Oct 2020 14:53:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=kKkJ/1D6VtWncy20UMioHYroBcriBgtoyLYg5imAlBY=; b=G3Hyq1JljtRxp7lDLn455xnhjK6LUNHAr1y+J4Lig8ryYUg0alDqzqdIrcfGVgQXR8 LrnEoJpyCDklEjQpxYs6IHreCmf41whTXnRGTY/d0NTmXo45Qe4ilY0m5YHfulk4noL4 ZHSL+dtcOy8MxePOfDGmTOBkqmFiT7Y1HdVBPjbTKlGMrCjzIEFrwVrfIVDAGsuILB8p Tmg5lN+wuJqJKINcWBV3ZPOEU/uu3Wyc7DsG8JIsMEBdDX3kSHLgJBO5pLvZ7iBSJd4k NGb+gpIqRA1XklRPtuZrRzPBiooalo97WfbQtN5QXcH41mgYnFIjkPfzEw2cJ+RC5zRz 6Ybw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=kKkJ/1D6VtWncy20UMioHYroBcriBgtoyLYg5imAlBY=; b=SZemKllP0wZUomZP8WaZ4ApmF3x1qVpVop4/haTrrD0UVCfQ6/CCkfx6Q33SusMBip 260ZvPr22pkvDmXCkGcOSJ3weDhv3bNSFeGxKcECOXaeKiyEHW5oK6FONjGerZAd9Gnk 2Kh7pF1ORjeLk9SP3e2xZp/rNYM43V5KzXoG1CE5GGjbZ9GNQSgrW200Ns9/yDIoydNO g+ZrahlIBCYKhuwZJ8ShoyptvhsDOZkRc2TNLw+Hdg0Yxo5GHJqMIYBcldKs0U6d1uo2 +fgZgOwjh+pgiCV1suCG4cAdIDqhLV947dmrwHcCyJP5x3NgwzijfcWIqhYq+/9ZwPI+ /3Fg== X-Gm-Message-State: AOAM5328KBkEnarxy7Hha3mudQ/GKC4tsZVwph2SzJrzBZr5rZNPB/sp dhMKYd96s0D+8Sn/DdcZrEhSqAAFaEVV/if3nSKNP0NkeNU= X-Google-Smtp-Source: ABdhPJwqDlEHUedzvPB+iZHqK/1n2KCX/Ie3r6D/TOdaFx9gdK5p/y2J4FR2WYEALMm/6Dbp38WTkDrE/xQG3odiv1k= X-Received: by 2002:a17:90a:f098:: with SMTP id cn24mr1909895pjb.158.1601589233165; Thu, 01 Oct 2020 14:53:53 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a05:6a10:8371:0:0:0:0 with HTTP; Thu, 1 Oct 2020 14:53:52 -0700 (PDT) In-Reply-To: <87362xvs55.fsf@svictor.net> References: <87ft6yminz.fsf@svictor.net> <87y2kqp983.fsf@m4x.org> <87362xvs55.fsf@svictor.net> From: Samuel Wales Date: Thu, 1 Oct 2020 14:53:52 -0700 Message-ID: Subject: Re: Reciprocal links between items To: "Victor A. Stoichita" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=2607:f8b0:4864:20::1035; envelope-from=samologist@gmail.com; helo=mail-pj1-x1035.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: emacs-orgmode Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20161025 header.b=G3Hyq1Jl; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Spam-Score: -1.71 X-TUID: /3mCiesb5/ln Hi Victor, Currently Org-ID can only be placed on entries. This uses the properties drawer. When we are talking about entries, what I do is, use Org-ID links to entries to go in one direction, and an agenda search to go in the opposite direction as follows. (define-key org-mode-map (kbd "C-c w") 'alpha-org-what-links-here) (defun alpha-org-what-links-here () "Show all links that point to the current node. Possibly also show the target node itself. I think this gets all archive files in $dorg, including ones with no corresponding .org file. See `alpha-org-all-org-files'. - fixme produce error if no id or fix non-id search - fixme Bug in Org: g in agenda removes entries =3Dmaybe fixed - fixme org text search does not work in non-org-mode files or in org files text above the outline tree ka - we might want to search in del and dsh also via grep This makes Org ID links quasi-bidirectional. " (interactive) (let ((org-agenda-files (alpha-org-all-org-files)) org-agenda-skip-comment-trees org-agenda-skip-archived-trees (search-string (or ;; inherits id from ancestors ;; raw id so it will pick up target (alpha-awhen (org-entry-get nil "ID" t) (regexp-quote it)) (concat "{\\(" ;; tries searching a link to id ;; not sure if useful (regexp-quote (org-store-link nil)) "\\|\\<" ;; not sure if useful (regexp-quote (org-get-heading)) "\\>\\)}")))) (org-search-view nil search-string))) When you say item, do you mean list item, or thing? In either case, Org cannot currently do this. To do that, you can search the mailing list for ID markers and implement them, which pretty much do what you want, or try implementing something with the new link mechanism to include Org-ID. This would allow them as link targets. I think Org-ID is likely to be part of your mix, regardless of what you do to implement this, if you do. One concern I have is that Org-ID is already slow in searching. Making it search for anything of a lower syntactic status than entries might or might not make it slower. Perhaps it would be necessary to tell the search engine what it is looking for. On 10/1/20, Victor A. Stoichita wrote: > > Le 01 Oct 2020, Alan Schmitt > a =C3=A9crit : >> You might want to have a look at org-roam, that implements such >> backlinks. > > Thanks Alan! That=E2=80=99s interesting! > > I watched the introductory video and started reading the org-roam > docs. They begin with the rationale of Zettelkasten note taking, > which implies one org file per note, and an sqlite database=E2=80=A6 > I think that org-roam can be a great tool, but it takes too big > a change for what I need (basically just the ability to insert > backlinks). > > I guess that if I want something simple which avoids using an > external database, I could write a function that inserts and > deletes the links in both items. Maybe a good way to train my > lisp-foo. > > Kind regards, > Victor > > > > --=20 The Kafka Pandemic Please learn what misopathy is. https://thekafkapandemic.blogspot.com/2013/10/why-some-diseases-are-wronged= .html