Deploying to gh-pages from @ aef71f1623 🚀

This commit is contained in:
jethrokuan
2020-11-11 05:01:25 +00:00
parent 59d12f1864
commit c8241008e7
24 changed files with 389 additions and 318 deletions

View File

@@ -69,50 +69,56 @@ Next: <a href="Navigation.html#Navigation" accesskey="n" rel="next">Navigation</
<a name="Capturing-and-finding-daily_002dnotes-1"></a>
<h3 class="section">15.2 Capturing and finding daily-notes</h3>
<ul>
<li> Function: <code>org-roam-dailies-capture-today</code> &amp;optional goto
<dl>
<dt><a name="index-org_002droam_002ddailies_002dcapture_002dtoday"></a>Function: <strong><code>org-roam-dailies-capture-today</code></strong> <em>&amp;optional goto</em></dt>
<dd>
<p>Create an entry in the daily note for today.
</p>
<p>When <code>goto</code> is non-nil, go the note without creating an entry.
</p>
</li><li> Function: <code>org-roam-dailies-find-today</code>
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002ddailies_002dfind_002dtoday"></a>Function: <strong><code>org-roam-dailies-find-today</code></strong></dt>
<dd>
<p>Find the daily note for today, creating it if necessary.
</p></li></ul>
</p></dd></dl>
<p>There are variants of those commands for <code>-yesterday</code> and <code>-tomorrow</code>:
</p>
<ul>
<li> Function: <code>org-roam-dailies-capture-yesterday</code> n &amp;optional goto
<dl>
<dt><a name="index-org_002droam_002ddailies_002dcapture_002dyesterday"></a>Function: <strong><code>org-roam-dailies-capture-yesterday</code></strong> <em>n &amp;optional goto</em></dt>
<dd>
<p>Create an entry in the daily note for yesteday.
</p>
<p>With numeric argument <code>n</code>, use the daily note <code>n</code> days in the past.
</p>
</li><li> Function: <code>org-roam-dailies-find-yesterday</code>
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002ddailies_002dfind_002dyesterday"></a>Function: <strong><code>org-roam-dailies-find-yesterday</code></strong></dt>
<dd>
<p>With numeric argument N, use the daily-note N days in the future.
</p></li></ul>
</p></dd></dl>
<p>There are also commands which allow you to use Emacss <code>calendar</code> to find the date
</p>
<ul>
<li> Function: <code>org-roam-dailies-capture-date</code>
<dl>
<dt><a name="index-org_002droam_002ddailies_002dcapture_002ddate"></a>Function: <strong><code>org-roam-dailies-capture-date</code></strong></dt>
<dd>
<p>Create an entry in the daily note for a date using the calendar.
</p>
<p>Prefer past dates, unless <code>prefer-future</code> is non-nil.
</p>
<p>With a &rsquo;C-u&rsquo; prefix or when <code>goto</code> is non-nil, go the note without
creating an entry.
</p>
</li><li> Function: <code>org-roam-dailies-find-date</code>
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002ddailies_002dfind_002ddate"></a>Function: <strong><code>org-roam-dailies-find-date</code></strong></dt>
<dd>
<p>Find the daily note for a date using the calendar, creating it if necessary.
</p>
<p>Prefer past dates, unless <code>prefer-future</code> is non-nil.
</p></li></ul>
</p></dd></dl>

View File

@@ -71,15 +71,17 @@ Next: <a href="Capturing-and-finding-daily_002dnotes.html#Capturing-and-finding-
<p>For <code>org-roam-dailies</code> to work, you need to define two variables:
</p>
<ul>
<li> Variable: <code>org-roam-dailies-directory</code>
<dl>
<dt><a name="index-org_002droam_002ddailies_002ddirectory"></a>Variable: <strong><code>org-roam-dailies-directory</code></strong></dt>
<dd>
<p>Path to daily-notes.
</p>
</li><li> Variable: <code>org-roam-dailies-capture-templates</code>
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002ddailies_002dcapture_002dtemplates"></a>Variable: <strong><code>org-roam-dailies-capture-templates</code></strong></dt>
<dd>
<p>Capture templates for daily-notes in Org-roam.
</p></li></ul>
</p></dd></dl>
<p>Here is a sane default configuration:
</p>

View File

@@ -74,12 +74,12 @@ Next: <a href="Finding-Unlinked-References.html#Finding-Unlinked-References" acc
Org-roam file. To run the check only for the current file, run <code>C-u M-x
org-roam-doctor</code>, but note that this may take some time.
</p>
<ul>
<li> Function: org-roam-doctor &amp;optional this-buffer
<dl>
<dt><a name="index-org_002droam_002ddoctor"></a>Function: <strong>org-roam-doctor</strong> <em>&amp;optional this-buffer</em></dt>
<dd>
<p>Perform a check on Org-roam files to ensure cleanliness. If THIS-BUFFER, run
the check only for the current buffer.
</p></li></ul>
</p></dd></dl>
<p>The checks run are defined in <code>org-roam-doctor--checkers</code>. Each checker is an
instance of <code>org-roam-doctor-checker</code>. To define a checker, use

View File

@@ -71,24 +71,28 @@ Next: <a href="The-Org_002droam-Buffer.html#The-Org_002droam-Buffer" accesskey="
<p>This section concerns the placement and creation of files.
</p>
<ul>
<li> Variable: org-roam-directory
<dl>
<dt><a name="index-org_002droam_002ddirectory"></a>Variable: <strong>org-roam-directory</strong></dt>
<dd>
<p>This is the default path to Org-roam files. All Org files, at any level of
nesting, are considered part of the Org-roam.
</p>
</li><li> Variable: org-roam-db-location
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002ddb_002dlocation"></a>Variable: <strong>org-roam-db-location</strong></dt>
<dd>
<p>Location of the Org-roam database. If this is non-nil, the Org-roam sqlite
database is saved here.
</p>
<p>It is the users responsibility to set this correctly, especially when used
with multiple Org-roam instances.
</p>
</li><li> Variable: org-roam-file-exclude-regexp
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dfile_002dexclude_002dregexp"></a>Variable: <strong>org-roam-file-exclude-regexp</strong></dt>
<dd>
<p>Files matching this regular expression are excluded from the Org-roam.
</p></li></ul>
</p></dd></dl>

View File

@@ -78,11 +78,11 @@ decryption are handled automatically by EasyPG.
cache updates if it requires reading the encrypted file. To reduce the
number of password prompts, you may wish to cache the password.
</p>
<ul>
<li> Variable: org-roam-encrypt-files
<dl>
<dt><a name="index-org_002droam_002dencrypt_002dfiles"></a>Variable: <strong>org-roam-encrypt-files</strong></dt>
<dd>
<p>Whether to encrypt new files. If true, create files with .org.gpg extension.
</p></li></ul>
</p></dd></dl>

View File

@@ -71,9 +71,9 @@ Previous: <a href="Graph-Options.html#Graph-Options" accesskey="p" rel="prev">Gr
<p>One may want to exclude certain files to declutter the graph.
</p>
<ul>
<li> User Option: org-roam-graph-exclude-matcher
<dl>
<dt><a name="index-org_002droam_002dgraph_002dexclude_002dmatcher"></a>User Option: <strong>org-roam-graph-exclude-matcher</strong></dt>
<dd>
<p>Matcher for excluding nodes from the generated graph. Any nodes and links for
file paths matching this string is excluded from the graph.
</p>
@@ -81,7 +81,7 @@ file paths matching this string is excluded from the graph.
</p>
<p>If value is a list, all file paths matching any of the strings
are excluded.
</p></li></ul>
</p></dd></dl>
<div class="example">
<pre class="example">(setq org-roam-graph-exclude-matcher '(&quot;private&quot; &quot;dailies&quot;))

View File

@@ -71,27 +71,33 @@ Next: <a href="Excluding-Nodes-and-Edges.html#Excluding-Nodes-and-Edges" accessk
<p>Graphviz provides many options for customizing the graph output, and Org-roam supports some of them. See <a href="https://graphviz.gitlab.io/_pages/doc/info/attrs.html">https://graphviz.gitlab.io/_pages/doc/info/attrs.html</a> for customizable options.
</p>
<ul>
<li> User Option: org-roam-graph-extra-config
<dl>
<dt><a name="index-org_002droam_002dgraph_002dextra_002dconfig"></a>User Option: <strong>org-roam-graph-extra-config</strong></dt>
<dd>
<p>Extra options passed to graphviz for the digraph (The &ldquo;G&rdquo; attributes).
Example: <code>'~((&quot;rankdir&quot; . &quot;LR&quot;))</code>
</p>
</li><li> User Option: org-roam-graph-node-extra-config
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dgraph_002dnode_002dextra_002dconfig"></a>User Option: <strong>org-roam-graph-node-extra-config</strong></dt>
<dd>
<p>Extra options for nodes in the graphviz output (The &ldquo;N&rdquo; attributes).
Example: <code>'((&quot;color&quot; . &quot;skyblue&quot;))</code>
</p>
</li><li> User Option: org-roam-graph-edge-extra-config
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dgraph_002dedge_002dextra_002dconfig"></a>User Option: <strong>org-roam-graph-edge-extra-config</strong></dt>
<dd>
<p>Extra options for edges in the graphviz output (The &ldquo;E&rdquo; attributes).
Example: <code>'((&quot;dir&quot; . &quot;back&quot;))</code>
</p>
</li><li> User Option: org-roam-graph-edge-cites-extra-config
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dgraph_002dedge_002dcites_002dextra_002dconfig"></a>User Option: <strong>org-roam-graph-edge-cites-extra-config</strong></dt>
<dd>
<p>Extra options for citation edges in the graphviz output.
Example: <code>'((&quot;color&quot; . &quot;red&quot;))</code>
</p></li></ul>
</p></dd></dl>

View File

@@ -75,37 +75,47 @@ notes. This is done by performing SQL queries and generating images using
</p>
<p>The entry point to graph creation is <code>org-roam-graph</code>.
</p>
<ul>
<li> Function: org-roam-graph &amp; optional arg file node-query
<dl>
<dt><a name="index-org_002droam_002dgraph"></a>Function: <strong>org-roam-graph</strong> <em>&amp; optional arg file node-query</em></dt>
<dd>
<p>Build and possibly display a graph for FILE from NODE-QUERY.
If FILE is nil, default to current buffers file name.
ARG may be any of the following values:
</p>
<ul>
<li> <code>nil</code> show the graph.
</li><li> <code>C-u</code> show the graph for FILE.
</li><li> <code>C-u N</code> show the graph for FILE limiting nodes to N steps.
</li><li> <code>C-u C-u</code> build the graph.
</li><li> <code>C-u -</code> build the graph for FILE.
</li><li> <code>C-u -N</code> build the graph for FILE limiting nodes to N steps.
</li></ul>
</dd></dl>
</li><li> User Option: org-roam-graph-executable
<dl>
<dt><a name="index-org_002droam_002dgraph_002dexecutable"></a>User Option: <strong>org-roam-graph-executable</strong></dt>
<dd>
<p>Path to the graphing executable (in this case, Graphviz). Set this if Org-roam is unable to find the Graphviz executable on your system.
</p>
<p>You may also choose to use <code>neato</code> in place of <code>dot</code>, which generates a more
compact graph layout.
</p>
</li><li> User Option: org-roam-graph-viewer
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dgraph_002dviewer"></a>User Option: <strong>org-roam-graph-viewer</strong></dt>
<dd>
<p>Org-roam defaults to using Firefox (located on PATH) to view the SVG, but you may choose to set it to:
</p>
<ol>
<ul>
<li> A string, which is a path to the program used
</li><li> a function accepting a single argument: the graph file path.
</li></ol>
</li></ul>
<p><code>nil</code> uses <code>view-file</code> to view the graph.
</p>
@@ -117,7 +127,7 @@ compact graph layout.
(let ((org-roam-graph-viewer &quot;/mnt/c/Program Files/Mozilla Firefox/firefox.exe&quot;))
(org-roam-graph--open (concat &quot;file://///wsl$/Ubuntu&quot; file)))))
</pre></div>
</li></ul>
</dd></dl>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">&bull; <a href="Graph-Options.html#Graph-Options" accesskey="1">Graph Options</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">

View File

@@ -74,16 +74,13 @@ Previous: <a href="How-do-I-migrate-from-Roam-Research_003f.html#How-do-I-migrat
<p>The solution is dependent on the mini-buffer completion framework in use. Here
are the solutions:
</p>
<dl compact="compact">
<dt>Ivy</dt>
<dd><p>call <code>ivy-immediate-done</code>, typically bound to <code>C-M-j</code>. Alternatively, set <code>ivy-use-selectable-prompt</code> to <code>t</code>, so that &ldquo;bar&rdquo; is now selectable.
</p></dd>
<dt>Helm</dt>
<dd><p>Org-roam should provide a selectable &ldquo;[?] bar&rdquo; candidate at the top of the candidate list.
</p></dd>
</dl>
<ul>
<li> Ivycall <code>ivy-immediate-done</code>, typically bound to <code>C-M-j</code>. Alternatively, set <code>ivy-use-selectable-prompt</code> to <code>t</code>, so that &ldquo;bar&rdquo; is now selectable.
<p>Emacs 27.1.50 (Org mode 9.4)
</li><li> HelmOrg-roam should provide a selectable &ldquo;[?] bar&rdquo; candidate at the top of the candidate list.
</li></ul>
<p>Emacs 28.0.50 (Org mode 9.4)
</p>

View File

@@ -75,9 +75,9 @@ to your main files.
<p>In Org-roam, you can define the path to your index file by setting
<code>org-roam-index-file</code>.
</p>
<ul>
<li> Variable: org-roam-index-file
<dl>
<dt><a name="index-org_002droam_002dindex_002dfile"></a>Variable: <strong>org-roam-index-file</strong></dt>
<dd>
<p>Path to the Org-roam index file.
</p>
<p>The path can be a string or a function. If it is a string, it should be the
@@ -85,11 +85,13 @@ path (absolute or relative to <code>org-roam-directory</code>) to the index file
is is a function, the function should return the path to the index file.
Otherwise, the index is assumed to be a note in <code>org-roam-index</code> whose
title is <code>&quot;Index&quot;</code>.
</p>
</li><li> Function: org-roam-find-index
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dfind_002dindex"></a>Function: <strong>org-roam-find-index</strong></dt>
<dd>
<p>Opens the Index file in the current <code>org-roam-directory</code>.
</p></li></ul>
</p></dd></dl>

View File

@@ -83,17 +83,13 @@ populate the Org-roam database. The link can then be inserted via
<p>An alternative mode of insertion is using Org-roam&rsquo;s <code>roam</code> links. Org-roam
registers this link type, and interprets the path as follows:
</p>
<dl compact="compact">
<dt><code>[[roam:title]]</code></dt>
<dd><p>links to an Org-roam file with title or alias &ldquo;title&rdquo;
</p></dd>
<dt><code>[[roam:*headline]]</code></dt>
<dd><p>links to the headline &ldquo;headline&rdquo; in the current Org-roam file
</p></dd>
<dt><code>[[roam:title*headline]]</code></dt>
<dd><p>links to the headline &ldquo;headline&rdquo; in the Org-roam file with title or alias &ldquo;title&rdquo;
</p></dd>
</dl>
<ul>
<li> <code>[[roam:title]]</code>links to an Org-roam file with title or alias &ldquo;title&rdquo;
</li><li> <code>[[roam:*headline]]</code>links to the headline &ldquo;headline&rdquo; in the current Org-roam file
</li><li> <code>[[roam:title*headline]]</code>links to the headline &ldquo;headline&rdquo; in the Org-roam file with title or alias &ldquo;title&rdquo;
</li></ul>
<p><code>roam</code> links support auto-completion via <code>completion-at-point</code>: simply call
<code>completion-at-point</code> within a roam link. Users of <code>company-mode</code> may want to
@@ -111,28 +107,32 @@ prepend <code>company-capf</code> to the beginning of variable <code>company-bac
(backward-char 2))
</pre></div>
<ul>
<li> User Option: org-roam-link-title-format
<dl>
<dt><a name="index-org_002droam_002dlink_002dtitle_002dformat"></a>User Option: <strong>org-roam-link-title-format</strong></dt>
<dd>
<p>To distinguish between org-roam links and regular links, one may choose to use
special indicators for Org-roam links. Defaults to <code>&quot;%s&quot;</code>.
</p>
<p>If your version of Org is at least <code>9.2</code>, consider styling the link differently,
by customizing the <code>org-roam-link</code>, and <code>org-roam-link-current</code> faces.
</p>
</li><li> User Option: org-roam-completion-ignore-case
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dcompletion_002dignore_002dcase"></a>User Option: <strong>org-roam-completion-ignore-case</strong></dt>
<dd>
<p>When non-nil, the <code>roam</code> link completions are ignore case. For example,
calling <code>completion-at-point</code> within <code>[[roam:fo]]</code> will present a completion
for a file with title &ldquo;Foo&rdquo;. Defaults to <code>t</code>.
</p>
</li><li> User Option: org-roam-link-auto-replace
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dlink_002dauto_002dreplace"></a>User Option: <strong>org-roam-link-auto-replace</strong></dt>
<dd>
<p>When non-nil, <code>roam</code> links will be replaced with <code>file</code> or <code>id</code> links when
they are navigated to, and on file save, when a match is found. This is
desirable to maintain compatibility with vanilla Org, but resolved links are
harder to edit. Defaults to <code>t</code>.
</p></li></ul>
</p></dd></dl>
<hr>
<div class="header">

View File

@@ -122,26 +122,26 @@ make the new policy take effect.
<p>For MacOS, one solution is to use <a href="https://github.com/sveinbjornt/Platypus">Platypus</a>. Here are the instructions for
setting up with Platypus and Chrome:
</p>
<ol>
<ul>
<li> Install and launch Platypus (with <a href="https://brew.sh/">Homebrew</a>):
</li></ol>
</li></ul>
<div class="example">
<pre class="example">brew cask install platypus
</pre></div>
<ol>
<ul>
<li> Create a script <code>launch_emacs.sh</code>:
</li></ol>
</li></ul>
<div class="example">
<pre class="example">#!/usr/bin/env bash
/usr/local/bin/emacsclient --no-wait $1
</pre></div>
<ol>
<ul>
<li> Create a Platypus app with the following settings:
</li></ol>
</li></ul>
<div class="example">
<pre class="example">| Setting | Value |

View File

@@ -92,10 +92,15 @@ Next: <a href="Post_002dInstallation-Tasks.html#Post_002dInstallation-Tasks" acc
</p>
<ul>
<li> dash
</li><li> f
</li><li> s
</li><li> org
</li><li> emacsql
</li><li> emacsql-sqlite3
</li></ul>
@@ -114,14 +119,16 @@ Next: <a href="Post_002dInstallation-Tasks.html#Post_002dInstallation-Tasks" acc
<div class="lisp">
<pre class="lisp">(require 'info)
(add-to-list 'Info-default-directory-list
&quot;/path/to/my/info/files&quot;)
&quot;/path/to/my/info/files&quot;)
</pre></div>
<p>You can also use one of the default locations, such as:
</p>
<ul>
<li> <em>usr/local/share/info</em>
</li><li> <em>usr/share/info</em>
</li><li> <em>usr/local/share/info</em>
</li></ul>

View File

@@ -86,23 +86,17 @@ to further introduce features enabled by the Emacs ecosystem.
</p>
<p>Org-roam provides several benefits over other tooling:
</p>
<dl compact="compact">
<dt>Privacy and Security</dt>
<dd><p>Edit your personal wiki completely offline, entirely in your control. Encrypt your notes with GPG.
</p></dd>
<dt>Longevity of Plain Text</dt>
<dd><p>Unlike web solutions like Roam research, the notes are first and foremost plain Org-mode files &ndash; Org-roam simply builds up an auxilliary database to give the personal wiki superpowers. Having your notes in plain-text is crucial for the longevity of your wiki. Never have to worry about proprietary web solutions being taken down. Edit your plain-text notes in notepad if all other editors cease to exist
</p></dd>
<dt>Free and Open Source</dt>
<dd><p>Org-roam is free and open-source, which means that if you feel unhappy with any part of Org-roam, you may choose to extend Org-roam, or open a PR.
</p></dd>
<dt>Leverages the Org-mode ecosystem</dt>
<dd><p>Over the years, Emacs and Org-mode has developed into a mature system for plain-text organization. Building upon Org-mode already puts Org-roam light-years ahead of many other solutions.
</p></dd>
<dt>Built on Emacs</dt>
<dd><p>Emacs is also a fantastic interface for editing text, and we can inherit many of the powerful text-navigation and editing packages available to Emacs.
</p></dd>
</dl>
<ul>
<li> Privacy and SecurityEdit your personal wiki completely offline, entirely in your control. Encrypt your notes with GPG.
</li><li> Longevity of Plain TextUnlike web solutions like Roam research, the notes are first and foremost plain Org-mode files &ndash; Org-roam simply builds up an auxilliary database to give the personal wiki superpowers. Having your notes in plain-text is crucial for the longevity of your wiki. Never have to worry about proprietary web solutions being taken down. Edit your plain-text notes in notepad if all other editors cease to exist
</li><li> Free and Open SourceOrg-roam is free and open-source, which means that if you feel unhappy with any part of Org-roam, you may choose to extend Org-roam, or open a PR.
</li><li> Leverages the Org-mode ecosystemOver the years, Emacs and Org-mode has developed into a mature system for plain-text organization. Building upon Org-mode already puts Org-roam light-years ahead of many other solutions.
</li><li> Built on EmacsEmacs is also a fantastic interface for editing text, and we can inherit many of the powerful text-navigation and editing packages available to Emacs.
</li></ul>
<hr>
<div class="header">

View File

@@ -71,19 +71,23 @@ Previous: <a href="Capturing-and-finding-daily_002dnotes.html#Capturing-and-find
<p>You can navigate between daily-notes:
</p>
<ul>
<li> Function: <code>org-roam-dailies-find-directory</code>
<dl>
<dt><a name="index-org_002droam_002ddailies_002dfind_002ddirectory"></a>Function: <strong><code>org-roam-dailies-find-directory</code></strong></dt>
<dd>
<p>Find and open <code>org-roam-dailies-directory</code>.
</p>
</li><li> Function: <code>org-roam-dailies-find-previous-note</code>
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002ddailies_002dfind_002dprevious_002dnote"></a>Function: <strong><code>org-roam-dailies-find-previous-note</code></strong></dt>
<dd>
<p>When in an daily-note, find the previous one.
</p>
</li><li> Function: <code>org-roam-dailies-find-next-note</code>
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002ddailies_002dfind_002dnext_002dnote"></a>Function: <strong><code>org-roam-dailies-find-next-note</code></strong></dt>
<dd>
<p>When in an daily-note, find the next one.
</p></li></ul>
</p></dd></dl>

View File

@@ -69,32 +69,31 @@ Next: <a href="Ecosystem.html#Ecosystem" accesskey="n" rel="next">Ecosystem</a>,
<a name="Note_002dtaking-Workflows-1"></a>
<h3 class="section">19.1 Note-taking Workflows</h3>
<dl compact="compact">
<dt>Books</dt>
<dd><ul>
<ul>
<li> Books<ul>
<li> <a href="https://www.goodreads.com/book/show/34507927-how-to-take-smart-notes">How To Take Smart Notes</a>
</li></ul>
</dd>
<dt>Articles</dt>
<dd><ul>
</li><li> Articles<ul>
<li> <a href="https://www.lesswrong.com/posts/NfdHG6oHBJ8Qxc26s/the-zettelkasten-method-1">The Zettelkasten Method - LessWrong 2.0</a>
</li><li> <a href="https://reddit.com/r/RoamResearch/comments/eho7de/building_a_second_brain_in_roamand_why_you_might">Building a Second Brain in Roam&hellip;And Why You Might Want To : RoamResearch</a>
</li><li> <a href="https://www.nateliason.com/blog/roam">Roam Research: Why I Love It and How I Use It - Nat Eliason</a>
</li><li> <a href="https://twitter.com/adam_keesling/status/1196864424725774336?s=20">Adam Keesling&rsquo;s Twitter Thread</a>
</li><li> <a href="https://blog.jethro.dev/posts/how_to_take_smart_notes_org/">How To Take Smart Notes With Org-mode · Jethro Kuan</a>
</li></ul>
</dd>
<dt>Threads</dt>
<dd><ul>
</li><li> Threads<ul>
<li> <a href="https://news.ycombinator.com/item?id=22473209">Ask HN: How to Take Good Notes</a>
</li></ul>
</dd>
<dt>Videos</dt>
<dd><ul>
</li><li> Videos<ul>
<li> <a href="https://www.youtube.com/watch?v=RvWic15iXjk">How to Use Roam to Outline a New Article in Under 20 Minutes</a>
</li></ul>
</dd>
</dl>
</li></ul>

View File

@@ -72,13 +72,13 @@ Previous: <a href="Org_002droam-Files.html#Org_002droam-Files" accesskey="p" rel
<p>Org-roam introduces several faces to distinguish links within the same buffer.
These faces are enabled by default in Org-roam notes.
</p>
<ul>
<li> User Option: org-roam-link-use-custom-faces
<dl>
<dt><a name="index-org_002droam_002dlink_002duse_002dcustom_002dfaces"></a>User Option: <strong>org-roam-link-use-custom-faces</strong></dt>
<dd>
<p>When <code>t</code>, use custom faces only inside Org-roam notes.
When <code>everywhere</code>, the custom face is applied additionally to non Org-roam notes.
When <code>nil</code>, do not use Org-roam&rsquo;s custom faces.
</p></li></ul>
</p></dd></dl>
<p>The <code>org-roam-link</code> face is the face applied to links to other Org-roam files.
This distinguishes internal links from external links (e.g. external web links).

View File

@@ -77,18 +77,21 @@ notes: differentiating between bibliographical and structure notes during intera
variable <code>org-roam-tag-sources</code>, to control how tags are extracted. The tag
extraction methods supported are:
</p>
<ol>
<ul>
<li> <code>'prop</code>: This extracts tags from the <code>#+roam_tags</code> property. Tags are space delimited, and can be multi-word using double quotes.
</li><li> <code>'all-directories</code>: All sub-directories relative to <code>org-roam-directory</code> are
extracted as tags. That is, if a file is located at relative path
<code>foo/bar/file.org</code>, the file will have tags <code>foo</code> and <code>bar</code>.
</li><li> <code>'last-directory</code>: Extracts the last directory relative to
<code>org-roam-directory</code> as the tag. That is, if a file is located at relative
path <code>foo/bar/file.org</code>, the file will have tag <code>bar</code>.
</li><li> <code>'first-directory</code>: Extracts the first directory relative to
<code>org-roam-directory</code> as the tag. That is, if a file is located at relative
path <code>foo/bar/file.org</code>, the file will have tag <code>foo</code>.
</li></ol>
</li></ul>
<p>By default, only the <code>'prop</code> extraction method is enabled. To enable the other
extraction methods, you may modify <code>org-roam-tag-sources</code>:

View File

@@ -80,28 +80,35 @@ the default template, reproduced below.
:unnarrowed t)
</pre></div>
<ol>
<ul>
<li> The template has short key <code>&quot;d&quot;</code>. If you have only one template,
org-roam automatically chooses this template for you.
</li><li> The template is given a description of <code>&quot;default&quot;</code>.
</li><li> <code>plain</code> text is inserted. Other options include Org headings via
<code>entry</code>.
</li><li> <code>(function org-roam--capture-get-point)</code> should not be changed.
</li><li> <code>&quot;%?&quot;</code> is the template inserted on each call to <code>org-roam-capture--capture</code>.
This template means don&rsquo;t insert any content, but place the cursor
here.
</li><li> <code>:file-name</code> is the file-name template for a new note, if it doesn&rsquo;t yet
exist. This creates a file at path that looks like
<code>/path/to/org-roam-directory/20200213032037-foo.org</code>. This template also
allows you to specify if you want the note to go into a subdirectory. For
example, the template <code>private/${slug}</code> will create notes in
<code>/path/to/org-roam-directory/private</code>.
</li><li> <code>:head</code> contains the initial template to be inserted (once only), at
the beginning of the file. Here, the title global attribute is
inserted.
</li><li> <code>:unnarrowed t</code> tells org-capture to show the contents for the whole
file, rather than narrowing to just the entry.
</li></ol>
</li></ul>
<p>Other options you may want to learn about include <code>:immediate-finish</code>.
</p>

View File

@@ -71,35 +71,43 @@ Next: <a href="Org_002droam-Files.html#Org_002droam-Files" accesskey="n" rel="ne
<p>The Org-roam buffer displays backlinks for the currently active Org-roam note.
</p>
<ul>
<li> User Option: org-roam-buffer
<dl>
<dt><a name="index-org_002droam_002dbuffer"></a>User Option: <strong>org-roam-buffer</strong></dt>
<dd>
<p>The name of the org-roam buffer. Defaults to <code>*org-roam*</code>.
</p>
</li><li> User Option: org-roam-buffer-position
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dbuffer_002dposition"></a>User Option: <strong>org-roam-buffer-position</strong></dt>
<dd>
<p>The position of the Org-roam buffer side window. Valid values are <code>'left</code>,
<code>'right</code>, <code>'top</code>, <code>'bottom</code>.
</p>
</li><li> User Option: org-roam-buffer-width
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dbuffer_002dwidth"></a>User Option: <strong>org-roam-buffer-width</strong></dt>
<dd>
<p>Width of <code>org-roam-buffer</code>. Has an effect only if <code>org-roam-buffer-position</code> is
<code>'left</code> or <code>'right</code>.
</p>
</li><li> User Option: org-roam-buffer-height
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dbuffer_002dheight"></a>User Option: <strong>org-roam-buffer-height</strong></dt>
<dd>
<p>Height of <code>org-roam-buffer</code>. Has an effect only if <code>org-roam-buffer-position</code> is
<code>'top</code> or <code>'bottom</code>.
</p>
</li><li> User Option: org-roam-buffer-window-parameters
</p></dd></dl>
<dl>
<dt><a name="index-org_002droam_002dbuffer_002dwindow_002dparameters"></a>User Option: <strong>org-roam-buffer-window-parameters</strong></dt>
<dd>
<p>Additional window parameters for the org-roam-buffer side window.
</p>
<p>For example one can prevent the window from being deleted when calling
<code>delete-other-windows</code>, by setting it with the following:
</p>
<p><code>(setq org-roam-buffer-window-parameters '((no-delete-other-windows . t)))</code>
</p></li></ul>
</p></dd></dl>

View File

@@ -75,8 +75,11 @@ include:
</p>
<ul>
<li> Time of creation
</li><li> File it was created from
</li><li> Clipboard content
</li><li> Any other data you may want to input manually
</li></ul>

View File

@@ -79,12 +79,14 @@ like &ldquo;World War 2&rdquo;, it may be desirable to also refer to it using th
variable <code>org-roam-title-sources</code>, to control how the titles are extracted. The
title extraction methods supported are:
</p>
<ol>
<ul>
<li> <code>'title</code>: This extracts the title using the file <code>#+title</code> property
</li><li> <code>'headline</code>: This extracts the title from the first headline in the Org file
</li><li> <code>'alias</code>: This extracts a list of titles using the <code>#+roam_alias</code> property.
The aliases are space-delimited, and can be multi-worded using quotes
</li></ol>
</li></ul>
<p>Take for example the following org file:
</p>

View File

@@ -5,6 +5,8 @@
#+date: 2020-2020
#+language: en
#+texinfo_deffn: t
#+texinfo_dir_category: Emacs
#+texinfo_dir_title: Org-roam: (org-roam).
#+texinfo_dir_desc: Rudimentary Roam Replica for Emacs.
@@ -14,6 +16,7 @@
#+property: header-args :eval never
#+texinfo: @noindent
#+texinfo: @noindent
This manual is for Org-roam version 1.2.2.
#+BEGIN_QUOTE
@@ -1444,6 +1447,7 @@ are the solutions:
# Local Variables:
# eval: (require 'ol-info)
# eval: (require 'ox-texinfo+ nil t)
# before-save-hook: org-make-toc
# after-save-hook: (lambda nil (progn (require 'ox-texinfo nil t) (org-texinfo-export-to-info)))
# indent-tabs-mode: nil

View File

@@ -46,6 +46,7 @@ General Public License for more details.
@noindent
@noindent
This manual is for Org-roam version 1.2.2.
@quotation
@@ -183,18 +184,22 @@ to further introduce features enabled by the Emacs ecosystem.
Org-roam provides several benefits over other tooling:
@table @asis
@item Privacy and Security
Edit your personal wiki completely offline, entirely in your control. Encrypt your notes with GPG@.
@item Longevity of Plain Text
Unlike web solutions like Roam research, the notes are first and foremost plain Org-mode files -- Org-roam simply builds up an auxilliary database to give the personal wiki superpowers. Having your notes in plain-text is crucial for the longevity of your wiki. Never have to worry about proprietary web solutions being taken down. Edit your plain-text notes in notepad if all other editors cease to exist
@item Free and Open Source
Org-roam is free and open-source, which means that if you feel unhappy with any part of Org-roam, you may choose to extend Org-roam, or open a PR@.
@item Leverages the Org-mode ecosystem
Over the years, Emacs and Org-mode has developed into a mature system for plain-text organization. Building upon Org-mode already puts Org-roam light-years ahead of many other solutions.
@item Built on Emacs
Emacs is also a fantastic interface for editing text, and we can inherit many of the powerful text-navigation and editing packages available to Emacs.
@end table
@itemize
@item
Privacy and SecurityEdit your personal wiki completely offline, entirely in your control. Encrypt your notes with GPG@.
@item
Longevity of Plain TextUnlike web solutions like Roam research, the notes are first and foremost plain Org-mode files -- Org-roam simply builds up an auxilliary database to give the personal wiki superpowers. Having your notes in plain-text is crucial for the longevity of your wiki. Never have to worry about proprietary web solutions being taken down. Edit your plain-text notes in notepad if all other editors cease to exist
@item
Free and Open SourceOrg-roam is free and open-source, which means that if you feel unhappy with any part of Org-roam, you may choose to extend Org-roam, or open a PR@.
@item
Leverages the Org-mode ecosystemOver the years, Emacs and Org-mode has developed into a mature system for plain-text organization. Building upon Org-mode already puts Org-roam light-years ahead of many other solutions.
@item
Built on EmacsEmacs is also a fantastic interface for editing text, and we can inherit many of the powerful text-navigation and editing packages available to Emacs.
@end itemize
@node Target Audience
@chapter Target Audience
@@ -381,14 +386,19 @@ You now have Org-roam installed. However, you don't necessarily have the depende
@itemize
@item
dash
@item
f
@item
s
@item
org
@item
emacsql
@item
emacsql-sqlite3
@end itemize
@@ -408,7 +418,7 @@ Where @code{/path/to/my/info/files} is the location where you keep info files. T
@lisp
(require 'info)
(add-to-list 'Info-default-directory-list
"/path/to/my/info/files")
"/path/to/my/info/files")
@end lisp
You can also use one of the default locations, such as:
@@ -416,8 +426,10 @@ You can also use one of the default locations, such as:
@itemize
@item
@emph{usr/local/share/info}
@item
@emph{usr/share/info}
@item
@emph{usr/local/share/info}
@end itemize
@@ -547,15 +559,17 @@ Org-roam calls @code{org-roam--extract-titles} to extract titles. It uses the
variable @code{org-roam-title-sources}, to control how the titles are extracted. The
title extraction methods supported are:
@enumerate
@itemize
@item
@code{'title}: This extracts the title using the file @code{#+title} property
@item
@code{'headline}: This extracts the title from the first headline in the Org file
@item
@code{'alias}: This extracts a list of titles using the @code{#+roam_alias} property.
The aliases are space-delimited, and can be multi-worded using quotes
@end enumerate
@end itemize
Take for example the following org file:
@@ -598,22 +612,25 @@ Org-roam calls @code{org-roam--extract-tags} to extract tags from files. It uses
variable @code{org-roam-tag-sources}, to control how tags are extracted. The tag
extraction methods supported are:
@enumerate
@itemize
@item
@code{'prop}: This extracts tags from the @code{#+roam_tags} property. Tags are space delimited, and can be multi-word using double quotes.
@item
@code{'all-directories}: All sub-directories relative to @code{org-roam-directory} are
extracted as tags. That is, if a file is located at relative path
@code{foo/bar/file.org}, the file will have tags @code{foo} and @code{bar}.
@item
@code{'last-directory}: Extracts the last directory relative to
@code{org-roam-directory} as the tag. That is, if a file is located at relative
path @code{foo/bar/file.org}, the file will have tag @code{bar}.
@item
@code{'first-directory}: Extracts the first directory relative to
@code{org-roam-directory} as the tag. That is, if a file is located at relative
path @code{foo/bar/file.org}, the file will have tag @code{foo}.
@end enumerate
@end itemize
By default, only the @code{'prop} extraction method is enabled. To enable the other
extraction methods, you may modify @code{org-roam-tag-sources}:
@@ -666,10 +683,13 @@ include:
@itemize
@item
Time of creation
@item
File it was created from
@item
Clipboard content
@item
Any other data you may want to input manually
@end itemize
@@ -706,21 +726,26 @@ the default template, reproduced below.
:unnarrowed t)
@end lisp
@enumerate
@itemize
@item
The template has short key @code{"d"}. If you have only one template,
org-roam automatically chooses this template for you.
@item
The template is given a description of @code{"default"}.
@item
@code{plain} text is inserted. Other options include Org headings via
@code{entry}.
@item
@code{(function org-roam--capture-get-point)} should not be changed.
@item
@code{"%?"} is the template inserted on each call to @code{org-roam-capture--capture}.
This template means don't insert any content, but place the cursor
here.
@item
@code{:file-name} is the file-name template for a new note, if it doesn't yet
exist. This creates a file at path that looks like
@@ -728,14 +753,16 @@ exist. This creates a file at path that looks like
allows you to specify if you want the note to go into a subdirectory. For
example, the template @code{private/$@{slug@}} will create notes in
@code{/path/to/org-roam-directory/private}.
@item
@code{:head} contains the initial template to be inserted (once only), at
the beginning of the file. Here, the title global attribute is
inserted.
@item
@code{:unnarrowed t} tells org-capture to show the contents for the whole
file, rather than narrowing to just the entry.
@end enumerate
@end itemize
Other options you may want to learn about include @code{:immediate-finish}.
@@ -798,59 +825,55 @@ All of Org-roam's customization options can be viewed via
This section concerns the placement and creation of files.
@itemize
@item
Variable: org-roam-directory
@defvar org-roam-directory
This is the default path to Org-roam files. All Org files, at any level of
nesting, are considered part of the Org-roam.
@end defvar
@item
Variable: org-roam-db-location
@defvar org-roam-db-location
Location of the Org-roam database. If this is non-nil, the Org-roam sqlite
database is saved here.
It is the users responsibility to set this correctly, especially when used
with multiple Org-roam instances.
@end defvar
@item
Variable: org-roam-file-exclude-regexp
@defvar org-roam-file-exclude-regexp
Files matching this regular expression are excluded from the Org-roam.
@end itemize
@end defvar
@node The Org-roam Buffer
@section The Org-roam Buffer
The Org-roam buffer displays backlinks for the currently active Org-roam note.
@itemize
@item
User Option: org-roam-buffer
@defopt org-roam-buffer
The name of the org-roam buffer. Defaults to @code{*org-roam*}.
@end defopt
@item
User Option: org-roam-buffer-position
@defopt org-roam-buffer-position
The position of the Org-roam buffer side window. Valid values are @code{'left},
@code{'right}, @code{'top}, @code{'bottom}.
@end defopt
@item
User Option: org-roam-buffer-width
@defopt org-roam-buffer-width
Width of @code{org-roam-buffer}. Has an effect only if @code{org-roam-buffer-position} is
@code{'left} or @code{'right}.
@end defopt
@item
User Option: org-roam-buffer-height
@defopt org-roam-buffer-height
Height of @code{org-roam-buffer}. Has an effect only if @code{org-roam-buffer-position} is
@code{'top} or @code{'bottom}.
@end defopt
@item
User Option: org-roam-buffer-window-parameters
@defopt org-roam-buffer-window-parameters
Additional window parameters for the org-roam-buffer side window.
@@ -858,7 +881,7 @@ For example one can prevent the window from being deleted when calling
@code{delete-other-windows}, by setting it with the following:
@code{(setq org-roam-buffer-window-parameters '((no-delete-other-windows . t)))}
@end itemize
@end defopt
@node Org-roam Files
@section Org-roam Files
@@ -872,14 +895,12 @@ system. The templating system is customizable (see @ref{The Templating System}).
Org-roam introduces several faces to distinguish links within the same buffer.
These faces are enabled by default in Org-roam notes.
@itemize
@item
User Option: org-roam-link-use-custom-faces
@defopt org-roam-link-use-custom-faces
When @code{t}, use custom faces only inside Org-roam notes.
When @code{everywhere}, the custom face is applied additionally to non Org-roam notes.
When @code{nil}, do not use Org-roam's custom faces.
@end itemize
@end defopt
The @code{org-roam-link} face is the face applied to links to other Org-roam files.
This distinguishes internal links from external links (e.g. external web links).
@@ -906,14 +927,16 @@ populate the Org-roam database. The link can then be inserted via
An alternative mode of insertion is using Org-roam's @code{roam} links. Org-roam
registers this link type, and interprets the path as follows:
@table @asis
@item @code{[[roam:title]]}
links to an Org-roam file with title or alias ``title''
@item @code{[[roam:*headline]]}
links to the headline ``headline'' in the current Org-roam file
@item @code{[[roam:title*headline]]}
links to the headline ``headline'' in the Org-roam file with title or alias ``title''
@end table
@itemize
@item
@code{[[roam:title]]}links to an Org-roam file with title or alias ``title''
@item
@code{[[roam:*headline]]}links to the headline ``headline'' in the current Org-roam file
@item
@code{[[roam:title*headline]]}links to the headline ``headline'' in the Org-roam file with title or alias ``title''
@end itemize
@code{roam} links support auto-completion via @code{completion-at-point}: simply call
@code{completion-at-point} within a roam link. Users of @code{company-mode} may want to
@@ -931,31 +954,29 @@ To easily insert @code{roam} links, one may wish to use a package like @uref{htt
(backward-char 2))
@end lisp
@itemize
@item
User Option: org-roam-link-title-format
@defopt org-roam-link-title-format
To distinguish between org-roam links and regular links, one may choose to use
special indicators for Org-roam links. Defaults to @code{"%s"}.
If your version of Org is at least @code{9.2}, consider styling the link differently,
by customizing the @code{org-roam-link}, and @code{org-roam-link-current} faces.
@end defopt
@item
User Option: org-roam-completion-ignore-case
@defopt org-roam-completion-ignore-case
When non-nil, the @code{roam} link completions are ignore case. For example,
calling @code{completion-at-point} within @code{[[roam:fo]]} will present a completion
for a file with title ``Foo''. Defaults to @code{t}.
@end defopt
@item
User Option: org-roam-link-auto-replace
@defopt org-roam-link-auto-replace
When non-nil, @code{roam} links will be replaced with @code{file} or @code{id} links when
they are navigated to, and on file save, when a match is found. This is
desirable to maintain compatibility with vanilla Org, but resolved links are
harder to edit. Defaults to @code{t}.
@end itemize
@end defopt
@node Navigating Around
@chapter Navigating Around
@@ -973,9 +994,7 @@ to your main files.
In Org-roam, you can define the path to your index file by setting
@code{org-roam-index-file}.
@itemize
@item
Variable: org-roam-index-file
@defvar org-roam-index-file
Path to the Org-roam index file.
@@ -984,12 +1003,12 @@ path (absolute or relative to @code{org-roam-directory}) to the index file. If i
is is a function, the function should return the path to the index file.
Otherwise, the index is assumed to be a note in @code{org-roam-index} whose
title is @code{"Index"}.
@end defvar
@item
Function: org-roam-find-index
@defun org-roam-find-index
Opens the Index file in the current @code{org-roam-directory}.
@end itemize
@end defun
@node Encryption
@chapter Encryption
@@ -1003,12 +1022,10 @@ Note that Emacs will prompt for a password for encrypted files during
cache updates if it requires reading the encrypted file. To reduce the
number of password prompts, you may wish to cache the password.
@itemize
@item
Variable: org-roam-encrypt-files
@defvar org-roam-encrypt-files
Whether to encrypt new files. If true, create files with .org.gpg extension.
@end itemize
@end defvar
@node Graphing
@chapter Graphing
@@ -1019,9 +1036,7 @@ notes. This is done by performing SQL queries and generating images using
The entry point to graph creation is @code{org-roam-graph}.
@itemize
@item
Function: org-roam-graph & optional arg file node-query
@defun org-roam-graph & optional arg file node-query
Build and possibly display a graph for FILE from NODE-QUERY@.
If FILE is nil, default to current buffers file name.
@@ -1030,37 +1045,43 @@ ARG may be any of the following values:
@itemize
@item
@code{nil} show the graph.
@item
@code{C-u} show the graph for FILE@.
@item
@code{C-u N} show the graph for FILE limiting nodes to N steps.
@item
@code{C-u C-u} build the graph.
@item
@code{C-u -} build the graph for FILE@.
@item
@code{C-u -N} build the graph for FILE limiting nodes to N steps.
@end itemize
@end defun
@item
User Option: org-roam-graph-executable
@defopt org-roam-graph-executable
Path to the graphing executable (in this case, Graphviz). Set this if Org-roam is unable to find the Graphviz executable on your system.
You may also choose to use @code{neato} in place of @code{dot}, which generates a more
compact graph layout.
@end defopt
@item
User Option: org-roam-graph-viewer
@defopt org-roam-graph-viewer
Org-roam defaults to using Firefox (located on PATH) to view the SVG, but you may choose to set it to:
@enumerate
@itemize
@item
A string, which is a path to the program used
@item
a function accepting a single argument: the graph file path.
@end enumerate
@end itemize
@code{nil} uses @code{view-file} to view the graph.
@@ -1072,7 +1093,7 @@ If you are using WSL2 and would like to open the graph in Windows, you can use t
(let ((org-roam-graph-viewer "/mnt/c/Program Files/Mozilla Firefox/firefox.exe"))
(org-roam-graph--open (concat "file://///wsl$/Ubuntu" file)))))
@end lisp
@end itemize
@end defopt
@menu
* Graph Options::
@@ -1084,40 +1105,36 @@ If you are using WSL2 and would like to open the graph in Windows, you can use t
Graphviz provides many options for customizing the graph output, and Org-roam supports some of them. See @uref{https://graphviz.gitlab.io/_pages/doc/info/attrs.html} for customizable options.
@itemize
@item
User Option: org-roam-graph-extra-config
@defopt org-roam-graph-extra-config
Extra options passed to graphviz for the digraph (The ``G'' attributes).
Example: @code{'~(("rankdir" . "LR"))}
@end defopt
@item
User Option: org-roam-graph-node-extra-config
@defopt org-roam-graph-node-extra-config
Extra options for nodes in the graphviz output (The ``N'' attributes).
Example: @code{'(("color" . "skyblue"))}
@end defopt
@item
User Option: org-roam-graph-edge-extra-config
@defopt org-roam-graph-edge-extra-config
Extra options for edges in the graphviz output (The ``E'' attributes).
Example: @code{'(("dir" . "back"))}
@end defopt
@item
User Option: org-roam-graph-edge-cites-extra-config
@defopt org-roam-graph-edge-cites-extra-config
Extra options for citation edges in the graphviz output.
Example: @code{'(("color" . "red"))}
@end itemize
@end defopt
@node Excluding Nodes and Edges
@section Excluding Nodes and Edges
One may want to exclude certain files to declutter the graph.
@itemize
@item
User Option: org-roam-graph-exclude-matcher
@defopt org-roam-graph-exclude-matcher
Matcher for excluding nodes from the generated graph. Any nodes and links for
file paths matching this string is excluded from the graph.
@@ -1126,7 +1143,7 @@ If value is a string, the string is the only matcher.
If value is a list, all file paths matching any of the strings
are excluded.
@end itemize
@end defopt
@example
(setq org-roam-graph-exclude-matcher '("private" "dailies"))
@@ -1229,29 +1246,29 @@ See @uref{https://www.chromium.org/administrators/linux-quick-start, here} for m
For MacOS, one solution is to use @uref{https://github.com/sveinbjornt/Platypus, Platypus}. Here are the instructions for
setting up with Platypus and Chrome:
@enumerate
@itemize
@item
Install and launch Platypus (with @uref{https://brew.sh/, Homebrew}):
@end enumerate
@end itemize
@example
brew cask install platypus
@end example
@enumerate
@itemize
@item
Create a script @code{launch_emacs.sh}:
@end enumerate
@end itemize
@example
#!/usr/bin/env bash
/usr/local/bin/emacsclient --no-wait $1
@end example
@enumerate
@itemize
@item
Create a Platypus app with the following settings:
@end enumerate
@end itemize
@example
| Setting | Value |
@@ -1371,17 +1388,15 @@ Org-roam provides journaling capabilities akin to
For @code{org-roam-dailies} to work, you need to define two variables:
@itemize
@item
Variable: @code{org-roam-dailies-directory}
@defvar @code{org-roam-dailies-directory}
Path to daily-notes.
@end defvar
@item
Variable: @code{org-roam-dailies-capture-templates}
@defvar @code{org-roam-dailies-capture-templates}
Capture templates for daily-notes in Org-roam.
@end itemize
@end defvar
Here is a sane default configuration:
@@ -1429,41 +1444,35 @@ template @code{j} will put its notes under the heading Journal. When you
@node Capturing and finding daily-notes
@section Capturing and finding daily-notes
@itemize
@item
Function: @code{org-roam-dailies-capture-today} &optional goto
@defun @code{org-roam-dailies-capture-today} &optional goto
Create an entry in the daily note for today.
When @code{goto} is non-nil, go the note without creating an entry.
@end defun
@item
Function: @code{org-roam-dailies-find-today}
@defun @code{org-roam-dailies-find-today}
Find the daily note for today, creating it if necessary.
@end itemize
@end defun
There are variants of those commands for @code{-yesterday} and @code{-tomorrow}:
@itemize
@item
Function: @code{org-roam-dailies-capture-yesterday} n &optional goto
@defun @code{org-roam-dailies-capture-yesterday} n &optional goto
Create an entry in the daily note for yesteday.
With numeric argument @code{n}, use the daily note @code{n} days in the past.
@end defun
@item
Function: @code{org-roam-dailies-find-yesterday}
@defun @code{org-roam-dailies-find-yesterday}
With numeric argument N, use the daily-note N days in the future.
@end itemize
@end defun
There are also commands which allow you to use Emacss @code{calendar} to find the date
@itemize
@item
Function: @code{org-roam-dailies-capture-date}
@defun @code{org-roam-dailies-capture-date}
Create an entry in the daily note for a date using the calendar.
@@ -1471,36 +1480,34 @@ Prefer past dates, unless @code{prefer-future} is non-nil.
With a 'C-u' prefix or when @code{goto} is non-nil, go the note without
creating an entry.
@end defun
@item
Function: @code{org-roam-dailies-find-date}
@defun @code{org-roam-dailies-find-date}
Find the daily note for a date using the calendar, creating it if necessary.
Prefer past dates, unless @code{prefer-future} is non-nil.
@end itemize
@end defun
@node Navigation
@section Navigation
You can navigate between daily-notes:
@itemize
@item
Function: @code{org-roam-dailies-find-directory}
@defun @code{org-roam-dailies-find-directory}
Find and open @code{org-roam-dailies-directory}.
@end defun
@item
Function: @code{org-roam-dailies-find-previous-note}
@defun @code{org-roam-dailies-find-previous-note}
When in an daily-note, find the previous one.
@end defun
@item
Function: @code{org-roam-dailies-find-next-note}
@defun @code{org-roam-dailies-find-next-note}
When in an daily-note, find the next one.
@end itemize
@end defun
@node Diagnosing and Repairing Files
@chapter Diagnosing and Repairing Files
@@ -1510,13 +1517,11 @@ Org-roam provides a utility for diagnosing and repairing problematic files via
Org-roam file. To run the check only for the current file, run @code{C-u M-x
org-roam-doctor}, but note that this may take some time.
@itemize
@item
Function: org-roam-doctor &optional this-buffer
@defun org-roam-doctor &optional this-buffer
Perform a check on Org-roam files to ensure cleanliness. If THIS-BUFFER, run
the check only for the current buffer.
@end itemize
@end defun
The checks run are defined in @code{org-roam-doctor--checkers}. Each checker is an
instance of @code{org-roam-doctor-checker}. To define a checker, use
@@ -1597,36 +1602,43 @@ operations. To reduce the number of garbage collection processes, one may set
@node Note-taking Workflows
@section Note-taking Workflows
@table @asis
@item Books
@itemize
@item
Books@itemize
@item
@uref{https://www.goodreads.com/book/show/34507927-how-to-take-smart-notes, How To Take Smart Notes}
@end itemize
@item Articles
@itemize
@item
Articles@itemize
@item
@uref{https://www.lesswrong.com/posts/NfdHG6oHBJ8Qxc26s/the-zettelkasten-method-1, The Zettelkasten Method - LessWrong 2.0}
@item
@uref{https://reddit.com/r/RoamResearch/comments/eho7de/building_a_second_brain_in_roamand_why_you_might, Building a Second Brain in Roam@dots{}And Why You Might Want To : RoamResearch}
@item
@uref{https://www.nateliason.com/blog/roam, Roam Research: Why I Love It and How I Use It - Nat Eliason}
@item
@uref{https://twitter.com/adam_keesling/status/1196864424725774336?s=20, Adam Keesling's Twitter Thread}
@item
@uref{https://blog.jethro.dev/posts/how_to_take_smart_notes_org/, How To Take Smart Notes With Org-mode · Jethro Kuan}
@end itemize
@item Threads
@itemize
@item
Threads@itemize
@item
@uref{https://news.ycombinator.com/item?id=22473209, Ask HN: How to Take Good Notes}
@end itemize
@item Videos
@itemize
@item
Videos@itemize
@item
@uref{https://www.youtube.com/watch?v=RvWic15iXjk, How to Use Roam to Outline a New Article in Under 20 Minutes}
@end itemize
@end table
@end itemize
@node Ecosystem
@section Ecosystem
@@ -1855,12 +1867,13 @@ This situation arises when, for example, one would like to create a note titled
The solution is dependent on the mini-buffer completion framework in use. Here
are the solutions:
@table @asis
@item Ivy
call @code{ivy-immediate-done}, typically bound to @code{C-M-j}. Alternatively, set @code{ivy-use-selectable-prompt} to @code{t}, so that ``bar'' is now selectable.
@item Helm
Org-roam should provide a selectable ``[?] bar'' candidate at the top of the candidate list.
@end table
@itemize
@item
Ivycall @code{ivy-immediate-done}, typically bound to @code{C-M-j}. Alternatively, set @code{ivy-use-selectable-prompt} to @code{t}, so that ``bar'' is now selectable.
Emacs 27.1.50 (Org mode 9.4)
@item
HelmOrg-roam should provide a selectable ``[?] bar'' candidate at the top of the candidate list.
@end itemize
Emacs 28.0.50 (Org mode 9.4)
@bye