How can I efficiently preview my backlinks?

Org-roam is AWESOME!

I currently have about 2,000 org daypages from back in The Day during my Traumatic Grad School Years and am wondering about that backlinks buffer.

When invoking org-roam, the buffer shown on the right is absolutely lovely, but it’s not navigable by keyboard! At least I don’t know how to navigate it except by mouse? And when I jump to the linked file to get more contxet, the buffer changes! Roam has this sort of flavor of like, browsing your backlinks and temporarily pinning the interesting ones to the sidebar to revisit as you continue to research. Is it possible to do this?

One potential solution could be to have a command that lets me browse linked and unlinked references in an ivy or persistent helm buffer. Has anyone done this before? That way you’d be able to super quickly flip through your references with helm-follow-mode or ivy-{previous,next}-line-and-call (bound to C-M-p and C-M-n by default), you’d be able to resume your browsing with helm-resume or ivy-resume… These completion frameworks even may have built-in tools for sorting/filtering differently (i know helm does at least), which could give that functionality in a (somewhat) straightforward way.

I know there’s an awesome sidebar redesign in the works. One thing I’d gently ask to consider to have in its design is a focus on efficiency and keyboard navigation.

OP might have a try to link-hint.el.

;;; link-hint.el — Use avy to open, copy, etc. visible links -- lexical-binding: t --

;; Author: Fox Kiester
;; URL: GitHub - noctuid/link-hint.el: Pentadactyl-like Link Hinting in Emacs with Avy
;; Keywords: convenience url avy link links hyperlink
;; Package-Requires: ((avy “0.4.0”) (emacs “24.4”))
;; Version: 0.1

1 Like

I sometimes use a terminal for Emacs and Org-roam, so I can say that you can definitely use a keyboard to navigate (as mouse does not respond in a terminal).

The side-window (by default named “*org-roam*”) is a window, so I usually use the stock standard C-x o (other-window) to move into and out of it. ace-window is also useful if you have multiple windows and/or frames open.

Inside *org-roam* window, it’s normal Org Mode, so you can move around with keyboard as in a normal buffer. You can also use commands such as org-next-link, etc…

The “previewing” and “pinning” sounds like useful features – I haven’t really had a need yet, but a Roam tutorial video where the presenter creates an outline of a (blog?) article in 15 minutes or so looked cool with using pinning and preview. I don’t know if I can emulate what he does without a lot of training into the tool, though…

Perhaps @public_image_limited 's Delve might be something you could use for this purpose. I haven’t tried it myself yet (but looks really cool and I have been having an eye on it for a while). It’s a different workflow from the pinning and previewing, I guess, but it might give you an alternative.

delve author here. Using delve, you can currently “pin” by adding a temporary tag (e.g. the project name). This can be done easily from the list view or from within the page with a keystroke.

I want to implement a feature to collect items, since I need this. But currently, I am waiting for the new version of the database. It will introduce a more fine grained scheme to retrieve items, and I have the feeling that I need to change quite some internal stuff to get what I want. So I am writing tests right now.

Once roam has switched to the new database scheme, and delvewill have adapted it, I will add the collections. The idea is that you can “push” every page to a collection, and then visit that collection, which is basically just another list of items (pages or headings).