このページは、まだ未完成です。。。

nicotalk&キャラ素材配布所 http://www.nicotalk.com/charasozai_kt.html (2024年5月16日)

この記事を作った動機

 OneNoteの代替として考えられるものとして、Obsidian というソフトウェアがあることが、研究について調べたり考えたりしている段階で分かった。

 そこで実際にインストールし、ちょっと触ってみたところ、参考になりそうなポイントがありそうだったので、専用にまとめる記事を作った次第である。

今わかること

vault とは?

 Obsidian でいうところの vault とは、OneNoteでいうノートブック相当であると思われる

ページの種類

 OneNoteとは異なり、ページのテンプレートにバリエーションがある。デフォルトだと以下の二つが確認できた。

  • markdown
     “note"として、マークダウン形式のコンテンツを追加可能である。drag and drop もでき、以下のように様々なコンテンツが扱える。

    Obsidian サンプル
    画像と動画の埋め込みコンテンツの例
    Obsidian サンプル
    添付ファイルと3Dモデルとテキストの例

  • canvas
     画像や動画、obsidian 内で書いた markdown コンテンツなど、様々な形式のファイルを配置したり添付することができる。ファイルに対して obsidian がデフォルトで対応していたり、プラグインなりが入っていてプレビューできる場合はその内容を見ることもできる。

 以下の項目について、実際に試した例も今回はここに置いておくことにした。

  • 画像
  • 動画
  • json拡張子を持ったテキストファイル
  • markdown ファイル
  • obsidian 内の markdown コンテンツ
  • テキスト
Obsidian サンプル
canvasの例

タグ機能

 タグでコンテンツが管理可能である。markdown と canvas の両方のタイプのページで利用可能なようである。

Obsidian サンプル
タグ検索機能の例

手書き機能 (プラグイン)

 Obsidian デフォルトでは、手書き機能がついていないが、プラグインとしては存在していることが分かった。ほかにもあるかもしれないが、試したのは今のところこれだけ。

Obsidian サンプル
inkプラグイン
Obsidian サンプル
ink機能を試す例

3Dモデルプレビュー (プラグイン)

 これもまたデフォルトでは実装されていないが、obsidian-model-viewerを使うことで、glTFとGLB形式のモデルは表示できるようになることが分かった。サンプルとして、EV2451 もどき(スタンドなし)の自作の3DモデルをglTF形式にして試した。

 ちなみに、blenderやstl形式などの幅広いフォーマットを扱えるわけではない様子である。ファイルを追加しても表示されない。

Obsidian サンプル
model-viewerプラグイン
Obsidian サンプル
プラグインで3Dモデルを表示できる例

階層構造でコンテンツを管理できる

Obsidian サンプル
obsidian階層構造の例

データ管理

  • markdown や jsonなどのデータとして保存されており、特別なバイナリ形式をしていない。
  • データがファイルシステム上のフォルダの階層構造として管理されている
(base) PS C:\Users\username\Documents\notebook> tree /f
フォルダー パスの一覧:  ボリューム Windows
ボリューム シリアル番号は 485C-1E39 です
C:.
└─test
    │  This is test.md
    │  Untitled.md
    │
    ├─.obsidian
    │      app.json
    │      appearance.json
    │      core-plugins.json
    │      graph.json
    │      workspace.json
    │
    └─test
        │  Untitled 1.canvas
        │  Untitled 2.canvas
        │  Untitled.canvas
        │
        └─Untitled
                2025-07-27.md
  • 任意のファイルを drag and drop で添付したり配置しても、あとから特定の階層構造にファイルを入れるなど、明示しない限りデフォルトで vault のルートディレクトリ的なところにファイルが蓄積されていき、無秩序に散らばってしまう。

Importer

 Obsidian には、公式で別のプラットフォームからコンテンツを移行できるプラグインがあるようなので、一応試そうとしてみた。

  • OneNote だけでなく、Google Keep や Apple Note など多種多様な移行オプションがある。
  • OneNote に関しては、少なくともlinux環境で試したところ、.one や .onetoc2 などといったローカルに保存されたファイルからのインポートはできないようである。

Obsidian サンプル
初回画面的なところでImporterの利用を勧められる
Obsidian サンプル
CommunityPluginにあるImporter
Obsidian サンプル
Importerを開く
Obsidian サンプル
多種多様なプラットフォームをサポート
Obsidian サンプル
OneNoteのインポートを試みる

 ちなみにローカルに保存している OneNote のデータは、Web 版に方にアップロードすれば、インポートできるのではないかと以下の、トラブルシュートの項目を見て考えられた。ただこの方法だと、OneDrive の容量制限次第ということになる。OneDrive 無料枠だとノートブックが 5GB 以上を超えると多分この方法は使えないと思われる。

Imported notes are empty or missing content

This issue may occur on notebooks that you rarely use. To solve the issue follow these steps:

  1. Open OneNote Web in your browser.
  2. Right click on the Notebooks which are missing content.
  3. Select Export Notebook from the menu.
  4. Unzip the file you’ve just downloaded into a folder.
  5. Upload your OneNote notebooks here.
  6. Open Obsidian Importer and try importing again

If you’ve followed these tips and your issue remains unresolved, it’s possible that there is a temporary problem with Microsoft servers. If that’s the case, wait a few minutes and try again. If the problem persists, please open an issue on the Obsidian Importer GitHub repository.   

OneNoteとの比較

obsidianとOneNoteの違い

OneNote obsidian
ページの種類 一つのみ markdown, canvas
データ形式 プロプライエタリバイナリ markdown,json,添付されたファイル形式そのまま
データ階層 セクションごとにプロプライエタリバイナリ フォルダ階層構造
拡張性 アドイン?機能(要調査) Webベースプラグイン
プレビュー 対応した形式の動画や画像、PDFなどに限る デフォルトかプラグインで対応していれば可
プラグイン自作 難しそう 基本的なweb開発の知識とドキュメントの読み方ができれば容易そう
ローカル環境 ローカルで動く ローカルで動く
※ ここでいう"基本的なweb開発の知識"とは、HTML JS CSSといったものやフロントエンド、バックエンドなどの概念をある程度理解していることなど、広域にわたるweb開発について意図している。
※ obsidian プラグイン開発では、ドキュメントが充実している。

気になったところ

obsidian のプラグインの構造

Obsidian サンプル
 Release 0.3.4 · daledesilva/obsidian_inkを見てみて思ったのが、chrome の拡張機能と似たような構造をしているということであった。以下の三つのファイルから構成されていることに注目して基本はWebベースであると思った。

  • manifest.json
  • main.js
  • styles.css

Ink プラグイン自体

Obsidian サンプル
 obsidian_inkの拡張機能を試してみて思ったのが、OneNoteほど自由で充実した手書き機能はない点である。

 使える色は白色のみで、線の太さとか、四角や丸といった基本的な図形を描画するための支援機能とかもなく、細かいところは基本的省かれてシンプルに作られている印象である。何か画像の上に書き込みをするとか、元に戻す(undo)操作ややり直し(redo)操作というようなこともできないようである。

 ペンタブレットで試したところ、筆圧検知をして線の太さが変わることは分かった。本当に今のところはこの拡張機能では手書き以上のことは想定されていないように感じられた。ほかのメディアとの統合という意味では薄いと感じられた。

 ちなみに、マークダウン上にInk拡張機能を使うと、以下のように意味のあるコードブロックとして記録される。

Obsidian サンプル
handdrawn-ink {
	"versionAtEmbed": "0.3.4",
	"filepath": "Ink/Drawing/2025.7.27 - 23.00pm.drawing",
	"width": 500,
	"aspectRatio": 1
}

canvasの不自由さ

 OneNoteに近しいオブジェクト自由な位置への配置やリサイズは canvas ページを使うことで可能であるが、それもまたOneNoteほどではない。特に何かを重ねて扱ったり、書き込むようなことは苦手なようである。

 どちらかというと画像やマークダウンのコンテンツなどといったものを組み合わせて、それらをオブジェクトとしていろいろ配置できるようにしたという感じがする。

 canvas と名前がついているが、何かペンタブで少なくともプラグインなしでは直接書き込めたり、任意の基本的な図形を配置できたりするわけではないようである。

タスク管理機能がない

 プラグインとしては存在しするし、markdown に埋め込める形のものは存在しているが、プロジェクト単位で、マイルストーンごとにやることを細かく管理できるとかそういう感じではなかった。

Obsidian closed source 説

 Obsidian では、データこそシンプルに JSON で保存されたり、個人用途では無料で使えるものの、ソフトウェア本体自体はソースコードが公開されていないという点で、フリーではないようである。実際"Obsidian github"みたいに調べても本体自体のコードは見つからず、プラグインがたくさんヒットする。

現時点でのこの記事のまとめ

真似したいと思った点

  • chrome 拡張機能のようなプラグインの構造
  • 特別なバイナリ形式のフォーマットが使われておらず、markdown、JSONなどとして既存のフォーマットに従い、可読性を損なわない形で保存されている。
  • 階層構造をフォルダの階層構造で表現している
  • タグによるコンテンツ管理、検索機能

不満点

  • OneNoteほど自由に様々なメディアを統合して扱えるわけではない
  • Canvas 機能の不自由さ
  • 添付ファイルが無秩序にデフォルトで vault のルートディレクトリに配置されてしまう。

思ったこと

 研究では一から完全に作るというより、ある程度既存のものの発想を調べてから、それらも参考に取り込んでいきつつ、不満点をつぶせるようにしていったほうが現実的な労力内に収まると思った。

 例えば、真似したいと思った点を参考にすれば、一からOneNoteのバイナリ形式のデータをどのようにして可読性のある形式のデータとして保存するか、ということに関してはある程度すでに答えが出ている気もする。

 私としては、すでにある設計思想とか、既にある発想はできる範囲で見つけては組み合わせたいと思っている。

参考にしたサイトとか

フリースペース

Obsidian OSSではない説