mirror of
https://github.com/org-roam/org-roam
synced 2025-08-27 14:23:32 -05:00
Deploying to gh-pages from @ 2f4034cebc
🚀
This commit is contained in:
@@ -67,7 +67,7 @@ Next: <a href="FAQ.html#FAQ" accesskey="n" rel="next">FAQ</a>, Previous: <a href
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Appendix-1"></a>
|
<a name="Appendix-1"></a>
|
||||||
<h2 class="chapter">18 Appendix</h2>
|
<h2 class="chapter">19 Appendix</h2>
|
||||||
|
|
||||||
<table class="menu" border="0" cellspacing="0">
|
<table class="menu" border="0" cellspacing="0">
|
||||||
<tr><td align="left" valign="top">• <a href="Note_002dtaking-Workflows.html#Note_002dtaking-Workflows" accesskey="1">Note-taking Workflows</a>:</td><td> </td><td align="left" valign="top">
|
<tr><td align="left" valign="top">• <a href="Note_002dtaking-Workflows.html#Note_002dtaking-Workflows" accesskey="1">Note-taking Workflows</a>:</td><td> </td><td align="left" valign="top">
|
||||||
|
@@ -67,16 +67,16 @@ Next: <a href="Versioning-Notes.html#Versioning-Notes" accesskey="n" rel="next">
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Browsing-History-with-winner_002dmode-1"></a>
|
<a name="Browsing-History-with-winner_002dmode-1"></a>
|
||||||
<h4 class="subsection">18.2.1 Browsing History with winner-mode</h4>
|
<h4 class="subsection">19.2.1 Browsing History with winner-mode</h4>
|
||||||
|
|
||||||
<p><code>winner-mode</code> is a global minor mode that allows one to undo and redo changes in the window configuration. It is included with GNU Emacs since version 20.
|
<p><code>winner-mode</code> is a global minor mode that allows one to undo and redo changes in the window configuration. It is included with GNU Emacs since version 20.
|
||||||
</p>
|
</p>
|
||||||
<p><code>winner-mode</code> can be used as a simple version of browser history for Org-roam. Each click through org-roam links (from both Org files and the backlinks buffer) causes changes in window configuration, which can be undone and redone using <code>winner-mode</code>. To use <code>winner-mode</code>, simply enable it, and bind the appropriate interactive functions:
|
<p><code>winner-mode</code> can be used as a simple version of browser history for Org-roam. Each click through org-roam links (from both Org files and the backlinks buffer) causes changes in window configuration, which can be undone and redone using <code>winner-mode</code>. To use <code>winner-mode</code>, simply enable it, and bind the appropriate interactive functions:
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (winner-mode +1)
|
<pre class="lisp">(winner-mode +1)
|
||||||
(define-key winner-mode-map (kbd "<M-left>") #'winner-undo)
|
(define-key winner-mode-map (kbd "<M-left>") #'winner-undo)
|
||||||
(define-key winner-mode-map (kbd "<M-right>") #'winner-redo)
|
(define-key winner-mode-map (kbd "<M-right>") #'winner-redo)
|
||||||
|
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
|
@@ -25,7 +25,7 @@ General Public License for more details.
|
|||||||
<link href="index.html#Top" rel="start" title="Top">
|
<link href="index.html#Top" rel="start" title="Top">
|
||||||
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
|
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
|
||||||
<link href="index.html#Top" rel="up" title="Top">
|
<link href="index.html#Top" rel="up" title="Top">
|
||||||
<link href="Performance-Optimization.html#Performance-Optimization" rel="next" title="Performance Optimization">
|
<link href="Finding-Unlinked-References.html#Finding-Unlinked-References" rel="next" title="Finding Unlinked References">
|
||||||
<link href="Daily-Notes.html#Daily-Notes" rel="prev" title="Daily Notes">
|
<link href="Daily-Notes.html#Daily-Notes" rel="prev" title="Daily Notes">
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
<!--
|
<!--
|
||||||
@@ -63,7 +63,7 @@ ul.no-bullet {list-style: none}
|
|||||||
<a name="Diagnosing-and-Repairing-Files"></a>
|
<a name="Diagnosing-and-Repairing-Files"></a>
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<p>
|
<p>
|
||||||
Next: <a href="Performance-Optimization.html#Performance-Optimization" accesskey="n" rel="next">Performance Optimization</a>, Previous: <a href="Daily-Notes.html#Daily-Notes" accesskey="p" rel="prev">Daily Notes</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
|
Next: <a href="Finding-Unlinked-References.html#Finding-Unlinked-References" accesskey="n" rel="next">Finding Unlinked References</a>, Previous: <a href="Daily-Notes.html#Daily-Notes" accesskey="p" rel="prev">Daily Notes</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Diagnosing-and-Repairing-Files-1"></a>
|
<a name="Diagnosing-and-Repairing-Files-1"></a>
|
||||||
|
@@ -67,7 +67,7 @@ Previous: <a href="Note_002dtaking-Workflows.html#Note_002dtaking-Workflows" acc
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Ecosystem-1"></a>
|
<a name="Ecosystem-1"></a>
|
||||||
<h3 class="section">18.2 Ecosystem</h3>
|
<h3 class="section">19.2 Ecosystem</h3>
|
||||||
|
|
||||||
<table class="menu" border="0" cellspacing="0">
|
<table class="menu" border="0" cellspacing="0">
|
||||||
<tr><td align="left" valign="top">• <a href="Browsing-History-with-winner_002dmode.html#Browsing-History-with-winner_002dmode" accesskey="1">Browsing History with winner-mode</a>:</td><td> </td><td align="left" valign="top">
|
<tr><td align="left" valign="top">• <a href="Browsing-History-with-winner_002dmode.html#Browsing-History-with-winner_002dmode" accesskey="1">Browsing History with winner-mode</a>:</td><td> </td><td align="left" valign="top">
|
||||||
|
@@ -84,7 +84,7 @@ are excluded.
|
|||||||
</p></li></ul>
|
</p></li></ul>
|
||||||
|
|
||||||
<div class="example">
|
<div class="example">
|
||||||
<pre class="example"> (setq org-roam-graph-exclude-matcher '("private" "dailies"))
|
<pre class="example">(setq org-roam-graph-exclude-matcher '("private" "dailies"))
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>This setting excludes all files whose path contain “private” or “dailies”.
|
<p>This setting excludes all files whose path contain “private” or “dailies”.
|
||||||
|
@@ -67,7 +67,7 @@ Previous: <a href="Appendix.html#Appendix" accesskey="p" rel="prev">Appendix</a>
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="FAQ-1"></a>
|
<a name="FAQ-1"></a>
|
||||||
<h2 class="chapter">19 FAQ</h2>
|
<h2 class="chapter">20 FAQ</h2>
|
||||||
|
|
||||||
<table class="menu" border="0" cellspacing="0">
|
<table class="menu" border="0" cellspacing="0">
|
||||||
<tr><td align="left" valign="top">• <a href="How-do-I-have-more-than-one-Org_002droam-directory_003f.html#How-do-I-have-more-than-one-Org_002droam-directory_003f" accesskey="1">How do I have more than one Org-roam directory?</a>:</td><td> </td><td align="left" valign="top">
|
<tr><td align="left" valign="top">• <a href="How-do-I-have-more-than-one-Org_002droam-directory_003f.html#How-do-I-have-more-than-one-Org_002droam-directory_003f" accesskey="1">How do I have more than one Org-roam directory?</a>:</td><td> </td><td align="left" valign="top">
|
||||||
|
@@ -73,8 +73,8 @@ Previous: <a href="Tags.html#Tags" accesskey="p" rel="prev">Tags</a>, Up: <a hre
|
|||||||
For example, a note for a website may contain a ref:
|
For example, a note for a website may contain a ref:
|
||||||
</p>
|
</p>
|
||||||
<div class="example">
|
<div class="example">
|
||||||
<pre class="example"> #+title: Google
|
<pre class="example">#+title: Google
|
||||||
#+roam_key: https://www.google.com/
|
#+roam_key: https://www.google.com/
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>These keys come in useful for when taking website notes, using the
|
<p>These keys come in useful for when taking website notes, using the
|
||||||
@@ -84,8 +84,8 @@ For example, a note for a website may contain a ref:
|
|||||||
<a href="https://github.com/jkitchin/org-ref">org-ref</a> citation key:
|
<a href="https://github.com/jkitchin/org-ref">org-ref</a> citation key:
|
||||||
</p>
|
</p>
|
||||||
<div class="example">
|
<div class="example">
|
||||||
<pre class="example"> #+title: Neural Ordinary Differential Equations
|
<pre class="example">#+title: Neural Ordinary Differential Equations
|
||||||
#+roam_key: cite:chen18_neural_ordin_differ_equat
|
#+roam_key: cite:chen18_neural_ordin_differ_equat
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>The backlinks buffer will show any cites of this key: e.g.
|
<p>The backlinks buffer will show any cites of this key: e.g.
|
||||||
|
87
manual/Finding-Unlinked-References.html
Normal file
87
manual/Finding-Unlinked-References.html
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<html>
|
||||||
|
<!-- Copyright (C) 2020-2020 Jethro Kuan <jethrokuan95@gmail.com>
|
||||||
|
|
||||||
|
You can redistribute this document and/or modify it under the terms
|
||||||
|
of the GNU General Public License as published by the Free Software
|
||||||
|
Foundation, either version 3 of the License, or (at your option) any
|
||||||
|
later version.
|
||||||
|
|
||||||
|
This document is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
General Public License for more details.
|
||||||
|
-->
|
||||||
|
<!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ -->
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<title>Finding Unlinked References (Org-roam User Manual)</title>
|
||||||
|
|
||||||
|
<meta name="description" content="Finding Unlinked References (Org-roam User Manual)">
|
||||||
|
<meta name="keywords" content="Finding Unlinked References (Org-roam User Manual)">
|
||||||
|
<meta name="resource-type" content="document">
|
||||||
|
<meta name="distribution" content="global">
|
||||||
|
<meta name="Generator" content="makeinfo">
|
||||||
|
<link href="index.html#Top" rel="start" title="Top">
|
||||||
|
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
|
||||||
|
<link href="index.html#Top" rel="up" title="Top">
|
||||||
|
<link href="Performance-Optimization.html#Performance-Optimization" rel="next" title="Performance Optimization">
|
||||||
|
<link href="Diagnosing-and-Repairing-Files.html#Diagnosing-and-Repairing-Files" rel="prev" title="Diagnosing and Repairing Files">
|
||||||
|
<style type="text/css">
|
||||||
|
<!--
|
||||||
|
a.summary-letter {text-decoration: none}
|
||||||
|
blockquote.indentedblock {margin-right: 0em}
|
||||||
|
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
|
||||||
|
blockquote.smallquotation {font-size: smaller}
|
||||||
|
div.display {margin-left: 3.2em}
|
||||||
|
div.example {margin-left: 3.2em}
|
||||||
|
div.lisp {margin-left: 3.2em}
|
||||||
|
div.smalldisplay {margin-left: 3.2em}
|
||||||
|
div.smallexample {margin-left: 3.2em}
|
||||||
|
div.smalllisp {margin-left: 3.2em}
|
||||||
|
kbd {font-style: oblique}
|
||||||
|
pre.display {font-family: inherit}
|
||||||
|
pre.format {font-family: inherit}
|
||||||
|
pre.menu-comment {font-family: serif}
|
||||||
|
pre.menu-preformatted {font-family: serif}
|
||||||
|
pre.smalldisplay {font-family: inherit; font-size: smaller}
|
||||||
|
pre.smallexample {font-size: smaller}
|
||||||
|
pre.smallformat {font-family: inherit; font-size: smaller}
|
||||||
|
pre.smalllisp {font-size: smaller}
|
||||||
|
span.nolinebreak {white-space: nowrap}
|
||||||
|
span.roman {font-family: initial; font-weight: normal}
|
||||||
|
span.sansserif {font-family: sans-serif; font-weight: normal}
|
||||||
|
ul.no-bullet {list-style: none}
|
||||||
|
-->
|
||||||
|
</style>
|
||||||
|
<link rel="stylesheet" type="text/css" href="assets/page.css">
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body lang="en">
|
||||||
|
<a name="Finding-Unlinked-References"></a>
|
||||||
|
<div class="header">
|
||||||
|
<p>
|
||||||
|
Next: <a href="Performance-Optimization.html#Performance-Optimization" accesskey="n" rel="next">Performance Optimization</a>, Previous: <a href="Diagnosing-and-Repairing-Files.html#Diagnosing-and-Repairing-Files" accesskey="p" rel="prev">Diagnosing and Repairing Files</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
<a name="Finding-Unlinked-References-1"></a>
|
||||||
|
<h2 class="chapter">17 Finding Unlinked References</h2>
|
||||||
|
|
||||||
|
<p>Unlinked references are occurrences of strings of text that exactly match the
|
||||||
|
title or alias of an existing note in the Org-roam database. Org-roam provides
|
||||||
|
facilities for discovering these unlinked references, so one may decide whether
|
||||||
|
to convert them into links.
|
||||||
|
</p>
|
||||||
|
<p>To use this feature, simply call <code>M-x org-roam-unlinked-references</code> from within
|
||||||
|
an Org-roam note. Org-roam uses <a href="https://github.com/BurntSushi/ripgrep">ripgrep</a>, specifically a clever PCRE regex to
|
||||||
|
find occurrences of the title or aliases of the currently open note in all
|
||||||
|
Org-roam files. This thus requires a version of ripgrep that is compiled with
|
||||||
|
PCRE support.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
@@ -67,12 +67,12 @@ Next: <a href="Org_002djournal.html#Org_002djournal" accesskey="n" rel="next">Or
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Full_002dtext-search-interface-with-Deft-1"></a>
|
<a name="Full_002dtext-search-interface-with-Deft-1"></a>
|
||||||
<h4 class="subsection">18.2.3 Full-text search interface with Deft</h4>
|
<h4 class="subsection">19.2.3 Full-text search interface with Deft</h4>
|
||||||
|
|
||||||
<p><a href="https://jblevins.org/projects/deft/">Deft</a> provides a nice interface for browsing and filtering org-roam notes.
|
<p><a href="https://jblevins.org/projects/deft/">Deft</a> provides a nice interface for browsing and filtering org-roam notes.
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (use-package deft
|
<pre class="lisp">(use-package deft
|
||||||
:after org
|
:after org
|
||||||
:bind
|
:bind
|
||||||
("C-c n d" . deft)
|
("C-c n d" . deft)
|
||||||
@@ -89,22 +89,22 @@ functionality. Here I’m using
|
|||||||
<a href="https://github.com/raxod502/el-patch">el-patch</a>:
|
<a href="https://github.com/raxod502/el-patch">el-patch</a>:
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (use-package el-patch
|
<pre class="lisp">(use-package el-patch
|
||||||
:straight (:host github
|
:straight (:host github
|
||||||
:repo "raxod502/el-patch"
|
:repo "raxod502/el-patch"
|
||||||
:branch "develop"))
|
:branch "develop"))
|
||||||
|
|
||||||
(eval-when-compile
|
(eval-when-compile
|
||||||
(require 'el-patch))
|
(require 'el-patch))
|
||||||
|
|
||||||
(use-package deft
|
(use-package deft
|
||||||
;; same as above...
|
;; same as above...
|
||||||
:config/el-patch
|
:config/el-patch
|
||||||
(defun deft-parse-title (file contents)
|
(defun deft-parse-title (file contents)
|
||||||
"Parse the given FILE and CONTENTS and determine the title.
|
"Parse the given FILE and CONTENTS and determine the title.
|
||||||
If `deft-use-filename-as-title' is nil, the title is taken to
|
If `deft-use-filename-as-title' is nil, the title is taken to
|
||||||
be the first non-empty line of the FILE. Else the base name of the FILE is
|
be the first non-empty line of the FILE. Else the base name of the FILE is
|
||||||
used as title."
|
used as title."
|
||||||
(el-patch-swap (if deft-use-filename-as-title
|
(el-patch-swap (if deft-use-filename-as-title
|
||||||
(deft-base-filename file)
|
(deft-base-filename file)
|
||||||
(let ((begin (string-match "^.+$" contents)))
|
(let ((begin (string-match "^.+$" contents)))
|
||||||
|
@@ -67,7 +67,7 @@ Previous: <a href="Profiling-Key-Operations.html#Profiling-Key-Operations" acces
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Garbage-Collection-1"></a>
|
<a name="Garbage-Collection-1"></a>
|
||||||
<h3 class="section">17.2 Garbage Collection</h3>
|
<h3 class="section">18.2 Garbage Collection</h3>
|
||||||
|
|
||||||
<p>During the cache-build process, Org-roam generates a lot of in-memory
|
<p>During the cache-build process, Org-roam generates a lot of in-memory
|
||||||
data-structures (such as the Org file’s AST), which are discarded after use. These structures are garbage collected at regular intervals (see <a href="https://www.gnu.org/software/emacs/manual/html_node/elisp/Garbage-Collection.html#Garbage-Collection">(elisp)info:elisp#Garbage Collection</a>).
|
data-structures (such as the Org file’s AST), which are discarded after use. These structures are garbage collected at regular intervals (see <a href="https://www.gnu.org/software/emacs/manual/html_node/elisp/Garbage-Collection.html#Garbage-Collection">(elisp)info:elisp#Garbage Collection</a>).
|
||||||
@@ -78,7 +78,7 @@ operations. To reduce the number of garbage collection processes, one may set
|
|||||||
<code>org-roam-db-gc-threshold</code> to a high value (such as <code>most-positive-fixnum</code>):
|
<code>org-roam-db-gc-threshold</code> to a high value (such as <code>most-positive-fixnum</code>):
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (setq org-roam-db-gc-threshold most-positive-fixnum)
|
<pre class="lisp">(setq org-roam-db-gc-threshold most-positive-fixnum)
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
|
|
||||||
|
@@ -112,7 +112,7 @@ compact graph layout.
|
|||||||
<p>If you are using WSL2 and would like to open the graph in Windows, you can use the second option to set the browser and network file path:
|
<p>If you are using WSL2 and would like to open the graph in Windows, you can use the second option to set the browser and network file path:
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (setq org-roam-graph-viewer
|
<pre class="lisp">(setq org-roam-graph-viewer
|
||||||
(lambda (file)
|
(lambda (file)
|
||||||
(let ((org-roam-graph-viewer "/mnt/c/Program Files/Mozilla Firefox/firefox.exe"))
|
(let ((org-roam-graph-viewer "/mnt/c/Program Files/Mozilla Firefox/firefox.exe"))
|
||||||
(org-roam-graph--open (concat "file://///wsl$/Ubuntu" file)))))
|
(org-roam-graph--open (concat "file://///wsl$/Ubuntu" file)))))
|
||||||
|
@@ -67,7 +67,7 @@ Next: <a href="How-do-I-migrate-from-Roam-Research_003f.html#How-do-I-migrate-fr
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="How-do-I-have-more-than-one-Org_002droam-directory_003f-1"></a>
|
<a name="How-do-I-have-more-than-one-Org_002droam-directory_003f-1"></a>
|
||||||
<h3 class="section">19.1 How do I have more than one Org-roam directory?</h3>
|
<h3 class="section">20.1 How do I have more than one Org-roam directory?</h3>
|
||||||
|
|
||||||
<p>Emacs supports directory-local variables, allowing the value of
|
<p>Emacs supports directory-local variables, allowing the value of
|
||||||
<code>org-roam-directory</code> to be different in different directories. It does this by
|
<code>org-roam-directory</code> to be different in different directories. It does this by
|
||||||
@@ -78,7 +78,7 @@ variable using directory-local variables. This is what <code>.dir-locals.el</cod
|
|||||||
contain:
|
contain:
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> ((nil . ((org-roam-directory . ".")
|
<pre class="lisp">((nil . ((org-roam-directory . ".")
|
||||||
(org-roam-db-location . "./org-roam.db"))))
|
(org-roam-db-location . "./org-roam.db"))))
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
|
@@ -66,7 +66,7 @@ Previous: <a href="How-do-I-have-more-than-one-Org_002droam-directory_003f.html#
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="How-do-I-migrate-from-Roam-Research_003f-1"></a>
|
<a name="How-do-I-migrate-from-Roam-Research_003f-1"></a>
|
||||||
<h3 class="section">19.2 How do I migrate from Roam Research?</h3>
|
<h3 class="section">20.2 How do I migrate from Roam Research?</h3>
|
||||||
|
|
||||||
<p>Fabio has produced a command-line tool that converts markdown files exported from Roam Research into Org-roam compatible markdown. More instructions are provided <a href="https://github.com/fabioberger/roam-migration">in the repository</a>.
|
<p>Fabio has produced a command-line tool that converts markdown files exported from Roam Research into Org-roam compatible markdown. More instructions are provided <a href="https://github.com/fabioberger/roam-migration">in the repository</a>.
|
||||||
</p>
|
</p>
|
||||||
|
@@ -73,7 +73,7 @@ Next: <a href="Installing-from-the-Git-Repository.html#Installing-from-the-Git-R
|
|||||||
using Apt:
|
using Apt:
|
||||||
</p>
|
</p>
|
||||||
<div class="example">
|
<div class="example">
|
||||||
<pre class="example"> apt-get install elpa-org-roam
|
<pre class="example">apt-get install elpa-org-roam
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>Org-roam will then be autoloaded into Emacs.
|
<p>Org-roam will then be autoloaded into Emacs.
|
||||||
|
@@ -79,8 +79,8 @@ archives to ‘<samp>package-archives</samp>’:
|
|||||||
</li></ul>
|
</li></ul>
|
||||||
|
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (require 'package)
|
<pre class="lisp">(require 'package)
|
||||||
(add-to-list 'package-archives
|
(add-to-list 'package-archives
|
||||||
'("melpa" . "http://melpa.org/packages/") t)
|
'("melpa" . "http://melpa.org/packages/") t)
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
@@ -89,8 +89,8 @@ archives to ‘<samp>package-archives</samp>’:
|
|||||||
</li></ul>
|
</li></ul>
|
||||||
|
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (require 'package)
|
<pre class="lisp">(require 'package)
|
||||||
(add-to-list 'package-archives
|
(add-to-list 'package-archives
|
||||||
'("melpa-stable" . "http://stable.melpa.org/packages/") t)
|
'("melpa-stable" . "http://stable.melpa.org/packages/") t)
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
@@ -105,14 +105,14 @@ package repository (see <a href="http://www.gnu.org/software/emacs/manual/html_n
|
|||||||
local package list using:
|
local package list using:
|
||||||
</p>
|
</p>
|
||||||
<div class="example">
|
<div class="example">
|
||||||
<pre class="example"> M-x package-refresh-contents RET
|
<pre class="example">M-x package-refresh-contents RET
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>Once you have done that, you can install Org-roam and its dependencies
|
<p>Once you have done that, you can install Org-roam and its dependencies
|
||||||
using:
|
using:
|
||||||
</p>
|
</p>
|
||||||
<div class="example">
|
<div class="example">
|
||||||
<pre class="example"> M-x package-install RET org-roam RET
|
<pre class="example">M-x package-install RET org-roam RET
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>Now see <a href="Post_002dInstallation-Tasks.html#Post_002dInstallation-Tasks">Post-Installation Tasks</a>.
|
<p>Now see <a href="Post_002dInstallation-Tasks.html#Post_002dInstallation-Tasks">Post-Installation Tasks</a>.
|
||||||
|
@@ -67,7 +67,7 @@ Previous: <a href="Org_002djournal.html#Org_002djournal" accesskey="p" rel="prev
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Note_002dtaking-Add_002dons-1"></a>
|
<a name="Note_002dtaking-Add_002dons-1"></a>
|
||||||
<h4 class="subsection">18.2.5 Note-taking Add-ons</h4>
|
<h4 class="subsection">19.2.5 Note-taking Add-ons</h4>
|
||||||
|
|
||||||
<p>These are some plugins that make note-taking in Org-mode more enjoyable.
|
<p>These are some plugins that make note-taking in Org-mode more enjoyable.
|
||||||
</p>
|
</p>
|
||||||
|
@@ -67,7 +67,7 @@ Next: <a href="Ecosystem.html#Ecosystem" accesskey="n" rel="next">Ecosystem</a>,
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Note_002dtaking-Workflows-1"></a>
|
<a name="Note_002dtaking-Workflows-1"></a>
|
||||||
<h3 class="section">18.1 Note-taking Workflows</h3>
|
<h3 class="section">19.1 Note-taking Workflows</h3>
|
||||||
|
|
||||||
<dl compact="compact">
|
<dl compact="compact">
|
||||||
<dt>Books</dt>
|
<dt>Books</dt>
|
||||||
|
@@ -76,7 +76,7 @@ Next: <a href="mathpixel.html#mathpixel" accesskey="n" rel="next">mathpixel</a>,
|
|||||||
|
|
||||||
<div class="float-caption"><p><strong>Figure: </strong>org-download</p></div></div>
|
<div class="float-caption"><p><strong>Figure: </strong>org-download</p></div></div>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (use-package org-download
|
<pre class="lisp">(use-package org-download
|
||||||
:after org
|
:after org
|
||||||
:bind
|
:bind
|
||||||
(:map org-mode-map
|
(:map org-mode-map
|
||||||
|
@@ -67,7 +67,7 @@ Next: <a href="Note_002dtaking-Add_002dons.html#Note_002dtaking-Add_002dons" acc
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Org_002djournal-1"></a>
|
<a name="Org_002djournal-1"></a>
|
||||||
<h4 class="subsection">18.2.4 Org-journal</h4>
|
<h4 class="subsection">19.2.4 Org-journal</h4>
|
||||||
|
|
||||||
<p><a href="https://github.com/bastibe/org-journal">Org-journal</a> is a more
|
<p><a href="https://github.com/bastibe/org-journal">Org-journal</a> is a more
|
||||||
powerful alternative to the simple function <code>org-roam-dailies-today</code>. It
|
powerful alternative to the simple function <code>org-roam-dailies-today</code>. It
|
||||||
@@ -75,7 +75,7 @@ provides better journaling capabilities, and a nice calendar interface
|
|||||||
to see all dated entries.
|
to see all dated entries.
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (use-package org-journal
|
<pre class="lisp">(use-package org-journal
|
||||||
:bind
|
:bind
|
||||||
("C-c n j" . org-journal-new-entry)
|
("C-c n j" . org-journal-new-entry)
|
||||||
:custom
|
:custom
|
||||||
|
@@ -74,7 +74,7 @@ its interactive commands. The default setting uses Emacs’ standard
|
|||||||
<code>completing-read</code> mechanism.
|
<code>completing-read</code> mechanism.
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (setq org-roam-completion-system 'default)
|
<pre class="lisp">(setq org-roam-completion-system 'default)
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>If you have installed Helm or Ivy, and have their modes enabled, under the
|
<p>If you have installed Helm or Ivy, and have their modes enabled, under the
|
||||||
@@ -84,7 +84,7 @@ its interactive commands. The default setting uses Emacs’ standard
|
|||||||
commands, set:
|
commands, set:
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (setq org-roam-completion-system 'helm)
|
<pre class="lisp">(setq org-roam-completion-system 'helm)
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>Other options include <code>'ido</code>, and <code>'ivy</code>.
|
<p>Other options include <code>'ido</code>, and <code>'ivy</code>.
|
||||||
|
@@ -96,7 +96,7 @@ advantage of org-mode’s <code>%(EXP)</code> template expansion to call <co
|
|||||||
directly to provide its third argument to specify UTC.
|
directly to provide its third argument to specify UTC.
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> ("d" "default" plain (function org-roam--capture-get-point)
|
<pre class="lisp">("d" "default" plain (function org-roam--capture-get-point)
|
||||||
"%?"
|
"%?"
|
||||||
:file-name "%(format-time-string \"%Y-%m-%d--%H-%M-%SZ--${slug}\" (current-time) t)"
|
:file-name "%(format-time-string \"%Y-%m-%d--%H-%M-%SZ--${slug}\" (current-time) t)"
|
||||||
:head "#+title: ${title}\n"
|
:head "#+title: ${title}\n"
|
||||||
|
@@ -26,7 +26,7 @@ General Public License for more details.
|
|||||||
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
|
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
|
||||||
<link href="index.html#Top" rel="up" title="Top">
|
<link href="index.html#Top" rel="up" title="Top">
|
||||||
<link href="Profiling-Key-Operations.html#Profiling-Key-Operations" rel="next" title="Profiling Key Operations">
|
<link href="Profiling-Key-Operations.html#Profiling-Key-Operations" rel="next" title="Profiling Key Operations">
|
||||||
<link href="Diagnosing-and-Repairing-Files.html#Diagnosing-and-Repairing-Files" rel="prev" title="Diagnosing and Repairing Files">
|
<link href="Finding-Unlinked-References.html#Finding-Unlinked-References" rel="prev" title="Finding Unlinked References">
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
<!--
|
<!--
|
||||||
a.summary-letter {text-decoration: none}
|
a.summary-letter {text-decoration: none}
|
||||||
@@ -63,11 +63,11 @@ ul.no-bullet {list-style: none}
|
|||||||
<a name="Performance-Optimization"></a>
|
<a name="Performance-Optimization"></a>
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<p>
|
<p>
|
||||||
Next: <a href="Appendix.html#Appendix" accesskey="n" rel="next">Appendix</a>, Previous: <a href="Diagnosing-and-Repairing-Files.html#Diagnosing-and-Repairing-Files" accesskey="p" rel="prev">Diagnosing and Repairing Files</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
|
Next: <a href="Appendix.html#Appendix" accesskey="n" rel="next">Appendix</a>, Previous: <a href="Finding-Unlinked-References.html#Finding-Unlinked-References" accesskey="p" rel="prev">Finding Unlinked References</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Performance-Optimization-1"></a>
|
<a name="Performance-Optimization-1"></a>
|
||||||
<h2 class="chapter">17 Performance Optimization</h2>
|
<h2 class="chapter">18 Performance Optimization</h2>
|
||||||
|
|
||||||
<table class="menu" border="0" cellspacing="0">
|
<table class="menu" border="0" cellspacing="0">
|
||||||
<tr><td align="left" valign="top">• <a href="Profiling-Key-Operations.html#Profiling-Key-Operations" accesskey="1">Profiling Key Operations</a>:</td><td> </td><td align="left" valign="top">
|
<tr><td align="left" valign="top">• <a href="Profiling-Key-Operations.html#Profiling-Key-Operations" accesskey="1">Profiling Key Operations</a>:</td><td> </td><td align="left" valign="top">
|
||||||
|
@@ -74,7 +74,7 @@ Previous: <a href="Installing-from-the-Git-Repository.html#Installing-from-the-G
|
|||||||
operating system. You can verify that this is the case by executing:
|
operating system. You can verify that this is the case by executing:
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (executable-find "sqlite3")
|
<pre class="lisp">(executable-find "sqlite3")
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>If you have <code>sqlite3</code> installed, and <code>executable-find</code> still reports <code>nil</code>, then
|
<p>If you have <code>sqlite3</code> installed, and <code>executable-find</code> still reports <code>nil</code>, then
|
||||||
@@ -83,7 +83,7 @@ variable <code>exec-path</code>. You may rectify this by manually adding the pat
|
|||||||
your Emacs configuration:
|
your Emacs configuration:
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (add-to-list 'exec-path "path/to/sqlite3")
|
<pre class="lisp">(add-to-list 'exec-path "path/to/sqlite3")
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
|
|
||||||
|
@@ -67,7 +67,7 @@ Next: <a href="Garbage-Collection.html#Garbage-Collection" accesskey="n" rel="ne
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="TODO-Profiling-Key-Operations"></a>
|
<a name="TODO-Profiling-Key-Operations"></a>
|
||||||
<h3 class="section">17.1 <strong>TODO</strong> Profiling Key Operations</h3>
|
<h3 class="section">18.1 <strong>TODO</strong> Profiling Key Operations</h3>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -73,7 +73,7 @@ Next: <a href="Org_002droam-Template-Expansion.html#Org_002droam-Template-Expans
|
|||||||
the default template, reproduced below.
|
the default template, reproduced below.
|
||||||
</p>
|
</p>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> ("d" "default" plain (function org-roam--capture-get-point)
|
<pre class="lisp">("d" "default" plain (function org-roam--capture-get-point)
|
||||||
"%?"
|
"%?"
|
||||||
:file-name "%<%Y%m%d%H%M%S>-${slug}"
|
:file-name "%<%Y%m%d%H%M%S>-${slug}"
|
||||||
:head "#+title: ${title}\n"
|
:head "#+title: ${title}\n"
|
||||||
|
@@ -87,7 +87,7 @@ Previous: <a href="The-roam_002dfile-protocol.html#The-roam_002dfile-protocol" a
|
|||||||
<a href="https://github.com/qutebrowser/qutebrowser/blob/master/doc/help/configuring.asciidoc">Configuring qutebrowser</a>):
|
<a href="https://github.com/qutebrowser/qutebrowser/blob/master/doc/help/configuring.asciidoc">Configuring qutebrowser</a>):
|
||||||
</p>
|
</p>
|
||||||
<div class="example">
|
<div class="example">
|
||||||
<pre class="example"> config.bind("<Ctrl-r>", "open javascript:location.href='org-protocol://roam-ref?template=r&ref='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title)")
|
<pre class="example">config.bind("<Ctrl-r>", "open javascript:location.href='org-protocol://roam-ref?template=r&ref='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title)")
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<p>where <code>template</code> is the template key for a template in
|
<p>where <code>template</code> is the template key for a template in
|
||||||
|
@@ -89,10 +89,10 @@ The aliases are space-delimited, and can be multi-worded using quotes
|
|||||||
<p>Take for example the following org file:
|
<p>Take for example the following org file:
|
||||||
</p>
|
</p>
|
||||||
<div class="example">
|
<div class="example">
|
||||||
<pre class="example"> #+title: World War 2
|
<pre class="example">#+title: World War 2
|
||||||
#+roam_alias: "WWII" "World War II"
|
#+roam_alias: "WWII" "World War II"
|
||||||
|
|
||||||
* Headline
|
* Headline
|
||||||
</pre></div>
|
</pre></div>
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
|
@@ -67,7 +67,7 @@ Next: <a href="Full_002dtext-search-interface-with-Deft.html#Full_002dtext-searc
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="Versioning-Notes-1"></a>
|
<a name="Versioning-Notes-1"></a>
|
||||||
<h4 class="subsection">18.2.2 Versioning Notes</h4>
|
<h4 class="subsection">19.2.2 Versioning Notes</h4>
|
||||||
|
|
||||||
<p>Since Org-roam notes are just plain text, it is trivial to track changes in your
|
<p>Since Org-roam notes are just plain text, it is trivial to track changes in your
|
||||||
notes database using version control systems such as <a href="https://git-scm.com/">Git</a>. Simply initialize
|
notes database using version control systems such as <a href="https://git-scm.com/">Git</a>. Simply initialize
|
||||||
|
@@ -119,21 +119,22 @@ ul.no-bullet {list-style: none}
|
|||||||
</ul></li>
|
</ul></li>
|
||||||
<li><a name="toc-TODO-Daily-Notes" href="Daily-Notes.html#Daily-Notes">15 <strong>TODO</strong> Daily Notes</a></li>
|
<li><a name="toc-TODO-Daily-Notes" href="Daily-Notes.html#Daily-Notes">15 <strong>TODO</strong> Daily Notes</a></li>
|
||||||
<li><a name="toc-Diagnosing-and-Repairing-Files-1" href="Diagnosing-and-Repairing-Files.html#Diagnosing-and-Repairing-Files">16 Diagnosing and Repairing Files</a></li>
|
<li><a name="toc-Diagnosing-and-Repairing-Files-1" href="Diagnosing-and-Repairing-Files.html#Diagnosing-and-Repairing-Files">16 Diagnosing and Repairing Files</a></li>
|
||||||
<li><a name="toc-Performance-Optimization-1" href="Performance-Optimization.html#Performance-Optimization">17 Performance Optimization</a>
|
<li><a name="toc-Finding-Unlinked-References-1" href="Finding-Unlinked-References.html#Finding-Unlinked-References">17 Finding Unlinked References</a></li>
|
||||||
|
<li><a name="toc-Performance-Optimization-1" href="Performance-Optimization.html#Performance-Optimization">18 Performance Optimization</a>
|
||||||
<ul class="no-bullet">
|
<ul class="no-bullet">
|
||||||
<li><a name="toc-TODO-Profiling-Key-Operations" href="Profiling-Key-Operations.html#Profiling-Key-Operations">17.1 <strong>TODO</strong> Profiling Key Operations</a></li>
|
<li><a name="toc-TODO-Profiling-Key-Operations" href="Profiling-Key-Operations.html#Profiling-Key-Operations">18.1 <strong>TODO</strong> Profiling Key Operations</a></li>
|
||||||
<li><a name="toc-Garbage-Collection-1" href="Garbage-Collection.html#Garbage-Collection">17.2 Garbage Collection</a></li>
|
<li><a name="toc-Garbage-Collection-1" href="Garbage-Collection.html#Garbage-Collection">18.2 Garbage Collection</a></li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li><a name="toc-Appendix-1" href="Appendix.html#Appendix">18 Appendix</a>
|
<li><a name="toc-Appendix-1" href="Appendix.html#Appendix">19 Appendix</a>
|
||||||
<ul class="no-bullet">
|
<ul class="no-bullet">
|
||||||
<li><a name="toc-Note_002dtaking-Workflows-1" href="Note_002dtaking-Workflows.html#Note_002dtaking-Workflows">18.1 Note-taking Workflows</a></li>
|
<li><a name="toc-Note_002dtaking-Workflows-1" href="Note_002dtaking-Workflows.html#Note_002dtaking-Workflows">19.1 Note-taking Workflows</a></li>
|
||||||
<li><a name="toc-Ecosystem-1" href="Ecosystem.html#Ecosystem">18.2 Ecosystem</a>
|
<li><a name="toc-Ecosystem-1" href="Ecosystem.html#Ecosystem">19.2 Ecosystem</a>
|
||||||
<ul class="no-bullet">
|
<ul class="no-bullet">
|
||||||
<li><a name="toc-Browsing-History-with-winner_002dmode-1" href="Browsing-History-with-winner_002dmode.html#Browsing-History-with-winner_002dmode">18.2.1 Browsing History with winner-mode</a></li>
|
<li><a name="toc-Browsing-History-with-winner_002dmode-1" href="Browsing-History-with-winner_002dmode.html#Browsing-History-with-winner_002dmode">19.2.1 Browsing History with winner-mode</a></li>
|
||||||
<li><a name="toc-Versioning-Notes-1" href="Versioning-Notes.html#Versioning-Notes">18.2.2 Versioning Notes</a></li>
|
<li><a name="toc-Versioning-Notes-1" href="Versioning-Notes.html#Versioning-Notes">19.2.2 Versioning Notes</a></li>
|
||||||
<li><a name="toc-Full_002dtext-search-interface-with-Deft-1" href="Full_002dtext-search-interface-with-Deft.html#Full_002dtext-search-interface-with-Deft">18.2.3 Full-text search interface with Deft</a></li>
|
<li><a name="toc-Full_002dtext-search-interface-with-Deft-1" href="Full_002dtext-search-interface-with-Deft.html#Full_002dtext-search-interface-with-Deft">19.2.3 Full-text search interface with Deft</a></li>
|
||||||
<li><a name="toc-Org_002djournal-1" href="Org_002djournal.html#Org_002djournal">18.2.4 Org-journal</a></li>
|
<li><a name="toc-Org_002djournal-1" href="Org_002djournal.html#Org_002djournal">19.2.4 Org-journal</a></li>
|
||||||
<li><a name="toc-Note_002dtaking-Add_002dons-1" href="Note_002dtaking-Add_002dons.html#Note_002dtaking-Add_002dons">18.2.5 Note-taking Add-ons</a>
|
<li><a name="toc-Note_002dtaking-Add_002dons-1" href="Note_002dtaking-Add_002dons.html#Note_002dtaking-Add_002dons">19.2.5 Note-taking Add-ons</a>
|
||||||
<ul class="no-bullet">
|
<ul class="no-bullet">
|
||||||
<li><a name="toc-Org_002ddownload-1" href="Org_002ddownload.html#Org_002ddownload">Org-download</a></li>
|
<li><a name="toc-Org_002ddownload-1" href="Org_002ddownload.html#Org_002ddownload">Org-download</a></li>
|
||||||
<li><a name="toc-mathpix_002eel" href="mathpixel.html#mathpixel">mathpix.el</a></li>
|
<li><a name="toc-mathpix_002eel" href="mathpixel.html#mathpixel">mathpix.el</a></li>
|
||||||
@@ -143,10 +144,10 @@ ul.no-bullet {list-style: none}
|
|||||||
</ul></li>
|
</ul></li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li><a name="toc-FAQ-1" href="FAQ.html#FAQ">19 FAQ</a>
|
<li><a name="toc-FAQ-1" href="FAQ.html#FAQ">20 FAQ</a>
|
||||||
<ul class="no-bullet">
|
<ul class="no-bullet">
|
||||||
<li><a name="toc-How-do-I-have-more-than-one-Org_002droam-directory_003f-1" href="How-do-I-have-more-than-one-Org_002droam-directory_003f.html#How-do-I-have-more-than-one-Org_002droam-directory_003f">19.1 How do I have more than one Org-roam directory?</a></li>
|
<li><a name="toc-How-do-I-have-more-than-one-Org_002droam-directory_003f-1" href="How-do-I-have-more-than-one-Org_002droam-directory_003f.html#How-do-I-have-more-than-one-Org_002droam-directory_003f">20.1 How do I have more than one Org-roam directory?</a></li>
|
||||||
<li><a name="toc-How-do-I-migrate-from-Roam-Research_003f-1" href="How-do-I-migrate-from-Roam-Research_003f.html#How-do-I-migrate-from-Roam-Research_003f">19.2 How do I migrate from Roam Research?</a></li>
|
<li><a name="toc-How-do-I-migrate-from-Roam-Research_003f-1" href="How-do-I-migrate-from-Roam-Research_003f.html#How-do-I-migrate-from-Roam-Research_003f">20.2 How do I migrate from Roam Research?</a></li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@@ -211,6 +212,8 @@ General Public License for more details.
|
|||||||
</td></tr>
|
</td></tr>
|
||||||
<tr><td align="left" valign="top">• <a href="Diagnosing-and-Repairing-Files.html#Diagnosing-and-Repairing-Files">Diagnosing and Repairing Files</a>:</td><td> </td><td align="left" valign="top">
|
<tr><td align="left" valign="top">• <a href="Diagnosing-and-Repairing-Files.html#Diagnosing-and-Repairing-Files">Diagnosing and Repairing Files</a>:</td><td> </td><td align="left" valign="top">
|
||||||
</td></tr>
|
</td></tr>
|
||||||
|
<tr><td align="left" valign="top">• <a href="Finding-Unlinked-References.html#Finding-Unlinked-References">Finding Unlinked References</a>:</td><td> </td><td align="left" valign="top">
|
||||||
|
</td></tr>
|
||||||
<tr><td align="left" valign="top">• <a href="Performance-Optimization.html#Performance-Optimization">Performance Optimization</a>:</td><td> </td><td align="left" valign="top">
|
<tr><td align="left" valign="top">• <a href="Performance-Optimization.html#Performance-Optimization">Performance Optimization</a>:</td><td> </td><td align="left" valign="top">
|
||||||
</td></tr>
|
</td></tr>
|
||||||
<tr><td align="left" valign="top">• <a href="Appendix.html#Appendix">Appendix</a>:</td><td> </td><td align="left" valign="top">
|
<tr><td align="left" valign="top">• <a href="Appendix.html#Appendix">Appendix</a>:</td><td> </td><td align="left" valign="top">
|
||||||
|
@@ -76,7 +76,7 @@ Next: <a href="Org_002dnoter-_002f-Interleave.html#Org_002dnoter-_002f-Interleav
|
|||||||
|
|
||||||
<div class="float-caption"><p><strong>Figure: </strong>mathpix</p></div></div>
|
<div class="float-caption"><p><strong>Figure: </strong>mathpix</p></div></div>
|
||||||
<div class="lisp">
|
<div class="lisp">
|
||||||
<pre class="lisp"> (use-package mathpix.el
|
<pre class="lisp">(use-package mathpix.el
|
||||||
:straight (:host github :repo "jethrokuan/mathpix.el")
|
:straight (:host github :repo "jethrokuan/mathpix.el")
|
||||||
:custom ((mathpix-app-id "app-id")
|
:custom ((mathpix-app-id "app-id")
|
||||||
(mathpix-app-key "app-key"))
|
(mathpix-app-key "app-key"))
|
||||||
|
14
org-roam.org
14
org-roam.org
@@ -1023,6 +1023,20 @@ checker, to perform autofixes for the errors. For each error detected,
|
|||||||
~org-roam-doctor~ will move the point to the current error, and pop-up a help
|
~org-roam-doctor~ will move the point to the current error, and pop-up a help
|
||||||
window displaying the error message, as well as the list of actions that can be
|
window displaying the error message, as well as the list of actions that can be
|
||||||
taken provided in ~:actions~.
|
taken provided in ~:actions~.
|
||||||
|
|
||||||
|
* Finding Unlinked References
|
||||||
|
|
||||||
|
Unlinked references are occurrences of strings of text that exactly match the
|
||||||
|
title or alias of an existing note in the Org-roam database. Org-roam provides
|
||||||
|
facilities for discovering these unlinked references, so one may decide whether
|
||||||
|
to convert them into links.
|
||||||
|
|
||||||
|
To use this feature, simply call ~M-x org-roam-unlinked-references~ from within
|
||||||
|
an Org-roam note. Org-roam uses [[https://github.com/BurntSushi/ripgrep][ripgrep]], specifically a clever PCRE regex to
|
||||||
|
find occurrences of the title or aliases of the currently open note in all
|
||||||
|
Org-roam files. This thus requires a version of ripgrep that is compiled with
|
||||||
|
PCRE support.
|
||||||
|
|
||||||
* Performance Optimization
|
* Performance Optimization
|
||||||
** TODO Profiling Key Operations
|
** TODO Profiling Key Operations
|
||||||
** Garbage Collection
|
** Garbage Collection
|
||||||
|
@@ -80,6 +80,7 @@ General Public License for more details.
|
|||||||
* Roam Protocol::
|
* Roam Protocol::
|
||||||
* Daily Notes::
|
* Daily Notes::
|
||||||
* Diagnosing and Repairing Files::
|
* Diagnosing and Repairing Files::
|
||||||
|
* Finding Unlinked References::
|
||||||
* Performance Optimization::
|
* Performance Optimization::
|
||||||
* Appendix::
|
* Appendix::
|
||||||
* FAQ::
|
* FAQ::
|
||||||
@@ -294,8 +295,8 @@ To use Melpa:
|
|||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(require 'package)
|
(require 'package)
|
||||||
(add-to-list 'package-archives
|
(add-to-list 'package-archives
|
||||||
'("melpa" . "http://melpa.org/packages/") t)
|
'("melpa" . "http://melpa.org/packages/") t)
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
@@ -305,8 +306,8 @@ To use Melpa-Stable:
|
|||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(require 'package)
|
(require 'package)
|
||||||
(add-to-list 'package-archives
|
(add-to-list 'package-archives
|
||||||
'("melpa-stable" . "http://stable.melpa.org/packages/") t)
|
'("melpa-stable" . "http://stable.melpa.org/packages/") t)
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
@@ -321,14 +322,14 @@ Once you have added your preferred archive, you need to update the
|
|||||||
local package list using:
|
local package list using:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
M-x package-refresh-contents RET
|
M-x package-refresh-contents RET
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
Once you have done that, you can install Org-roam and its dependencies
|
Once you have done that, you can install Org-roam and its dependencies
|
||||||
using:
|
using:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
M-x package-install RET org-roam RET
|
M-x package-install RET org-roam RET
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
Now see @ref{Post-Installation Tasks}.
|
Now see @ref{Post-Installation Tasks}.
|
||||||
@@ -340,7 +341,7 @@ Users of Debian 11 or later or Ubuntu 20.10 or later can simply install Org-roam
|
|||||||
using Apt:
|
using Apt:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
apt-get install elpa-org-roam
|
apt-get install elpa-org-roam
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
Org-roam will then be autoloaded into Emacs.
|
Org-roam will then be autoloaded into Emacs.
|
||||||
@@ -429,7 +430,7 @@ Org-roam uses @code{emacsql-sqlite3}, which requires @code{sqlite3} to be locate
|
|||||||
operating system. You can verify that this is the case by executing:
|
operating system. You can verify that this is the case by executing:
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(executable-find "sqlite3")
|
(executable-find "sqlite3")
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
If you have @code{sqlite3} installed, and @code{executable-find} still reports @code{nil}, then
|
If you have @code{sqlite3} installed, and @code{executable-find} still reports @code{nil}, then
|
||||||
@@ -438,7 +439,7 @@ variable @code{exec-path}. You may rectify this by manually adding the path with
|
|||||||
your Emacs configuration:
|
your Emacs configuration:
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(add-to-list 'exec-path "path/to/sqlite3")
|
(add-to-list 'exec-path "path/to/sqlite3")
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
@node Getting Started
|
@node Getting Started
|
||||||
@@ -551,10 +552,10 @@ The aliases are space-delimited, and can be multi-worded using quotes
|
|||||||
Take for example the following org file:
|
Take for example the following org file:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
#+title: World War 2
|
#+title: World War 2
|
||||||
#+roam_alias: "WWII" "World War II"
|
#+roam_alias: "WWII" "World War II"
|
||||||
|
|
||||||
* Headline
|
* Headline
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@multitable {aaaaaaaaaaa} {aaaaaaaaaaaaaaaaaaaaaaaa}
|
@multitable {aaaaaaaaaaa} {aaaaaaaaaaaaaaaaaaaaaaaa}
|
||||||
@@ -625,8 +626,8 @@ Refs are unique identifiers for files. Each note can only have 1 ref.
|
|||||||
For example, a note for a website may contain a ref:
|
For example, a note for a website may contain a ref:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
#+title: Google
|
#+title: Google
|
||||||
#+roam_key: https://www.google.com/
|
#+roam_key: https://www.google.com/
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
These keys come in useful for when taking website notes, using the
|
These keys come in useful for when taking website notes, using the
|
||||||
@@ -636,8 +637,8 @@ Alternatively, add a ref for notes for a specific paper, using its
|
|||||||
@uref{https://github.com/jkitchin/org-ref, org-ref} citation key:
|
@uref{https://github.com/jkitchin/org-ref, org-ref} citation key:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
#+title: Neural Ordinary Differential Equations
|
#+title: Neural Ordinary Differential Equations
|
||||||
#+roam_key: cite:chen18_neural_ordin_differ_equat
|
#+roam_key: cite:chen18_neural_ordin_differ_equat
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
The backlinks buffer will show any cites of this key: e.g.
|
The backlinks buffer will show any cites of this key: e.g.
|
||||||
@@ -690,7 +691,7 @@ To demonstrate the additions made to org-capture templates. Here, we walkthrough
|
|||||||
the default template, reproduced below.
|
the default template, reproduced below.
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
("d" "default" plain (function org-roam--capture-get-point)
|
("d" "default" plain (function org-roam--capture-get-point)
|
||||||
"%?"
|
"%?"
|
||||||
:file-name "%<%Y%m%d%H%M%S>-$@{slug@}"
|
:file-name "%<%Y%m%d%H%M%S>-$@{slug@}"
|
||||||
:head "#+title: $@{title@}\n"
|
:head "#+title: $@{title@}\n"
|
||||||
@@ -760,7 +761,7 @@ advantage of org-mode's @code{%(EXP)} template expansion to call @code{format-ti
|
|||||||
directly to provide its third argument to specify UTC@.
|
directly to provide its third argument to specify UTC@.
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
("d" "default" plain (function org-roam--capture-get-point)
|
("d" "default" plain (function org-roam--capture-get-point)
|
||||||
"%?"
|
"%?"
|
||||||
:file-name "%(format-time-string \"%Y-%m-%d--%H-%M-%SZ--$@{slug@}\" (current-time) t)"
|
:file-name "%(format-time-string \"%Y-%m-%d--%H-%M-%SZ--$@{slug@}\" (current-time) t)"
|
||||||
:head "#+title: $@{title@}\n"
|
:head "#+title: $@{title@}\n"
|
||||||
@@ -1029,7 +1030,7 @@ a function accepting a single argument: the graph file path.
|
|||||||
If you are using WSL2 and would like to open the graph in Windows, you can use the second option to set the browser and network file path:
|
If you are using WSL2 and would like to open the graph in Windows, you can use the second option to set the browser and network file path:
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(setq org-roam-graph-viewer
|
(setq org-roam-graph-viewer
|
||||||
(lambda (file)
|
(lambda (file)
|
||||||
(let ((org-roam-graph-viewer "/mnt/c/Program Files/Mozilla Firefox/firefox.exe"))
|
(let ((org-roam-graph-viewer "/mnt/c/Program Files/Mozilla Firefox/firefox.exe"))
|
||||||
(org-roam-graph--open (concat "file://///wsl$/Ubuntu" file)))))
|
(org-roam-graph--open (concat "file://///wsl$/Ubuntu" file)))))
|
||||||
@@ -1091,7 +1092,7 @@ are excluded.
|
|||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
@example
|
@example
|
||||||
(setq org-roam-graph-exclude-matcher '("private" "dailies"))
|
(setq org-roam-graph-exclude-matcher '("private" "dailies"))
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
This setting excludes all files whose path contain ``private'' or ``dailies''.
|
This setting excludes all files whose path contain ``private'' or ``dailies''.
|
||||||
@@ -1104,7 +1105,7 @@ its interactive commands. The default setting uses Emacs' standard
|
|||||||
@code{completing-read} mechanism.
|
@code{completing-read} mechanism.
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(setq org-roam-completion-system 'default)
|
(setq org-roam-completion-system 'default)
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
If you have installed Helm or Ivy, and have their modes enabled, under the
|
If you have installed Helm or Ivy, and have their modes enabled, under the
|
||||||
@@ -1114,7 +1115,7 @@ In the rare scenario where you use Ivy globally, but prefer @uref{https://emacs-
|
|||||||
commands, set:
|
commands, set:
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(setq org-roam-completion-system 'helm)
|
(setq org-roam-completion-system 'helm)
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
Other options include @code{'ido}, and @code{'ivy}.
|
Other options include @code{'ido}, and @code{'ivy}.
|
||||||
@@ -1307,7 +1308,7 @@ or as a keybinding in @code{qutebrowser} in , using the @code{config.py} file (s
|
|||||||
@uref{https://github.com/qutebrowser/qutebrowser/blob/master/doc/help/configuring.asciidoc, Configuring qutebrowser}):
|
@uref{https://github.com/qutebrowser/qutebrowser/blob/master/doc/help/configuring.asciidoc, Configuring qutebrowser}):
|
||||||
|
|
||||||
@example
|
@example
|
||||||
config.bind("<Ctrl-r>", "open javascript:location.href='org-protocol://roam-ref?template=r&ref='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title)")
|
config.bind("<Ctrl-r>", "open javascript:location.href='org-protocol://roam-ref?template=r&ref='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title)")
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
where @code{template} is the template key for a template in
|
where @code{template} is the template key for a template in
|
||||||
@@ -1355,6 +1356,20 @@ checker, to perform autofixes for the errors. For each error detected,
|
|||||||
window displaying the error message, as well as the list of actions that can be
|
window displaying the error message, as well as the list of actions that can be
|
||||||
taken provided in @code{:actions}.
|
taken provided in @code{:actions}.
|
||||||
|
|
||||||
|
@node Finding Unlinked References
|
||||||
|
@chapter Finding Unlinked References
|
||||||
|
|
||||||
|
Unlinked references are occurrences of strings of text that exactly match the
|
||||||
|
title or alias of an existing note in the Org-roam database. Org-roam provides
|
||||||
|
facilities for discovering these unlinked references, so one may decide whether
|
||||||
|
to convert them into links.
|
||||||
|
|
||||||
|
To use this feature, simply call @code{M-x org-roam-unlinked-references} from within
|
||||||
|
an Org-roam note. Org-roam uses @uref{https://github.com/BurntSushi/ripgrep, ripgrep}, specifically a clever PCRE regex to
|
||||||
|
find occurrences of the title or aliases of the currently open note in all
|
||||||
|
Org-roam files. This thus requires a version of ripgrep that is compiled with
|
||||||
|
PCRE support.
|
||||||
|
|
||||||
@node Performance Optimization
|
@node Performance Optimization
|
||||||
@chapter Performance Optimization
|
@chapter Performance Optimization
|
||||||
|
|
||||||
@@ -1378,7 +1393,7 @@ operations. To reduce the number of garbage collection processes, one may set
|
|||||||
@code{org-roam-db-gc-threshold} to a high value (such as @code{most-positive-fixnum}):
|
@code{org-roam-db-gc-threshold} to a high value (such as @code{most-positive-fixnum}):
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(setq org-roam-db-gc-threshold most-positive-fixnum)
|
(setq org-roam-db-gc-threshold most-positive-fixnum)
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
@node Appendix
|
@node Appendix
|
||||||
@@ -1442,9 +1457,9 @@ operations. To reduce the number of garbage collection processes, one may set
|
|||||||
@code{winner-mode} can be used as a simple version of browser history for Org-roam. Each click through org-roam links (from both Org files and the backlinks buffer) causes changes in window configuration, which can be undone and redone using @code{winner-mode}. To use @code{winner-mode}, simply enable it, and bind the appropriate interactive functions:
|
@code{winner-mode} can be used as a simple version of browser history for Org-roam. Each click through org-roam links (from both Org files and the backlinks buffer) causes changes in window configuration, which can be undone and redone using @code{winner-mode}. To use @code{winner-mode}, simply enable it, and bind the appropriate interactive functions:
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(winner-mode +1)
|
(winner-mode +1)
|
||||||
(define-key winner-mode-map (kbd "<M-left>") #'winner-undo)
|
(define-key winner-mode-map (kbd "<M-left>") #'winner-undo)
|
||||||
(define-key winner-mode-map (kbd "<M-right>") #'winner-redo)
|
(define-key winner-mode-map (kbd "<M-right>") #'winner-redo)
|
||||||
|
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
@@ -1466,7 +1481,7 @@ versions of a tracked Org-roam note.
|
|||||||
@uref{https://jblevins.org/projects/deft/, Deft} provides a nice interface for browsing and filtering org-roam notes.
|
@uref{https://jblevins.org/projects/deft/, Deft} provides a nice interface for browsing and filtering org-roam notes.
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(use-package deft
|
(use-package deft
|
||||||
:after org
|
:after org
|
||||||
:bind
|
:bind
|
||||||
("C-c n d" . deft)
|
("C-c n d" . deft)
|
||||||
@@ -1483,22 +1498,22 @@ functionality. Here I'm using
|
|||||||
@uref{https://github.com/raxod502/el-patch, el-patch}:
|
@uref{https://github.com/raxod502/el-patch, el-patch}:
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(use-package el-patch
|
(use-package el-patch
|
||||||
:straight (:host github
|
:straight (:host github
|
||||||
:repo "raxod502/el-patch"
|
:repo "raxod502/el-patch"
|
||||||
:branch "develop"))
|
:branch "develop"))
|
||||||
|
|
||||||
(eval-when-compile
|
(eval-when-compile
|
||||||
(require 'el-patch))
|
(require 'el-patch))
|
||||||
|
|
||||||
(use-package deft
|
(use-package deft
|
||||||
;; same as above...
|
;; same as above...
|
||||||
:config/el-patch
|
:config/el-patch
|
||||||
(defun deft-parse-title (file contents)
|
(defun deft-parse-title (file contents)
|
||||||
"Parse the given FILE and CONTENTS and determine the title.
|
"Parse the given FILE and CONTENTS and determine the title.
|
||||||
If `deft-use-filename-as-title' is nil, the title is taken to
|
If `deft-use-filename-as-title' is nil, the title is taken to
|
||||||
be the first non-empty line of the FILE. Else the base name of the FILE is
|
be the first non-empty line of the FILE. Else the base name of the FILE is
|
||||||
used as title."
|
used as title."
|
||||||
(el-patch-swap (if deft-use-filename-as-title
|
(el-patch-swap (if deft-use-filename-as-title
|
||||||
(deft-base-filename file)
|
(deft-base-filename file)
|
||||||
(let ((begin (string-match "^.+$" contents)))
|
(let ((begin (string-match "^.+$" contents)))
|
||||||
@@ -1521,7 +1536,7 @@ provides better journaling capabilities, and a nice calendar interface
|
|||||||
to see all dated entries.
|
to see all dated entries.
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(use-package org-journal
|
(use-package org-journal
|
||||||
:bind
|
:bind
|
||||||
("C-c n j" . org-journal-new-entry)
|
("C-c n j" . org-journal-new-entry)
|
||||||
:custom
|
:custom
|
||||||
@@ -1555,7 +1570,7 @@ These are some plugins that make note-taking in Org-mode more enjoyable.
|
|||||||
@end float
|
@end float
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(use-package org-download
|
(use-package org-download
|
||||||
:after org
|
:after org
|
||||||
:bind
|
:bind
|
||||||
(:map org-mode-map
|
(:map org-mode-map
|
||||||
@@ -1574,7 +1589,7 @@ These are some plugins that make note-taking in Org-mode more enjoyable.
|
|||||||
@end float
|
@end float
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
(use-package mathpix.el
|
(use-package mathpix.el
|
||||||
:straight (:host github :repo "jethrokuan/mathpix.el")
|
:straight (:host github :repo "jethrokuan/mathpix.el")
|
||||||
:custom ((mathpix-app-id "app-id")
|
:custom ((mathpix-app-id "app-id")
|
||||||
(mathpix-app-key "app-key"))
|
(mathpix-app-key "app-key"))
|
||||||
@@ -1626,7 +1641,7 @@ variable using directory-local variables. This is what @code{.dir-locals.el} may
|
|||||||
contain:
|
contain:
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
((nil . ((org-roam-directory . ".")
|
((nil . ((org-roam-directory . ".")
|
||||||
(org-roam-db-location . "./org-roam.db"))))
|
(org-roam-db-location . "./org-roam.db"))))
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user