* Ensure that multicite links are correctly split
org-ref multi-citations are handled by "cite:key1,key2". In the org-roam databases this was
previously stored as a single "cite" link to the (non-existing) key "key1,key2". This means that
cite backlinks and cite graph behaviour does not work correctly for these links.
This fix will split any cite links with a comma into separate links to each individual ref
* Refactor with ->>
* Refactor to use org-ref-split-and-strip-string instead
* Update changelog with #545
* (fix): optimize processing
* (fix): avoid repetition
Co-authored-by: Leo Vivier <leo.vivier+dev@gmail.com>
* (feat) cond display relative subdir in title for selection
A title can now be constructed as ‘subdir/file-title’ where ‘subdir’ is the
sub-directory relative from ‘org-roam-directory’.
When ‘org-roam-title-include-subdirs’ is non-nil, ‘org-roam--extract-titles’
now outputs titles in this format.
* (fix) improve docstrings
* (feat) add var for modifying subdir-separator
* (fix) nitpick docstring
* (doc) document subdir creation in templates with :file-name
* (feat) make subdir-format accept a function
* (fix) respect docstring one-line-description
* (fix) address checkdoc errors
* (fix) also add subdirs when db--update-titles
* (feat) improve modularisation
`org-roam--extract-titles' is now reverted to its default definition, i.e. it
doesn’t format the titles. In its stead,
`org-roam--extract-and-format-titles' is created to both extract the titles
and process all of them with `org-roam--format-title', which is a much better
way to do this.
* Refactor with ->>
* Refactor with let*
Pretty sure I got confused because I thought I needed to use the result of the
db-queryr.
* Remove useless ->>
Remove the fuzzy matching variable introduced in #289. The rationale is
addressed in
https://github.com/jethrokuan/org-roam/issues/514#issuecomment-619438401:
Helm, Ido and Ivy have their own mechanisms for fuzzy search, and can be
tweaked using their own configuration options outside of org-roam, e.g.
through `ivy-re-builders-alist`.
In #470, the `and` clause was removed, so `org-roam--org-roam-file-p`
returns `t` on `foo.org~` backup files. This PR adds that back in.
In addition, the `after-save-hook` function was not checking for whether
the file was within the org-roam system, which meant files from outside
`org-roam` would also be added into the database. This PR adds a guard
clause.
Allows user to run functions when an `org-roam-capture` is successful. This
might come in handy for moving point after finding the new file, since right
now, it is at `(point-min)`.
- Consolidate graph build/display commands into org-roam-graph command
See #450
- Require org-roam-db
Rather than declaring its functions.
- Move obsolete variable org-roam-graph-node-shape to org-roam-compat
- org-roam-graph--build-connected-component accepts a file argument
Allows building a graph without having the target file as the current
buffer
- Eliminate repeating code
- Fix checkdoc warnings
* (feat) remove user-error for org-roam-insert
Closes#477.
* (fix) use absolute path when buffer has no associated file
Co-authored-by: Jethro Kuan <jethrokuan95@gmail.com>
Beyond just an extraction, this is also a simplification. It removes two
variables: `org-roam-date-filename-format` and
`org-roam-date-title-format`, in favour of directly specifying them in
the `org-roam-dailies-capture-templates`.
`org-roam--file-for-time` is also vastly simplified to use org-capture's
default time expansion utilities, by setting the capture template's
`:default-time` appropriately.
I had initially thought that keeping them separate would be cleaner, but
it's very easy to forget to add the links at the bottom of the
changelog. Relevant emacs-lisp that did this:
(replace-regexp "\\[gh-\\([0-9]+\\)\\]" "(https://github.com/jethrokuan/org-roam/pull/\\1)")
Now that org-roam is out on MELPA, let's suggest that people use it
instead of GitHub to install the package.
Co-authored-by: Jethro Kuan <jethrokuan95@gmail.com>