Test::UsedModulesを使うと使っていないモジュールを検出できる。ユーティリティとしてリファクタリングのあとに、必要なくなったuseをサクッと調べられると、便利なのじゃないかと考えてcheck-perl-used-modulesというコマンドを作ってみた。
check-perl-used-modulesというファイルを適当にPATHが通っているところに用意する。
#!/bin/bash path=$(git ls-files | peco) if [ -z "$path" ]; then exit fi perl -MTest::UsedModules -MTest::More -e "used_modules_ok('$path');done_testing()"
そうするとgitのレポジトリ内からファイルを絞り込んで、チェックしてくれる。こんな感じ。
やってみて思ったけど、やりたいことは今編集しているファイルが不要なuseをしてないかチェックしたいということだった。Emacsでやれという感じなのでまた今度作ろうと思う。