wake-up-neo.com

Festlegen der Standardcodierung in Visual Studio

Ich suche nach einer Möglichkeit, Visual Studio so einzurichten, dass meine Dateien immer in UTF-8 gespeichert werden.

Ich habe nur Optionen gefunden, um dieses Projekt breit festzulegen. Gibt es eine Möglichkeit, es für Visual Studio festzulegen?

64
Thomaschaaf

Möchten Sie, dass die Dateien als UTF-8 gespeichert werden, weil Sie Sonderzeichen verwenden, die bei der Kodierung ASCII verloren gehen würden? In diesem Fall gibt es in Tools > Options > Environment > Documents eine globale Einstellung von VS2008 mit dem Namen Save documents as Unicode when data cannot be saved in codepage. Wenn diese Option aktiviert ist, speichert VS2008 als Unicode, wenn bestimmte Zeichen nicht in der Standardkodepage dargestellt werden können.

Welche Dateien werden not als UTF-8 gespeichert? Alle meine .cs, .csproj, .sln, .config, .as * x usw. werden standardmäßig als UTF-8 (mit Signatur, die Bytereihenfolgen) gespeichert.

57
Samuel Meacham

Was

Dies ist mit EditorConfig möglich. 

EditorConfig hilft Entwicklern, konsistente Codierung zu definieren und beizubehalten Stile zwischen verschiedenen Editoren und IDEs.

Dies beinhaltet auch die Dateikodierung.

EditorConfig ist standardmäßig in Visual Studio 2017 integriert, und es waren Plugins für ältere Versionen als VS2012 verfügbar. Weitere Informationen finden Sie unter EditorConfig Visual Studio Plugin-Seite .

Wie

Sie können eine EditorConfig-Konfigurationsdatei hoch genug in Ihrer Ordnerstruktur einrichten, um alle beabsichtigten Repos zu umfassen (bis zum Root-Laufwerk, falls Ihre Dateien wirklich überall verstreut sind), und konfigurieren Sie das Einstellung charset

charset: setze latin1, utf-8, utf-8-bom, utf-16be oder utf-16le auf den Zeichensatz steuern.

Sie können Filter und Ausnahmen usw. auf jeder Ordnerebene oder nach Dateiname/-typ hinzufügen, wenn Sie eine genauere Steuerung wünschen.

Nach der Konfiguration sollten kompatible IDEs automatisch dafür sorgen, dass übereinstimmende Dateien den Regeln entsprechen. Beachten Sie, dass Visual Studio nicht alle Ihre Dateien automatisch konvertiert, sondern bei der Arbeit mit Dateien in IDE (Öffnen und Speichern) etwas tut. 

Was als nächstes

Während Sie über ein Visual Studio-weites Setup verfügen könnten, empfehle ich dringend, ein EditorConfig-Stammverzeichnis in die Versionskontrolle Ihrer Lösung aufzunehmen, damit explizite Einstellungen automatisch mit allen Teammitgliedern synchronisiert werden. Die Datei root-Datei editorconfig des Laufwerks kann ein Fallback sein, falls für ein Projekt noch keine eigenen editorconfig-Dateien eingerichtet wurden.

5
Imre Pühvel

Ich kenne keine globale Einstellung, aber Sie können dies versuchen:

  1. Speichern Sie alle Visual Studio-Vorlagen in UTF-8 
  2. Schreiben Sie ein Visual Studio Macro/Addin, das das DocumentSaved-Ereignis abhört und die Datei im UTF-8-Format speichert (falls noch nicht vorhanden).
  3. Setzen Sie einen Proxy in Ihre Quellcodeverwaltung, um sicherzustellen, dass die neuen Dateien immer UTF-8 sind.
1
Shay Erlichmen

Ich arbeite mit Windows7.

Systemsteuerung - Region und Sprache - Verwaltung - Sprache für Nicht-Unicode-Programme.

Nachdem ich "Systemgebietsschema ändern" auf Englisch (USA) eingestellt habe. Meine Standardkodierung von vs2010 ändert sich in Windows-1252. Es war vorher gb2312.

Ich erstellte eine neue .cpp-Datei für ein C++ - Projekt. Nachdem ich die neue Datei in TFS eingecheckt hatte, wird die Codierung Windows-1252 von der Eigenschaftenseite der Datei angezeigt.

0
user10959888