日記(122)

<前 次>

Repeat Task

自分用に作ってたツール「Repeat Task」、日々のタスクを管理するやつなんですが、1日に複数回やるようなタスクにも対応させてみました。
もともとタスクが復活するサイクルは、何日ごととか何曜日とか、日付単位になっていて、最短が「毎日」でした。
でも、1日に何回か様子を見ておきたいタスクなんかもあるのです。
しかしながら、現状のアルゴリズムはサイクルのチェックが1日刻みなので、今日のタスクが1回終わっていれば、次回は強制的に翌日以降になります。
このチェックの刻み幅を変えるのはこのツールの最大の前提をひっくり返すことになるので、避けたいところでした。
なので、タスクの切り替え時間(例えば、朝6時に新しいタスクになるとか)を、うまいことずらしてやることで、2回目以降が残っていれば、今日のタスクは終わってない扱いにできるようになりました。

アンパンマンDBとドラゴンクエスト10

アンパンマンDB(記事更新)

死去に伴う更新です。

ドラゴンクエスト10(全員)

シャントットの像・庭
【2024再演】FFXIコラボイベント「シャントット博士来たる」 (2024/5/15)|目覚めし冒険者の広場
コラボイベント。
FFXIまだ続いてたんだ…。
イベント内容は以前のままで、プレイヤー陣営だけ強さインフレが進んでいたので、マンドラゴラ強も秒で消し飛びましたね。
新報酬のシャントット像は、とりあえず高笑いさせときました。

他の写真は以下から。
写真置き場「2024/05/22」

アンパンマンDB(システム)

リストとペアリストのストリクトクエリ、旧仕様を当面残すため、内部仕様を変更しても影響を受けにくい仕組みを作っていました。
この仕組み、将来的には新仕様に一本化するタイミングで消すことになるんですが、これやっとかないと新仕様の実装が面倒になりますからね。
で、この2つを同時に作業進めているのには訳があって、まあ想像はつくと思うんですが、内部的には似たようなことをやっているんですよね。
リストは単に文字列のリスト、ペアリストはA→Bみたいな文字列の組み合わせのリストで、検索では、それぞれの文字列に対して検索をかけられるだけでなく、アンパンマンDB内のどの記事にリンクしているかでも検索できます。
「登場作品を探す」で使っている検索ですね。
これ、まあまあ無理やりな感じで共通化しているのですが、新仕様ではもうちょっといい感じに共通化しようかと思っています。

プリンセスピーチ Showtime!


カウガール-2ステージ。
あちこちぶつかりまくって死んだり、樽を明後日の方向に投げまくってキラメキストーン逃したり、結構散々でした。
こないだまで調子よかったんだけど、やっぱりカウガールステージは苦手…!
ただまあ、何週をやっていればさすがに慣れました。
というわけで、とりあえずこのステージもコンプ。


そして、キラリスタ救出ステージ。
相変わらずカウガールのアクション苦手で、一度負けてしまいましたが、こちらは何とか一周で全キラメキストーン&衣装回収できました。

これで、3Fは残すところ1ステージ&ボスのみ。
初めて扱うことになる格闘です。

他の写真は以下から。
プリンセスピーチ Showtime!(2024/05/20)の写真

ドラゴンクエスト10とあずきミュージアムと日記

ドラゴンクエスト10(全員)

竜王
竜王城の決戦・再演 (2024/5/9 更新)|目覚めし冒険者の広場
昔やってたイベントだけど、報酬新しいのが出てるので、やってみました。
今回は全キャラサポート仲間でやりました。
プレイヤーと行くと不測の事態が起きるし、完全に一人でやるのはほぼ無理ゲーなんで。

他の写真は以下から。ミフミンは写真撮ってない。
写真置き場「2024/05/19」

あずきミュージアム


行ってきました。
館内は写真スポットを除き撮影禁止なんで、写真は少なめです。
小豆だけに特化した展示ではなく、関連する食物や、伝搬の歴史、栽培地域の文化など、幅広く取り扱っていました。
あとは、ミュージアムレストランであずき御膳を食べたり。

日記

従来、こう言った観光系の日記は「思い出」カテゴリに入れてたんですが、思い出ではあるけどカテゴリとしてはちょっとずれてるなと思ったので、「観光」というのを作ってみました。

アンパンマンDBとPHP-CS-Fixer

アンパンマンDB(システム)

リストの現行のストリクトクエリのテストを作成。
新記法にする前に、内部処理を変える必要があって、旧記法でも同じ内部処理を使う必要があるので、内部処理を変えても旧記法が通用することを確認するためのテストが必要なのです。

PHP-CS-Fixer(Today I Learned)

PHP-CS-Fixer/PHP-CS-Fixer: A tool to automatically fix PHP Coding Standards issuesには、ドキュメントコメントでもないくせにドキュメントコメントぶっているただのコメントを本当のただのコメントに戻す機能があります。
/** ただのコメント *//* ただのコメント */

しかし、/** @var ADBValueList $adb_value */みたいに、ローカル変数の型を指定しているコメントまで、ただのコメント扱いされてしまいます。
Intelephenseでは、ちゃんとローカル変数のドキュメントコメントも認識してくれるので、PHP-CS-Fixerにぶち壊されると困るのです。

そこで使うのが以下のオプション。

Rule phpdoc_to_comment - PHP Coding Standards Fixer
ドキュメントコメントをただのコメントに戻す処理の制御ができます。
今回の件なら、ignored_tagsオプションにvarを入れれば、@varのドキュメントコメントだけは見逃してくれるようになります。

アンパンマンDBとdotnet

アンパンマンDB(記事更新)

来週の放送情報。
再放送ですね。

dotnet(Today I Learned)

dotnet build コマンド - .NET CLI | Microsoft Learn

ソリューションでこのコマンドを実行するときに --output オプションを指定すると、出力パスの不明なセマンティクスが原因で、CLI から警告 (7.0.200 のエラー) が出力されます。 このオプションは、ビルドされたすべてのプロジェクトのすべての出力が指定されたディレクトリにコピーされるため、この --output オプションは許可されません。これは、複数のターゲットを持つプロジェクトと、直接および推移的依存関係の異なるバージョンを持つプロジェクトと互換性がありません。 詳しくは、「ソリューション レベルの --output オプションがビルド関連コマンドで無効に」を参照してください。

dotnet buildコマンドを--outputオプションと一緒に使うと、出力先を変えられるわけですが、プロジェクト名を指定しないでこのオプションを使うと、ソリューション内に複数あるプロジェクトが全部同じディレクトリに出力されて、全部交ざっちゃって困るよねって話。
実際には、エラーで止まったりせず、警告を出して指定された出力先に出力されるようです。

<前 次>