Skip to main content

PROJECT DOCUMENTATION

OBSIDIAN TO MKDOCS

The script's goal is to move an authorized file (or multiple authorized file) from your Obsidian's vault to your blog's repository. It will :

Furthermore, it will also carry :

File's front matter

The script relies on the front matter** of the notes you want to publish.

  1. share: true allow publishing the file[^2]
  2. category to choose where the file will be after conversion ; allowing categorization for the blog.[^6]
    • category: false will hide the file from navigation.
    • category: hidden will do the same.
    • category: folder1/folder2/ will move the file in folder2, under folder1
    • category: folder1/folder2/filename will rename the file index and allow support of section's index page
  3. update: false prevent to update the file after the first publication
  4. description : Add a description to the file (for meta-tag sharing)[^3]
  5. title : Change the title in the navigation.
  6. image : Add an image for meta-tags sharing.[^3] It needs to be the name of the file, as image.png.

Usage

The script can be use :

The supported system are :

Configuration

At the first run, you will be asked to configure some key and specific path.

  1. Vault : Use the file dialog to choose your vault folder.
  2. Publish repository folder : As vault path, use the file dialog.
  3. share : You can change the share key. By default, it's share
  4. Index key: Support for citation of pagination index pages. By default, it uses (i)
  5. Default blog folder: By default, the notes will be in docs/notes but you can change that, or use / for root.

The file will be in site-packages/mkdocs_obsidian/.mkdocs_obsidian (unless for Pyto : the .env will be directly in site_package/.mkdocs_obsidian)

Terminal

Global options :

  • --git : No commit and push to git ;
  • --mobile : Use mobile shortcuts instead of --git
  • --meta : Update frontmatter of source files
  • --keep : Don't delete files in blog folder
  • --shell : Remove Rich printing

Commands and specific options :

  • config : (it will ignore --use configuration_name)
    • --new configuration_name : Create a specific configuration for some files
  • all : Share all vault
    • --force : Force updating (ignore the difference between the source and blog file)
    • --vault : Share all vault file, ignoring the share state.
  • file [file*] : Share only one file
usage: __main__.py [-h] [--mobile | --git] [--meta] [--keep] [--use configuration_name] {config,all,file} ...

positional arguments:
  {config,all,file}
    config              Configure the script : Add or edit your vault and blog absolute path, change some keys.
    all                 Publish multiple files
    file                Publish only one file

options:
  -h, --help            show this help message and exit
  --mobile, --shortcuts
                        Use mobile shortcuts, without push
  --git, --g, --G       No commit and no push to git
  --meta, --m, --M      Update the frontmatter of the source file, adding the note blog's link
  --keep, --k, --K      Keep deleted file from vault and removed shared file
  --use configuration_name, --config configuration_name
                        Use a different config from default

The commands order is : obs2mk (global_options) [all|config|file FILEPATH] (specific_options) Where :

  • Global and specific options are optional
  • all, config and file[^9] are required You can use the command without argument with obs2mk to share every share: true file in your vault.

Share one file : obs2mk file FILEPATH

It will :

  • Update the share state in original file
  • Convert one file, regardless of what is the share state.

Share all file : obs2mk all or obs2mk

You can share multiple documents at once with scanning your Vault, looking for the share: true. It will convert automatically these files.
Only file with modification since the last sharing will be updated.

You can :

  • Share entirely your vault (that's ignore the share state) with : obs2mk all --vault
  • Ignore the difference between the source file and the blog's file with : obs2mk all --force Also, you can combine the two options.

Configuration

You can use and create multiple configuration files. This allows to have multiple site based on one vault, or different vault accross one site...

  1. To create a new configuration file : obs2mk config --new configuration_name
  2. To use a configuration use : --use configuration_name For example : obs2mk --use configuration_name

Metadata

Release files for obs2mk 3.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for obs2mk 3.2.3
File Size Uploaded
obs2mk-3.2.3.tar.gz 35.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for obs2mk 3.2.3
File Interpreter ABI Platform
obs2mk-3.2.3-py3-none-any.whl Python 3 none any Details

Total release size: 71.7 kB

Release files / obs2mk-3.2.3.tar.gz

Download URL obs2mk-3.2.3.tar.gz
Size 35.1 kB
Tags Source
SHA-256 checksum
How to use checksums
b3952d3c13822ec649ec349eb77726d415e720728db93d910a3de69b1893bd05
BLAKE2b-256 checksum
How to use checksums
b8797d83ff47da41c62ceb3c4f70da5cee71912683b93db82a1011026c1c021f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.12

Release files / obs2mk-3.2.3-py3-none-any.whl

Download URL obs2mk-3.2.3-py3-none-any.whl
Size 36.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f1a1b3ce807ce9d73c31c06e58b184823bd25d868190959a7ac7afbd8d0174ec
BLAKE2b-256 checksum
How to use checksums
401b37de5edef0898dd91c06caa3e48892b34285be5f81d9e17bd09130dab491
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.12

Release history Release notifications | RSS feed

5.0.0

2 release files

4.1.2

2 release files

4.1.1

2 release files

4.1.0

2 release files

4.0.6

2 release files

4.0.5

2 release files

4.0.4

2 release files

4.0.3

2 release files

4.0.2

2 release files

4.0.1

2 release files

4.0.0

2 release files

3.7.1

2 release files

3.7.0

2 release files

3.6.4

2 release files

3.6.3

2 release files

3.6.2

2 release files

3.6.1

2 release files

3.6.0

2 release files

3.5.4

2 release files

3.5.3

2 release files

3.5.2

2 release files

3.5.1

2 release files

3.5.0

2 release files

3.4.0

2 release files

3.3.2

2 release files

3.3.1

2 release files

3.3.0

2 release files

3.2.4

2 release files

This release

3.2.3 This release

2 release files

3.2.2

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.12.1

2 release files

1.12.0

2 release files

1.11.9

2 release files

1.11.8

2 release files

1.11.7

2 release files

1.11.6

2 release files

1.11.5

2 release files

1.11.4

2 release files

1.11.3

2 release files

1.11.2

2 release files

1.11.1

2 release files

1.11.0

2 release files

1.10.0

2 release files

1.9.4

2 release files

1.9.3

2 release files

1.9.2

2 release files

1.9.1

2 release files

1.9.0

2 release files

1.8.6

2 release files

1.8.5

2 release files

1.8.4

2 release files

1.8.3

2 release files

1.8.2

2 release files

1.8.1

2 release files

1.8.0

2 release files

1.7.4

2 release files

1.7.3

2 release files

1.7.2

2 release files

1.7.1

2 release files

1.7.0

2 release files

1.6.0

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.8

2 release files

1.1.7

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.1

2 release files

0.3.0

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page