Da Du diesen Text hier liest, bist Du offensichtlich genau so ein Nerd wie wir. Komm zu uns und bewerbe Dich bei ///\/ DevBoost: https://devboost.com/karriere (https://api.devboost.de)

DevBoost Top 10 IDE Shortcuts

13.07.2021 / Jakob Handrick

Top 10 Listen. Das Internet ist voll davon. Seien es Katzenvideos, Reiseziele in Pandemiezeiten, Superhelden oder Tiernahrung: Wir lieben es, unsere Lieblingsobjekte (physischer und nicht-physischer Natur) zu bewerten und einzuordnen. Warum also nicht auf den Trend aufspringen und einen Artikel über unsere Top 10 IDE-Shortcuts schreiben?

Shortcuts vereinfachen unsere tägliche Arbeit am Computer immens. Jeder nicht getätigte Griff zur Maus lässt uns im Flow bleiben. Jeder Hotkey gibt uns Stabilität und lässt uns die Übersicht behalten. In allen Lebensbereichen übernehmen wir Automatismen, um ein Grundlevel an Sicherheit und Effizienz zu gewährleisten, sei es das Anschnallen vor der Autofahrt, das unbewusste Abschließen der Tür bei Verlassen der Wohnung oder das automatische Verstauen von E-Mails abhängig von Absender und Inhalt. Wiederkehrende Handlungen wollen wir schnell und unkompliziert abhandeln. Beim Arbeiten geben uns Shortcuts die Möglichkeit, den Fokus auf das Schreiben von Code statt auf das Suchen von Funktionalität in Menüs zu richten.

Jeder Mensch hat in allen Lebensbereichen eigene Präferenzen und einen eigenen Erfahrungshorizont, aus dem heraus er seine Gedanken und Taten rechtfertigt. Deshalb werden bei dieser Liste viele unserer Kollegen mit unterschiedlichstem Erfahrungsschatz zu Wort kommen, die ihre Lieblingsshortcuts vorstellen und erklären, warum diese Abkürzung ihre Arbeit vereinfacht und was den besonderen Reiz des Shortcuts ausmacht. Die Liste ist auch nicht als Ranking zu verstehen. Vielmehr wird ein Konglomerat von Ideen vorgestellt, die in Summe eine Vorstellung davon geben, was mit Automatismen alles möglich ist und was auch wir als Unternehmen und deren Mitarbeiter täglich voneinander lernen können.

(Anm. d. Autors: Tatsächlich habe ich bereits beim Sammeln der Beiträge einige der Shortcuts übernommen und war überrascht, was die IDE alles in einem Sammelsurium von Menüs versteckt. Abgesehen davon machen einige der Shortcuts einfach eine Menge Spaß.)

Da viele von uns IntelliJ als IDE nutzen, werden die meisten Shortcuts dafür vorgestellt. Andere IDEs können ähnliche oder gleichartige Funktionalität unter anderen Key Bindings beinhalten. Haltet die Augen offen ;) Außerdem stellen wir die Funktionalität beim englischen Namen vor. Dies wird von der IDE standardmäßig vorgegeben und wir haben uns dem Vokabular angepasst.

Ohne weiter um den heißen Brei zu reden, beginnen wir endlich.

David

Avatar David

Introduce constant / field / variable

Kommando: Strg+Alt+C/F/V (PC) | Option+Cmd+C/F/V (Mac)

Alle der genannten Optionen nehmen den Ausdruck entweder von der aktuellen Auswahl oder an der aktuellen Cursorposition und extrahieren ihn entweder als Konstante, Funktion oder Variable. Das erspart mir eine Menge Cut-and-Paste-Operationen sowie die Eingabe von Variablen, insbesondere beim Refactoring und der Vereinfachung großer Codebasen.

Jakob

Avatar Jakob

Find in files / Find files

Kommando: "Find in files" Strg+Shift+F (PC) / Cmd+Shift+F (Mac) | "Search anything" Shift+Shift

Um sich schnell in großen Codebasen oder Legacy-Systemen zurecht zu finden, besonders wenn "Find Usages" nichts sinnvolles zurückgibt, greife ich gern auf "Find in files" und "Find Files" zurück. IntelliJ kann dabei die Suche auf bestimmte Ordner, ganze Wörter oder die Beachtung von Groß- und Kleinschreibung einschränken. Auch wenn im Zuge von z.B. Testausführungen oder Merge-Commits Dateinamen in der Konsole ausgegeben werden, die ansonsten nur durch aufwendiges manuelles Wühlen durch den Projektbaum zu finden wären, kann dem ein schneller "Double Shift" Abhilfe schaffen.

Leon

Avatar Leon

Select in (File Tree/…​)

Kommando: Alt+F1 (PC) | Option+F1 (Mac)

Hast du dich schon einmal durch verschiedene Definitionen geklickt, um den Code, der vor dir liegt, besser zu verstehen? Wenn ich das tue, verliere ich schnell den Überblick, wo sich die aktuelle Datei befindet. Zum Glück kann ich diesen Shortcut verwenden, um die aktuelle Datei im Dateibrowser (oder anderen Fenstern) anzuzeigen.

Max

Avatar Max

New Scratch File

Kommando: Strg+Shift+Alt+Insert (PC) | Shift+Cmd+N (Mac)

Einfach mal fix eine Datei ohne Versionskontrolle in das Projekt einfügen, z.B. um Dinge auszuprobieren? Kein Problem, erstelle einfach eine Scratch-Datei. Beim Erstellen kann ich den Typ der Datei auswählen. Ich habe es sehr oft verwendet, um JSON- oder Log-Dateien aus beliebigen Datenquellen in der IDE zu durchsuchen, z.B. um sie erst einmal formatieren zu können.

Inject language & Edit fragment

Kommando: Alt+Enter auf dem Codefragement → Inject language, danach noch einmal Alt+Enter → Edit fragment. (PC) | Option+Enter (Mac)

Mein Lieblingstrick aus der Frontend-Entwicklung war in der Vergangenheit die Language Injection in ein ausgewähltes Codefragment. Zum Beispiel HTML-Unterstützung in Nicht-HTML-Dateien. Ganz klassisch, wenn HTML-Snippets in JavaScript-Code integriert werden sollen, gleichzeitig aber die Autovervollständigung für Javascript und HTML aktiviert werden soll. Mit der Injection (Alt+Enter → Inject language) allein ist noch nicht viel anzufangen. Spannend wird es, wenn man an der markierten Codestelle sofort wieder Alt+Enter drückt. Dann kann man das Fragment in einem Splitscreen separat ändern, ohne u.a. auf korrekte Zeilenumbrüche oder korrektes Escaping in der Quelldatei achten zu müssen.

Alter+Enter Magie

Michael

Avatar Micha

Last Edit Location

Kommando: Strg+Shift+Backspace (PC) | Cmd+Shift+Backspace (Mac)

Wenn man durch den Code springt, um das fehlende Stück Information zu finden, aber dann wieder suchen muss: Aber wo wollte ich diese Änderung vornehmen? "Last Edit Location" bringt mich zurück zu der Stelle, an der ich zuletzt einige Zeichen eingegeben oder entfernt habe (kann fortlaufend wie eine "Edit History" verwendet werden).

Add Selection for Next Occurrence

Kommando: Alt+J (PC) | Cmd+G (Mac)

Ich liebe die Mehrzeilenbearbeitung und Multicursorarbeit. Mit dieser Tastenkombination kann ich schnell ganze Wörter oder nur Teile von Wörtern mit Cursorn versehen, was es mir ermöglicht, ganze Bereiche des Codes parallel anzupassen. Jedes Mal, wenn man den Shortcut drückt, bekommt das nächste passende Vorkommen einen Cursor. Es gibt mehrere Einsatzgebiete, eines könnte ein sehr lokales und schnelles "Suchen und Ersetzen, aber nur diese spezifischen 3 Übereinstimmungen" sein und ein anderes ein Smart-Editing, wie dieses ausgedachte Beispiel:

Sortiere die folgenden Zeilen so, dass sie alle die gleiche Reihenfolge haben "foo bar test" test foo bar bar test foo foo bar test

Alle anderen Tastenkombinationen funktionieren auch im Multi-Cursor-Modus (wie Strg+Z zum Rückgängigmachen von Änderungen oder Einfügen mit Strg+V). Um den Multi-Cursor-Modus zu verlassen, drücke ich einfach Escape.

Cursor on all matching words

Kommando: "Combo-Chain" aus Strg+F, danach Alt+Enter (PC) | Ctrl+Cmd+G (Mac)

Mit diesem Schmuckstück erhält man wieder eine Auswahl wieder einen Cursor auf jeden Treffer der Suche im aktuell geöffneten Editorfenster. Die Anwendungsfälle sind mehr oder weniger die gleichen wie bei der obigen Verknüpfung, aber mit etwas mehr "Vertrauen", dass man jeden Treffer in der Datei bearbeiten will, nicht nur einige bestimmte Treffer. Ich verwende diesen Ansatz, wenn ich "IDE-unterstützte Änderungen" (z. B. einschließlich Autovervollständigung) vornehmen muss, die ein wenig über "Suchen und Ersetzen" hinausgehen.

Mirko

Avatar Mirko

viele kleine Helfer

Kommando: MAC siehe Text, PC analog

Ich habe viele kleine Helfer, die in Summe massiv meine Produktivität unterstützen und die ich hier anfange, einfach mal aufzuzählen:

  • Cmd+O (IntelliJ) um Typen zu öffnen, ohne im Projekt-Explorer zu navigieren. Dies ist viel schneller, wenn die Typen gute Namen haben. Noch besser ist es, nur die Großbuchstaben eines Typnamens einzugeben, der in Camel Case geschrieben ist.
  • Cmd+T (Terminal, Browser) um einen neuen Tab zu öffnen. Es gibt nichts erfrischenderes als einen neuen Tab.
  • Ctrl+R (Terminal) um nach Kommandos in meiner Terminal History zu suchen
  • Cmd+L (Browser) um den Fokus auf die Adressleiste zu setzen, wenn ich etwas suche
  • Cmd+F12 (IntelliJ) um zu Methoden und Feldern in der aktuellen Datei zu navigieren
  • Cmd+Option+L (IntelliJ) um Code zu formatieren - ständig und jederzeit
  • Cmd+Option+N (IntelliJ) um Dinge zu erstellen (z.B. Ordner, Dateien oder Klassen)

Simeon

Avatar Simeon

Enter presentation mode

Kommando: Cmd+Shift+P (IntelliJ, MacOS) (eigener Shortcut)

Eine der wichtigsten Abkürzungen bei der Zusammenarbeit mit anderen. Du teilst deinen 4K-Bildschirm, und dein Pair Programmer zu Hause auf seinem Laptop-Bildschirm fängt an, nach dem Mikroskop zu kramen. Dann ist es an der Zeit, ein professioneller Teamplayer zu sein, Cmd+Shift+P zu drücken, und stolz das geniale Stück Code zu präsentieren, das du gerade geschrieben hast und das jetzt nur noch ein kleines bisschen Debugging braucht…​ Übrigens: Bei der Arbeit im Präsentationsmodus ist es von größter Wichtigkeit, dass man auch weiß, wie die benötigten Werkzeugfenster über Tastenkombinationen erreicht werden können, sei es Cmd+1, um sich in der Projektansicht zu orientieren, oder Option+F12, um allen deine schicke zsh-Eingabeaufforderung zu zeigen.

Fazit

Gut, zählt man nach, waren das in Summe schon mehr als 10 Shortcuts. Zumindest wurden sie in 10 Beiträge gepresst. Wir möchten hiermit die Vielfalt und die vielen kleinen Aufgaben, die so schnell und effizient erledigt werden können, vorstellen und euch Gelegenheit geben, dies als Chance zu erfassen. Vielleicht kennt der ein oder andere von euch einige oder gar alle der hier vorgestellten Beispiele. Andere sehen manche Keybindings gerade zum ersten Mal und haben eine Erleuchtung, weil ein seit Äonen bestehendes Problem plötzlich einfach gelöst werden kann. Auch wird sicherlich einigen von uns beim Lesen dieses Artikels das ein oder andere Licht aufgehen.

Wenn Ihr auch Teil unseres Teams werden wollt, dann schaut doch gern mal auf unserer Karriereseite vorbei.

https://devboost.com/karriere