Obsidianを使い始めた話 – vimでも快適に編集できるメモ環境
Obsidianを始めてみる
最近、メモ環境を見直すことにして、Obsidianを試してみた。
マルチプラットフォーム(Windows、Linux、Android)で動作し、ローカルで完結するメモ管理ができるのが魅力的だ。
ローカルで管理できるということは、vim
が使えるということでもある。Obsidianには標準でvim-mode
プラグインがあり、公式アプリ内でもvimライクな操作が可能。普段からvimで編集する身としては、これは大きなポイントだった。
同期にはGitHubを使うことにし、Obsidian Gitプラグインを活用することで、快適に管理できる環境を整えた。
さらに、Zennの記事の管理にもObsidianを利用することにしたので、そのあたりも後半で触れていく。
初回セットアップ
まずはWindowsで初回セットアップをしていく。Windowsである意味は特にない。
GitHubのプライベートリポジトリ
GitHubにプライベートリポジトリを作成する。(一緒にReadmeなどを作っておくと楽)
作成したらCloneできるようにURLをコピーしておく。
Windows PowerShellでGitとかSSHとか
PowerShellは標準でSSHを使えるし、Gitもインストール可能。 winget install git.git
などで。
SSHは ssh-keygen
何かで作っておいて ~/.ssh/config
にGitHubへの接続設定を書いておくと楽。
クローン
先に作ったリポジトリをクローンする。
クローンする場所は好きな場所で。PowerShellを使うならPowerShellのHomeから移動しやすい所が良いと思う。
移動したら
git clone git@github.com:yourname/obsidian-notes.git
で作成すればOK。
Obsidian init
Obsidianで初期化する。Obsidianをまだインストールしていない場合はwinget install obsidian
でインストール可能。
インストールできたら立ち上げて、Open folder as Vault
でクローンした場所を指定する。
Obsidian Gitプラグイン
Gitプラグインをいれる。
「設定(⚙️)」→「Community plugins」→「Browse」→「Obsidian Git」→「Install」→「Enable」
Communityプラグインをいれるためには制限モードを無効化する必要がある。
初回push
ObsidianのファイルたちをGitHubにpushしておく。
git add .
git commit -m 'initial commit: obsidian Vault setup'
git push -u origin main
GitHubで確認して同期できていたら成功。
gitignore
必要ないゴミファイルを同期しないように設定しておく。
# Obsidian の一時ファイル・キャッシュを無視
.obsidian/workspace.json
.obsidian/cache
.obsidian/workspace-mobile.json
# OSごとの不要ファイル
Thumbs.db
Desktop.ini
.DS_Store
*~
# Vim, Emacs, その他エディタのバックアップ・一時ファイル
*.swp
*.swo
*.bak
*.tmp
Linuxでも導入
Windowsと同じ手順で導入する。
Arch Linux ではyayで入れられる模様。
他のディストリは公式を読むべし。
yay -S obsidian
git clone hogehoge
Obsidianを立ち上げてOpen folder as Vault
Windows側で設定したものをGitHubにあげていれば問題なく設定の同期もなされるはず。
事前に.gitignore
を入れておかないとConflictが起きて面倒なので注意。
プラグイン
入れたプラグインをメモ
-
Templater
テンプレートの管理・自動化
事前に用意したテンプレートを使って、ノートの作成を効率化するプラグイン。
Obsidianの標準テンプレート機能より強力で、スクリプトを用いた高度なカスタマイズも可能。 -
Dataview
ノートをデータベースのように扱う
Obsidian内のMarkdownファイルを「データベース」として検索・集計・表示できる。
例えば、進行中の小説やZenn記事の一覧を自動で取得し、整理するのに便利。
dataview コードブロックを使い、ファイルの作成日・更新日・タグなどを条件にリスト表示できる。 -
Markdown Table Editor
Markdownのテーブル編集を快適に
MarkdownのテーブルをGUIで直感的に編集できるようにするプラグイン。
Obsidianの標準機能よりも使いやすく、セルの結合やドラッグ操作も可能。 -
Paste URL into selection
リンクの挿入を簡単に
クリップボードにコピーしたURLを選択したテキストに簡単に挿入できるプラグイン。
例えば、「Obsidian公式ページ」のようなテキストを選択してURLを貼り付けると、Obsidian公式ページ のようなリンク形式に自動変換してくれる。
フォルダ構成
とりあえず次のようにしてみた。
.
├── 00_Inbox
│ ├── Inbox_Guide.md
│ └── Windows での作成テスト.md
├── 01_Notes
│ ├── Home.md
│ ├── Notes_Guide.md
├── 02_Reference
│ └── Reference_Guide.md
├── 03_Projects
│ ├── Blogs
│ │ └── Zenn
│ │ ├── Draft
│ │ │ └── Started-using-Obsidian.md
│ │ └── Published
│ ├── Novels
│ │ ├── 01_InProgress
│ │ ├── 02_Completed
│ │ ├── 03_Ideas
│ │ │ └── new-novel-idea.md
│ │ └── Novels_Guide.md
│ └── Projects_Guide.md
├── 04_Archive
│ └── Archive_Guide.md
├── 05_System
│ ├── System_Guide.md
│ └── Templates
│ ├── Novel
│ │ ├── 00_Novel_Files_Template.md
│ │ ├── Chapters_Template.md
│ │ ├── Character_Template.md
│ │ ├── Manuscript_Template.md
│ │ ├── Plot_Template.md
│ │ └── World_Template.md
│ └── Zenn
│ └── Zenn_Template_Content.md
└── README.md
Zenn記事をObsidianで管理する
Zennの記事をObsidianで管理するとZennのGitHub連携をしている場所を下書きで汚さずに管理ができる。
またZennでは記事をカテゴリごとにフォルダ分けして管理することが出来ないが、Obsidianで管理することでフォルダ分けもできるし、タグで分類もできる。
どちらもMarkdownなので管理がしやすい。
記事のスラッグをファイル名として使えるけれど、仕様に注意が必要(Zenn全体でユニークである必要がある)。
記事の状態を二重管理することになるところだけ注意すれば記事全体の管理がしやすい。
記事テンプレート
Obsidianではテンプレートを作ってファイルを作成できる。
そこでZenn記事用のテンプレートを作成しておく。
---
title: "記事タイトル"
emoji: "📝"
type: "tech" # "tech" or "idea"
topics: ["Obsidian", "Zenn"]
published: false
---
# 記事タイトル
## ✍ 概要
ここに記事の概要を書く。
## 🛠 主要なポイント
- ポイント1
- ポイント2
- ポイント3
## 🔗 関連リンク
- [参考記事1](URL)
- [参考記事2](URL)
記事の管理
これは今のところ手動でやることとしている。
03_Projects/
└── Blogs/
└── Zenn/
├── Draft/ # 下書き記事
│ ├── started-using-obsidian.md
│ └── zenn-writing-tips.md
└── Published/ # 公開済み記事
├── obsidian-setup-guide.md
└── how-to-use-templater.md
のように公開する前に手動で移してから zenn-blog/articles/
以下に移してpush
する。
Obsidian生活の始まり
これで一通りの環境構築は終わったわね。
とはいえ、Obsidianは奥が深い。ここからが本番よ。
まだ使いこなせているとは言えないけれど、少しずつカスタマイズして、あなたにとって最高のメモ環境を作り上げていきましょう。
どうせなら、とことん極めてみるのも悪くないわよ?
Discussion