So erstellen Sie Ihre eigene mauslose Entwicklungsumgebung
Veröffentlicht: 2022-03-10Es war einmal, im magischen Land der Softwareentwicklung, da war ein junger Entwickler, Ihr bescheidener Diener, der zum ersten Mal Linux entdeckte. Plötzlich hatte ich Zugriff auf die Linux-Shell, ein Tool, das viele Möglichkeiten bietet, alles zu automatisieren, was ich nicht immer wieder tun wollte.
Aber Ubuntu war nicht ohne Nachteile. Ich war oft das Opfer von Anzeigefehlern und Abstürzen, und es wurde mit der Zeit immer langsamer.
Eines Tages passierte etwas Schreckliches: Ich musste Ubuntu auf die nächste Hauptversion aktualisieren. Alles stürzte ab. Ich konnte mein System nicht mehr starten. Ich hatte keine Ahnung, wie ich die Probleme lösen könnte, mit denen ich konfrontiert war, weil ich keine Ahnung hatte, wie Linux unter der Haube funktionierte. Ubuntu hat das Wesentliche für mich abstrahiert , damit ich mich nicht darum kümmere.
Ich musste alles manuell neu installieren – Ubuntu und alle meine Tools. Das Schlimmste war, alles neu zu konfigurieren. Alles in allem brauchte ich Tage, um zu dem System zurückzukehren, das ich vor dem Absturz hatte. Aber ich kannte keine andere Alternative, also benutzte ich jahrelang Ubuntu. Während dieser Zeit habe ich es nie geschafft, es auf die nächste Hauptversion zu aktualisieren, ohne alles immer wieder manuell neu installieren zu müssen.
Mein Leben als Entwickler hat sich erneut verändert, als meine Firma zwei großartige Entwickler eingestellt hat. Sie wussten viel über Linux und die verschiedenen Distributionen, die ich verwenden konnte. Sie führten mich, zeigten mir die Tools, die alle Probleme lösten, die ich mit Ubuntu hatte. Diese Tools haben meinen Arbeitsablauf drastisch verbessert ; Sie haben mir gezeigt, wie praktisch es für einen Entwickler ist, die Hände so weit wie möglich auf der Tastatur zu lassen.
Dies geschah vor sechs Jahren. Ich verwende heute noch dieselbe Entwicklungsumgebung. Ich verwende zu 92,8 % der Zeit die Tastatur , um alle meine Tools zu verwalten, und verwende dabei sinnvolle und leicht zu merkende Tastenanschläge. Ich kann mein gesamtes System mit einer Reihe von Skripten neu installieren, die ich geschrieben habe, einschließlich aller Tools, die ich verwende, und ihrer Konfigurationen.
Heute möchte ich diese Tools mit Ihnen teilen, damit auch Sie Ihre Effizienz und Ihren Komfort bei Ihrer täglichen Arbeit steigern können. Sie arbeiten gut zusammen und formen das, was ich meine mauslose Entwicklungsumgebung nenne . Genauer besprechen wir:
- Warum die Verwendung der Linux-Shell bei der Arbeit mit Klartext (einschließlich Code) sehr leistungsfähig sein kann;
- Warum das gefürchtete Arch Linux verwenden;
- Der Vorteil eines Kachelfenstermanagers;
- Wie man mit URxvt, tmux und tmuxp ein großartiges Terminalerlebnis hat;
- Warum Vim dein bester Freund werden kann.
Hinweis : Die Tools, die ich in diesem Artikel befürworte, funktionieren auf Linux-basierten Systemen. Sie können sie auch mit macOS außer i3 verwenden. Für Windows ist es am einfachsten, das Windows Linux Subsystem (WSL) zu verwenden, um sie zu installieren und zu verwenden.
Ich hätte diese neue Arbeitsweise nie entdeckt, ohne diese Tools ausprobiert zu haben. Deshalb ermutige ich Sie, sie zu installieren, mit ihnen zu experimentieren und selbst zu sehen, ob Sie sich so verlieben wie ich.
Mauslos mit der Shell
Als Entwickler kommt man um den Einsatz einer Shell kaum herum. Dies ist ein leistungsstarkes Tool, das Ihren Arbeitsablauf vereinfachen kann, indem es alle langweiligen Aufgaben automatisiert.
Die Vorteile der Schale
Bevor wir über die Vorteile der Verwendung der Shell und des Terminals sprechen, wollen wir kurz erklären, was der Unterschied zwischen diesen beiden Ideen ist.
Das Terminal ist eine grafische Oberfläche, über die Sie mit der Shell interagieren können. Unter Linux ist diese Shell oft Bash, aber es kann auch eine andere sein, eh Zsh. Die Shell ist ein Interpreter. Sie können es mit Befehlen füttern und es wird sie ausführen, um einige Aktionen auszuführen. Es wird Ihnen manchmal auch eine Ausgabe zurückgeben. Die Begriffe „Befehlszeile“ und „Shell“ sind Synonyme.
Wenn wir die Mouseless Development Environment mit dem Sonnensystem vergleichen würden, wäre die Hülle die Sonne und alles andere würde sich um sie drehen. Das liegt daran, dass die Shell wirklich mächtig ist: Sie ermöglicht es Ihnen, viele kleine Programme auszuführen, die sehr gut zusammenarbeiten. Sie werden CLIs (Command-Line Interfaces) genannt.
Der große Vorteil dieser Tools: Sie sind sehr einfach und isoliert isoliert, aber Sie können sie für leistungsstarke Ergebnisse verketten . Beispielsweise können Sie die CLIs „history“, „sort“, „uniq“ und „head“ zusammen verwenden, um die von Ihnen am häufigsten verwendeten CLIs und die Häufigkeit ihrer Verwendung anzuzeigen.
Es sind viele CLIs verfügbar. Erstens, weil es die Linux-Shell schon lange gibt; Entwickler hatten Zeit, viele Tools zu entwickeln und sie zuverlässig zu machen. Zweitens, weil es einfacher ist, CLIs zu entwickeln als GUIs (Graphical User Interfaces). Das Entwerfen und Implementieren dieser grafischen Schnittstellen erfordert viel mehr Arbeit. CLIs haben nur Textschnittstellen , die einfacher zu entwickeln, zu ändern und zu warten sind.
Das ist auch der Grund, warum CLIs schnell sind: Sie müssen nicht mit der Anzeige und anderen grafischen Elementen herumspielen. Es war eines meiner Hauptprobleme mit Ubuntu: Die Desktop-Umgebung Unity war ziemlich schwerfällig, langsam und fehlerhaft. Zumindest meiner Erfahrung nach. Die Verwendung von mehr GUIs an der Spitze machte die Sache noch schlimmer.
Ein weiterer großer Vorteil der Befehlszeile: Sie können Shell- Skripte schreiben, um all die langweiligen Aufgaben zu automatisieren, die Sie Tag für Tag wiederholen. Wenn Sie beispielsweise Bilder sehr oft auf dieselbe Größe skalieren müssen, können Sie dafür ein Skript schreiben. Wenn Sie häufig in bestimmten Dateitypen suchen, können Sie dies auch automatisieren. Der Himmel ist das Limit.
CLIs haben auch Nachteile. Es ist für Anfänger etwas entmutigender zu verwenden, aber es gibt Möglichkeiten, schnell das zu bekommen, was Sie brauchen, selbst wenn Sie nicht wissen, wie man eine bestimmte CLI verwendet.
Wenn Sie schließlich einige Aufgaben auf entfernten Servern zu erledigen haben, werden Sie am Ende oft die Shell verwenden. Sie haben die meiste Zeit keine grafische Oberfläche, also haben Sie keine Wahl. In diesen Fällen ist es notwendig, sich mit der Befehlszeile auszukennen.
Ein mausloser Ansatz
Da die Shell über eine Textschnittstelle verfügt, bleiben Ihre Hände auf Ihrer Tastatur, wenn Sie sie verwenden. Das ist etwas, was ich in meinen ersten Jahren als Entwickler nie wirklich in Betracht gezogen habe, aber es ist ein großer Vorteil.
Meiner Erfahrung nach spart das Vermeiden der Hunderte von Handbewegungen zwischen Tastatur und Maus viel kognitive Energie. Ich war schockiert, als ich entdeckte, wie angenehm es war, wenn ich wirklich versuchte, mich an meine Tastatur zu halten. Als Bonus fühle ich mich wie ein Hacker, der nur meine Tastatur mit meiner Shell benutzt, selbst wenn ich nur meine Einkaufsliste schreibe! Wie toll ist das?
Ich muss zugeben, dass ich dieser „mauslosen“ Idee gegenüber sehr skeptisch war, bevor ich sie ausprobierte. Mit den unten beschriebenen Tools musste ich nicht alle meine Gewohnheiten von einem Tag auf den anderen ändern: Sie können auch die Maus damit verwenden. Aber sie glänzen wirklich, wenn sie mit der Tastatur verwaltet werden.
Auch wenn es nie wirklich bewiesen wurde, glaube ich auch, dass es uns effizienter macht, auf der Tastatur zu bleiben . Wie das Buch The Pragmatic Programmer betonte:
„Nur Tastenanschläge für gängige Bearbeitungsvorgänge zu verwenden, ist effizienter als Maus- oder menügesteuerte Befehle, da Ihre Hände die Tastatur nie verlassen.“
Allerdings steht hier nicht die Effizienz im Vordergrund. Ich liebe es, an meiner Tastatur zu bleiben und all diese Tools zu nutzen, weil ich mich voll und ganz auf die anstehenden Aufgaben konzentrieren kann. Es motiviert mich, mit der Arbeit zu beginnen und meine Aufgaben zu erledigen.
Das Grundgestein: Arch Linux
Zu Beginn meiner mauslosen Reise riet mir einer meiner neuen Freunde, Arch Linux anstelle von Ubuntu zu verwenden. Wieder schlich sich Skepsis ein, Zweifel drangen in mein armes Gehirn ein. Arch-Linux? Diese schreckliche Linux-Distribution, die Sie vollständig manuell installieren und konfigurieren müssen? Dieses instabile System wurde für viele zum Witz?
Manchmal haben Klischees nichts mit der Realität zu tun, und Arch Linux ist das perfekte Beispiel für diese Idee. Ich habe Windows (von 98 bis 7), macOS verwendet und auch andere Linux-Distributionen ausprobiert. Mein Fazit ohne Zweifel: Arch Linux ist das stabilste von allen.
Abgesehen davon ist Arch Linux keine Voraussetzung für eine mauslose Entwicklungsumgebung. Sie können alle anderen in diesem Artikel beschriebenen Tools auch mit anderen Linux-Distributionen verwenden. Sie können sie auch mit macOS (außer i3) oder Windows verwenden, wenn Sie über das Windows-Subsystem für Linux (WSL) verfügen. Aber bevor Sie dies tun, lassen Sie mich Ihnen sagen, warum Sie Arch Linux ernsthaft in Betracht ziehen sollten .
Ein Rolling-Release-System
Arch Linux hat ein Rolling-Release-System . Das bedeutet, dass Sie Ihr gesamtes System oft, wöchentlich oder zweiwöchentlich aktualisieren müssen. Um auf Ubuntu zurückzukommen, es hat ein langfristiges Support-System : Sie müssen es nur ein paar Mal im Jahr aktualisieren, oder sogar weniger, wenn Sie möchten.
Viele Entwickler denken, dass ein Rolling-Release-System Ihre Entwicklungsumgebung instabil macht, was teilweise den Ruf von Arch Linux erklärt. Aber ich hatte in sechs Jahren täglichen Gebrauchs nie ein Problem, und meine Freunde benutzen es auch nicht. Auf der anderen Seite sind die Vorteile eines rollenden Systems groß:
- Alle Anwendungen, die ich verwende, sind ständig auf dem neuesten Stand. Sie müssen sie nicht manuell kompilieren, um bei Bedarf die neueste Version zu haben.
- Die Aktualisierung Ihres Systems bedeutet oft, dass weniger Änderungen auf einmal vorgenommen werden. Infolgedessen gibt es auch weniger Chancen für Abstürze.
Ich habe Ihnen meine Erfahrungen mit Ubuntu und die Abstürze erzählt, die ich hatte, als ich es aktualisierte. Ich hatte nie Probleme mit Arch Linux.
Alles, was du brauchst
Außerdem sind die Repositories von Arch Linux riesig. Es ist sehr wahrscheinlich, dass Sie dort jedes Werkzeug finden, das Sie brauchen. Wenn nicht, können Sie sich die AUR (Arch User Repositories) ansehen, wo alles andere steht. Das AUR ist kein offizielles Repository, daher könnten einige Sicherheitsprobleme mit den dort gefundenen Anwendungen auftreten. Auch hier hatte ich nie Probleme mit ihnen, aber es ist möglich. Solange Sie sich an die offiziellen Repositories halten und nicht alles und nichts aus dem AUR installieren, werden Sie kein Problem haben.
Eine Lerngelegenheit
Lassen Sie uns auch erwähnen, dass Arch Linux eine sehr minimale Distribution ist. Es erfordert nicht viele nutzlose Anwendungen, wenn Sie es installieren. Apropos, Sie müssen die gesamte Distribution manuell über die Shell installieren. Die Aufgabe kann sich entmutigend anfühlen, aber auf der anderen Seite werden Sie viel aus der Erfahrung lernen.
Wie ich am Anfang dieses Artikels erwähnt habe, kann es Ihnen helfen, wenn Sie ein Minimum darüber wissen, wie Linux-basierte Systeme unter der Haube funktionieren , wenn sich Ihr System seltsam verhält oder wenn es abstürzt. Es ist nicht so komplex, wie es scheinen mag, und wenn Sie ein Entwickler sind, würde ich argumentieren, dass es obligatorisch ist. Das Internet, Ihr Telefon oder Ihr Raspberry Pie laufen heutzutage unter Linux.
Zu guter Letzt ist das Arch-Wiki der beste Ort, den Sie für alles rund um Linux finden können. Es hat mir im Laufe der Jahre sehr geholfen, selbst als ich Ubuntu benutzte. Es ist ein großartiger Ort, um Fehler in Ihrem System zu beheben und neue Tools zu finden.
Verwalten Sie Ihr Windows mit i3
Nachdem wir nun überprüft haben, warum Arch Linux eine solide Grundlage für Ihre mauslose Entwicklungsumgebung sein kann, wollen wir sehen, was wir noch hinzufügen können.
Aber zuerst ein bisschen Theorie. Betriebssysteme haben oft drei Schichten, die mehr oder weniger miteinander gekoppelt sind:
- Der Kernel , der sich direkt mit der Hardware Ihres Computers beschäftigt;
- Die Shell , eine Schnittstelle für Sie oder einige Anwendungen, um mit dem Kernel zu interagieren;
- Eine Anzeigeebene darüber, wie ein Desktop-Manager oder ein Kachel-Windows-Manager.
Gnome oder Unity sind beides Desktop-Manager für Linux-basierte Systeme. Sie verwalten Ihre Fenster und viele andere Dinge, wie Ihre Statusleiste oder Ihren Anwendungsstarter. Kachelfenster-Manager sind eine Alternative zu Desktop-Managern, und sie sind oft kleiner und konzentrieren sich mehr auf die Manipulation von Fenstern.
Der Tiling Window Manager i3 ist in der Tat sehr leicht: Ich verwende ihn gerade auf einem zehn Jahre alten Computer (Lenovo x220) und er wird nicht langsamer. Es ist auch einfach zu bedienen, die Dokumentation ist großartig und vor allem können Sie Ihre Fenster nur mit Ihrer Tastatur verwalten (wenn Sie möchten).
Die Grundlagen von i3 sind einfach: Sie können Fenster in verschiedenen Arbeitsbereichen öffnen, die einen ganzen Bildschirm darstellen . Es ist den virtuellen Desktops sehr ähnlich, die viele Linux-Desktop-Manager haben. Wenn Sie dann Ihre bevorzugten Anwendungen öffnen, wird der Bildschirm je nach Anzahl der Fenster auf dem Bildschirm automatisch freigegeben.
Wenn Sie beispielsweise Firefox öffnen, nimmt sein Fenster 100 % des Bildschirms ein. Wenn Sie drei Instanzen von Firefox öffnen, nimmt jede davon 33 % des Bildschirms ein.
Sie können auch das Layout der Fenster ändern. Anstatt alle Fenster auf dem Bildschirm sichtbar zu haben, können Sie sie übereinander stapeln und mit einem einfachen Tastendruck durchgehen. Wenn Sie einige „normale“ schwebende Fenster benötigen, können Sie diese auch konfigurieren.
Das Ziel von i3 ist es, die Verwaltung all Ihrer Fenster zu vereinfachen. Anstatt Ihre Maus zu verwenden, um sie zu verschieben und jedes Mal, wenn Sie neue öffnen, ihre Größe zu ändern, können Sie Tastenanschläge verwenden, um denselben Vorgang nur dann auszuführen, wenn es nötig ist .
Sieht es zu kompliziert aus? Ich war zwei Tage nach dem Versuch mit i3 effizient. Ich bin kein Genie; wenn ich es konnte, kannst du es auch.
Das Sahnehäubchen: Wie jedes in diesem Artikel beschriebene Tool können Sie i3 und seine Tastenanschläge nach Herzenslust anpassen .
Der einzige Nachteil von i3: Es ist nicht für macOS verfügbar. Aber es gibt tolle Alternativen , wie den Tiling Windows Manager Amethyst oder Divvy.
Erweitern Sie Ihr Terminal mit URxvt, tmux und tmuxp
Das Terminal ist die Schnittstelle, über die Sie auf die Shell zugreifen können. Auch wenn die Shell das einzig Wahre ist, können wir die Verwendung mit ein paar Tools vereinfachen.
Der Weg der Einfachheit mit URxvt
Ich mag Einfachheit, und das ist teilweise der Grund, warum ich die Entwicklungsumgebung liebe, die ich in diesem Artikel beschreibe. Apropos, URxvt ist eines der einfachsten Terminals, die Sie finden können. Es ist auch schnell und zuverlässig. In sechs Jahren habe ich nie gesehen, dass es abstürzt oder sogar langsamer wird. Es tut, was es tun soll: Sie können die Shell verwenden. Nicht mehr und nicht weniger.
Der Terminal-Multiplexer mit tmux
Auch wenn ich die Einfachheit von URxvt mag, mag ich es auch, einen guten Terminal-Multiplexer zu haben, auf den ich mich verlassen kann, wie tmux.
Was ist ein Terminal-Multiplexer? Damit können Sie Sitzungen öffnen, die mehrere Shells enthalten . Diese Sitzungen bleiben im Hintergrund bestehen: Selbst wenn Ihr Terminal abstürzt oder Sie es versehentlich schließen, verschwinden Ihre Shells nicht. Sie können sie jederzeit in einem anderen Terminal wiederherstellen (als ob nichts passiert wäre).
Dies ist auf Ihrem lokalen Computer nützlich, aber auf einem Remote-Server ist es noch besser. Sie können sich beispielsweise über SSH mit einem Server verbinden, ein Skript ausführen, Ihre SSH-Verbindung und Ihr Terminal auf Ihrem lokalen Computer schließen und nach Hause gehen. Da Ihre Shell dank tmux immer noch auf Ihrem Server läuft, wird auch Ihr Skript weiterhin ausgeführt.
Das ist noch nicht alles: tmux ist im guten Sinne ein kleiner Alleskönner. Sie können es verwenden, um mehrere Fenster mit mehreren Fenstern in einem Terminal zu öffnen . Sie können sich ein Fenster als das gesamte Terminal vorstellen und einen Bereich als eine Hülle, die einen Prozentsatz des Fensters einnimmt.
Erinnert es dich an i3? Es folgt den gleichen Prinzipien, kann aber nur neue Hüllen erstellen. Deshalb sehen viele Benutzer, die mit i3 zufrieden sind, keinen Sinn darin, tmux zu verwenden. Ich persönlich nutze beides gerne.
Wie immer können Sie die Fenster und Bereiche von tmux mit Ihrer Tastatur manipulieren und tmux selbst nach Ihren verrücktesten Wünschen konfigurieren.
tmuxp
Stellen wir uns vor, Sie möchten tmux für die disruptive Anwendung verwenden, die Sie gerade entwickeln. Sie müssen zuerst ein Terminal öffnen. Dann müssen Sie so viele tmux-Fenster erstellen, wie Sie benötigen, und diese Fenster mit den gewünschten Fenstern teilen.
Denken Sie daran : Ein Fenster repräsentiert eine Hülle. In jeder dieser Shells können Sie dann alle CLIs ausführen, die Sie für ein bestimmtes Projekt benötigen: beispielsweise einen Docker-Container ausführen oder einige Protokolle anzeigen.
Aber Sie können all das auch automatisieren, und hier zeigt sich die wahre Stärke von tmux – im Kontext einer Entwicklungsumgebung – wirklich. Mit einer anderen CLI namens tmuxp können Sie in einer YAML-Konfigurationsdatei aufschreiben, welche Fenster, Bereiche und welche Befehle Sie möchten. Anschließend können Sie diese Konfiguration laden und automatisch Ihre angepasste tmux-Sitzung erstellen.
Ich habe eine dieser Konfigurationsdateien für jedes meiner Projekte. Es spart mir viel Zeit und Energie. Wie ich oben sagte, ist dies einer der Hauptvorteile der Verwendung der Shell.
Editor Plus Shell ist gleich IDE
Da die Shell so leistungsfähig ist, warum nicht einen Editor direkt darin ausführen? Warum nicht Vim verwenden?
Wie Arch Linux hat auch Vim den Ruf, schwer zu erlernen zu sein. Es ist subtiler: Es ist ziemlich einfach, damit produktiv zu sein, aber es dauert lange, bis man es beherrscht. Wenn Sie Linux ausführen und Vim installiert haben, können Sie die Grundlagen in 20 Minuten erlernen , indem Sie vimtutor
in Ihrer Shell ausführen.
Vim bietet viele Funktionalitäten, die mit unzähligen Plugins weiter ausgebaut werden können. Darüber hinaus können Sie mit Vim direkt mit Ihrer Shell interagieren, indem Sie die gewünschte CLI direkt in Ihrem Editor verwenden. Es wird Vim in eine vollwertige IDE verwandeln.
Vim hat noch einen weiteren großen Vorteil: Sie können damit in vielen Programmiersprachen entwickeln. Ich mag es nicht, jedes Mal zwischen verschiedenen IDEs zu wechseln, wenn ich in PHP, Golang oder Clojure programmieren muss. Die Benutzeroberfläche ist anders, ich muss jeden dieser Editoren separat konfigurieren, und ich kann die Konfigurationen nicht wirklich irgendwo speichern, um sie wieder zu verwenden, wenn ich diese Tools neu installiere.
Mit Vim kann ich in jeder beliebigen Sprache programmieren, während ich im selben Editor bleibe . Wie bei VS Code können Sie LSPs (Language Server Providers) verwenden, um die automatische Vervollständigung, das Linting und das automatische Refactoring für die gängigsten Programmiersprachen (und noch esoterischere) zu aktivieren.
Vim ist auch schnell. Es erfordert nicht viele Ressourcen, um ausgeführt zu werden. Auf meinem alten Rechner habe ich oft 6 oder 7 Instanzen des Editors ständig offen – ohne Probleme. Im Vergleich dazu habe ich jahrelang IntelliJ-IDEs verwendet, und als ich zwei davon öffnete, begann mein gesamtes System langsamer zu werden. Es ist wirklich praktisch, wenn ich gleichzeitig an verschiedenen Projekten arbeite, wie zum Beispiel einem Haufen Microservices.
Soll ich hinzufügen, dass Vim hochgradig konfigurierbar ist ? Anstatt viele Funktionen direkt in Ihrer IDE zu haben (einschließlich einiger, die Sie nie verwenden werden), können Sie auswählen, was Sie genau benötigen, und verwerfen, was Sie nicht benötigen.
Eine Reihe zusammenhängender Tastenanschläge
Wenn Arch Linux das Fundament meiner mauslosen Entwicklungsumgebung ist, dann sind i3, Zsh, tmux und Vim die Werkbänke für meine kreativen Bedürfnisse. Es gibt mir ein Maß an Komfort, das ich mit keinem anderen Werkzeug erlebt habe.
Aber Sie fragen sich vielleicht, warum Sie all diese neuen Tools und ihre Tastenkombinationen verwenden sollten, wenn Sie bereits die Shortcuts für die Tools verwenden können, die Sie bereits kennen?
Nun, die Verknüpfungen der meisten Anwendungen da draußen sind oft bedeutungslos . Es ist eine Suppe von Schlüsseln, die keine Beziehung zueinander haben. Infolgedessen sind sie schwer zu merken und können von Tool zu Tool sehr unterschiedlich sein.
Die Tools, die ich in diesem Artikel beschreibe, sollen gut zueinander passen. Sie können für jeden von ihnen fast denselben Tastendruck verwenden. Nur eine Taste unterscheidet sich, damit das System weiß, auf welches Tool Sie reagieren möchten. Es macht die verschiedenen Tastenanschläge viel einfacher zu merken.
Darüber hinaus wurde Vim so konzipiert, dass es sinnvolle Tastenanschläge hat, indem es eine einfache Sprache erstellt, auf die Sie sich verlassen können. Um beispielsweise ein Wort zu löschen, können Sie daw
. Um einen Absatz zu löschen, ist es dap
. Da viele CLIs auf den Tastenanschlägen von Vim basieren, wird das Erlernen von Vim die Tür zu vielen anderen CLIs öffnen .
Automatisches Installieren Ihrer mauslosen Entwicklungsumgebung
Die manuelle Installation von Arch Linux ist gut, um viel über Linux-basierte Systeme zu lernen, aber es wird alt, wenn Sie es jedes Mal tun müssen, wenn Sie Ihr System auf einem neuen Computer installieren möchten. Aus diesem Grund habe ich meine eigenen Skripte erstellt, um meine gesamte mauslose Entwicklungsumgebung zu installieren. Sie installieren Arch Linux sowie alle Tools, die ich mit ihren Konfigurationen verwende. Wenn ich einen neuen Computer verwenden muss, kann ich einfach diese Skripte ausführen, und voila!
Sind Sie bereit, ein mausloser Entwickler zu sein?
Aufgrund der Flexibilität, die ich mit meiner Entwicklungsumgebung habe, kann ich auch Tools leicht wechseln. Wenn ich beispielsweise tmux nicht mehr verwenden möchte, kann ich es durch einen anderen Terminal-Multiplexer ersetzen. Wenn mir die Statusleiste von i3 oder mein Anwendungsstarter nicht gefallen, kann ich sie auch ersetzen.
Wie Sie vielleicht schon erraten haben, erfordert die Konfiguration eines solchen Systems einige Zeit, Motivation und Mühe . Deshalb habe ich ein Buch mit dem Titel „Building Your Mouseless Development Environment“ geschrieben. Es beschreibt detailliert, wie Sie alle Tools konfigurieren, Skripte erstellen, um das gesamte System mit einem Befehl zu installieren, und wie Sie alles an Ihre persönlichen Bedürfnisse anpassen können. Wenn Sie nicht viel über die Linux-Shell wissen, können Sie ein benutzerdefiniertes Projekt erstellen, um sich damit vertraut zu machen.
Bei Interesse finden Sie hier eine Leseprobe des Buches sowie das gesamte Inhaltsverzeichnis.
Ich denke, der beste Weg, um herauszufinden, ob Sie diese Art von System möchten, ist, es einfach auszuprobieren. Eines kann ich dir garantieren: Du wirst viel lernen!
Weiterführende Literatur zum Smashing Magazine
- „Ich habe das Internet einen Tag lang nur mit einer Tastatur benutzt“, Chris Ashton
- „Ein vollständiger Leitfaden für mechanische Tastaturen“, Ben Frain
- „Ein starkes Argument für Barrierefreiheit“, Todd Libby
- „Barrierefreiheit in Chrome DevTools“, Umar Hansa