yiskw note

機械学習やプログラミングについて気まぐれで書きます

【Python】MonkeyTypeを活用して型アノテーションを自動で追加する

MonkeyTypeとは

今回は、Pythonの型アノテーションを自動で付与するMonkeyTypeを使用してみました。
MonkeyTypeは、実行時の引数や返り値の情報から、自動でスタブファイルを生成したり、型アノテーションを追加してくれるライブラリです。
※ スタブファイルとは、型の情報を保持したファイルで、型検査時に用いられるもの。(参考: PEP 484 – Type Hints | peps.python.org)
※ 似たようなツールとして、pyannotateがありますが、こちらは長いことメンテナンスされていないようです。

MonkeyTypeは、型アノテーションを付与していない既存プロジェクトに、型アノテーションを導入する手助けになったり、 型アノテーションが付与されていないOSSのコード(深層学習の論文の実装など)を解読するのに役立つと思い、 使い方や使用感についてこちらにメモを残しておこうと思います。

続きを読む

MacデフォルトのTerminalからAlacrittyに乗り換える

概要

これまでMac純正のターミナルを使用していましたが、異なるMac間での設定の統一が面倒だと感じ、Alacrittyを導入してみました。
AlacrittyはRust製のターミナルエミュレータで、設定をyamlファイルに書くことができ、設定の共通化が用意です。
他にも動作が高速であったり、Cross Platformに対応していたり、True Colorを表示できるなど、多くの機能を兼ね備えております。
今回はその導入方法について、こちらにメモを残しておきます。

続きを読む

tmuxのステータスラインをいい感じにする

概要

今回はtmuxのステータスラインをいい感じにしてみたので、その手順についてメモを残しておきます。

具体的には以下の情報が表示されるようにステータスバーを変更しました。

  • 現在のセッション / ペイン / ウィンドウのインデックス
  • prefixが押された時に、ハイライトされたprefixを表示
    • copyモードやsyncモードに入った時も、視覚的にわかるようにモード名を表示
  • 現在のペインのパス
  • メモリ、CPU使用率
  • 日付
  • 天気

今回設定したファイルはこちらのレポジトリにて公開しております。

また、別の記事でターミナルをいい感じにする方法についてもメモを残しておりますので、よければご参照ください。

yiskw713.hatenablog.com

続きを読む