Obsidian 導入メモ

スポンサーリンク

個人的なメモ管理ツールを「Obsidian」に乗り換えたので、その設定などを備忘録としてメモしておく。

・よく見かけるインストール日記じゃありません。インストール方法は特に難解でもなく注意点もありません。ダウンロードして実行するだけです。以下に書いているのは、Obsidianに移住するに至った思考の整理メモです。
・現状の「Obsidian」は主にプログラマーな方の利用が多いようで、既存の使いこなしページはややそちら方面に偏っているようです。そのため、このページではかなり意識してプログラマーではない一般の文章書きの方向けに記述するよう心がけました。

特に記述しない限り、Obsidianバージョンは0.11.0。

Obsidianとは

概要

「Obsidian」とは、PC内ローカルにあるマークダウン(Markdown記法)ファイルの管理システムである。

・Markdown記法とは、HTMLを前提として通常の文章の中にHTML文法をごく簡単な記述で埋め込むことを想定して策定されたテキストファイル記述法です。最低限の修飾(マークアップ)に限定することより、通常のメモ帳で閲覧/編集も可能にしながら、対応アプリで見ることである程度リッチなHTML表現が可能になるという特徴を兼ね備えています。
・例えば見出しには「#」マークをつけるだけでよく、箇条書きも「1.」や「-」などの記号をつけるだけで可能となります。つまり素のMarkdown文章を人間が見てもある程度想像がつく見やすい記法となっているのです。HTML記法の範囲内で規定されているため、当然ながらHTML出力することで一般のブラウザでの表示が可能となります。ただしHTMLフル規格ではないため、一般のWebサイトに比べるとやや修飾性に劣る表現しかできないという欠点も持ち合わせます。そこはトレードオフで、メモとしての運用/表現を重視するならばMarkdownという選択になるでしょう。
・※注意点としてMarkdown記法を知らないからと言って、Obsidian利用をためらう必要はありません。普通にテキストベースのメモ帳として利用すればいいだけです。利用している間にまずは簡単な箇条書きから徐々に使っていけば世界が広がっていくでしょう。

公式サイトは「https://obsidian.md/

完全にローカルで動作し、ネット接続は必要としない。

なお命名は「黒曜石」の英名からで、開発陣に大人気ゲーム「Minecraft」好きがいることによるものらしい。

 

特徴

「Obsidian」はプロプライエタリな要素を極力廃するようにできており、独自の管理ファイルをいくつか持つ以外は、ドキュメントフォルダに一切ゴミを残さない。

実行ファイルもいわば専用ブラウザのようなものとして実装されており、その表示内容はCSSにより柔軟にカスタマイズできる。

ドキュメントフォルダ内は、拡張子「.md」のテキストファイルのみが入っている状態となっている。万が一「Obsidian」プロジェクトが頓挫したとしても、フォルダ及びファイルをごっそりと他のmarkdownエディタなどにそのまま移行可能で、書き起こしたドキュメント資産は無駄にならない。

また「Obsidian」は、Markdown記法を拡張することにより文書間の連携(関連ファイルへのリンク、インクルードリンク)をより簡易に扱えるようになっている。「Obsidian」をMarkdownエディタとして見る場合には、この文書間の連携が主な特徴となるのではないかと思われる。

シンプルな構造故に、非常に素軽く動作する。

 

一言で言えば、Web時代に見事に適応したエディタだということができる。現在はアウトプット先としてWebが前提になるが、メモ帳のように文字情報で記述していき、必要以上の過剰な装飾については極力外部に切り離し独自実装は行わない。これにより非常にシンプルかつ素軽いシステムが出来上がっている。さらにMarkdownを一部拡張して文書間の連携を強化することで、Web時代に対応したアイデアプロセッサーとしての領域に達している。

 

現在の利用スタイル

画面配置

・ブログ掲載用の保管庫。テーマはデフォルトで、CSSスニペットなどは適用していない状態。
・Obsidianの各サイドバー及びペインのタブは、ドラッグ&ドロップにより分離やドッキング、移動ができる。また左右のサイドバーも閉じることが可能でCSS設定によってはマウスホバーで開くようにも出来る。

左サイドバー

上にスター付き、下側にはファイルエクスプローラーと検索タブ

中央

おおむね数ペインを表示しながら切り替えて編集

右サイドバー

上にアウトライン、下はバックリンク(メンション)表示

 

保管庫

「保管庫(Vault)」は現在1つで運用している。

操作性などから、「保管庫(Vault)」を切り替えるメリットが現時点では浮かばなかった。何しろ、興味の持ち方が”既存の知識に結びつけて広げていく”タイプの人間なので、すべてがリンクしてくるためだ。

※私の使い方ではグラフビューはあまり意味を成さないため使っていない。

例えば今回、このブログのイメージ公開用に「サザエさん」の保管庫(Vault)を作ったが、まさにこうした「切り離した保管庫」を作るには、この管理方法は最適だと言える。

ブラウザ検索エンジンへの登録

obsidian URIを使うことでObsidianを起動して指定ノートを開いたり、検索を行うことなどができる。文法は次のページに記述されている。

Using obsidian URI – Obsidian Help – Obsidian Publish
https://publish.obsidian.md/help/Advanced+topics/Using+obsidian+URI

例えば、検索なら次のようなものとなる。

Using obsidian URI
Using obsidian URI
obsidian://search?vault=my%20vault&query=MOC

※この例だと「my vault」という保管庫内から「MOC」という文字列を検索する

Chromeブラウザの場合、検索エンジンに登録してパラメータを渡すには、「%s」を検索する値として登録すれば良いので、検索エンジン登録文字列は次のようになる。

obsidian://search?vault=[vault名]&query=%s

※上の例の通り、実際の登録時にはvault名前後の[]はいらない。

これでブラウザ上で文字列などを選択した上で、右クリックから「その他の検索エンジンで検索」を選んだ上でObsidianを選択すると、「Obsidianを起動するか?」と聞かれるのでOKを押すとObsidianを起動の上で指定保管庫内での検索結果が表示される。

一つだけ覚えれば良いショートカット

通常この手の新しいツールに接すると、ショートカットキー(ホットキー)の配置を覚えるか、自分の好みにカスタマイズする作業が始まる。

しかしObsidianではそれについても配慮がなされており、とりあえず覚えておくのは「Ctrl+P」これだけで良い。コマンドパレット(コマンド一覧と現在のショートカットキー設定)が一覧で表示され、選択することで機能する。何度か使ううちに、ショートカットキーも覚えることと思われる。

 

個人的な評価点

個人的に良いなと思った点

個人的に良いなと思った点を順不同で雑に並べてみる。

  1. プロプライエタリな要素が極力少ないこと ★★
    ・1文書をOS上の1ファイルとして取り扱うこと。OSのフォルダ構造をそのまま再現すること。元ファイルに余計な属性や情報を追加させず、余計なファイルを極力生成しないこと。プロプライエタリ部分をバッサリ切り捨てるだけで単純に文書ファイル取り出しが可能なこと。※以前使っていたメモツールだと、ツール上に表示しているメモ数と実フォルダ内のファイル数に乖離が生まれることがあった。素直にフォルダを読みに行けばこんな瑕疵など生まれない。
    ・大切なドキュメントをなにかのツール類に依存させることは避けたい。データベースに格納などもってのほか。Windowsのフォルダにあるものを、あるがまま表示し、扱えることが最重要な評価点。
    ※なおWindowsエクスプローラー上での「.md」ファイルのプレビューは、Microsoft製のツール「PowerToys」を導入することで可能となる。
  2. 現状のテキストベースメモからの移行(逆移行)が容易なこと
    今回は数千あるテキストファイルを拡張子リネーム「REN *.txt *.md」するだけでほとんど移行できた。戻すときも同様の操作をするだけで良い。※もちろん作業前にバックアップは取っておくべき。
  3. 文書管理が可能なこと ★
    ・ひとかたまりの文書群(─Obsidianではこれを「保管庫(Vault)」と呼ぶ─)としての別管理が可能で、例えばObsidianのヘルプ自体がこのObsidianを利用してVaultの1つとして作られている。
    ・保管庫はそれぞれ独立管理されるため、たとえばバックリンク(現在文書への明示的被リンク、あるいはリンクしない非明示リンク)やグラフビューには影響を及ばさないが、Obsidian独自拡張リンクにより意図的にリンク(obsidian://vault/[vault名]/[ノートタイトル])することもできる。
  4. 素軽いこと ★
    機能の多さは求めていない。思考を妨げない素早さこそが至高。特にファイル閲覧/編集履歴への素早い移動が素晴らしい。
    ※ただし履歴一覧できないのが(個人的には不要な機能ではあるが)やや不思議。もっとも専用のエクスプローラー的な機能や、スター機能(お気に入り)もありまったく困らない。
  5. エディタモードとプレビューモードの早い切り替え ★
    ・モード切り替えが文書単位ではなく現在のペインでのものになっており、プレビューモードで文書をカチカチと眺めていき、気になったところでエディタモードに切り替えて編集を行うといったスタイルで利用できる。※複数ペインを開いている場合には、指定した該当のペインだけがモード切り替えの対象となる。
    ・なおヘルプを開くとわかるように、同一文書をエディタモードとプレビューモードで開き同期スクロールしながら編集を即反映することも可能。ヘルプのように2つのモード(つまりエディタペインとプレビューペイン)で同期スクロールしたい場合には、そのペインのモード切り替えボタンをCtrl+クリックする。

    ・CSSを編集することによりエディタモードでもプレビューモードと遜色ない表示も可能になる。リアルタイムで評価・再描画が行われるため、エディタモードでもプレビューにほぼ近い表示も可能となる(埋め込みメディアファイルや後述外部ライブラリ利用部分は無理)。これには驚くばかりで、Wordpressエディタなど糞に思えてくる。
  6. 表示のカスタマイズ性・拡張性 ★★★
    ・(markdown記法の制限内ならば)CSSを記述することで完全にカスタマイズできる。CSSも編集するとリアルタイムに反映される。これにより、シンプルにメモ帳のように記述しながらもある程度リッチな出力が行える。独自拡張のメディアファイル埋め込みなども有用。
    ・なおメインのエディター部分は当然として、文書一覧部分やアウトライン部分など左右のサイドバーもHTMLで表示されており、当然CSSカスタマイズが可能となっている。HTML5+CSSの範囲内であれば、余計な要素を非表示にしたり、逆にcontent要素で独自の文字情報を追加したり、色やサイズを変更することも可能である。

    ・他に「Mermaid API」にも対応しており、簡単なグラフをMarkdown表記した上で表示することも出来る。簡単といっても、フローチャート、パイチャート、マインドマップ、シーケンスダイアグラム、ガントチャート、クラスダイアグラム、ER図、ジャーニーダイアグラムなどに対応している。
  7. 文書閲覧性 ★★★
    ・(見出し)でのアウトライン表示機能。これにより、1つの文書に複数の事項が記載されていても、瞬時に概要を理解し、また必要な箇所を素早く探し出し読み取ることができる。当然、見出し文字を打てば少し遅れてアウトラインも再描画される。
    ・アウトラインに利用される見出しや、ブロック(段落)に対して、他文書からダイレクトにディープリンクを張ることもできる。これにより、閲覧性がさらに向上する。
  8. 文書間の連携が容易なこと ★★★
    ・Obsidian独自拡張部分により十分な連携が行えそう。なにしろ、明示的に「[[文書名]]」と囲むことで、自動的に候補を表示する(インクリメンタルサーチ)機能まである。さらに「#」で文書内の見出しへ、「^」で文書内のブロックへと、文書内の指定箇所へのディープリンクを貼ることも出来る。

    ・これにより、PukiwikiやMediawiki(Wikipediaが採用)を始めとするWikiと同様の使い方が可能で、なおかつそれを数段上回る文書間連携が可能となる。この連携状態は、常時バックリンク欄に表示可能なほか、「グラフ」(ネットワークグラフ)表示も可能。
    ・バックリンクには、明示的に「[[]]」で囲ってリンク先として指定された被リンク(リンクされたメンション)に加えて、文書名で非明示的に参照されたもの(リンクされていないメンション)も表示できる。※上の画面では、すべて非明示的なたまたま文章中に現れた文字列が文書名に一致しているということで「リンクされていないメンション」欄に表示されている。
    ・さらにエイリアス(別名)という概念もあり、例えば”サザエさん本人(磯野カツオの姉)”について書いた文書を「フグ田サザエ」という名前で作っておき、エイリアスで「サザエさん」としておくと、いずれの記述でも同一文書へのバックリンク(あるいは非明示的な参照)として認識する。なんなら「カツオの姉」とエイリアスしておいても良い。このエイリアスを含むフロントマターは、各文書の先頭に書く必要がある。

    ・あるいは、11代目市川團十郎(当代・11代目市川海老蔵の祖父)についても、本名の堀越治雄で文書作成したものに対して、初代松本金太郎、九代目市川高麗蔵、九代目市川海老蔵、十一代目市川團十郎とエイリアスを付けておくと、これまたいずれの記述でも同一文書へとバックリンクされ同一人物へのリンクとなる。※なお歌舞伎で頻出する「~代目」を除く部分でも非明示的バックリンクとみなされてしまうため、運用としてこの例のようにできれば代数を含まない本名(出生名など)で立項(ノート作成)するほうが望ましいと思われる。

    ・この2種類のメンションとエイリアスによりいわゆるWiki類の機能をよりスマートに内包し、さらに参照の容易さによってそれらを遥かに凌駕する。

  9. 検索性 ★★★
    ・数千ファイルあっても十分に高速な検索速度で、「検索結果のお気に入り化(スター)」など開発者の検索に対する重視姿勢が好感できる。
    ・ただの検索ではなく、マウスホバーにより該当箇所を中心に文書全体を参照できるだけでなく、その状態での文章コピペも可能で、ドラッグ&ドロップで文書リンクとして挿入もできる。
    ・同様にメンション(リンク、非リンク)についても、検索するまでもなく常時表示が可能で、なおかつこれもまたマウスホバーでの手軽な該当記述箇所の参照や、文書リンクとしての挿入もできる。
  10. 文書のカテゴライズ
    ・文書のカテゴライズは、基本的にOSのフォルダ構造に依存する。しかしそれだけに留まらず、「タグ」、あるいは「フロントマターのkeywords」によってそれをさらに拡張できる。
    ・これ以外に先に紹介したメンション機能を使って「カテゴリー」項目を独立させることで、フォルダによらないカテゴライズが可能となる(これは既存のWikiでも実現可能な範囲)。例えば「女性」文書を作り、サザエさん文書などから「女性」へメンションすることで女性カテゴリに集約できる。同様に「人物名」、「アニメに登場する人物」なども可能。
    ・もっと簡単にキーワードでカテゴライズしたい場合には、検索結果にスター付けすることでそれを実現できる。
  11. 外部情報(HTML/PDF)の取り込み ★★
    ・Webページの必要な部分をコピペすることで、単純なテキストではなく(見出し、箇条書きなどを含んだ)Markdown形式に変換した上で取り込んでくれる。Web上にある各種情報を参照しながらメモしていく上でこれはなかなか便利。
    ・PDFについてはインクルードリンクも可能となっている(ただし私の環境ではエラーになる)。
    ・現状はExcel表の取り込みは対応していないが、Excel→Markdownのオンラインサービス(https://markdown-convert.com/ja/tool/table)利用でまかなえそう。
  12. 外部(PDF/Web)への出力
    ・ページごとにPDF形式で印刷(出力)可能。また専用サイト(https://obsidian.md/publish)に公開することでWeb公開も可能。単に個人的なメモとしても利用可能だが、外部に見せることを前提とした使い方もできる。
    ・理想を言えば、Markdown記法に対応するルール(例えば見出し文字は”*”や”H”など)を記述することにより他の記法へのコンバート出力を行って欲しいところ。もっとも単純なツールを噛ませばいいだけだが、それをいえばエディタ類はほとんど要らないという話にもなってしまう。

こうした諸機能の実装の方向性がとても素晴らしいと感じる。

なお個人的に「デイリーノート」についてはあまり魅力を感じなかったため、触れない。また「テンプレート」(スニペット的に定形文章をコピペできる機能)についてはまだ使いこなせていないため、これは後で追記する予定。

 

求めているがやや物足りない点など

Obsidianをさらに使いこなした場合の妄想。

  1. リンク先の表示
    って無理なんだろうか?(当該ファイルへの)バックリンク元じゃなく、(当該ファイルから他ファイルへの)リンク先。用語でグルーピングしてマッチした文書の一覧を表示する。現状だといちいち検索ウィンドウに入れる必要があり、スマートじゃない。
  2. 編集行の保存
    最後の編集位置(行番号)が保存されないため、長い文書ではややめんどくさい。特に誤操作で別ファイルを現在ペインに読み込んでしまい、慌てて戻ると行位置が先頭に戻ってしまう。せめて最近5ファイル位覚えててもらえないだろうか。もしくは再起動までとか。
  3. 画像ファイルなどメディアファイルの取り扱い
    ・メディアファイルの添付についてもかなり意欲的に実装が行われているが、現時点(2021年2月)での画像ファイルの添付(指定フォルダへの再格納)についてはやや不満が残る。
    ・ただしドラッグ&ドロップでリンク形式が記述され、プレビューモードでは完全に埋め込みメディアとして表示されるなど、現状の使い勝手でも必要十分を満たしている。※個人的な好みで、ローカルにあるファイルはコピーを作らずその位置のままでリンクしてほしいというだけ。
    ・また例えばYoutubeやTwitetrなどの取り込みも、現状はiframeタグなどをそのまま貼り付ける形で、これはObsidianに似つかわしくなくスマートとは言えない。できれば主要メディアやSNSはリンクを自動判別してインクルードして欲しい。あと個人的にはWikipediaや学術サイト掲載文書(PDF)のインクルードリンクが欲しい。
  4. 文書編集機能の貧弱さ
    ・ファイルを横断した検索機能が強力なのに対して、文書内での文字列の「検索・置換」機能(Ctrl+F、Ctrl+H)がほとんど必要最小限しかついていない。正規表現などは使えないので、他のツールを通したり、コピペして処理する必要がある。※ファイル検索の方は強力だが、編集機能としての文字列を検索して置換したりといった能力はメモ帳レベルでアンバランスな状態。
  5. Alias機能の問題点
    ・YAMLフロントマターでのaliases指定で文書名に別名(エイリアス)を指定できるのはとても素晴らしいのだが、前後に別のものを示す文字があったとしてもバックリンク判定されてしまう。これは仕組み上致し方なく、同一文書と判別されそうな文書名を使わないか、あるいは誤判定されるリンクを明示的に区別してやる必要が出てくる。
    ・これはなんとかして欲しいところ(aliasesの逆になる除外指定をつける?結局はブラックリストを書くことになるが、1ヶ所でいいのか、出現箇所すべてで除外記述をするのかの違い)
  6. 文書単位でのカスタマイズの困難さ
    CSSカスタマイズなどは保管庫(Vault)ごとでの統一指定となるため、このフォルダはこう表示して欲しいなどの指定はできない。例えば文章折返しや等幅フォント指定などなど。これらは保管庫(Vault)を切り分ける必要がある。ただしこれも結局は付属情報を付加せざるを得ず、現状のシンプルな動作とは真逆の機能となってしまう。
  7. 発展途上
    かなり速いペースで鋭意開発が続けられており、新機能実装が行われるほか、既存機能に対して修正が入ることもある。これを考慮して、あまり現時点での機能に依存しすぎることについては注意が必要だと思われる。たとえば全文書になにかのタグを苦労して埋め込むなど。
  8. バックアップ
    必ずしもObsidian自体に機能は必要ないが、やはりドキュメントを蓄積する上でバックアップを自動化しておきたい。別途OS機能などで構築予定。
  9. Windows10の画面キャプチャと相性が悪い?
    画面キャプチャを動作させるとObsidianが非常に重くなる。CPUはスカスカなので、CPU負荷の問題ではなくなんらかの処理に引っかかって重くなってる模様。現状、Obsidian再起動が一番手っ取り早い解消策となっている。
  10. 独自ドメイン(サイト)での公開
    ・外部への公開は(https://obsidian.md/publish)で可能。
    ・有料オプション。16ドル/月(年額請求。現在は早期割引で8ドル/月)https://obsidian.md/pricing
    ・カスタムドメイン、ディレクトリでの公開も可能。→ https://help.obsidian.md/Licenses+%26+add-on+services/Obsidian+Publish

要するに現状のObsidianの機能でできる範囲が広いため、イチャモンレベルに近いことしか思い浮かばない。ただしメディアの取り扱いだけはなんとかして欲しい。

 

Obsidian 小技集
Obsidianを使う上でのちょっとした小技などをまとめます。 ・変更に伴う追従が面倒なため以下では英語版ヘルプを参照していますが、有志の手により日本語に翻訳されたヘルプも用意されています。必要に応じて参照してください。 ・Window...

 

設定

主な設定

一般的なエディタ同様、またMarkdownエディタであるため、自然と機能もシンプルとなっている。

別途行ったカスタマイズについては、別ページに述べる予定。

Obsidianバージョンは0.11.0。

設定内容

設定画面も説明が豊富であり、特に迷うものは少ない。なお表示のカスタマイズ(フォント指定や文字サイズ、文字カラーなど)は、全てCSSで行う。

  • エディタ
    • スペルチェック:オフ ※そもそも英語長文を記述することがない。
    • 一度に表示される行数(の制限):オン
    • (プレビューモードでの)行の折り返し:オフ
    • フロントマターを表示:オン
      ※YAMLフロントマターは、主にプログラムの先頭部分にリリースに関する概要情報を記載する部分の記述方法をいう。その文書(プログラム)のタイトル、リリース日、バージョン情報、オーサー、カテゴリーなどを記載する。文書情報としては、出版情報などを記載すると良いと思われる。
    • 括弧を自動的にペアリング:オン
    • マークダウン記法を自動的にペアリング:オン
    • スマートインデント:オン
    • 見出しのフォールド:オン ※見出し部分の折りたたみ/展開が可能となる
    • インデントのフォールド:オフ ※同様にインデント表記部分の折りたたみ/展開が可能となる
    • デフォルトのビューモード:エディタ
    • 行番号の表示:オフ
    • タブの使用:オン
    • タブの間隔:(中央程度)
    • 行の折り返し:オン
    • HTMLの自動変換:オン ※コピペした際に自動的にMarkdown記法に変換してくれる
    • Vimのキー設定:オフ
  • ファイルとリンク
    • ファイル削除の確認:オフ
    • 削除済ファイル:Obsidianのゴミ箱フォルダ ※とりあえず一度書いた文書は消さずに全部ここに放り込む
    • 内部リンクを毎回更新する:オン
    • 新規ノートの作成場所:保管庫直下 ※このあたりは個人的趣味
    • 新規作成するリンクの形式:ファイルに対する相対パス
    • [[ウィキリンク]]を使用:オン
    • Detect all file extensions:オフ
    • 新規添付ファイルの作成場所:以下で指定されたフォルダ ※この辺りが現状やや不満な実装
    • 添付ファイルフォルダのパス:
  • 外観
    • ベーステーマ:ライト ※プログラマーではなく文章書くほうが多いので白地でないと目が疲れる
    • カスタムCSSを適用する:オフ ※こちらではなく下のスニペットで行う
    • 半透明ウィンドウ:オフ
    • テーマ:Blue Topaz ※カスタマイズあり
    • CSSスニペット ※テーマにさらにカスタマイズしたい場合に使う。別ページで説明予定
  • コアプラグイン ※下記をオフ
    • Markdownフォーマットインポーター ※他のMarkdownエディタから移行する際に利用。
    • デイリーノート ※日記帳的なもの。個人的にはGoogleカレンダーで管理しているので不要。
    • Zettelkastanプレフィクサー
    • ランダムノート ※ランダムに既存ノートを表示する機能
    • オーディオレコーダー
    • パブリッシュ
    • 同期
  • サードパーティプラグイン:
    • Sliding Panes
      ※複数のノートを開いた際に、アコーディオンのように移動表示するプラグイン。なおこれを使う際にはノートを拓く際にCtrl+でクリックする必要がある。通常クリックだと、現在開いているノートを(閉じて)切り替え、Ctrlクリックでは並列に開く。fくすう文書を参照・編集する際にはとても便利。

 

 

タイトルとURLをコピーしました