Write once, convert to multiple platforms.
O2 is a tool that converts your Obsidian Markdown files to other Markdown platforms such as Jekyll.
But, currently, it only supports Jekyll. I will add more platforms in the future. If you have any suggestions, please let me know.
You should have a folder structure like this. (of course, you can change the folder names in settings)
Your vault
├── ready (where the notes you want to convert are placed)
├── backup (where the original notes before converting are placed)
└── attachments (where the attachments are placed)
Other Folders will be ignored.
If you want to convert your notes, you should move them to the ready
Folder.
then, Execute the command O2: convert to Jekyll Chirpy
via obsidian's cmd + p
shortcut.
if exception occurs, you can see the original note in the backup
folder.
your jekyll project (ex: /Users/user1/Documents/GitHub/user1.github.io)
├── _posts (where the converted notes are placed)
└── assets
└── img
└── yyyy-MM-dd-title (where the attachments are placed. yyyy-MM-dd is replaced by the date of converting)
- jekyllPath is the path of your jekyll project (ex: /Users/user1/Documents/GitHub/user1.github.io).
- Attachments will be copied by the date under the
assets/img/<yyyy-MM-dd>
folder. - Auto create folders: If enabled, the plugin will automatically create the necessary folders if they do not exist. You can toggle this setting in the plugin settings tab.
Feature | Obsidian (AS-IS) | Jekyll Chirpy (TO-BE) | Description |
---|---|---|---|
Wiki link | [[What is Obsidian?]] | What is Obsidian? | |
Image | ![[NewJeans.png]] | ![image](/assets/img/<yyyy-MM-dd>-<title>/NewJeans.png) |
yyyy-MM-dd is replaced by the date of converting |
Resize image (width) | ![[NewJeans.png|100]] | ![image](/assets/img/<yyyy-MM-dd>-<title>/NewJeans.png){: width="100" } |
|
Resize image (w & h) | ![[NewJeans.png|100x200]] | ![image](/assets/img/<yyyy-MM-dd>-<title>/NewJeans.png){: width="100" height="200" } |
|
Embeds | ![[Obsidian#This is Obsidian!]] | Obsidian | |
Comments | %% This is a comment %% | <!-- This is a comment --> |
|
Footnotes | [^1] | [^fn-nth-1] |
Currently, only supports the simple syntax |
Curly braces | {{ content }} | {% raw %}{{ content }}{% endraw %} |
Optional |
Grammars not in the table are ignored. If there is a syntax you would like to convert, please let me know in an issue.
- imgur: Recommanded
- Update frontmatter time on edit
Pull requests are always welcome. For major changes, please open an issue first to discuss what you would like to change.
Welcome to write articles about O2!
This project is published under MIT license.