軽量マークアップ言語の1つ。
GitHub では GitHub Flavored Markdown (GFM) という Markdown 方言を使っている。
以前から気になっていた Logseq を MacBook Pro にインストールして触ってみた。Logseq は WorkFlowy や Roam (Roam Research) などからインスパイアされて開発されているアウトライナーで、類似のインタフェースや機能を備えている。
ローカルの Markdown/Org ファイルにデータが保存されるので、他のアプリケーションと併用したり乗り換えたりするのが容易だ。ローカルで閉じて使えるのでネットサービス上に置きたくない情報を扱うのにも向いている。
Logseq の名前の由来が
What does "Logseq" mean? You can read it as "Log sequence" or "Logical sequence" (thank you Ed). — logseq.github.io
とあるように、ジャーナルに思い浮かんだことをキャプチャし書き出しながらナレッジやプロジェクトなどのためのページをつないでいくのが標準の構成となっている。このため Logseq graph (ページの集まりのことで、ファイルシステム上では指定したフォルダ以下に保存される)を新しく作成すると初期状態で Journals (journals フォルダ)が作られる。
自分は Obsidian でデイリーノート管理をしている。 Logseq を使うとジャーナル管理が2箇所になってしまうのがちょっと悩ましい。ジャーナル管理をオフにできるけれどそうすると Logseq らしさが無くなってしまいそうではある。
All pages に Contents・Favorites・card というページが表示されるのだがこれが何なのかまだ分かっていない。 refresh や re-index 操作があるのだけれどそれぞれいつ実行すべきかわからない。 どちらをやっても変更が反映されない場合があって、その時は All Graphs から graph を開き直すときれいになったりする。
Google ドライブアプリで同期している「Google ドライブ」フォルダ以下に graph を作ると、ファイル管理がおかしい。 graph フォルダの中にさらに Users/naney/Google ドライブ/... のようなフォルダ階層が作られてしまう。
いろいろ試したところ graph のフォルダまでのパスに濁点が含まれるフォルダ名があると駄目のようだ。Unicode 正規化まわりの問題に引っかかったようだ。
Google ドライブ同期フォルダ以下にある Obsidian vault フォルダ Logseq graph として開いてみる実験をしていて上記問題にぶつかり今日は終了。
アウトライナーは思考にするのにとても便利だが、作成したアウトラインは時間が経つと扱いづらくなる。自分としては Obsidian をメインに使う中で補助的に Logseq が使えればいいなと。明日もうちょっと触って構成を検討しよう。
「公開で作業する」というコンセプトで Markdown で書いているノートを先月から MkDocs + GitHub Enterprise Server (以下 GHE) の GitHub Pages で公開してみている(記事)。
一昨日から使い始めたアウトライナー Logseq には graph (ページ群) を静的サイトとしてエクスポートする機能が標準でついている。思考中のメモを公開するのにうってつけそうだ。
MkDocs を使ったドキュメントベースの社内ノートサイトとは別に、アウトラインベースの社内ノートサイトを作ってみた。
MkDocs が GitHub Pages へのデプロイで使っている ghp-import をインストールする
$ pip3 install ghp-import
MkDocs をインストールしていればすでに入っている。
GHE 上で graph リポジトリを作成する。プライベートでも OK。
Git リポジトリを clone したあと、Logseq graph をエクスポートするディレクトリとして site/ を作っておく。
$ git clone git@example.com:Naney/graph.git $ cd graph $ git config user.name 'WATANABE Yoshimasa' $ git config user.email naney@example.com $ mkdir site
まずエクスポートするページ毎に [Make it public for publishing] しておくか、設定で [All pages public when publishing] をオンにしておく。
Logseq のメニューから [Export graph] を選び、 Export public pages を指定する。エクスポート先を選択するダイアログで前の手順で作成した site ディレクトリを選び、エクスポートする。
Git リポジトリディレクトリの中で以下を実行しデプロイする。
$ ghp-import --push --force --no-jekyll site
[ 組織内公開ワーキングノートサイト ] [ 公開で作業する ]
Logseq + GitHub Pages で昨日作成した組織内公開ワーキングノートサイト向け Logseq graph で実際にいろいろ書き始めてみた。
ジャーナル機能を使うかどうか迷ったけど使ってみている。 inbox として取りあえずさっと書けるのに加えて、関連して思い浮かんだことを子リストとしてスレッド的に書き足していけるのが心地よい。inbox として理想的だ。Tweet せずにここにダンプしておけば十分ではと思えてきた。
Markdown ファイルを順次移しながらチェック。
logseq-mermaid-plugin を使えば Logseq でも mermaid の図を入れられるが mermaid.ink という外部サイトでレンダリングさせる方式なのでそのまま使えない。fenced code block ではなく独自記法で囲む必要があるのもマイナスポイント。
セル内改行している表が Logseq ではうまく表示されなかったのでこれも移すのをいったん保留した。
Logseq のスタイルで頻繁に graph を更新していくには Obsidian vault の中に置いておかない方がやはり良いな。組織内公開ワーキングノートサイト向け graph は外に出した。
ただそうすると Logseq のジャーナルと Obsidian のデイリーノートで2重管理が発生する。Logseq の backlink を活用するためには Logseq に書いておきたいし、後で参照するためのアーカイブとして Obsidian にも書いておきたい。 Logseq から Obsidian に転記したら 📋 でマークしてみたけれど、うまくいかない気がする。
公開ノートサイトにも Logseq を使ってみるのどうかと思ったけれど、 index.html にページデータを書き出した SPA になるのでページ数が増えた時に読み込みが遅くならないかなど懸念を感じた。 https://logseq.github.io/ はトップページしか Google 検索でヒットしていなさそうだし SEO も不利そうだ。公開サイトで使うメリットは少ないな。
今週日曜日からアウトライナーアプリケーション Logseq を使ってみた。直接編集もできちゃう backlink 表示がやはり魅力的に感じた。
backlink を活用するためにはページ分割とページ内でのアウトライン構造にある自分なりのスタイルを作ると良さそうだが、それまではカオスになりそうだ。
魅力的な機能がある一方で、
など気になる点も見えてきた。自分の使い方だと Obsidian と Markdown ファイルを共用するのには難ありだった。
Logseq も使うようにしてからここ数日、Obsidian との書き分けに頭を使いすぎてちょっとイケてない。機能は限定的だが Obsidian の機能(標準 + プラグイン)の範囲でアウトライナー的に使う方が自分の方がいいなと。
Logseq で書いたページを Obsidian 形式に直して、 Logseq はアンインストール。
単独で使うのには Logseq もいいアプリケーションではないかと思う。
Mkdocs Obsidian を試した時に濁点のあるノートタイトルがうまくリンクにならなかったこともあり YYYY-MM-DD-hhmmss.md をファイル名にしてきたけど、これだとファイル名だけでは中身が分からずやはり不便。
Unicode 正規化問題は Cryptomator が原因だったと分かったので、 Cryptomator vault から Markdown ファイルを外に出して、ノートタイトルをファイル名につけることにした。
MkDocs Roamlinks Plugin を入れて Obsidian と同じ表記でリンクできるようにすることで、リンクの億劫さが無くなった。
先週で Logseq を使うのをやめることにしたのだが、離れてみてやっぱり使いたいなあと思えてきたので使うことにした。
Mac で常時起動してデスクトップの端っこに置いておき、思い浮かんだことをさっと書いたり膨らませたりする用途で使う。スマートフォンでも追記ぐらいはできるようにしておきたいので、Logseq の Android 版を入れた。今のところ問題なし。 Logseq graph を Obsidian vault の中に入れて一緒に Obsidian Sync しちゃうことにした。
あとはプロジェクトのプランニングや行動デザインの管理にも使ってみるつもり。
Markdown ファイルとはいえ独自記法が多いし、ネストの深いリストはアウトライナーがないと扱いづらいので、ファイルは基本 Logseq 専用と割り切ろう。
SEO に不利なのでエクスポートして公開といった用途には使わない。そもそも SEO 以前に、階層の深いアウトラインノートは他人に見てもらうのに向かないんだった。開閉・ズーム機能が使える形だったとしても、相当なモチベーションがない限りそこまで頑張って読もうとは思われないし。
空白文字で Markdown のリストのインデントをするように Obsidian や iA Writer を設定しているので、タブ文字をインデントに使うところが Logseq のネックだった。
設定変更できないものかと思って調べたら config.edn に
:export/bullet-indentation :four-spaces
を追加することで空白文字4個に変更できた。よし。
state.cljs を読むと、設定としては
:eight-spaces :four-spaces :two-spaces :tab
が指定できるようだ。
Deckset スライドの Markdown ファイルや画像ファイルを TextBundle として管理したらちょっと便利かもしれない。
そう思ってフォルダ名に .textbundle をつけてパッケージ扱いにしてみた。なお info.json 入れてないのでなんちゃって TextBundle。
それほど便利になる訳ではなかった。
ナナメ・ヒカリ・カラフル・テイクアウト#photography
— Naney (@Naney) April 7, 2022
RICOH GR IIIx #GR #GRIIIx #GR3x pic.twitter.com/SX1mAfWyEh
一般的な話のノートは Obsidian Publish サイトで全体公開していて、組織固有の話のノートは Obsidian + MkDocs を使った組織内公開ワーキングノートサイトで限定公開している。
限定公開ノートから全体公開ノートへのリンクをつけるのがいささか面倒。さしあたって roamlinks MkDocs プラグイン と md-condition Markdown エクステンションを使って
[Naney](https://notes.naney.org/Notes/Naney) <!--- #if OBSIDIAN --> [[Naney]] <!--- #endif -->
とリンクしている。
ああ、この限定公開から全体公開にリンクする機能を欲するの、20年弱前から変わらないなあ。WikiEngine を自作していた時は InterWikiLink を実装していたんだっけ。
Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。
※本サイトの内容は個人的見解であり所属組織とは関係ありません。