basyura's blog

あしたになったらほんきだす。

じんかん - 今村翔吾

「うむ。人という生き物は変革を拒む。人はそれを神だの仏だののせいにして生きているだけなのです……とな」

面白かった。信長が絡むからもあるだろうけど、最近読んだ戦国時代物のなかでも面白かった。

過去に読んだ本を参考にして Kindle Unlimited にあるものの中から ChatGPT にオススメしてもらった。表紙のパッと見で忍者ものかと勘違いしてしまったけど、松永久秀についての物語。

この物語が定説にどの程度寄っているのかは分かっていないけど、松永久秀の元々のイメージ。

  • 主殺しを何回かした
  • 信長に謀反するけど何故か許される
  • 信長の野望で城ごと平蜘蛛と共に爆発した

ゲームでは優秀な武将というイメージだけど掘り下げて調べてみたいし、他の今村翔吾作品も読みたい。

螺旋じかけの海

Kindle Unlimited 全五巻

ヒトの線引きからあぶれた生き物を好きにしていいのなら、私も私を好きに扱っていいだろう――?」 遺伝子操作が産業として発達し、人間であることの線引きを自由に操作することすら可能となった世界。 水没した街の残骸で暮らす人々の中には、人間以外の動物の遺伝子を持つ「劣った」者が存在する。遺伝操作を生業とする生体操作師・音喜多(おときた)。 自身も何種もの異種遺伝子を抱え、自分を実験体にし続け生きる彼の元に、様々な事情を抱えた者たちが訪れる――。

読み応えあった。

ゼノブレイド2 - Switch2 Edition

switch 版を買ったのが 2018/02/12。始めたけどしっくりこなくて放置。一年後に再開。クエストは基本スキップでなるはやクリア。その後 3 → 1 → X とやったけど、なんだかんだ 2 が一番面白かったなぁのまま間が空き、もう一度やろうかなと思っていたら switch2 edition が出たので最初から始めた。

最初の switch 版で遊んでいた時は "ブレスオブザワイルド" をやった後だから、が大きいと思うけど世界が広もののハリボテ感があって没入する感じにはならなかった。switch2 版はグラフィックが改善されていて、ハリボテ感が無くなってフィールドを走り回ってても苦にならない印象になった。この感じはブレスオブザワイルド以来だった。

今回はなるべくクエストを完了するように進めてアイオーンを撃破。

前回は世界樹に来たものの辿り着くまでも苦労した気がするが、今回はクエストやキズナリングをなるべく埋めるようにしたこともあって余裕だった。

久しぶりに RPG で満足した。個人的には 2 → 3 の順に面白い。戦闘の面白さがそのまま優先順位とも言える。1 はしっくり来なくて難易度下げてクリアしたし、X においては戦闘がずっと分からない (面白くない) まま難易度下げても勝てない敵がでてきて放置中。

3 の switch2 版も出るけど、やるかはどうかなぁ。3 はクエストをなるべくクリアするようにしたからそれなりに時間かけたし、2 もだけど鬱展開みたいなのがあるのが躊躇する。

Inkdrop - 新規ノートのソート順

Inkdrop でノートの一覧を表示して絞り込む自作の narrow-note plugin (命名に失敗したと思っている) で、直近に作成された新規ノートを取得したいケースがある。常に一覧を作ると重いのでキャッシュを作り直すかの判定に使う。

概ね以下のロジックで、pin どめされたノートが createdAt に関係なく先頭に来る。pin どめされた・されていないグループの中では createdAt でソートされる。

let db = inkdrop.localDB;
let res = await db.notes.all({
  limit:5, sort: [{ createdAt: "desc" }] 
});

console.log("createdAt", "updatedAt", "id", "pinned")
res.docs.forEach(d => {
  console.log(
    d._id,
    new Date(d.createdAt).toISOString(),
    new Date(d.updatedAt).toISOString(),
    d.pinned
  );
});

出力を見やすくテーブル形式に手書き修正。

id createdAt updatedAt pinned
1 2026-09-04 2026-09-04 true
2 2026-06-08 2026-09-05 true
3 2026-09-05 2026-09-06 undefined
4 2026-08-29 2026-08-30 undefined
5 2026-08-19 2026-08-30 undefined

期待した挙動なのかが分からないので質問してみた。

回答をもらった。

Pinned notes always come first regardless of the query args. If you want to ignore pins, here is a workaround using FTS:

await inkdrop.localDB.notes.searchWithQuery(
  [
    {
      type: "field",
      field: "pinned",
      id: ["true", "false"],
    },
  ],
  { sort: [{ createdAt: "desc" }], limit: 1 }
);

pinned が true/false の両方を対象とした上で、createdAt でソートする意味ぽい。

narrow-note が想定した通りに動作するように戻った。

北海道旅行 08.31

仕事の詰めが若干残っている状態だけど、僕が居なくなっても今後は自走してくれる状態にはなっただろうとガッツリ夏休みを取って北海道へ。前回が 2024 年の同時期なので、二年ぶり短期間での上陸になる。

今回はワイナリーを幾つか巡った。

  • NIKI Hills Wainari (宿泊施設あり)
  • Yoichi LOOP (宿泊施設あり)
  • OcciGabi Winery (宿泊施設が今後できるらしい)

日本のワインが明らかに美味しくなっていることに驚きを感じている。遠い昔の某ワイナリーの味のイメージのままだったけど・・・これは変わった。

Inkdrop : link-compact plugin

概要

マークダウンのリンク記法が冗長なので、編集モードでもコンパクトに表示するためのプラグイン。

↓ コンパクト後 ↓

背景

個別に設定できる Styles.css で .md-link-mark に見えづらいスタイルを指定していたけど、常に見えづらい。リンク記法を間違えたときやちょっとした修正の際に、見えづらいので vim に貼り付けて修正してから Inkdrop に貼り付け直すことがよくあった。

対応

面倒なので、link-compact でコンパクト表示した際に style を指定できるようにした。実際のスタイルは Styles.css に書く。

.link-compact-enabled .md-link-mark {
  color: rgba(119, 204, 189, 0.3);
  color: black !important;
  font-size: 1pt;
  margin-left: 2px;
}

.link-compact-eanbled 込みで指定できるので、通常 (コンパクトじゃない) 表示の場合は編集しやすくなった。

コンパクト後の表示はこんな感じ。display:none; にすると vim plugin のカーソル移動がおかしい時があるので font-size で調整。

まとめ

編集モードでもリンク記法がかなり自然に見える。いい感じ。