Skip to main content

Mit einem Klick mehr über uns erfahren

Oh my zhs github im Pagemachine Blog

Zeit sparen mit den oh‐my‐zsh‐Plugins Jump und Z

Als Novum erscheint in unserem Blog erstmals ein Gastbeitrag . Autor Roland Golla von Entwicklungshilfe stellt darin nützliche Entwickler-Tools vor.


 

Webdeveloper müssen sich in großen und komplexen Strukturen bewegen können – sowohl in jedem einzelnen Projekt als auch in verschiedenen Projekten. Die Anforderungen an diese Strukturen sind in den vergangenen Jahren jedoch enorm gewachsen. Und obwohl man in einer IDE wie PhpStorm die zuletzt verwendeten Projekte sehen kann, wird es bei einer Vielzahl paralleler Projekte schnell unübersichtlich. Pflegeintensiv ist es ohnehin. Doch selbst wenn man seine Projekte ordentlich benennt, ist dies am Ende keine allzu große Hilfe. Denn es kostet trotzdem immer sehr viel Zeit, mal eben in ein anderes Projekt zu wechseln.

Das Terminal oh-my-zsh als Lösung

oh-my-zsh ist hier eine willkommene Hilfe und unter Entwicklern daher mittlerweile fest etabliert. Um die Möglichkeiten des Terminals optimal nutzen zu können, sollte man sich jedoch intensiver mit all seinen Features und Plugins auseinandersetzen. Es lohnt sich wirklich. Daher stelle ich in diesem Artikel zwei äußerst hilfreiche Plugins vor, die aus meiner Sicht (und aus meiner Erfahrung als PHP-Dozent bei Entwicklungshilfe NRW) viel zu selten genutzt werden.

Ganz allgemein ist zunächst festzuhalten, dass die Konsolen-Anwendung bereits out-of-the-box eine echt gute Autovervollständigung plus jede Menge Aliase für Git und die Navigation bietet. Damit lässt es sich schon deutlich effektiver arbeiten. Zum Beispiel sind somit Verzeichniswechsel nach oben einfach mit „..“ statt mit dem umständlichen „cd ../“ möglich. Das Ganze lässt sich auch auf drei oder vier einfache Punkte erweitern. Hierdurch kann man schnell zwei oder drei Ebenen nach oben navigieren.

Zwei Plugins für schnelles Navigieren

Aufgrund der oben erwähnten zunehmenden Komplexität der Strukturen wird es für Webdeveloper heute immer wichtiger, in Projekten jederzeit ohne größeren Aufwand vom aktuellen Ort aus an ein beliebiges Ziel zu kommen. Dort benötigen sie dann verschiedene Tools für unterschiedliche Anwendungen.

Zwei häufig genutzte Tools sind PhpStorm als IDE und Sourcetree für die Versionsverwaltung mit Git. Allerdings ist es nicht sonderlich effektiv, in beiden Tools Bookmarks zu pflegen, die man mit der Maus öffnen muss. Außerdem entstehen dadurch auch hier komplexe Projektordner-Strukturen.

1. Das Jump-Plugin für Bookmarks

d6e73195-f401-4ad3-a944-4d1c84c809b3

Bookmarks oder Sprungmarken sind ein Schlüssel für effektive und schnelle Bewegungen. Hier bietet sich Jump als hervorragendes oh-my-zsh-Plugin an, denn damit lassen sich Verzeichnisse im Handumdrehen markieren. Hierzu nutzt man einfach den Befehl „mark“ in Terminal. Empfehlenswert ist es, als Parameter zusätzlich noch einen Namen anzugeben.

Dann ist der Ordner nach bestätigter Abfrage schnell mit der Eingabe von „jump Name“ erreichbar. In der Praxis hat sich außerdem der Einsatz von Präfixes bewährt – für unsere Entwicklungshilfe-Projekte benutzen wir beispielsweise „eh-” als Präfix. Ist man nun im Terminal und gibt „jump“ ein, muss man nur noch die Tab-Taste zur Autovervollständigung drücken, um die Sprungmarken in der Auswahl zur Verfügung gestellt zu bekommen.

58f09617-7096-4e96-bcac-c335b1484d0a

Die Autovervollständigung funktioniert leider erst ab zwei Einträgen. Also nicht wundern, wenn es anfangs nicht zu funktionieren scheint. Das ist kein Fehler. Daher einfach mal zwei Verzeichnisse markieren.

2. Das Z-Plugin für oh-my-zsh

46aec1b5-2c45-4e64-903e-2252d0e1da17

Wäre es nicht toll, wenn ein Terminal einfach wüsste, wohin ich möchte? Hier ist das
Z-Plugin für oh-my-zsh ein echter Alleskönner. Jedes Mal, wenn man mit dem
„cd“-Befehl in ein Verzeichnis wechselt, wird der Pfad in eine Datei geschrieben und ein entsprechender Counter verwendet.

Aber auch ohne vorher ein Verzeichnis markiert zu haben, lässt sich durch die Eingabe von „z projektname“ sehr zuverlässig an die richtige Stelle navigieren. Das macht sich vor allem bei Git Repositories bezahlt, die man zu Testzwecken von Github ausgechecked hat. Und nicht nur das: Z weiß auch, an welche Stelle man im Projekt möchte.

Doch warum reicht Z nicht aus?

In einer React-Applikation wechsele ich beispielsweise immer in den components-Folder. Z merkt sich das und führt mich in Zukunft bei der Eingabe von „z react“ direkt in den components-Folder. Dieses Feature ist hilfreich, aber nicht immer erwünscht. Will ich in ein Projekt springen und es mit der IDE bearbeiten, möchte ich eine Ebene höher. Daher ist hier das Jump-Plugin ein zuverlässigeres Plugin. Das Z-Plugin ist dennoch eine große Hilfe und äußerst beliebt.

Grundsätzlich sind alle offiziellen Plugins bei oh-my-zsh schon installiert und müssen nur noch in der .zshrc-Datei im Home Directory des Users aktiviert werden.

plugins=(git z jump)

Hier mal als Beispiel die Aktivierung der beiden Plugins. Git ist als Plugin per default-Einstellung aktiviert und könnte an dieser Stelle auch deaktiviert werden. Änderungen werden durch Öffnen eines neuen Tabs oder einen Neustart von iTerm wirksam.

Tools von der Command Line CLI öffnen

Mit der Navigation alleine kann man allerdings noch nicht arbeiten. Das entsprechende Verzeichnis muss jetzt in den Programmen geöffnet werden. Sowohl PhpStorm als auch Sourcetree bieten die Möglichkeit, cli-Launcher zu installieren.
Bei PhpStorm geht man hierfür unter „Tools“ und wählt „Create Command-line Launcher“.

Auf der Command Line kann man jetzt mit „pstorm .“ das aktuelle Verzeichnis öffnen. In Sourcetree befindet sich der Befehl im Hauptmenü unter „Install command line tools“. Jetzt lässt sich auf der Command Line mit „stree .“ das aktuelle Verzeichnis ebenfalls im Tool öffnen. Die Änderungen sind sofort verfügbar.

Fazit

Bewegungen in Projekt- und Datei-Strukturen sind ein fester Bestandteil im täglichen Anwendungsgebiet eines Webdevelopers. Abkürzungen sind gerade hier also mehr als sinnvoll. Denn es ist einfach effektiver, so zu arbeiten. Und es motiviert und macht Spaß und Freude im Arbeitsalltag, wenn etwas schnell und reibungslos läuft.

Alle Tools stecken voller nützlicher Shortcuts. Leider hat man parallel zum normalen Workflow aber nicht immer die Lust und Zeit, sich zusätzliches Wissen anzueignen … Allerdings sind die hier kurz vorgestellten Plugins Jump und Z in ihrer Bedienung sehr leicht zu erlernen und eine überaus wirkungsvolle Hilfe und mächtige Waffe. Ihr Einsatz lohnt sich auf jeden Fall und spart ab sofort viel Zeit.

 

Über den Autor
Roland Golla ist Trainer für PHP-Schulungen, Speaker für die Entwicklungshilfe NRW, Autor für Fachmagazine und Blogger zu Themen rund um Webdevelopment. www.entwicklungshilfe.nrw

 

Die in diesem Beitrag genutzten Bilder stammen von Pixabay.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.