「IT」カテゴリーアーカイブ

ITに関する事柄

Obsidianでランダムノートを表示するコードブロック

なかなかはまった。

僕のObsiianのとあるフォルダには「判断のヒント」とか「気をつけたいこと」とか「こういうことをしてみよう」みたいな、1日の最初に見てその日の過ごし方の意識付けができるような言葉が列挙されている。
朝テレビでやってる占いコーナーの「今日のラッキーアイテム」みたいな感じかな。もしくは「今日の要注意ポイント」みたいな。

そんなノートがいっぱいあるから、ほぼ毎日見るであろうDaily Noteにその日のヒントになる言葉や文章をランダムで表示したかった。

結論から言うと、これを実現できたのはObsidian Query LanguageっていうプラグインでDaily Noteのテンプレートに書いたコードブロックがこれ。

```oql
name: Hint of a day
query: "path:02_HintOfADay"
template: "list"
limit: 3
sort: "random"
badge: false
```

ここまでたどり着いた経緯はこんな感じ。

「obsidian random note」とかで検索をすると見つかるのは

  • Random note(コアプラグイン)
  • Smart Random Note(コミュニティプラグイン

あたりなんだけど、どれもコマンドでノートをランダムに開く機能で、Daily Noteのテンプレートにコードブロックを置いて毎日ランダムにノートを表示させて確認するような使い方ができない。

そんな中で見つけたのがこの記事。

なるほど、Obsidian Query Languageってプラグインを使うのね。
で、記事通りにコードブロックを作ってみたらなかなか良さげ。
ただ記事にもある通りDaily Noteもリストに出てきちゃう。
プラグインのバグなのかとも思ったんだけど、よく観察したら

query: "~~"

の「~~」での検索はノートのパスに対しても行われるんだけど、ノートの中の文字列に対しても行われてるらしい。
テンプレートにこのコードブロックを書いて毎日のDaily Noteにこのランダム表示をだそうって考えてるわけだから、今後毎日作成するDaily Noteにはこの「~~」っていう文字列が入ることになって、そうなると本来ランダム表示に入ってほしくないDaily Noteが今後どんどん入ってくることになる。

プラグインの公式ページには

query: "'folder1/" 

って書けば「Render a list of 10 random notes in folder1/.」だって書いてあるけど、これは間違いってことね。ノートの中の文字列も検索対象です。ノートの中に「folder1/」っていう文字列があるノートも検索に引っかかります。

ということで調べたのが、queryでパスを指定することができないのかということ。
公式ページのReadMeには

query: path: "'notes"

って書けばパスの指定ができるらしいんだけど、これもうまくいかない。

色々試行錯誤してわかったのは以下。

  • 「path:」もダブルクオーテーションの中に入れる必要がある
  • パスの指定はルートから書く必要はなくてフォルダ名だけでいいらしい

Obsidian内では表示させたいノートは「05_ThemeOfLife/02_HintOfADay」にあるんだけどコードとしては

query: "path:02_HintOfADay"

ということらしい。
情報収集とか試行錯誤でほぼ1日費やしちゃった。

ひさびさにDelphiでMobileアプリ開発

ひさびさにDelphi(バージョン10.3 Rio)を使ってモバイルアプリを作ろうかと調べ物。
AndroidもiOSもひとまずエミュレータでデバッグしたいなぁと思って、デバッグ環境を整えてた。

ちょっと前のバージョンのDelphiのものだけど、エミュレータの登録の記事とかも見つかったのでそれを参考に設定をしようとしてたんだけど、どうにも記事通りにならない。

もっとよく調べてみたら、もう今のバージョンだとAndroidに関してはエミュレータでのデバッグはサポートしてないと判明。

 RAD Studio は、NEON をサポートしている実デバイス(Android エミュレータ サポートではない)のみをサポートしています。

http://docwiki.embarcadero.com/RADStudio/Rio/ja/%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E3%82%BF%E3%83%BC%E3%82%B2%E3%83%83%E3%83%88_%E3%83%97%E3%83%A9%E3%83%83%E3%83%88%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0

なんだ、しっかり書いてあったじゃん。
検索してぱっと見つかるページだけじゃなくて、公式ページもちゃんと確認しなきゃ、という検索のキホンのキについてあらためて認識した次第。

OPcache~ぅ

nextCloudのOPcache設定の警告が消えない。。。
Coreserverのphp.iniはバージョンごとの設定なんだけど、全バージョンの設定ファイルを書き換えても反映されず警告は出たまま。
なんだかなぁ。
結構な時間を費やしてハマってます。

追:.user.iniを設定すると動きに若干変化があるんだけど、もしかするとシステム側で値の設定に制限があったりしそう。
  サポートに相談だな。

VEGAS 12 or 16

VEGASという映像編集ソフトの最新バージョン(16)が80%以上の割引。
9月30日まで!

……ということで新機能をチェックしてかなり心が揺れてた。

でも新機能をチェックしたおかげで、対応する旧機能もあらためて確認したところすでに使っている古いバージョン(12)のVEGASでもかなり作業の改善ができることが判明。
まだもうちょっとバージョン12で我慢かな。

慌てて「ポチッ」としない冷静さも必要よねー。

AutomatorとScriptたち

事務作業というか、ちょっとしたルーチンワークを改善しようとApple Scriptを触るも、初見では結構ハードルが高いなぁ。。。
Automatorを使ってるんだけれども、結局Shell Scriptのほうがとっつきやすいイメージ。
結論としてはApple ScriptもShell Scriptも組み込めるAutomatorはすごい。

# Automatorをバリバリ使って作業改善とかもしてみたいけど適用できる作業がそれほど身の回りにないのがちょっと残念。。。