Laden...

CodeNavigationAddIn

Erstellt von TOM_MUE vor 18 Jahren Letzter Beitrag vor 18 Jahren 2.951 Views
TOM_MUE Themenstarter:in
200 Beiträge seit 2004
vor 18 Jahren
CodeNavigationAddIn

Hallo,

Da ich ein großer Liebhaber von Tastenkombinationen (short cuts) im Allgemeinen und besonders in Visual Studio bin, habe ich begonnen ein AddIn für Visual Studio 2005 zu programmieren. Dieses AddIn, soll den Programmierer in der Codenavigation mit Tastenkombinationen (short cuts) und auch in visueller Form unterstützen.

Wenn in einer Codedatei die Klasse (Klassen) vom Code länger ist als es auf dem Monitor (TFT) dargestellt werden kann, ist man oft gezwungen, von einem zum anderen Ende der Datei zu scrollen um Codeelemente (Methoden etc.) zu erreichen. Eine bessere Übersicht kann da schon der „Class View“ Explorer von Visual Studio geben. In ihm werden die Klassen mit ihren Elementen (Fields, Properties, Enums etc.) angezeigt. Nachteil ist aber das man mit keiner Tastenkombination (short cut) Methoden, Fields oder andere Codeelemente direkt aufrufen kann. Hier setzt das CodeNavigationAddIn an. Mit dem CodeNavigationAddIn kann man mit Tastenkombinationen aus der IDE von Visual Studio direkt Methoden, Fields, Properties etc. anzeigen lassen. Dazu wird mit der Installation des CodeNavigationAddIns das Kontextmenu des Codeeditors erweitert (Abbildung1).


(Abbildung1)

Über diese Erweiterung oder über Tastenkombinationen (short cuts) (Liste1) können die einzelnen Codeelemente direkt in einem eigenen Toolfenster (Abbildung2) der IDE angezeigt werden.

Angezeigt werden können aber momentan nur die Codeelemente die innerhalb einer Klasse existieren (Stand BETA1).

1.STRG+ALT+F, STRG+ALT+F Alle Fields anzeigen.

*STRG+ALT+F, STRG+ALT+M Alle Methoden anzeigen.

*STRG+ALT+F, STRG+ALT+E Alle Enums anzeigen. (in BETA1 nur innerhalb einer Klasse)

*STRG+ALT+F, STRG+ALT+V Alle Events anzeigen. (in BETA1 nur innerhalb einer Klasse)

*STRG+ALT+F, STRG+ALT+P Alle Properties anzeigen.

*STRG+ALT+F, STRG+ALT+C Die Aktuelle Klasse anzeigen. (in BETA1 nur die aktuelle Klasse)

*STRG+ALT+F, STRG+ALT+N Alle Namespaces einer Codedatei (in BETA1 nicht unterstützt)

*STRG+ALT+F, STRG+ALT+U Alle Usings (Imports) anzeigen (in BETA1 nicht unterstützt)

*STRG+ALT+F, STRG+ALT+D Alle Delegates anzeigen. (in BETA1 nur innerhalb einer Klasse)

*STRG+ALT+F, STRG+ALT+I Alle Interfaces anzeigen (in BETA1 nur innerhalb einer Klasse)

*STRG+ALT+F, STRG+ALT+S Alle Structs anzeigen (in BETA1 nur innerhalb einer Klasse)

Mit der Tastenkombination STRG+ALT+C kann das Toolfenster für die Codeelemente aufgerufen werden.

Nach der Installation des CodeNavigationAddIns, kann man nun zum Anzeigen aller Methoden der aktuellen Klasse die Tastenkombination STRG+ALT+F, STRG+ALT+M drücken. Im Toolfenster des CodeNavigationAddIns werden darauf alle Methoden angezeigt die man dann mit den Pfeiltasten der Tastatur selektieren kann. Wird dann die Taste Enter (Return) gedrückt, navigiert das CodeNavigatioAddIn an die entsprechende Stelle in der Codedatei. Somit hat man die Möglichkeit im neuen „Code File Elements“ Toolfenster immer genau die Codeelemente anzeigen zu lassen, die man in dem Moment auch nur benötigt. Damit ist eine bessere Übersicht geschaffen.

Was kommt nach der BETA1?

Nun mein Bestreben ist es das CodeNavigationAddIn so zu erweitern, das in Zukunft auch mehr Sprachen als nur C# unterstützt werden. In jedem Falle soll VB.NET, J# und vielleicht auch Managed C++ unterstützt werden. Das hängt aber auch davon ab wie gut das Code Model von Visual Studio 2005 programmierbar geworden ist. Weiterhin sollen in kommenden Versionen auch die Elemente über die Tastenkombinationen erreichbar sein, die zwar außerhalb einer Klasse aber innerhalb der aktuellen Codedatei liegen (Enums, Events, Delegates und Interfaces etc.). Auch die Anzeige der Codeelemente im neuen Toolwindow des AddIns soll über Filter anpassbar werden.

Als erste Erweiterung wird es die Möglichkeit geben, die Anzeige für die jeweiligen Zugriffsmodifizierer der Codeelemente zu filtern (private, public, internal etc.). In einem weitern Schritt soll es ein Möglichkeit geben über eine Textbox die Anzeige der Codeelemente Namentlich zu filtern. Damit soll die Suche nach einer Methode oder einem anderen Codeelement erleichtert werden.

Natürlich existieren noch weitere Ideen und Wünsche meinerseits. Am meisten freue ich mich aber wenn es Feedback auf das AddIn geben würde mit konstruktiven Vorschlägen oder Wünschen. Also, bei Bedarf bitte Mail an mich 😉

Hier der Download: DOWNLOAD CodeNavigationAddIn

Weiter Screens auf meinem Blog www.tom-mue.de

HTH
TOM_MUE

PS: Warum erscheinen bei meiner Liste nur 1. und nicht fortlaufende Nummern???

1.271 Beiträge seit 2005
vor 18 Jahren

Hallo TOM_MUE,

Das sieht echt prima aus! So ein AddIn ist wirklich sehr nützlich.
Ich hätte noch einen Vorschlag:
Eine Mehrfachauswahl. Das nicht nur entweder "Felder" oder "Methoden", usw. ausgewählt werden können, sondern "Felder" und "Enums" aber keine "Methoden" usw. So ähnlich wie bei der Errorlist:

Du musst es ja nicht ausschreiben, Icons genügen.
Weiter so!

Gruß,
progger

A wise man can learn more from a foolish question than a fool can learn from a wise answer!
Bruce Lee

Populanten von Domizilen mit fragiler, transparenter Außenstruktur sollten sich von der Translation von gegen Deformierung resistenter Materie distanzieren!
Wer im Glashaus sitzt, sollte nicht mit Steinen werfen.

TOM_MUE Themenstarter:in
200 Beiträge seit 2004
vor 18 Jahren

Hallo Progger,

danke erstmal für das erfreuliche FeedBack 😉 Ich werde Deinen Vorschalg auf jeden Fall mal mit in die Featureliste mit aufnehmen.

Also viel Erfolg mit dem AddIn und wie schon Oben beshrieben, Bug- Reports und weitere Vorschläge sind immer willkommen.

Gruß

TOM_MUE

TOM_MUE Themenstarter:in
200 Beiträge seit 2004
vor 18 Jahren
Beta2

Hallo @all

Am gestrigen Abend konnte ich die BETA2 des CodeNavigationAddIn fertig stellen. Ich habe besonders darauf geachtet, mir bekannte Bugs aus dem weg zu räumen und die Visualisierung der Codeelemente im Codeelementsfenster zu verbessern.

Mehr Infos und der Download auf meinem Blog: www.tom-mue.de

Hier noch ein Screenshot:


View larger

Für konstruktive Kritik oder Bugmeldungen gerne hier im Forum oder per Mail an mich.

HTH
TOM_MUE

TOM_MUE Themenstarter:in
200 Beiträge seit 2004
vor 18 Jahren

Da leider bei der Lokalisierung von Visual Studio 2005 einige Bugs einprogrammiert wurden (wir sind alle nur Menschen 😉 ) habe ich eine neue BETA des CodeNavigationAddIn online gestellt.

Änderungen:

Wird das AddIn auf einem deutschen Windows XP installiert, wird den bestehenden Pfaden in den AddIn Optionen von VS2005, der Pfad "%ALLUSERSPROFILE%\Application Data\Microsoft\MSEnvShared\Addins " hinzugefügt. In diesen Pfad wird dann auch das AddIn- File kopiert damit Visual Studio 2005 das AddIn laden kann.

Mehr Infos auf meinem Blog. Würde mich freuen wenn ich von ein paar leuten FeedBack bekommen würde die ein deutsches VS2005 mit oder ohne deutschen BS installiert haben.

HTH
TOM_MUE