ReSharper bietet eine Vielzahl an Funktionen, um zusätzliche Informationen über Code zu erhalten, strukturelle Codeblöcke auszuwählen und hervorzuheben sowie lokale Codetransformationen anzuwenden.
ReSharper erweitert die standardmäßige Syntaxhervorhebung von Visual Studio um benutzerdefinierte Hervorhebungen von Codeelementen in verschiedenen Sprachen. So können Sie zum Beispiel einfach zwischen lokalen Variablen und Feldern in Ihrem Code unterscheiden. Um die Hervorhebung von ReSharper einzuschalten, gehen Sie zu ReSharper | Options | Code Inspection | Settings und wählen Sie Color Identifiers aus. Die Farbe ist für jedes Element konfigurierbar.
Die Kontextaktionen von ReSharper sparen eine Menge Zeit beim Tippen, indem schnell kleine Änderungen am Code unter dem Cursor vorgenommen werden. Zum Beispiel können Sie mit wenigen Tastendrücken Zugriffsmodifizierer ändern, eine Nullprüfung hinzufügen, foreach
zu for
konvertieren oder umgekehrt. Wenn Kontextaktionen für die aktuelle Cursorposition verfügbar sind, zeigt ReSharper das Hammersymbol an: Sie können entweder auf das Symbol klicken oder Alt+Enter drücken, um eine passende Aktion auszuwählen.
Diese Funktion fügt notwendige Syntaxelemente (Klammern, Semikolons usw.) ein und bewegt den Cursor in eine Position, an der Sie die nächste Anweisung eingeben können – das erspart Ihnen eine Menge Hin- und Herspringen mit dem Cursor. Behalten Sie während Ihrer Arbeit die standardmäßige Tastenkombination für diese Funktion im Hinterkopf: Strg+Umschalt+Enter.
Complete Statement (auch bekannt als Smart Enter) hilft Ihnen in unterschiedlichen Szenarien:,
Klammern werden automatisch geschlossen, Semikolons hinzugefügt, if
-, while
-
und for
-Anweisungen vervollständigt und so weiter.
Wenn ein Stringliteral Inhalte in einer anderen formalen Sprache enthält, dann kann ReSharper speziell auf diese Sprache zugeschnittene Codeinspektionen, Quick-Fixes, Codevervollständigung, Kontextaktionen und weitere Funktionen ausführen.
Wenn eine formale Sprache innerhalb eines Stringliterals nicht automatisch erkannt werden kann, dann erlaubt ReSharper Ihnen, das Literal mithilfe des Menüs Alt+Enter oder durch Hinzufügen des folgenden Kommentars direkt vor dem Stringliteral manuell als eine bestimmte Sprache zu markieren: /*language=html|regexp*/
.
ReSharper bietet einen reichhaltigen Umfang an Tools, um mit regulären Ausdrücken in C# zu arbeiten. Sie können schnell bestehende Ausdrücke analysieren sowie Fehler finden und beheben. Beim Schreiben von neuen Ausdrücken hilft ReSharper mit der automatischen Vervollständigung und Überprüfung.
Sie können den Menüpunkt ReSharper | Tools | Validate Regular Expression auswählen, um diverse Probestrings einzugeben und auf die Übereinstimmung mit Ihrem regulären Ausdruck zu testen. Mithilfe dieses Dialogfensters können Sie Ihren Ausdruck korrigieren und sicherstellen, dass Sie die erwarteten Treffer bekommen.
Auch dieser Teil der IntelliSense-Funktion von Visual Studio wurde in ReSharper erweitert. Wenn Sie eine Methode aufrufen, zeigen die Parameterinformationen Ihnen alle verfügbaren Methodensignaturen und -parameter mit der dazugehörigen Dokumentation in einer QuickInfo an. Die QuickInfo erscheint automatisch beim Tippen und lässt sich manuell mit Strg+Umschalt+Leertaste aufrufen. Während Sie neue Argumente hinzufügen, graut ReSharper jede Signatur aus, die inkompatibel wird.
Immer wenn Sie in C# den Textcursor direkt vor/hinter einer schließenden runden, eckigen oder geschweiften Klammer platzieren, wird die entsprechende öffnende Klammer hervorgehoben und umgekehrt (diese Option ist konfigurierbar).
In VB.NET wird die dazugehörige Sub
oder Function
hervorgehoben, wenn der Textcursor innerhalb oder End Sub
oder End Function
positioniert wird. Das
passende Schlüsselwort und dessen Zeile werden immer dann hervorgehoben, wenn Sie den Textcursor innerhalb des
öffnenden Schlüsselworts positionieren (Sie können
auch diese Funktion genauer einstellen).
In XML werden passende Tags unaufdringlich hervorgehoben, wodurch Sie die
Tag-Struktur sehen können.
Wenn ein zugehöriger Codeausschnitt aus dem Bildschirm scrollt, erscheint ein
entsprechendes Popup zur
besseren Übersicht.
Wenn ein Typname nicht aufgelöst werden kann, weil Sie vergessen haben, die zugehörige Namespace-Importanweisung in den Quellcode aufzunehmen, dann erscheint ein kleines Popup, um einen oder mehrere Typen für den Import vorzuschlagen. Drücke Sie einfach Alt+Enter, und die entsprechende Namespace-Importanweisung wird automatisch eingefügt. Die Cursorposition bleibt dabei unverändert.
Bei Markupdateien in Webanwendungen kann ReSharper Benutzersteuerelemente (ascx-Dateien) basierend auf deren Verwendung automatisch importieren.
Wenn Sie (
, [
, "
oder '
im
Editor eintippen, wird das passende schließende Zeichen
automatisch eingefügt (sofern sinnvoll). Diese Funktion kann einfach ausgeschaltet werden, aber Sie
sollten keine Angst davor haben, aus Versehen
zu viele schließende runde oder eckige Klammern oder Anführungszeichen einzufügen. Wenn die schließende
Klammer oder das Anführungszeichen
bereits vorhanden ist, wird ReSharper nicht noch ein zweites hinzufügen.
In XML erscheint ein entsprechendes schließendes Zeichen automatisch,
sobald Sie ein öffnendes Anführungszeichen oder
eine öffnende Klammer eintippen.
Duplizieren Sie schnell eine beliebige Codezeile (oder einen Codeblock), indem Sie den Textcursor auf die gewünschte Zeile im Editor positionieren (bzw. den gewünschten Block auswählen) und Strg+D drücken.
ReSharper erlaubt Ihnen das schnelle Ändern der Reihenfolge der Codeelemente mit einem einzigen Tastendruck (okay, insgesamt sind es vier Einzeltasten): Strg+Umschalt+Alt+Hoch/Runter/Links/Rechts. Sie können insbesondere Mitglieder hoch und runter verschieben, Parameter und Argumente neu anordnen, Anweisungen innerhalb eines Blocks verschieben, Anweisungen aus einem Block heraus oder in diesen hinein verschieben, XML-Tags hoch und runter und XML-Attribute nach links und rechts verschieben und so weiter.
Um sich die Dokumentation für eine bestimmte Klasse, Methode/Funktion oder ein anderes Symbol direkt im Editor anzusehen, positionieren Sie den Textcursor auf ein Codesymbol und drücken Sie Strg+Umschalt+F1. Die Dokumentation wird in einem Popup-Fenster mit anklickbaren Links zu anderen Ressourcen angezeigt, insbesondere zur MSDN-Dokumentation.
Sie können einen Codeblock zügig auskommentieren oder die Auskommentierung aufheben, indem Sie den Block im Editor auswählen und Strg+Alt+/ (für Zeilenkommentare) oder Strg+Umschalt+/ (für Blockkommentare) drücken.
Falls kein Codeblock ausgewählt ist, können Sie außerdem Strg+Alt+/ verwenden, um die Codezeile,
in der sich der Textcursor befindet, auszukommentieren oder die Kommentierung aufzuheben. Wenn Sie unter den gleichen
Umständen
Strg+Umschalt+/ drücken, werden die Blockkommentar-Öffnungszeichen (/*
) und die
Blockkommentar-Schließungszeichen (*/
) direkt vor und hinter dem Textcursor eingefügt.
Wenn der Textcursor innerhalb des kommentierten Codeblocks ist, wird die Kommentierung aufgehoben.
Die Funktion Extend Selection hilft, immer größere Codeblöcke auszuwählen. Das heißt, dass Sie mühelos jeden Ausdruck im Code auswählen können, indem Sie den Textcursor innerhalb des Ausdrucks platzieren und Strg+Alt+Rechts wiederholt drücken. Shrink Selection funktioniert auf die umgekehrte Weise und kann angewendet werden, indem Sie Strg+Alt+Links drücken.
Sie können das Mitglied, auf dem sich Ihr Textcursor befindet, oder dessen Typ, auch schnell auswählen, indem Sie Strg+Umschalt+[ drücken.
Wenn Sie lange Stringliterale eintippen müssen, dann hilft ReSharper Ihnen beim Aufteilen dieser in mehrere Zeilen, indem es die erforderlichen Anführungszeichen und Plus-Zeichen hinzufügt: Während sich der Textcursor innerhalb eines Stringliterals befindet, können Sie Enter oder Umschalt+Enter drücken, um den String aufzuteilen, ohne dessen Wert zu verändern.
ReSharper bietet einen speziellen Einfügebefehl an, auf den Sie über Strg+Umschalt+V zugreifen können. Dieser lässt Sie auf den Verlauf der Zwischenablage zugreifen und schnell ein beliebiges der kürzlich aus Visual Studio in die Zwischenablage kopierten Elemente einfügen. ReSharper beginnt mit dem Aufzeichnen der in die Zwischenablage kopierten Elemente, sobald Sie Visual Studio starten, und es löscht den Verlauf, sobald Sie es schließen.
Alle auf dieser Seite angegebenen Tastenkürzel sind in der standardmäßigen "Visual Studio"-Tastaturbelegung von ReSharper verfügbar. Weitere Informationen zu den beiden Tastaturbelegungen von ReSharper finden Sie in der ReSharper-Dokumentation.