Seite 1 von 1

Visual Studio 2019 Navigation / Header+Source etc.

Verfasst: 14.02.2022, 11:11
von Jonathan
In Visual Studio 2019 ist der Shortcut für "Toggle Source / Header" [Strg + K; Strg + O]. Für mich ist das eine der wichtigsten Funktionen zur Navigation, weswegen mich dieses umständliche Shortcut irgendwie irritiert - vor allen Dingen weil man direkt beide Hände davon braucht (im Gegensatz zu Dingen die Strg + C, V, X, S, A, ..., die man auch alle oft benutzt, die man aber bequem mit der linken Hand ausführen kann während die Maus in der rechten Hand bleibt).

Nervt euch das auch und wie löst ihr das? Ein paar Ideen:
- Shortcuts neu konfigurieren. Wäre vermutlich möglich, aber man arbeitet ja auch nicht immer mit der selben Installation auf dem selben Rechner und dann aktiviert man vlt. eine ganz andere Funktion aus Versehen?
- Projekt so anlegen, dass Header/Sources nicht in getrennten Ordnern liegen sondern im Solutionexplorer immer nebeneinander sind und dann den benutze.
- Die Funktion aus dem Rechte-Maustaste-Menü aufrufen. Das find ich allerdings auch sehr überladen und unübersichtlich.
- Irgendein Addon installieren, dass alles besser macht?

Speziell zum letzten Punkt: Was ich eigentlich auch gerne mache ist zwei Tabs nebeneinander zu öffnen und in einem dann den Header und im anderen den Source zu haben. Es wäre aber sehr nett, wenn man das automatisieren könnte, das also z.b. immer die richtigen Dateien in beiden Tabs geöffnet sind. Außerdem wäre es vermutlich nett, wenn man diese Funktion schnell aktivieren oder deaktivieren könnte, manchmal will man ja wirklich zwei Dateien für beide Tabs explizit auswählen.

Das hier ist also eher ein Brainstorming, als ein Problem. Ich habe schlicht nicht das Gefühl, dass meine Codenavigation so effizient ist, wie sie sein könnte und es würde mich interessieren, welche Workflows sich bei euch etabliert haben.

Re: Visual Studio 2019 Navigation / Header+Source etc.

Verfasst: 14.02.2022, 11:37
von Krishty
Jonathan hat geschrieben: 14.02.2022, 11:11Ich habe schlicht nicht das Gefühl, dass meine Codenavigation so effizient ist, wie sie sein könnte
Fehlt da ein nicht? :)

Wenn ich zwischen Header und Implementierung wechsle, dann eigentlich nur, um von der Definition einer Variable/Funktion zu ihrer Deklaration zu kommen, oder umgekehrt. Also jetzt nicht, um Doku zu schreiben oder um zu gucken, was sonst noch im Header herumliegt.

Zwischen Definition und Deklaration einer Variable wechselt man am schnellsten, indem man Strg gedrückt hält und dann auf den Namen klickt. (Jedenfalls, wenn man eh schon die Hand an der Maus hat.)

  // client.c
  int x = foo();
< Strg+Klick auf foo bringt dich zur Deklaration

  // foo.h
  void foo();
< nochmal Strg+Klick darauf bringt dich zur Definition

  // foo.c
  void foo() { }


Das bringt mich mit höchstens zwei Klicks zur Deklaration im Header oder zur Definition in der Übersetzungseinheit. Vielleicht hilft dir das …

Re: Visual Studio 2019 Navigation / Header+Source etc.

Verfasst: 14.02.2022, 12:46
von Schrompf
Klicken tu ich überhaupt nicht. F12 ist im Visual Studio der Shortcut dafür, zumindest bei mir. Weiß nicht, inwiefern diese Shortcuts übertragbar sind, VS hat in seinen Defaults ja auch ne gewisse Entwicklung hingelegt.

Ich empfehle Visual Assist (kostet Geld) oder ein kleines Skript, das es zum Kopieren&Einfügen im Netz gibt. Die Funktion liegt bei mir auf Alt+O, Alt+Shift+O ist "Open File in Solution", was VS erst 10 Jahre später gelernt hat und was dort immer noch hackelangsam ist. Alt+Shift+O, zwei drei Buchstaben vom Wunsch-Filename und ab geht's. Großartig.

Re: Visual Studio 2019 Navigation / Header+Source etc.

Verfasst: 14.02.2022, 14:07
von Jonathan
Krishty hat geschrieben: 14.02.2022, 11:37Fehlt da ein nicht? :)
Haha, ja. Wenn ich ambitioniert bin lese ich mir meine Posts vor dem Abschicken nochmal komplett durch und verbessere jeden dritten Satz, aber manchmal hab ich darauf keinen Bock und dann passiert sowas.

Ansonsten: Ich hab jetzt doch mal den Toggle-Shortcut auf Strg+Q gelegt, weil da vorher Quick Launch war was ich wirklich nie benutzt habe, und Q so schön schnell erreichbar ist.
Das mit Strg+Anklicken hatte ich tatsächlich nicht auf dem Schirm. Ich habs ausprobiert und mag es, auch weil es z.B. für includes funktioniert. Schön schön.

F12 als "Go to definition" gefällt mir tatsächlich ein wenig weniger, ich glaube weil das so weit rechts ist. Ich habe tatsächlich meistens die rechte Hand an der Maus und die linke auf der linken Seite der Tastatur, da geht es tatsächlich viel schneller einfach Strg+Klick zu benutzen.

Visual Assist wird ja seit Jahrzehnten schon empfohlen, allerdings habe ich ein wenig das Gefühl, dass es früher noch wichtiger war, weil VS immer mehr Features eingebaut hat. Aber vielleicht kriegt man ja über die Arbeit eine Lizenz die man dann benutzen kann, dann spart man sich die 130$...

Re: Visual Studio 2019 Navigation / Header+Source etc.

Verfasst: 16.02.2022, 09:04
von Walker
ALT + O, geht in VS auch mit einem freien Plugin wer Visual Assist nicht hat. VSC hat auch ALT + O , oder die Sprünge zur Definition/Deklaration mit F12 was aber bei großen Code-Basen nicht immer sauber funktioniert. Daher nutze ich immer ALT + O

Re: Visual Studio 2019 Navigation / Header+Source etc.

Verfasst: 16.02.2022, 15:54
von starcow
Ich hatte es bislang auch so gehalten, dass ich die Header-Dateien einfach in einem separaten Tab immer mitgeöffnet habe.
Nur wird das halt ab ca. vier Dateien doch eher unübersichtlich...
Krishty hat geschrieben: 14.02.2022, 11:37
Jonathan hat geschrieben: 14.02.2022, 11:11Ich habe schlicht nicht das Gefühl, dass meine Codenavigation so effizient ist, wie sie sein könnte
Fehlt da ein nicht? :)
Wäre es dann nicht eine doppelte Verneinung? :-) (Oder ist das bereits die korrigierte Form?)

Re: Visual Studio 2019 Navigation / Header+Source etc.

Verfasst: 16.02.2022, 17:45
von joggel
starcow hat geschrieben: 16.02.2022, 15:54 Ich hatte es bislang auch so gehalten, dass ich die Header-Dateien einfach in einem separaten Tab immer mitgeöffnet habe.
Nur wird das halt ab ca. vier Dateien doch eher unübersichtlich...
Ich mach das auch so. Man kann ja einzelne Dateien anpinnnen. Aber nach 2 oder 3 Reihen angepinnte Dateien wird das auch unübersichtlich.
Wäre es dann nicht eine doppelte Verneinung? :-) (Oder ist das bereits die korrigierte Form?)
Ich komme damit hier auch regelmäßig durcheinander xD