UntiyでWindowsとMacでの文字化け、改行コード違いの回避(Visual Studio)

3 min read

はじめに

Unityのプロジェクトをデフォルト設定で、WindowsとMac両方から編集すると、
文字化け、改行コードの不一致が発生します(ToT)

下記になるように設定していきます!

項目
文字コード UTF-8 BOM付き
改行コード lf

設定値については、統一したい内容に合わせて変更してください!!!

Mac側のUnityからスクリプトを作成する場合は対応出来ていません!!
UTF-8 BOM無し」が作成されます

環境

■Windows側

保存時に改行コードを自動変換

  1. 拡張機能 -> 拡張機能の管理」から、「Line Endings Unifier」をインストール


  1. ツール -> オプション」から、「Line Endings Unifier」に下記を設定
項目
Default Line Ending Linux
Force Default Line Ending On Document Save True

「EditorConfig」による、カスタムエディター設定

  1. プロジェクトを右クリックして、「追加 -> 新しい項目」を押下
  2. editorconfig」を検索して、「editorconfig ファイル(.NET)」選択
  3. 追加」を押下


  1. はい」を押下

  1. プロジェクトフォルダ配下に作成される「.editorconfig」を、
    テキストエディタ等で開いて下記を設定

  2. ソリューションの変更を保存

editorconfig」の設定値の詳細は下記のリンクを参照
EditorConfig
Visual Studio 2019 EditorConfig

項目
charset utf-8-bom
end_of_line lf

■Mac側

下記の設定をしても、Unityからスクリプトを作成すると、
EditorConfig」で設定している「UTF-8 BOM付き」は作成できません
Visual Studio」から作成する場合のみ有効です
※他のIDEを使用するか、拡張エディタを作成する事で回避する方法もあります

改行コードの設定

  1. Visual Studio -> ユーザー設定」を押下
  2. ソース コード -> コードのフォーマット -> C# ソースコード」を選択
  3. 改行コード」に「Unix / Mac」を設定して「OK」を押下
  4. Visual Studio -> ユーザー設定」を押下

「EditorConfig」を有効にする

  1. Visual Studio -> 拡張機能」を押下
  2. ギャラリー」を選択
  3. EditorConfig」を選択して、「インストール」を押下
  4. インストール」を押下