Цифровой садик - приветственная

Цифровой садик - приветственная | Полный список всего, что тут есть | RSS | Подписаться через follow.it

15.07.2022

org-roam

Замечательное средство для ведения цеттелькастена, из которого я делаю вот этот цифровой сад. Случайные заметки.

Как обсидиан, только в emacs (то есть, в привычной для емаксеров среде работы с текстом) и на основе формата org-mode (тоже язык легкой разметки, как и markdown, и учитывая весьма крутой и интересный org-mode емакса - это много плюшек). :))

обработать каким-то образом все орг-роамные файлы

https://org-roam.discourse.group/t/how-to-list-incomplete-entries/2444/3 Здесь - всем добавить тег draft.

(dolist (f (org-roam-list-files))
        (progn
        (interactive)
        (find-file f)
        (org-roam-tag-add
         '("draft"))
        (save-buffer)
        (kill-current-buffer)))

Искалочка оргроамного - по тегам, названию, части пути.

Если захочется делать сохранённые поиски.

(org-roam-node-find t "japan" nil)

(org-roam-node-find t "japan" nil) - в виде ссылки.

И ещё есть org-roam-db-query.

Переименовывать файл вслед за тайтлом. Мне, по ходу, ненужное.

, примерно как в v1 https://org-roam.discourse.group/t/does-renaming-title-no-longer-renames-the-filename/2018/2

(defun azr/org-roam-modify-title ()
    "Modify title of org-roam current node and update all backlinks in roam database."
    (interactive)
    (unless (org-roam-buffer-p) (error "Not in an org-roam buffer."))
    (save-some-buffers t)
    (let* ((old-title (org-roam-get-keyword "title"))
           (ID (org-entry-get (point) "ID"))
           (new-title (read-string "Enter new title: " old-title)))
      (org-roam-set-keyword "title" new-title)
      (save-buffer)
      (let* ((new-slug (org-roam-node-slug (org-roam-node-at-point)))
             (new-file-name (replace-regexp-in-string "-.*\\.org" (format "-%s.org" new-slug) (buffer-file-name)))
             (new-buffer-name (file-name-nondirectory new-file-name)))
        (rename-buffer new-buffer-name)
        (rename-file (buffer-file-name) new-file-name 1)
        (set-visited-file-name new-file-name)) ; I don't know why this last command is necessary. Getting it from here: https://stackoverflow.com/a/384346/2422698
      (save-buffer)
      ;; Rename backlinks in the rest of the Org-roam database.
      (let* ((search (format "[[id:%s][%s]]" ID old-title))
             (replace (format "[[id:%s][%s]]" ID new-title))
             (rg-command (format "rg -t org -lF %s ~/Org/roam/" search))
             (file-list (split-string (shell-command-to-string rg-command))))
        (dolist (file file-list)
          (let ((file-open (get-file-buffer file)))
            (find-file file)
            (beginning-of-buffer)
            (while (search-forward search nil t)
              (replace-match replace))
            (save-buffer)
            (unless file-open
              (kill-buffer)))))))


Как сделать заголовок с id не узлом графа

Засунуть в PROPERTIES

:ROAM_EXCLUDE: t

Чтобы видеть структуру - org-roam-graph.

The entry point to graph creation is org-roam-graph. Прикрутила к кнопочкам C-c n g

Function: 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 buffer’s file name. ARG may be any of the following values: nil show the graph. C-u show the graph for FILE. C-u N show the graph for FILE limiting nodes to N steps. C-u C-u build the graph. C-u - build the graph for FILE. C-u -N build the graph for FILE limiting nodes to N steps.

https://org-roam.discourse.group/t/update-a-field-last-modified-at-save/321/7 - способ обновлять тег Last-modified

(require 'time-stamp)
(add-hook 'write-file-functions 'time-stamp)

https://www.emacswiki.org/emacs/TimeStamp ** following query to retrieve the file names of all notes that are related (target of links) to notes that have embedding and change in their file names:

SELECT DISTINCT(source) FROM links WHERE dest LIKE "%embedding%" INTERSECT SELECT DISTINCT(source) FROM links WHERE dest LIKE "%change%" сохраненный поиск https://org-roam.discourse.group/t/how-to-create-a-link-to-a-org-roam-search/85/3


Если у вас есть мысли, комментарии, предложения или отклики по поводу этой страницы или этого цифрового сада в целом, напишите мне сообщение через Яндекс.Форму или на agnessa@agnessa.pp.ru. Мне ооочень интересно!

Задонатить.


An IndieWeb Webring 🕸💍