テキストメモの管理をObsidianに移行した

Posted on Dec 17, 2023

テキストメモの管理にObsidianを使うようになって2ヶ月ほど経ったので、 どんなふうに使っているかの現状メモ。

モチベーション

だいたい年に1回はメモをどうやって管理するか問題が自分の中でホットになる。

今までもいくつかのアプリやサービスを使っていたものの、 やっぱり生のMarkdownで保存したくなり、 それが実現できる方法ということでObsidianを使ってみることにした。

Obisidian自体は前から知っていたが、 その頃は「グラフ表示できるエディタ」程度の認識で本格的に使うには至らなかった。

要件

  • 生のMarkdownファイルで管理できる
  • 複数端末から編集・閲覧できる
  • メモをエクスポートできる

今まで使っていたもの

Obsidianに移行するまでは、主に以下の3つのサービス・アプリを併用していた。

  • DropBox + Emacs + 1Writer
  • DayOne
  • Notion

Dropbox + Emacs + 1Writer

Obsidianと同じく、生Markdownをメモとして使う目的のもの。

Dropboxで教習したMarkdownファイルを、PCではEmacsで、 iPhoneやiPadなどのモバイル端末では1Writerというアプリで編集していた。

開発用途のテキスト編集がVSCodeに取って代わられたことでEmacsを使わなくなり、 代替としてNotionを使うようになっていった。

Notion

https://www.notion.so/ja-jp

きれいなページが作れる情報集積サービス。

見た目はとてもいい感じになるしデータベース機能も便利。 ただ、ブロックエディタということもあっていかんせんテキスト編集機能に劣る。 ページ内一括置換すらできない(AIサポート機能がついたことで一括置換「のようなこと」はできるようになったが・・・)。

Notionでテキスト編集するのが苦痛になったのが、今回メモ管理方法の見直しに至ったきっかけ。

DayOne

https://dayoneapp.com/

主に日常の記録を付けるための用途。

PC用のアプリもありインストールもしていたが、モバイル端末からの利用がほとんどだった。

プラグイン

Obsidianの存在は前から知っていたと書いたが、当時はプラグインの存在を知らなかった。 だいたいのことはプラグインを入れれば解決できるというのが、 EmacsやVSCodeなどの開発用エディタに通じるものがあって良い。 コミュニティプラグインでたいていの要求はカバーできるし、 最悪自分でプラグインを書けばどうとでもなる。

現在導入しているプラグインを使用頻度順に挙げる。

Vimrc Support

https://github.com/esm7/obsidian-vimrc-support

Vimをメインのテキストエディタとして使っていたことはないが、 テキスト編集にはVimキーバインドを使っている。

Obsidianでも本体設定の Vim key bindings を有効にしているが、 これだけでは少々使いづらいのでVimrcを書いて少しだけカスタマイズしている。

" move cursor for display lines
nnoremap k gk
nnoremap gk k
nnoremap j gj
nnoremap gj j

" continuous indentation
vnoremap > >gv
vnoremap < <gv

" C-m shoud be Enter!
inoremap <C-m> <CR>

" copy to clipboald to yank
set clipboard=unnamed

Templater

https://github.com/SilentVoid13/Templater

おそらくメジャーなプラグイン。

コアプラグインにもTemplatesがあるが、 Templaterのほうがより高機能。

User Functionを設定して外部コマンドを呼び出せば、データ挿入系の操作は大体なんでもできる。 個別にプラグイン化するよりも準備の手間が少ないので、ちょっと試したいだけな場合にも捗る。

Obsidian Memos

https://github.com/Quorafind/Obsidian-Memos

Daily notesにタイムスタンプ付きで記録するUI。 XやBlueskyに書くほどでもないどうでもいい内容の記録に。 調べ物をするときなどもとりあえずMemosに書いて、 ある程度量が溜まったら個別のメモとしてまとめ直したりしている。

Obsidian Git

https://github.com/denolehov/obsidian-git

定期的にgitリポジトリにcommit&pushしてくれるやつ。

バックアップ用途で利用。

Dataview

https://github.com/blacksmithgu/obsidian-dataview

Obsidian配下のMarkdownファイルをデータベースのようにクエリできるプラグイン。

頑張ればNotionばりにリッチな表示ができそうではあるが、 いまのところ特定タグが着いたメモをリストアップする程度にしか使えていない。

Emoji Shortcode

https://github.com/phibr0/obsidian-emoji-shortcodes

例えば :smile: と書いたら 😀 に変換してくれるやつ。

SlackとかGitHubのノリで絵文字使いたかったので。

Plant UML

https://github.com/joethei/obsidian-plantuml

図を書きたいときに。

Mermaidのレンダリングができるようなプラグインがあればそのほうが良かったが、 それらしいものが見当たらなかったので。

テーマ

でファルトのテーマは見出しの文字が大きすぎて落ち着かないので、 Minimalを使っている。 コミュニティプラグインのMinimal Theme Settingsも入れて、 Colorful headings を有効化。

タグの運用

まだあんまり固まっていない。 / で区切ればタグを階層化できるということでとりあえず使ってみているが、 多用すると管理できなくなりそう。 DataViewでどんな表を作りたいのかを考えながらつけていくのがいいのかも。

ファイル名

Obsidian上で表示されるメモ名はファイル名なので、タイトルに当たるものをファイル名として使っている。 日本語も許容。

その場限りの(書き足す予定がない)一時的なメモには頭に日付を付けている。

複数端末運用

以下の4つの端末で使用している。

  • Macbook (プライベート用)
  • Macbook (仕事用)
  • iPhone
  • iPad

各端末間のファイル同期はiCloud Driveを使っている。 メモファイルだけでなく、設定ファイルもまるごと同期している。

同期するに当たり、Obsidian Gitでのバックアップはプライベート用Macbookでのみ有効化している。 それ以外の端末では Disable on this device を有効化。 複数端末からバックアップすると、 .git ディレクトリがコンフリクトして復旧がとても面倒になるため。

ファイルの同期は有料プランであるObsidian Syncのほうが快適かもしれない。 Obsidian本体の開発を継続してもらうためにも、お金を払ったほうがいいかも。 今見たら2023年中にSyncを使い始めれば10GBプランの価格で50GB使えるらしい。 悩む・・・。

その他のテキスト管理手段

すべてのテキストをObsidianに集約しているわけではない。

DayOne

日記用途として使い続けている。 日記以外はObsidianに移行してしまったので、Premiumプランは解約してしまっていいかも。

VSCode

コードはやっぱりこっち。

未解決問題

一時的なテキスト編集をどこでやるか

ちょっと編集してどこかにポストし直す場合。 GitHubに長めのissueを書くときとか。

別にそういうテキストは手元に保存する必要がないので、Obsidianで管理しなくていい。 まさにそういう用途のDrafts当アプリを試してみたりもしたが、 Vimキーバインドが使えないので使うのをやめてしまった。

VSCodeで開くようなプロジェクト関連のものであれば、VSCodeのUntitledタブで編集している。 未保存でもMarkdownのプレビューもできるので必要十分。

一時編集用のVaultをメインとは別で作ってもいいかもしれない。

ファイルの同期

iCloud Drive特有の問題なのかどうかわからないが、 iPhone・iPadでObsidianのアプリを開くと同期待ちとインデックス更新待ちがある。 1〜2分かかる場合もあり、さっとメモを取りたいときには非常に不便う。 Obsidian Syncを使うことで解決できるのであれば乗り換えたいが・・・。

いまのところ快適に使えているので、使い続けるつもり。