vrtmrz / obsidian-tagfolder

MIT License
200 stars 17 forks source link

FR:Show only the tag folder of the open note #88

Open kazdonkai opened 9 months ago

kazdonkai commented 9 months ago

タグフォルダーは素晴らしいプラグインだと思いますが、私の場合、3万ファイルあるので、表示に時間がかかって、Obsidian のパフォーマンス自体が著しく低下して使い物になりません。

そこで、「常に、タグフォルダーを全部表示する必要は無いのではないか」ということを思いつきました。 実際、このプラグインを使って、すべてのタグフォルダーを順番にたどって見ていく人はいるのでしょうか? むしろ、現在表示されているノートにあるタグから他のタグをたどっていくという使用法の方が実用的ではないかと考えました。

そうすると、サイドペインには、該当するノートのタグの表示を出発点にして、そこからたどっていくということになるので、表示にかかる時間はほとんど無視しても良いことになるのではないか?

そこで、オプションとして、この機能を搭載して頂けないでしょうか。 よろしくご考慮ください。

vrtmrz commented 9 months ago

遅くなってすみません、ありがとうございます。 実は、0.17.xでは一部の処理がPoC的なコードのままで、かなり計算量がかさんでいました。

実際、このプラグインを使って、すべてのタグフォルダーを順番にたどって見ていく人はいるのでしょうか?

実はこれは僕です(File Explorerは使っていません) ただ、確かに今触っているノートにあるタグからほかのタグをたどることも多くて、そのためにハイライトがついていたりします。これをまず優先表示するのはとても良いアイディアだと思います。 なので、どうにかほかのタグも活かしたまま、なんとかできないかと思いまして、0.18.0で高速化するとともに、UIを極力フリーズさせないようにしてみました。

僕の環境だと、これで50000ファイルぐらいまでそれなりに機嫌よく動いてくれているのですが、一度パフォーマンスは向上しているか試してみてもらってもよいでしょうか?

ただ、タグの数によってはまだ動作が重いかもしれないです。 もしよければUtilitilesDumping tags for reporting bugsにある、Copy disguised tags でクリップボードにコピーされるテキストをいただけますか? (すべてのタグを連番に偽装し、1行1ファイルとしてダンプするツールです) よろしくお願いいたします。

kazdonkai commented 9 months ago

久しぶりに起動してみましたが、随分早くなりましたね。 (表示するまで2分ぐらいはかかりますが) また、開いているノートにも影響がなくなったようです。 copy disguised tags をやったのでファイルを添付します。

ところで、タグがないもの(untagged)を表示しないオプションが設定でどれなのかわからなかったので、ついでに教えて下さい。よろしくお願いします。 Disguised tags.txt.zip

vrtmrz commented 9 months ago

検証ありがとうございます、いただいたファイルから作ったダミーファイルを食べさせたところ、僕の端末だともっとかかってスンとなりました。

なので、v018.2では、ダミーファイルをさらに2倍にしたものを30秒程度で表示できるように直してみました。

アクティブなものだけ表示、は下記CSSスニペットを当てていただいても良いですか?(ちなみに、アクティブなものを上に寄せる、もCSSスニペットでできます)

[data-type=tagfolder-link-view] .tree-item {
    display: none;
}
[data-type=tagfolder-link-view] .tree-item:has(.is-active) {
    display: block;
}

どんな感じでしょうか。。

ところで、タグがないもの(untagged)を表示しないオプションが設定でどれなのかわからなかったので、ついでに教えて下さい。よろしくお願いします。

フォルダを消すのであれば、Ignore tags に_untaggedを入れてもらえると消えます。もしルートに展開されていてそれを止めたいのであればKeep untagged items on the rootを無効にしてもらえると消えます。 よろしくおねがいしますー