Visual Studio 2013 configuration

My personal extension recommendations and prepared settings of text formatting, code clean-up, and UI layout for a productive work environment.

Archived content: This topic may be outdated and no longer apply.

Please bring about 20 minutes to read this page in peace.

Wo man auch hinschaut, es scheint dass jeder Softwareentwickler seine IDE anders einstellt. Dateien links unten oder rechts oben, Programmausgabe unten ausgeblendet oder oben und immer sichtbar, Fehlerliste nur bei Bedarf oder permanent im Blickfeld. Das verwirrt aber höchstens Teamkollegen, die sich am fremden Rechner etwas anschauen. Was der eine unpraktisch oder effizient findet, ist dem anderen möglicherweise völlig gleichgültig und es war eben schon immer so. Irgendwo. Im letzten Leben.

Das heißt aber nicht, dass man sich nicht auch über die Anordnung seiner Werkzeuge Gedanken machen braucht. Denn wer sich selbst beobachtet, bemerkt vielleicht hin und wieder, dass die gewünschte Information mal im Weg und mal zu weit weg ist, oder dass eine Ansicht mehr Platz belegt als nötig oder oft gleichzeitig mit einer anderen genutzt wird, sie sich aber einen Platz teilen müssen.

Andere Einstellungen können zu echten Ärgernissen werden, wenn Code in einer gemeinsamen Quelltextverwaltung abgelegt wird. Dazu gehören vor allem die Textformatierung und Einstellungen zur Codebereinigung, sofern überhaupt verwendet. Leerzeichen oder Tabs, Klammern auf einer Einrückungsebene oder irgendwo weiter rechts, usw. In der Versionsverwaltung werden Abschnitte, die verändert und mit abweichender Formatierung zurückgeändert wurden deutlich sichtbar und erschweren das Erkennen der wesentlichen Änderungen. Gerade in einem Team ist es erforderlich, sich abzustimmen. Aber auch für einen selbst kann die Einhaltung bestimmter Konventionen eine Erleichterung beim Lesen bedeuten, was letztlich zu weniger Fehlern und schnellerer Bearbeitung führt. (Zumindest geht es mir so.)

Falls dir diese Aspekte völlig gleichgültig sind und bestimmt niemand deinen Code lesen wird, brauchst du hier nicht weiterlesen. Ansonsten können die Erweiterungen und Einstellungen, die auf dieser Seite vorgestellt werden, dabei helfen, die Produktivität mit C#-Projekten in Visual Studio 2013 zu erhöhen.

Ich nutze diese Einstellungen selbst und biete sie hier für andere an, um sie als Vorlage für eine praktische Grundeinrichtung zu nutzen. Meine Konfiguration ist nicht fundamental anders als die Standardwerte, die die meisten Entwickler sowieso schon verwenden. Es sind mehr Detailoptimierungen, die dieses Gesamtpaket ausmachen.

Konfiguration für andere Versionen von Visual Studio? Weiter zur Beschreibung für die Version 2019, Version 2017, Version 2015 oder Version 2010

Tastaturbedienung

Kannst du auch deine Finger nicht von der Tastatur lassen? Meist geht das einfach schneller, als erst die Maus zu suchen, dann den Mauszeiger, ihn dann noch exakt zu platzieren und auf ein Menü zu warten. Funktionen, die man alle paar Minuten braucht, lassen sich nach einer Weile auch gut mit ihrer Tastenkombination einprägen. Hier eine Übersicht der wichtigsten Tastaturbefehle:

VS2013-Tastaturbefehle.pdf248 KiBÜbersicht nützlicher Tastaturbefehle in Visual Studio 2013

Erweiterungen installieren

Installation von Erweiterungen für Visual Studio, die bestimmte Aufgaben übernehmen oder zusätzliche Informationen darstellen:

  • CodeMaid (Info und Download)
    Bereinigt Quelltexte anhand von Vorgaben automatisch, auch für die gesamte Projektmappe. Praktisch für importierten oder alten Code.
  • Console Launcher (Info und Download)
    Öffnet ein Konsolenfenster (PowerShell/Eingabeaufforderung) im Projektverzeichnis. So kann schnell ein Programm im Projekt gestartet oder ein Git-Befehl wie git gc aufgerufen werden.
  • Indent Guides (DownloadInfo)
    Zeigt Hilfslinien in jeder Einrückungsebene des Quelltexts an, die die Orientierung in längeren eingerückten Abschnitten erheblich verbessern, sowie einen rechten Rand, der nicht überschritten werden sollte. Manche Texteditoren können das sogar.
  • Productivity Power Tools 2013 (Info und Download)
    Umfangreiche Sammlung von Erweiterungen von Microsoft.
  • XAML Regions (Info und Download)
    Fügt die von C# bekannte Unterstützung für benannte Abschnitte (#region) in XAML hinzu.

Schritte

Zunächst sollte Visual Studio beendet werden. Die genannten Erweiterungen können direkt heruntergeladen und als Setup ausgeführt werden.

Indent Guides ist prinzipiell auch online verfügbar, allerdings lässt sich der Verwalter sehr viel Zeit damit, relevante Bugfixes auch in einem Release zu veröffentlichen. Deshalb biete ich selbst eine Vorabversion an. Die anderen Erweiterungen lassen sich alternativ auch direkt in Visual Studio über den Erweiterungs-Manager (im Menü „Extras“) installieren.

Einstellungen importieren

Importieren der vorbereiteten Visual-Studio-Einstellungen, die Angaben zur Textformatierung, Textdarstellung und dem Verhalten und Layout der IDE beinhalten. Beim Import kann angegeben werden, welche Teile der Einstellungen übernommen werden sollen. Per Vorgabe sind alle Teile ausgewählt. Dazu gehören insbesondere die Anordnung aller Tool-Fenster, Tastenkombinationen, Menüs und Symbolleisten. Vor dem Import können die aktuellen Einstellungen exportiert werden, um sie bei Bedarf wiederherzustellen.

Es sollten am besten alle Einstellungen importiert werden, mindestens jedoch folgende:

  • Indent Guides Styles
  • Optionen\Text-Editor (vollständig)
  • Optionen\Umgebung\Schriftarten und Farben

Schritte

VS2013.vssettings265 KiBVisual-Studio-2013-Einstellungen
  • Oben angegebene Datei herunterladen
  • Visual Studio starten
  • Menü „Extras; Einstellungen importieren und exportieren...“
  • Option „Ausgewählte Umgebungseinstellungen importieren“
  • Bei Bedarf aktuelle Einstellungen speichern
  • Schaltfläche „Durchsuchen“ und die heruntergeladene Datei auswählen, „Weiter“
  • Zu importierende Einstellungen auswählen, „Fertig stellen“
Die wesentlichen Anpassungen im Detail

Durch die Einstellungsdatei werden im Wesentlichen die folgenden Änderungen vorgenommen. Dazu eine kurze Begründung.

  • Farbschema: Blau – Beim kontrastlosen alles-grau lassen sich die verschiedenen Bereiche der Oberfläche kaum noch auseinanderhalten. Hier hat sich das VS2010-Farbschema gut bewährt.
  • Großschreibung im Menü deaktiviert – SCHREI DOCH NICHT SO! (In VS 2015 wieder voreingestellt)
  • Extern geänderte Dateien automatisch neuladen, wenn keine eigenen Änderungen ungespeichert sind – Nach einem Update-Checkout wird man sowieso immer auf „Ja“ klicken. Das geht jetzt schneller.
  • Neue Dokument-Tabs rechts öffnen – Von links nach rechts ist eben unsere Schreibrichtung und so macht das auch jedes andere Programm.
  • Kommentare in grau – Durch die unterschiedliche Helligkeit sind Kommentare besser als solche erkennbar. Sie unterstützen auch nur das Code-Verständnis, letztlich zählt aber der Code selbst. Grün ist dafür zu indifferent.
  • Regions in orange – Durch die auffällige Farbe des kurzen #region sind Abschnitte deutlich sichtbar und erfüllen ihren Zweck auch im aufgeklappten Zustand.
  • Keine Startseite – Braucht nur Zeit. Die letzten Projekte lassen sich schneller aus der Jumplist öffnen.
  • Projekt erstellen mit F6 – Dieser Tastaturbefehl erstellt nur das aktuelle Projekt, so erkennt man Buildfehler während der Programmierung schneller. (Aus Visual Studio 6 übernommen)
  • Zeilennummern im Editor – Dienen dem schnellen Abgleich mit Kollegen am Telefon oder aus externen Diff-Tools oder Fehlermeldungen. Strg+G springt zu einer Zeile.
  • Zeilenumbruch im Editor – Lange Zeilen sollten sowieso vermieden werden, dabei hilft die Linie bei 100 Zeichen. Die verbleibenden langen Zeilen werden so ohne aufwändiges Scrollen mit der Maus sofort sichtbar und verständlich.
  • Kein Kopieren/Einfügen ohne Textauswahl – Das kann nur Visual Studio und es zerstört den Inhalt der Zwischenablage, wenn man nicht damit rechnet.
  • Tabs statt Leerzeichen – Tabs sind zum Einrücken da. Tabs verhindern Inkonsistenz. Tabs erlauben individuelle Einrückungstiefe. Tabs lassen sich mit dem Cursor schnell überspringen. Die „Tabulator-Taste“ wird zum Einrücken benutzt. Leerzeichen können all das nicht.
  • Abstand nach Cast-Operator – Die Typumwandlung bindet schwächer als eine Multiplikation, warum soll sie dann näher am Operanden stehen? Und sie ist deutlich länger als ! oder -, ohne Abstand wirkt es sehr gedrängt und schlecht lesbar.

Falls du im einen oder anderen Punkt anderer Meinung bist und dafür eigene Argumente hast, lass es mich bitte wissen. Ich will nicht dumm sterben.

Productivity Power Tools anpassen

Auswählen der Funktionen der Erweiterung „Productivity Power Tools“, die sehr viele Funktionen enthält, von denen aber nur wenige nützlich sind. Außerdem müssen die Einstellungen für diese Erweiterung manuell vorgenommen werden, da sie beim Import nicht gesetzt werden können.

Schritte

  • Menü „Extras; Optionen...“
  • Kategorie „Productivity Power Tools“
  • Nur folgende Einträge aktivieren:
    • Colorized Parameter Help
      Farbliche Hervorhebung der Elemente im Parameter-Tooltip zur besseren Lesbarkeit.
    • Fix Mixed Tabs
      Meldet und korrigiert inkonsistente Tab-/Leerzeicheneinrückung im aktuellen Dokument.
    • Power Commands
    • Quick Launch Tasks
    • Solution Error Visualizer
    • TimeStamp Margin
  • Visual Studio neustarten

Code-Maid-Einstellungen importieren

Die Code-Maid-Einstellungen enthalten Vorgaben, wie Quelltexte bereinigt und umformatiert werden. Im Auslieferungszustand sind diese Regeln recht aggressiv eingestellt, so dass auch Codebereiche umformatiert werden, bei denen es nicht notwendig wäre, oder manche Codebereiche durch Zeilenumbrüche und Abstände unnötig in die Länge gezogen werden.

Schritte

CodeMaid-VS2013.settings25.2 KiBCodeMaid-Einstellungen für Visual Studio 2013
  • Oben angegebene Datei herunterladen
  • Menü „CodeMaid; Configuration...“
  • Schaltfläche „Import“
  • Heruntergeladene Datei auswählen

Snippets importieren

Snippets (Schnipsel, Ausschnitte) sind kurze Code-Vorlagen, die sich im Code-Editor einfügen lassen. Sie enthalten meist Platzhalter, die der Editor dann direkt in ihrem Platz im Code nacheinander abfragt. Dabei erhalten mehrere Vorkommen eines Platzhalters denselben Wert. Dadurch lassen sich immer wiederkehrende Konstrukte und Formulierungen schnell und ohne mehrfache Tipparbeit in ein Dokument einfügen. Da manchen Snippets in Visual Studio anscheinend nicht sehr viel Liebe zuteil wurde, werden sie hier einfach aktualisiert.

Schritte

  • Verzeichnis „C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC#\Snippets\1031\Visual C#“ im Windows-Explorer öffnen (einzelne Teile können je nach Plattform und Sprache abweichen)
  • Ordereigenschaften, Sicherheit: Für Benutzer „Ändern“ zulassen (erleichtert Aktualisierungen)
  • Dateien im folgenden Archiv in dieses Verzeichnis entpacken und überschreiben
Snippets.zip592 BAktualisierte Snippets für Visual Studio 2013

Mit folgenden Tastenkombinationen können Snippets eingefügt werden. Visual Studio unterscheidet zwischen einfachen Ausschnitten, die am aktuellen Ort eingefügt werden (wie Eigenschaften oder Methoden), und solchen, die einen markierten Text umschließen (wie Schleifen oder Regions).

Strg+K, Strg+X Ausschnitt einfügen…
Strg+K, Strg+S Umschließen mit… (vorher den zu umschließenden Text markieren)

Tipp: Damit das Umschließen mit Ausschnitten wie auch das Kopieren und Einfügen von Zeilen im Editor ohne ständiges Nachdenken zu vorhersehbaren Ergebnissen führt, sollte man sich angewöhnen, immer ganze Zeilen auszuwählen und nicht die Einrückung am Anfang und den letzten Zeilenumbruch wegzulassen. Dazu braucht der Textcursor die erste Spalte nie zu verlassen.

Statistic data

  • Created on 2014-10-09, updated on 2015-04-24.