simple-web-system technology

Webに関する技術をシンプルに扱うブログ

LinuxでCapsLockをCtrlに変更しているのにも関わらず、CapsLockがなぜか有効になったときの直し方

以下のコマンドでなんとかする xdotool key Caps_Lock 結構切実

DartのYamlをMap<String, String>やList<String>に変換する方法

環境 以下のライブラリを使う。(普通これだよね) https://pub.dev/packages/yaml Mapの場合 ライブラリでMapをパースするとMap型ではなくdynamic型が返ってくる。 実態はYamlMap型。 YamlMap型から値を取り出しても値の方が推論されず、使いにくい。 Yaml…

DartのEnumのvalues関数で取得したListは破壊的変更できない

DartのEnumのvalues関数で取得したListはUnmodifiableListなので、remove等の破壊的変更が行えない。 toListで新しくListを作ると破壊的変更ができる。 以下のコード参照 enum ItemType { item1, item2, item3, } final items = ItemType.values; /// -> [it…

複数スマホをもっててsimカードを入れ替える機会が多いときの裏ワザ

スマホケースとスマホの間にゼムクリップ挟んでおくといいよ どうせsimカード入れ替えるときにケース外すし 海外旅行とかで結構役立つ

i3wmでセカンドディスプレイ使うならarandrを使うといいよって話

xrandrは辛い。arandrを使おう gnomeやxfce4等のフルスタックなウィンドウマネージャーでセカンドディスプレイを使う場合、ウィンドウマネージャーに付属するツールを使えば設定できます。ただ、i3wm単体で使う場合は、cliツールのxrandrが使われることが多…

RiverpodでStateNotifierProviderを使うときは、0.14系からの記事を参照しましょう

FlutterのState管理の定番になりつつあるRiverpodですが、0.14系からStateNotifierProviderの呼び出し方が変わったのはご存知でしょうか。 0.14がリリースされたのは2021/04/04なのですが、検索してみると0.13系までの情報がかなり多かったので、整理してみ…

FlutterのDialogを不用意に閉じないようにする

うっかり自分の予想外のタイミングでDialogが閉じることがあるので、 それを防ぐ方法をまとめました。 考慮してない導線だったりして、バグの原因になったりしますからね。 FlutterでDialogを閉じる方法 主に以下の3種類です。 Navigator.of(context).pop()…