Edited at

XcodeでTODO:などの警告を表示させる方法


はじめに

警告の表示方法についての備忘録です。


方法1

Swift4.2までは#warning("")などが使えなかったので、お決まりのスクリプトです。

使用方法はBuildPhaseのRunScriptに以下を追加。


TAGS="TODO:|FIXME:"
ERRORTAG="ERROR:"
find "${SRCROOT}" \( -name "*.h" -or -name "*.m" -or -name "*.swift" \) -print0 | xargs -0 egrep --with-filename --line-number --only-matching "($TAGS).*\$|($ERRORTAG).*\$" | perl -p -e "s/($TAGS)/ warning: \$1/" | perl -p -e "s/($ERRORTAG)/ error: \$1/"


使い方

// TODO:

// FIXME:

// ERROR:

を使用した場合に警告およびエラーがビルド実行時に表示されるようになります。


結果

スクリーンショット 2019-04-14 23.42.59.png


方法2

エディタプレースホルダーを使用する強引なやり方です。

ビルドが通らないので使い方は限られますし、本来の使い方ではないですね。

予測変換で出したコードの引数とかに出てくるこれですね。

スクリーンショット 2019-04-15 0.02.06.png

生成方法は至って簡単。

以下のように文字を<# #>で挟めばエディタプレースホルダーとして変換されます。


使い方

<#hogehoge#>


結果

スクリーンショット 2019-04-14 23.51.58.png


方法3

Swift4.2以降で使えるようになったやつです。


使い方

 #warning("hogehoge")

#error("fugafuga")


結果

スクリーンショット 2019-04-14 23.56.27.png


まとめ

個人的にはまだ方法1のやり方8割で、2割で方法3のやり方でやっています。

まず方法2はやらないですね。

警告内容も該当箇所いかないとわからないですし。

(なぜ書いたんだって話になりますが...)

簡易的な備忘録でしたが、ご覧いただきありがとうございました。

ひっそりとブログも始めました。

kazyblog