make
私のmake
プログラム(または同様のプログラム)make
でタブインデントを使用したくない場合は、GNUの代替案はありますか?
たとえば、を使用するときは、開始文字()の後にあるすべての項目をインデントするmake
必要があります。以下は、場合によってはいくつかの問題を解決する方法です。たとえば、私はクロスプラットフォームで作業し、いくつかの理由でLinuxターミナルに貼り付けたコードからタブを削除するWindows10 AutoHotkeyメカニズムを使用することに合格しません。そのため、ソリューションを含むタブではないことが必要です)。make
% :
make
タブですべての項目をインデントすると、% :
操作がmake
遅くなります。
これはmake
、新しい仮想ホストの作成に使用する構成ファイルです。次のコマンドで実行しますmake domain.tld.conf
。
% :
printf '%s\n' \
'<VirtualHost *:80>' \
'DocumentRoot "/var/www/html/$@"' \
'ServerName $@' \
'<Directory "/var/www/html/$@">' \
'Options +SymLinksIfOwnerMatch' \
'Require all granted' \
'</Directory>' \
'ServerAlias www.$@' \
'</VirtualHost>' \
> "$@"
a2ensite "$@"
systemctl restart apache2.service
同様の機能を提供しますが、パターンファイル自体でタブインデントを使用せずにUnix自体に提供される他のオプションはありますか?
ベストアンサー1
GNUブランド.RECIPEPREFIX
変える(ノート:いいえ特殊ターゲット)を使用して、レシピラインをトリガーする文字を変更できます。
たとえば、
.RECIPEPREFIX=>
%:
>printf '%s\n' \
>'<VirtualHost *:80>' \
>'DocumentRoot "/var/www/html/$@"' \
>'ServerName $@' \
>'<Directory "/var/www/html/$@">' \
>'Options +SymLinksIfOwnerMatch' \
>'Require all granted' \
>'</Directory>' \
>'ServerAlias www.$@' \
>'</VirtualHost>' \
>> "$@"
>a2ensite "$@"
>systemctl restart apache2.service