Leo Vivier 7f7ba857de (feat): add support for headlines (#783)
Achieve feature parity between links to files and links to headlines.

Before, we used the `file:foo::*bar` format to link to the headline `bar` in file `foo`, but this was prone to breakage upon renaming the file or modifying the headline. This is not the case anymore. Now, we use `org-id` to create IDs for those headlines, which are then stored in our database to compute the relationships and jump around. Note that this will work even if you’re not using `org-id` in your global configuration for Org-mode.

Co-authored-by: Jethro Kuan <jethrokuan95@gmail.com>
2020-06-12 18:51:13 +08:00
2020-05-13 19:26:37 +08:00
2020-02-12 19:40:13 +08:00
2020-05-26 14:41:09 +08:00
2020-02-12 21:47:57 +08:00
2020-05-13 18:56:42 +08:00
2020-05-18 22:04:51 +08:00

License GPL 3 GitHub Release MELPA

Synopsis

Org-roam is a Roam replica built on top of the all-powerful Org-mode.

Org-roam is a solution for effortless non-hierarchical note-taking with Org-mode. With Org-roam, notes flow naturally, making note-taking fun and easy. Org-roam should also work as a plug-and-play solution for anyone already using Org-mode for their personal wiki.

Org-roam aims to implement the core features of Roam, leveraging the mature ecosystem around Org-mode where possible. Eventually, we hope to further introduce features enabled by the Emacs ecosystem.

@technovangelist has produced a video describing Org-roam and the concepts behind it:

Making Connections in your Notes

Important links:

A Preview

Here's a screencast of Org-roam. The org-roam-buffer (window on the right) shows backlinks for the active Org-roam buffer (window on the left), as well as the surrounding content in the backlink file. The database is built once, and updated incrementally. The graph is generated from the link structure, and can be used to navigate to the respective files.

img

Installation

You can install org-roam using package.el:

M-x package-install RET org-roam RET

Here's a sample configuration with using use-package:

(use-package org-roam
      :hook
      (after-init . org-roam-mode)
      :custom
      (org-roam-directory "/path/to/org-files/")
      :bind (:map org-roam-mode-map
              (("C-c n l" . org-roam)
               ("C-c n f" . org-roam-find-file)
               ("C-c n g" . org-roam-show-graph))
              :map org-mode-map
              (("C-c n i" . org-roam-insert))))

org-roam-graph by default expects to find the dot executable from the graphviz package in the exec-path. Ensure graphviz is installed and found if you want to use this feature or customize your configuration for org-roam-graph to use a different tool.

For more detailed installation and configuration instructions (including for Doom and Spacemacs users), please see the documentation.

Knowledge Bases using Org-roam

Changelog

A changelog is being maintained here

Contributing

To report bugs and suggest new feature use the issue tracker. If you have some code which you would like to be merged, then open a pull request. Please also see CONTRIBUTING.md.

License

Copyright © Jethro Kuan and contributors. Distributed under the GNU General Public License, Version 3

Languages
Emacs Lisp 98.6%
Makefile 1.3%
Shell 0.1%