https://github.com/bitspook/notes-migrator
Migrate your notes b/w different note-taking software
https://github.com/bitspook/notes-migrator
denote logseq note-taking org-roam
Last synced: 6 months ago
JSON representation
Migrate your notes b/w different note-taking software
- Host: GitHub
- URL: https://github.com/bitspook/notes-migrator
- Owner: bitspook
- Created: 2022-09-29T17:16:53.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2025-03-12T15:13:22.000Z (7 months ago)
- Last Synced: 2025-03-30T03:43:53.188Z (7 months ago)
- Topics: denote, logseq, note-taking, org-roam
- Language: Emacs Lisp
- Homepage:
- Size: 67.4 KB
- Stars: 31
- Watchers: 2
- Forks: 6
- Open Issues: 1
-
Metadata Files:
- Readme: readme.org
Awesome Lists containing this project
README
#+title: notes-migrator
** Usage
You can do this in one of the following ways:
1. *Download this script*. (e.g =git clone https://github.com/bitspook/notes-migrator=)
2. To *load the migration script*, in Emacs, run =M-x load-file=, and select the
migration script you want to run (e.g =nm-org-roam-to-denote.el=). See
*[[id:00f586a4-f8db-4a13-892a-f8efacb5ee65][Supported Conversions]]* section below for supported migration scripts.3. *Rtfm;* Migration script is now loaded, and there should be a function with
=nm-migrate-= prefix loaded in Emacs. e.g for org-roam to denote migration,
there should be =nm-migrate-org-roam-to-denote=. You can invoke =C-h f= and
enter/select this function to read its documentation.4. *Run migration* by invoking the migration function. =M-x= and selecting the
=nm-migrate-*= function should do the job** Supported Conversions
:PROPERTIES:
:ID: 00f586a4-f8db-4a13-892a-f8efacb5ee65
:END:*** [[https://github.com/org-roam/org-roam/][org-roam]] to [[https://protesilaos.com/emacs/denote][denote]]
- Script: [[file:nm-org-roam-to-denote.el][nm-org-roam-to-denote.el]]
- Command: =nm-migrate-org-roam-to-denote=
- Maintainer: [[https://github.com/bitspook][@bitspook]]- Tested with:
- Emacs versions
- 29.0.5
- 28.1
- org-roam versions
- v2.2.1**** Known limitations
- If you are using org-roam's feature of having multiple nodes in a single file
(having a ID on a subtree in a org-roam file treats the subtree as a separate
note in itself), then the same file will result in multiple denote notes. The
filename will be different (it is one file per sub-note), but original file's
complete content is present in each.*** [[https://github.com/Kungsgeten/org-brain][org-brain]] to [[https://protesilaos.com/emacs/denote][denote]]
- Script: [[file:nm-org-brain-to-denote.el][nm-org-brain-to-denote.el]]
- Command: =nm-migrate-org-brain-to-denote=
- Maintainer: [[https://github.com/MArpoagaus][@MArpoagaus]]- Tested with:
- Emacs versions
- 29.4
- org-brain versions
- v0.94**** Known limitations
- The converstions seams to fail for files with latex previews enabled on startup.*** [[https://protesilaos.com/emacs/denote][denote]] to [[https://logseq.com/][logseq]]
- Script: [[file:nm-denote-to-logseq.el][nm-denote-to-logseq.el]]
- Command: =nm-migrate-denote-to-logseq=
- Maintainer: [[https://github.com/hapst3r][@haspt3r]]- Tested with:
- Emacs versions
- 28.1
- Denote version
- v1.0.0**** Known limitations
- You need to specify an existing =LOGSEQ-DIRECTORY=. Specifying a nonexistent one
will result in an error. Specifying nothing (NIL), everything will be copied into
your home folder (on linux).
- In =LOGSEQ-DIRECTORY=, files with identical names (i.e. earlier transferred notes)
will be overwritten without notification.
- The tags currently don't work. Denote uses #+FILETAGS and Logseq #+TAGS in the
header line, Denote uses :TAG1:TAG2: format and Logseq uses TAG1, TAG2 format.
- Invalid denote links are ignored i.e they are left behind in the migrated
notes as-is** Purpose
To migrate notes from one software to another.
Fluidly taking notes is a powerful habit. In the quest of a fluent workflow, you
(like me) might find yourself trying many software. In this repo I will put code
I use to convert my notes from one software to another, so I can assess them
with my actual of notes instead of just toying around.** Contributing
If you want conversion b/w software not covered in this repo, or want different
behavior for existing migration scripts, please create an [[https://github.com/bitspook/notes-migrator/issues][issue on Github]].If you're willing to get your hands dirty and write some code, I will assist you
write the required code. Or you can create a PR if you have already written one.
Or we wait until The One^{TM} comes along.