Makefile helpで検索するとよく出てくる奴のグループ分け表示に対応したバージョンです.
awkプログラムが複雑化しhelpのコマンドがワンライナーとしては長大になってしまったためawkファイルに分割しています.
使用する場合はご了承ください.
wget --no-check-certificate https://raw.githubusercontent.com/m-YoC/Makefile-help-with-grouping-support/main/mfhelp.awk
.DEFAULT_GOAL := help
help: ## Display this help screen
@sed -n 2p mfhelp.awk | cut -c 2- | xargs -i grep -E '{}' $(MAKEFILE_LIST) | awk -f mfhelp.awk
Makefile内のhelp部分をコピペしてください.mfhelp.awk
ファイルをMakefileと同階層に入れてください.
よくある奴です.
command: ## description
command: ## description #> subtext1 #> subtext2 ...
とすることで補足文を加えることができます.
###>
がグループ分け関連のコメント記法です.スペースなどは入れず,記述行の先頭に配置してください.
###> [command group comment]
でグループコメントを記述できます.- 同時に以降のコマンド行がグループ表示モードになります.
- グループコメントを
!
で始めた場合はボールド体になります.
###> @
で始めると以降のグループ表示モードを停止できます.同じ行のコメントは表示されません.###>
単体は改行として機能します.- この場合グループ表示モードは
###> @
と同様に停止されます.
- この場合グループ表示モードは
Note
コマンドとその説明が表示される行をコマンド行と呼称しています.
\_
が行頭に付く場合をグループ表示モードと呼称しています.
helpのawkコマンドの最後にcmdw=<width>
を追記してください.このとき-v
オプションは使用しないでください.