閑古鳥

オールドプログラマの日記。プログラミングとか病気(透析)の話とか。

ACE COMBAT 7: SKIES UNKNOWNが面白い

エースコンバットシリーズは未プレイで今回が初めて。なんとなくかっこよさそうとか、惹かれるものはあったけど手は出していなかったゲーム。AC6でも10年以上前だし、タイミングが合わなかっただけですかね。

イージーモードの簡単操作で始めたけど、それでも操作方法がわからない、何をして良いかもわからない。どれが敵で何をすればクリアなのかもわからない、ストーリーもわからん。と分からないだらけでふわふわした感じで遊んでいたけど、ミッション14くらいまできてレーダーの見方とかわかってきて楽しくなってきた(遅い)。操作方法は最初のミッションがチュートリアルになっていてちゃんと教えてはくれるんだけど、マニュアルも見ずにやっているので飛んでたらいつの間にかゲームオーバーになってたりするんですよね。だんだん無線で言ってることがわかるようになってくると、あーそういうことね! と腑に落ちて楽しめる。

アーティファクトツリーで解放できる機体は未だに違いがよくわからず雰囲気で選んで適当に解放しているけどこれもわかるようになるともっと楽しくなりそう。

なんかおまけ?でAC5も自動で付いてきたのでまだしばらく遊べそうです。

Win + .(ピリオド) で絵文字を挿入する🍣

最近のWindowsアップデートの度に結構色々機能を追加しているようで、ちょっと前から絵文字パネルというのが実装されていたみたい。Win + . キーで表示して、絵文字を選んで挿入できる。ちょっと前まで日本語環境では無効だったみたいですが…。

October 2018アップデートを入れて ver. 1809 にしたら手元でも使えるようになりました。

どうもChromeはすでに対応していたみたいで、ショートカットを知らなくてもコンテキストメニューから出せたりするようです。もう絵文字パネルを出すAPIとかあるのかな? とソースを覗いたらショートカットを押させているだけのようでした。残念。

ともあれこれでカジュアルに絵文字を使えそうです。🤔とか結構味があって好きなんですよね。……あまり使い所なさそうですが。

Fate/strange Fake

Fate HF見た勢いで買ってみたけどこれもめっちゃ面白い。よくできたフレームワークの上には色々乗っけられていいなぁ。FGOも気にはなっているんだけど、機種変更前にアプリ入れて1章途中で止まってて、なかなか再開する気力が湧かず。これもアニメ化するらしいのでそっちに期待するか……。

小説の方は群像劇で視点が頻繁に切り替わるのはいいけど時間も行ったり来たりすることが多いのは少し気になる。けどそれ以上に設定やキャラに魅力があり、ぐいぐい読ませる。はやく続きが読みたい。

ここまで世界が大きくなると TYPE-MOON Wiki とか眺めているだけでも楽しく、しばらくはこの辺見ながら待つかなー。

あふをもっと活用したい

System AKT

xyzzyと並んでもっとも長く使っているファイラ。20年くらいになるけど、ほぼ基本機能しか使っておらずもったいないので、もうちょっと便利に使いたい。

ショートカットキーの割り当て

zキー押下で設定画面が表示される。設定画面の[キー定義]でショートカットを設定できる。たとえばF2キーに対して

"C:\Users\_\AppData\Local\Programs\Microsoft VS Code\Code.exe" "$P"

といったコマンドを設定する事で、いまいるフォルダでF2を押すだけでVS Codeを起動できる(コマンドプロンプトcode .とするのと同じ)。

各種登録(任意フォルダへのショートカット)

設定画面の[各種登録]で任意のフォルダを登録できる。登録したフォルダはjキーで一覧が表示される。よく使うフォルダを登録しておくと移動が楽になる。

ファイルの圧縮・解凍

これは昔からやっていたのだけど、がらくた - kMonos.NET で公開されている caldix を使って統合アーカイバプロジェクトのDLLを一括でインストールすると、それだけであふで圧縮ファイルの上にカーソルがある状態でuを押すだけで解凍できるようになる。Enter押すと解凍せずに中身を覗くこともできる。

圧縮は7-Zipを別途入れてコンテキストメニューからやっている。コンテキストメニュー/キー押下でエクスプローラ上で右クリックしたときと同じものが出てくるので、エクスプローラのカスタマイズをしておくとあふでも流用できて良い。けどここはもう少し短縮したいかな。pキーでも圧縮できるんだけど、ほら、お仕事ではパスワード付きZIPというのがあってね…。

剣の国の魔法戦士チルノ【ソード・ワールドRPG完全版】

剣の国の魔法戦士チルノ by さっちゃん - ニコニコ動画

久々にTRPGのリプレイ動画を見ているけど、面白い。

地味ぃに進む旧ソードワールド by さっちゃん - ニコニコ動画

同作者さんの別卓で、こちらは完結済み。Part76もある。永遠にみられるぞ! と思ったけどもう全部見てしまった。こちらは若干、潔癖な人には合わないネタがあるかもしれないけど、テンポ良く見やすい動画でした。チルノの方は教育目的というていでやっているので比較的健全で、チルノの成長を見守るおっさんの気持ちにもなれるのが良い。

WPFでデザイン時にのみDataContextを指定する

デザイン サーフェイス上のサンプル データとプロトタイプを作るためのサンプル データ - UWP app developer | Microsoft Docs

に全部書いてある。

特にUserControlなど作っているときに、ViewModelは外から設定されるのでDataContextは設定したくない、けどないとインテリセンスなど効かなくて不便、という場合。

<UserControl.DataContext>
  <local:ViewModel/>
</UserControl.DataContext>

などと書くとUserControl生成時にViewModelもインスタンス化されてしまい、親コントロールからDataContextを設定されるようなケースだと無駄なインスタンスができてしまう。

<UserControl
  xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  mc:Ignorable="d"
  ...
  d:DataContext="{d:DesignInstance local:MainViewModel}">

そういった場合は上記のようにd:DataContext属性を使う。mc:Ignorable属性に指定されているプリフィクスは無視されるのでインスタンスは重複しない。ただこれだとプレビュー時にもインスタンス化されず、値が見えないので少し不便。デザイナから見る時だけインスタンス化したい場合はIsDesignTimeCreatable属性をTrueにする。

<UserControl
  ..
  d:DataContext="{d:DesignInstance local:MainViewModel, IsDesignTimeCreatable=True}">

…ということが、公式ドキュメントも一番上に載せたページくらいしか見当たらず。Blend SDKにリファレンスって無いのでしょうか……。

MenuItemのソースをもうちょっと読んでみる

結局、

<MenuItem Header="{Binding Value}" HeaderStringFormat="{}{0}円"/>

<MenuItem Header="{Binding Value, StringFormat={}{0}円}" HeaderStringFormat="{}{0}円">
    <MenuItem.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding ., StringFormat={Binding HeaderStringFormat}}" />
        </DataTemplate>
    </MenuItem.ItemTemplate>
</MenuItem>

と自動で展開されて、

<MenuItem>
    <MenuItem.Header>
        <TextBlock Text="{Binding Value, StringFormat={}{0}円}"/>
    </MenuItem.Header>
</MenuItem>

と等可になる、ということですかね。ソースだけで動きを追うのたいへんだなぁ…。