コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Visual Studio 2017】ドキュメント保存時に改行コードを自動で統一できる「Line Endings Unifier」紹介

はじめに

「Line Endings Unifier」を Visual Studio に導入することで
ドキュメント保存時に改行コードを自動で統一できるようになります

Unity で Visual Studio を使用してゲームを開発していると
改行コードに LF と CRLF が混ざってしまい、スクリプトを保存するたびに
下記の警告が出るようになってしまいますが、

f:id:baba_s:20170923131134p:plain

There are inconsistent line endings in the 'XXXX' script. Some are Mac OS X (UNIX) and some are Windows.
This might lead to incorrect line numbers in stacktraces and compiler errors. 
Many text editors can fix this using Convert Line Endings menu commands.

「Line Endings Unifier」を導入して改行コードを統一することで
上記の警告が出力されることを防ぐことができます

設定

f:id:baba_s:20180309202430p:plain

Visual Studio メニューの「ツール>オプション」を選択して

f:id:baba_s:20180309202439p:plain

左のメニューで「Line Endings Unifier」を選択して各種設定を変更できます
「Default Line Ending」で好みの改行コードを選択して
「Force Default Line Ending On Document Save」を「True」に設定することで
ドキュメント保存時に改行コードが自動で統一されるようになります

項目 内容
Add Newline On The Last Line ドキュメント保存時に
末尾に空白行を追加する場合 True
Default Line Ending デフォルトの改行コード
Force Default Line Ending
On Document Save
ドキュメント保存時に
改行コードを統一する場合 True
Remove Trailing Whitespace ドキュメント保存時に
行末の不要な空白を削除する場合 True
Save Files After Unifying
Supported File Formats 対象のドキュメントの拡張子
Supported File Names 対象のドキュメントのファイル名
Track Changes 改行コードの変更履歴を保存する場合 True
Unify Only Open Files On Save All 「すべて保存」する時に、開いているドキュメントの
改行コードのみ統一する場合 True
Write Report To The Output Window 結果を出力ウィンドウに表示する場合 True

コンテキストメニュー

f:id:baba_s:20180309201905p:plain

ソリューションエクスプローラーでファイルやフォルダを右クリックして
「Unify Line Endings In This XXXX」を選択して

f:id:baba_s:20180309202056p:plain

表示されたウィンドウで、統一したい改行コードをチェックして
「OK」ボタンを押すことで、対象のファイルの改行コードを
一括で変更することもできます