web-dev-qa-db-ja.com

Visual Studioで標準エンコードを設定する方法

Visual Studioをセットアップして、常にUTF-8でファイルを保存する方法を探しています。

私はこのプロジェクトを広く設定するオプションを見つけました。 Visual Studio全体に設定する方法はありますか?

76
Thomaschaaf

ASCIIエンコーディングで失われる特殊文字を使用しているため、ファイルをUTF-8として保存しますか?その場合、Tools > Options > Environment > DocumentsにVS2008グローバル設定があります。 Save documents as Unicode when data cannot be saved in codepage。これを有効にすると、VS2008は、特定の文字をそれ以外の場合はデフォルトのコードページで表現できない場合、Unicodeとして保存します。

また、どのファイルがnot UTF-8として保存されていますか?すべての私の.cs、.csproj、.sln、.config、.as * xなどは、すべてデフォルトでUTF-8(署名、バイトオーダーマーク付き)として保存されます。

58
Samuel Meacham

EditorConfig で可能です。

EditorConfigは、開発者が異なるエディターとIDEの間で一貫したコーディングスタイルを定義および維持するのに役立ちます。

これにはファイルのエンコードも含まれます。

EditorConfigはデフォルトでVisual Studio 2017に組み込まれています。VS2012以前のバージョンで使用可能なプラグインがありました。 EditorConfig Visual Studioプラグインページ から詳細をお読みください。

どうやって

EditorConfig構成ファイルをフォルダー構造内で十分に高く設定して、目的のすべてのリポジトリ(ファイルが実際に散在している場合はドライブルートまで)を構成し、 setting charset を構成できます。 =:

charset:latin1、utf-8、utf-8-bom、utf-16beまたはutf-16leに設定して文字セットを制御します。

すべてのフォルダレベルで、またはより細かく制御したい場合は、ファイル名/タイプごとにフィルタや例外などを追加できます。

一度構成すると、互換性のあるIDEは自動的に一致するファイルを適合させてルールを設定します。 Visual Studioはすべてのファイルを自動的に変換するわけではありませんが、IDE(開いて保存)でファイルを操作する場合はそのビットを実行します。

次は何

Visual Studio全体のセットアップを行うことはできますが、ソリューションのバージョン管理にEditorConfigルートを含めることを強くお勧めします。これにより、明示的な設定がすべてのチームメンバーにも自動的に同期されます。一部のプロジェクトに独自のeditorconfigファイルがまだ設定されていない場合、ドライブルートのeditorconfigファイルがフォールバックになる可能性があります。

12
Imre Pühvel

他のグローバル設定については知りませんが、これを試すことができます:

  1. すべてのVisual StudioテンプレートをUTF-8で保存します
  2. DocumentSavedイベントをリッスンし、ファイルをUTF-8形式で保存するVisual Studioマクロ/アドインを作成します(まだない場合)。
  3. ソース管理にプロキシを配置して、新しいファイルが常にUTF-8になるようにします。
1
Shay Erlichmen

Windows7を使用しています。

コントロールパネル-地域と言語-管理-非Unicodeプログラムの言語。

「システムロケールの変更」を英語(米国)に設定した後。 vs2010のデフォルトのエンコーディングはWindows-1252に変更されます。以前はgb2312でした。

C++プロジェクト用に新しい.cppファイルを作成しました。新しいファイルをTFSにチェックインした後、ファイルのプロパティページからエンコーディングショーWindows-1252を表示しました。

0
user10959888