Thanks, Jean.  We have started work on a note-taking subsystem for Hyperbole that will store UUIDs per note and will likely support backlinks too.  We are seeing if we can make it support Koutlines, Emacs Outlines, Org mode files and Markdown files, searching across all formats at the same time.  The default for creating new notes will likely be a personal Koutline file.

We welcome brief summaries of features you need for effective note taking in Emacs.  We are not looking to do much with images or on mobile devices, just focused on people who spend a lot of time in Emacs and want an easy-to-use notes system that does not require any external packages like SQLite.


On Tue, Sep 27, 2022 at 10:00 AM Jean Louis <bugs@gnu.support> wrote:
* Robert Weiner <rswgnu@gmail.com> [2022-06-24 12:53]:
> Hyperbole does not have bi-directional links, only a history
> function to move back through followed node paths.  We have started
> thinking about this need recently.

If at all it is useful.

As you know I am using database backed Dynamic Knowledge Repository
Hyperscope. It has hyobjects table, and there is hyobjectrelations
table that keeps track of related hyobjects.

The workflow to record back links for any document is following:

- all links have to be stored somewhere, so that they get their
  reference; with Emacs 29 and built-in SQLite database that could be
  one way to go. Other way is to keep stored values in files, and have
  for each link some UUID or similar.

- there must be table of relations or file containing relations, in
  such file one would record the file name where link was inserted,
  and the link's UUID;

- functions to insert links in any lightweight markup file would need
  to be rewritten so that they:

  1. Verify that link has got its reference, UUID or some other
     reference. That can work automatically. If I am inserting
     hyperlink such as "ABC" to file "/tmp/my-file.txt" with line
     number 3, then as soon as I have decided it, the function would
     insert it into the tracking file or database table;

  2. Function would also remember that file "/tmp/my-file.txt" has go
     the link "ABC", and would at least try to remember its line
     number or surrounding text. This information would be stored in
     backlinks file or backlinks table;

By using the above principle one could record backlinks, both in Org
mode or any other mode.

--
Jean

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

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