最近バイト先で作業しているときにターミナルで長いコマンドを叩いていると、手が疲れるしちょくちょくミスるしたまに忘れてめんどくさいと思うようになってきて、どうにか効率化したいと思い~/.bashrcの中でaliasの設定を書き加えて短縮コマンドを用意する技をやっと覚えるようになった。
一例
budle exec rake testをいちいち手で打つのめんどくさくてbertで出るようにしたら楽しくなってきて様々なコマンドをalias設定で短縮させまくっている(そしてbertじゃなくてtだけでも良いのでは気付いて直すなどをしていて、庭いじり感が出てきた)
— 桐生あんず (@anzu_mmm) 2020年2月26日
設定したと言ってもRailsやgitまわりでよく使うコマンドを以下のように短縮させたぐらいなのだけれど、自分の中ではとにかく便利になったように感じられて、短いコマンドでどんどんターミナルを動かしていくのもオタクっぽくて良い。
alias gl='git l' alias st='git st' alias push='git push origin HEAD' alias pull='git fetch -p && git pull' alias t='bundle exec rake test' alias r='bundle exec rake routes' alias testlog='tail -fn100 log/test.log' alias s='rails s' alias c='rails c'
こうやって効率化する作業を試行錯誤しながら進めていくの、庭いじりみたいな作業で面白いな〜と思っていたら友達が以下の記事で今の使っている環境を教えてくれた。すごい。
zshとpecoを触っておくと色々便利で楽しそうな感じなことが分かってきたので以下の記事を参考にしながら入れてみた。今までbashしか使ったことがなかったので割と大きな一歩にも見える。
ここら辺の記事を読んでいると「ghqも入れると良いよ」とだいたい書いてあって、じゃあ入れてみるか〜と思い導入してみた。
これでCtrl + r でコマンド履歴の一覧が出るようになり、Ctrl + ] でghqの管理下のリポジトリの一覧をシュッと眺めて移動できるようになったのだった。めでたい。
便利そうになったようにも見えるけれど、実際使っていかないと手が慣れなくて作業効率が下がりそうな予感もするので実際に触って使いやすくカスタマイズする必要がありそう。
とりあえず直近の庭いじり作業としては、テストを手動で回すときに個別でファイル単位やブロック単位で実行する際、以下のように書くのが地味にめんどくさくて嫌なのでファイル名やブロック名だけを書いて引数として渡すだけでテストが走るコマンドを用意したいです。明日か明後日の自分頑張ってほしい。
rake test TEST=test/sample_test.rb rake test TEST=test/sample_test.rb TESTOPTS="--name=test_sample_2"
そういえば退勤前に以下のような大喜利を思いついて勝手に一人でニコニコしていました。参加してくれる方いないかな。
短すぎて(自分以外に)分からないalias設定選手権
— 桐生あんず (@anzu_mmm) 2020年2月26日
追記
実装できました
kiryuanzu.hatenablog.com