nDiki : 検索

2021年1月19日 (火)

Zettlr はテキストファイルノートアプリに適した Markdown エディタ

Zettelkasten メソッドのための機能を備えた Markdown エディタに Zettlr がある。ローカルディレクトリ上に通常の Markdown ファイルとしてデータを保存するタイプで、ロックインの心配が無く他のツールと併用できる好みのアプリだ。インストールして1日使ってみた。

インストール (macOS )

Homebrew では以下で。

 $ brew install --cask Zettlr

今日時点でインストールされるのが 1.8.3 でちょっと古かったので

からバイナリビルドされた 1.8.6 をダウンロードしてインストールした。

Markdown エディタとして

ヘッダを大きめに表示したりリンクの URL を隠したりと一部プリレンダリングされるタイプ。日本語も問題無さそう。

ファイル末のあたりで文字入力するとエディタがガクガク揺れるは今後改善されると嬉しい。

見出し単位で折り畳む機能やサイドバーで目次を表示する機能があり、長めの文章を書くための支援が揃っている。

ファイル管理

ファイルツリー上にディレクトリとファイルの両方を表示する Combined モード以外に、ファイルツリー(ディレクトリツリー)とファイルリストの両方を表示する Expanded モード、ファイルツリーとファイルリストのどちらかを表示する Thin モードがある。

Expanded モードを選ぶと iA WriterUlysses などでもお馴染みのスタイルになりノートアプリとして使いやすくなる。

ファイルシステム上のディレクトリをルートディレクトリとしたワークスペースを複数同時に開いておける。用途別にディレクトリを分けている場合に便利だ。

全文検索はワークスペース単位。内部リンクもワークスペース単位で機能する。 自分は複数のワークスペースを横断的に全文検索したいので、本格的に使うなら1つのディレクトリの下にまとめる必要があるな。

ファイルの拡張子は md ではなく txt でも OK なので、ファイルを同期した Google ドライブ上で全文検索させられるのが嬉しい(Markdown ファイルの拡張子を md にすると Google ドライブで不便)。 md 固定の Obsidian より柔軟だ。

Zettelkasten メソッドと内部リンク

Makrdown ファイルから Markdown ファイルへファイルベース名を指定して 「[[ファイルベース名]]」の形で内部リンクできる(パス名は不要)。

また Markdown ファイル内にユニークな ID を書いておき、その ID を指定して「[[ID]]」としてリンクもできる。後者を使えばファイル名変更が気軽にできる。 ID の形式やリンクの開始文字列 [[ ・終了文字列 ]] もカスタマイズできて柔軟なのも良い。

iA Writer では

 ia-writer://open?path=/Locations/path/to/file.txt

のような URL を発行して擬似的にリンクするさせるしかないので比べると圧倒的に便利。

1日使ってみて

今メインで使っている Mac アプリケーションiA Writer に比べると Electron ベースの Zettlr は美しさで負けるのは仕方ないところかな。

Zettlr をテキストファイルノートアプリとして内部リンクを活用しながらパーソナルナレッジベースを作っていくのありだな。

[ ノート・日記はテキストファイルに ] [ Mac アプリケーション ]

スポンサード リンク
[ 1月19日全て ]

2021年1月20日 (水)

Zettlr 2日目

昨日から使い始めZettelkasten メソッドのための機能を備えた Markdown エディタの2日目。昨日の時点で使い続けるかちょっと迷ったんだけれど、もうちょっと使い方を探ってみようと今日も使ってみている。内部リンク(ノート間リンク)の活用方法がちょっと分かってきて楽しい。

内部リンクの使い勝手が良い

エディタ上で内部リンクを「command + クリック」「control + クリック」すると「リンク先のファイルを開く」と同時にその「リンク文字列での検索」が実行される。ファイルを開くと同時にいい感じに関連するファイルのリスト(実質バックリンクリスト)が表示されて便利。内部リンクを充実させたい気持ちが高まってきた。

ID を YAML front matter に埋め込む

アプリケーションに依存する Markdown ファイルを作らないという Zettlr の原則により Markdown ファイル中のどこに ID を書いてもいい仕様になっている。

自分としてはプレビュー時に文中に出ないように、昨日ひとまず ID を HTML コメントの形式で Markdown ファイルに埋め込んでみていた。 Zettlr やメインで使っている iA Writerプレビューに使っている Marked 2 が YAML front matter に対応しているのでそこの方がわかりやすいかな。 front matter に ID を書くことにした。

ID のパターンは初期設定の「%Y%M%D%h%m%s」で

日時については基本「2021-01-20-095836」という書式を使っているので Zettlr の ID のパターンも初日に「%Y-%M-%D-%h%m%s」にカスタマイズしたのだけれど「%Y%M%D%h%m%s」に戻した。過去のノートファイルに現在日時の ID を付与するというズレが心理的に気持ち悪かったので。

Also, our own experiences show that when one doesn't use easy-to-recognise IDs, one is less prone to assume stuff, making them better suited to cross-link files. Just try it yourself! -- https://docs.zettlr.com/en/academic/zkn-method/

というの納得。

内部リンクは独立した行に書き、 Marked 2 で消す

内部リンクは Zettlr をナレッジベースとして使う上で便利だが、単独の Markdown ファイルをエクスポートして共有する際には不要だ。

Markdown ファイルを各種フォーマットに変換する Marked 2 に自作のカスタムプリプロセッサを通す機能があるので、 Zettlr で管理している Markdown ファイルを共有する際は Marked 2 を呼び出して

 - [[...]]

を含む行を消してしまうように設定した。ノート関係の宣言のための内部リンクは上記のように独立した行に書いておこう。

これで個人的なナレッジベースとしてノート間リンクの充実させるという要求と、一部はエクスポートして共有したいという要求を満たせそうだ。

[ 1月20日全て ]

2021年1月27日 (水)

Markdown リンク定義にリンク先ノートの ID を書く

Markdown エディタ Zettlr で内部リンク(ノート間リンク)を

 - [[yyyymmddHHMMSS]] タイトル

のように書き、エクスポートする時は Marked 2 のカスタムプリプロセッサで消す(記事)というマイルールを作った(yyyymmddHHMMSS は ID)。が Zettlr から iA Writer に戻し、ノート間リンクは自作の PopClip エクステンションで開けるようにした(記事)ので、必ずしも [[yyyymmddHHMMSS]] 形式で内部リンクを表現しなくても良くなった。であれば、最初から変換した時にドキュメントに現れない形式で Markdown ファイルに内部リンクを書いておきたい。

Markdown ファイル中に HTML コメント形式で内部リンクを書いておけば、 HTML 等に変換した時にドキュメントに出現しなくて済むのだが iA Writer だと全文検索にひっかからないので却下。

ドキュメントに出現しない表記にはもう1つ「リンク定義」があるのでこれを使うことにした。

 [yyyymmddHHMMSS]: <> "title"

として内部リンクを書いておけばプレビューしたドキュメントには現れない。若干やぼったい感じもするがなかなかいいんじゃない。

[ ノート・日記はテキストファイルに ] [ Zettelkasten ]

[ 1月27日全て ]

2021年2月4日 (木)

Google ドライブ拡張子 md の Markdown ファイルを全文検索できるように rclone でコピーする

拡張子 md の Markdown ファイルを「バックアップと同期」アプリで新規に同期したり、 Web 版の Google ドライブアップロードしたりすると MIME タイプが text/markdown となり全文検索対象にならない。不便。

StackEdit は Google ドライブに送る時の MIME タイプを設定で text/plain を選べるようにすることで問題を回避しているようだ。

rclone で text/plain で Google ドライブアップロードする

クラウドストレージ上のファイルを管理するためのコマンドラインプログラム rclone でアップロードするとどうだろうと思ってやってみたところ、ちょっと設定をいじれば拡張子 md の Markdown ファイルを text/plain で Google ドライブアップロードできることがわかった。

rclone では Google Drive API で新しいファイルを作成する際に、rclone 側で MIME タイプを判定している。内部的には Go の mime パッケージを使っている。

このパッケージは UNIX 系の環境では mime.type ファイルがあれば参照するようになっていたので macOS Catalina にあった /etc/apache2/mime.type ファイルの text/plain 行に md を追加して試したところ、めでたく text/plain として Google ドライブアップロードできた。全文検索対象になることも確認。

ちなみに「バックアップと同期」アプリは /etc/apache2/mime.type 変更の影響を受けなかった。

rclone での方法が分かったわけだけれど、実際のところ Markdown ファイルの Google ドライブとの同期や読み書きを rclone だけに限定するわけにもいかないな。引き続き拡張子 txt で管理するのが現実的のようだ。

今日のさえずり: iA Writer for AndroidGoogle ドライブ上のテキストファイル全文検索

[ 2月4日全て ]

2021年2月8日 (月)

Obsidian やっぱり使ってみる

去年の夏12月と試したあと距離を置いていたナレッジベースアプリケーション Obsidian が気になってまた使ってみることにした。

Roam Research も気になるけれどやはりデータがテキストファイルじゃないというのがね。

Obsidian を躊躇していた点については以下のように考え運用してみることにする。

特定ドメインの知識整理用として使う

過去の全部のノートテキストファイルを対象とするのではなく、特定ドメインの知識整理用としてゆるく切り離して使う。

Obsidian拡張子が md 固定でそのまま Google ドライブに同期しても全文検索できない問題については、Google ドライブで全文検索したい拡張子 txt の日記/日誌系 Markdown ファイルを Obsidian vault には入れず、今まで通り別で管理することで回避することにした。

[[ファイルベース名]] や [[ファイルベース名|表示テキスト]] という内部リンク方言についても、 Obsidian の vault 内でノートでは許容しよう(許容しないと Obsidian を使う意味が無いので)。エクスポートする時は[[・]]を消すプリプロセッサを用意して Marked 2 で使うようにする。

[ ノート・日記はテキストファイルに ] [ Mac アプリケーション ]

[ 2月8日全て ]

2021年2月9日 (火)

Obsidian 使い方分かってきて楽しい

昨日考えた方針通り Google ドライブで全文検索する必要のない Markdown ファイルの拡張子を txt から md に変更し、Obsidian vault を作成した。そこそこファイル数があるが Zettlr に比べて検索が圧倒的に速くてサクサクだ。いけそう。

グラフビュー

1つのファイルに複数の情報が書かれているデイリーノートファイルがあると、同日に扱ったという点以外で関連のないものが関連があるかのようなグラフになってイケてない。

フィルタでデイリーノートファイルを -file:... を使って除外したらいい感じになった。なるほど。

Obsidian Publish

試してみたいけれど $96/年に見合うほど使わなさそう。HTTPS なカスタムドメインを設定するのが現時点でハードルが高いということもあり様子見。様子見していて 50% early bird 価格が終わっちゃったら、さらに遠のいちゃうかもしれない。

[ ノート・日記はテキストファイルに ] [ Mac アプリケーション ]

[ 2月9日全て ]

2021年3月19日 (金)

情報のアーカイブとして使う Obsidian vault ではノートタイトルの先頭を日付にする

いろいろ入れている Obsidian vault のノートタイトルの先頭を日付に戻す

ファイル名の先頭を日付にする派だが、 Obsidian では「内部リンクが醜くなる」「グラフビューが醜くなる」ということもあり、デイリーノートやプロジェクトのノートなど何でも入れてみている Obsidian vault でデイリーノート類以外についてしばらくタイトルから日付を外してみていた。しかし日付がタイトルにないとやはり検索時に日付順に並べ替えられなくて不便だった。

情報のアーカイブとしても使う Obsidian vault ではノートタイトルの先頭を日付にする方が便利だな。 YAML front matter に書いておいた日付をタイトルにつけ直した。

Obsidian Publish サイトのノートタイトルは先頭を日付にしないままにする

Obsidian Publish サイト nNodes は知のネットワークのスナップショットとして更新していくので、引き続きノートタイトルには日付を含めないままにする。

Obsidian vault の目的によって命名規則を使い分けるのがいい。

[ ファイル名の先頭を日付にする ]

[ 3月19日全て ]

2021年4月20日 (火)

今日のさえずり: 日記システムがきちんと開発保守されているの素晴らしい

[ 4月20日全て ]

2021年4月22日 (木)

テーブルマークのおさつちゃんを食べたい【日記】

テーブルマークの冷凍食品「おさつちゃん」をまた食べたいと思いつつ結構な年月が経つ。地元のスーパーでは見当たらない。

検索するとライフネットスーパー 出屋敷店(大阪府枚方市)で販売していて、まだ生産はされている模様。ライフで取り扱いがあるのかなとライフ 渋谷東店に行ってみたが、残念無かった。

生活圏内で売っているところあるのかな。

[ 4月22日全て ]

2021年4月27日 (火)

Obsidian Mobile (β 版) がほぼ Obsidian

Obsidian Mobile (iOS & Android) β 版ついに Insider にもオープンになったので、さっそく Android 版を Pixel 4 に入れて試してみた。

ほぼ(デスクトップ版) Obsidian だ。狭い画面とタッチ操作・バーチャルキーボード入力に合わせて UI アレンジされつつ、多くの機能が Obsidian Mobile でも実装されていて驚いた。Obsidian Publish コアプラグインまで入っているとは思っていなかった。まさかスマートフォンから公開ノートサイトをさくっと更新できるとは。

「デスクトップ版のモバイル版」なので、いきなりモバイル版から始めると「ウッ」っとなる人が多そうではある。

Android アプリとして「ファイルベース名 YYYY-MM-DD-hhmmss でさくっとテキストファイルを新規オープンできる」「全文検索できる」良いノートアプリ/テキストエディタが今まで無かったので、遂に来たという思いだ。

[ ノート・日記はテキストファイルに ] [ ファイル名の先頭を日付にする ]

[ 4月27日全て ]

About Me

Naney Naney

Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。

About nDiki

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。

#nNote タグがついている記事は他の記事に比べて、より断片的・未整理・不完全なちょっとしたノートです。まだ結論に至っていない考えなども含まれます。頻繁/大幅に更新したり削除したりすることがあります。

※本サイトの内容は個人的見解であり所属組織とは関係ありません。

Other Notes

ナレッジベースアプリケーション Obsidian で書いているノートの一部を notes.naney.org で 公開しています。

月別インデックス
Process Time: 0.103517s / load averages: 0.53, 0.53, 0.50
nDiki by WATANABE Yoshimasa (Naney)
Powered by DiKicker