Visual Studio 2015 configuration

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

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 2015 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 2017, Version 2013 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:

VS2015-Tastaturbefehle.pdf353 KiBÜbersicht nützlicher Tastaturbefehle in Visual Studio 2015

Visual Studio installieren

Das Setup von Visual Studio kann mit den Vorgabeeinstellungen durchgeführt werden. Das benötigt mindestens 8 GB Speicherplatz und dauert zwischen 30 Minuten und 2 Stunden.

Nach der Installation wird Visual Studio gestartet. Mit Microsoft-Konto anmelden (oder falls vorhanden mit Product Key aktivieren) und „Allgemeine“ Einstellungen auswählen.

Erweiterungen installieren

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

  • CodeMaid
    Bereinigt Quelltexte anhand von Vorgaben automatisch, auch für die gesamte Projektmappe. Praktisch für importierten oder alten Code.
  • Indent Guides (Info)
    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.
  • Macros for Visual Studio
    Makroaufzeichnung und -wiedergabe, merkt sich umfangreiche oder lästige Bearbeitungen und wendet sie danach wiederholt an. (Siehe oben: Tastaturbefehle. In VS 2010 war diese Funktion noch integriert.)
  • Productivity Power Tools 2015
    Umfangreiche Sammlung von Erweiterungen von Microsoft.
  • TODO Highlighter
    Hebt alle Vorkommen von „TODO“ im Editor rot hervor, damit man sie nicht übersieht.
  • XAML Regions
    Fügt die von C# bekannte Unterstützung für benannte Abschnitte (#region) in XAML hinzu.

Schritt für Schritt

Zunächst sollte Visual Studio beendet werden. Die genannten Erweiterungen können direkt heruntergeladen und als eigenständiges 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. Die neueste Betaversion enthält außerdem mehrere Fehler. Deshalb biete ich selbst eine getestete und erprobte 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. Hier sollten alle Bereiche ausgewählt bleiben. Diese Einstellungsdatei enthält nur die einzelnen Optionen, die ich für wichtig halte, und ändert andere Optionen nicht. Vor dem Import können die aktuellen Einstellungen exportiert werden, um sie bei Bedarf wiederherzustellen.

Schritt für Schritt

VS2015.vssettings159 KiBVisual-Studio-2015-Einstellungen
  • Oben angegebene Datei herunterladen
  • Visual Studio starten
  • Menü „Extras; Einstellungen importieren und exportieren...“ („Import and Export Settings...“)
  • Option „Ausgewählte Umgebungseinstellungen importieren“
  • Bei Bedarf aktuelle Einstellungen speichern
  • Schaltfläche „Durchsuchen“ und die heruntergeladene Datei auswählen, „Weiter“
  • Zu importierende Einstellungen prüfen, „Fertig stellen“

Zusätzliche manuelle Anpassungen

Aufgrund von Fehlern in Visual Studio werden manche Einstellungen derzeit nicht importiert und müssen manuell angepasst werden: (Das scheint seit Update 2 nicht mehr nötig zu sein, es kann aber nicht schaden, das zu prüfen.)

  • Menü „Extras, Optionen...“
  • Abschnitte „Text-Editor; CSS/LESS/SCSS; Erweitert“
  • Einstellung „Klammernpositionen“ auf „Erweitert“ ändern
Die wesentlichen Anpassungen im Detail

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

  • 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 (rechte Maustaste auf dem Taskleistensymbol) ö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)
  • Makroaufzeichnung mit Strg+Umschalt+R (wie Record) und Wiedergabe mit Strg+Umschalt+P (wie Playback), statt zweisteliger Kombinationen ohne Zusammenhang. Vielleicht war das auch in VS 2010 schon so.
  • 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 vertikale Linie bei Spalte 100. Die verbleibenden langen Zeilen werden so ohne aufwändiges Scrollen mit der Maus sofort sichtbar und verständlich.
  • 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.

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 auswählen

Auswählen der Funktionen der Erweiterung „Productivity Power Tools“, die sehr viele Funktionen enthält, von denen aber nur wenige nützlich sind und andere zu einer unübersichtlichen oder redundanten Darstellung führen.

Schritt für Schritt

  • Menü „Extras; Optionen...“
  • Kategorie „Productivity Power Tools“
  • Nur folgende Einträge aktivieren, alle anderen deaktivieren:
    • Ctrl+Click Go To Definition
      Erlaubt das Navigieren durch Definitionen mit Strg-Taste und Klicken, wie bei Hyperlinks in Word.
    • Fix Mixed Tabs
      Meldet und korrigiert inkonsistente Tab-/Leerzeicheneinrückung im aktuellen Dokument.
    • Peek F1
      Zeigt mit Alt+F1 die Inline-Dokumentation im Editor an.
    • Power Commands
      Enthält zusätzliche Befehle, wie das erneute Öffnen eines geschlossenen Dokuments.
    • Quick Launch Tasks
      Fügt weitere Schnellstart-Funktionen hinzu, z. B. „CollapseRegions“.
    • Solution Error Visualizer
      Markiert Projekte, Verzeichnisse und Dateien im Projektmappen-Explorer, in denen Build-Fehler oder Warnungen auftreten, und zeigt diese im Tooltip an.
    • TimeStamp Margin
      Stellt Zeilen im Ausgabefenster einen kurzen Zeitstempel voran, um alte von neuen Meldungen zu unterscheiden.
  • Visual Studio neustarten

CodeMaid-Einstellungen importieren

Die CodeMaid-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.

Schritt für Schritt

CodeMaid.config15.5 KiBCodeMaid-Einstellungen für Visual Studio 2015
  • Oben angegebene Datei herunterladen
  • Menü „CodeMaid; Options...“
  • Schaltfläche „Import“
  • Heruntergeladene Datei auswählen

Alles aktualisieren

Jetzt können noch die installierten Add-ons aktualisiert werden. Prinzipiell sollte alles auf dem aktuellen Stand gehalten werden. Es gibt allerdings ein paar sehr große Add-ons, die die meisten Entwickler gar nicht brauchen. Dazu gehören „Azure SDK“ und „SQL Server Tools“. Deren Update kann man auch mit „immer ignorieren“ im Benachrichtigungsfenster überspringen.

Schritt für Schritt

  • Menü „Extras; Erweiterungen und Updates“
  • Abschnitt „Updates“
  • Alle Einträge aktualisieren
  • Visual Studio neustarten

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.

Schritt für Schritt

  • Verzeichnis „C:\Program Files (x86)\Microsoft Visual Studio 14.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.zip564 BAktualisierte Snippets für Visual Studio 2015

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.

Fehler in Visual Studio 2015

Eine unschöne Neuerung mit Visual Studio 2015 war die hohe Zahl an Fehlern, die im Alltag deutlich zu spüren waren. Trotz regelmäßiger Feedback-Meldung kamen in der finalen RTM-Version nach dem RC noch neue Fehler dazu; die meisten wurden mit Update 2 behoben. Ich halte diese Liste weiterhin aktuell, sie war schonmal deutlich länger.

  • Editor: Beim Einfügen von #if ... werden alle folgenden #region/#endregion in die erste Spalte verschoben [seit RTM]
  • Einstellungen für CSS/LESS/SCSS-Formatierung werden auf deutsch exportiert und nicht wieder importiert (auch nicht auf englisch) [behoben in Update 2?]
  • Einstellungen für XAML-Formatierung werden nicht exportiert (brauche ich derzeit nicht)
  • Übersetzung: Menü „Extras; Einstellungen importieren und exportieren...“ heißt „Import and Export Settings...“ [seit RTM] „Import- und Exporteinstellungen...“ [seit Update 1]

Statistic data

  • Created on 2015-08-13, updated on 2016-10-14.