Windows 10 für Pathfinder

Ein Eintrag in der PATH-Variable ist immer dann notwendig, wenn ein Programm z.B. PHP, Composer oder auch Sublime Text über die Konsole Verwendung finden soll und der Installer das nicht erledigt hat. Für Nutzer mit eingeschränkten Berechtigungen können hier die Umgebungsvariablen im Benutzerkontext für Abhilfe schaffen. Leider hat sich in der Windows Build 1511 ein Bug eingeschlichen, so das sich die Funktion „Umgebungsvariablen für dieses Konto bearbeiten“ in Windows 10 nicht direkt öffnen lässt.

Für die Administratoren stellt das keine Hürde dar, denn Sie können die Umgebungsvariablen in den Erweiterten Systemeinstellungen die sich in den Systemeigenschaften finden lassen bearbeiten. WIN + X und dann Y drücken und schon befindet man sich in den Systemeigenschaften und wird am rechten Rand fündig.

Wer nun aber ohne administrative Berechtigungen unterwegs ist und dringend eine PATH-Variable in der Konsole setzten muss. Der ist ohne den oben genannten Einstellungsdialog ziemlich aufgeschmissen. Aber Windows wäre nicht Windows, wenn es nicht noch andere Wege gäbe diese Einstellungen zu tätigen.

Variante 1 über die Registrierung bzw. WIN + R und regedit eingetippt. Unter HKEY_CURRENT_USER\Environment kann jeder Benutzer sich seine eigenen Benutzer-Variablen anlegen. Eine zweite PATH-Variable wird vom System automatisch an die Systemvariable PATH angefügt. Dieser Teil der Registrierung ist auch ohne administrative Rechte bearbeitbar.

Variante 2 bedient sich der Konsole und dem Befehl SETX. Darüber können ebenfalls Umgebungsvariablen im Benutzerkontext angelegt werden. Mit einem

SETX PATH C:\Tools\sqlite3

wird der z.B. SQlite in die PATH-Variable im Benutzerkontext geschrieben. Aufpassen muss man nur, wenn man eine vorhandene Variable ergänzen möchte. Hierfür sollte man entweder einen Blick in die Registrierung werfen oder mit einem echo %path% sich die Variable ausgeben lassen und den Teil der zur Benutzer-Variable gehört herauskopieren und mit dem neuen Wert zusammen durch ein Semikolon getrennt neu setzen.

Variante 3 bezieht sich auf meine Lieblingskonsole cmder. Im Verzeichnis vendor befindet sich in der init.bat ziemlich in der Mitte ein Bereich ‚:: Enhance Path‘ und an den Befehl @set PATH=… am Ende die notwendigen Werte anhängen und fertig.

Bei allen Varianten muss die Konsole neu gestartet werden, damit die PATH-Variable neu eingelesen wird.

cmder (<invalid_name>@<invalid_version>)

Fehlen in der package.json die Properties „name“ und „version“ erzeugt Cmder hinter dem Clink-Promt diese seltsame Ausgabe. Ok, eine Art von Validierung ist schon ok, aber muss das die Konsole übernehmen?

Meiner Meinung nach reicht es aus, den Namen und die Version des Moduls auszugeben, wenn dieser auch angegeben wurde. Cmder v1.2.9 erzeugt dieses Promt in der npm.lua, welche unter vendor/clink-completions zu finden ist.

Mit dem folgenden Gist kann die Ausgabe der Funktion npm_promt_filter() so angepasst werden, dass bei Fehlen der beiden Properties auch nichts ausgegeben wird.

Achtung, in Cmder v1.3.0-pre ist die Sache irgendwie unsauber gelöst, denn wird ein Name und eine Versionsnummer angegeben taucht sie zweimal im Prompt auf.

Denn die Funktion gibt es immer noch in der npm.lua, aber clink selbst scheint die Funktionalität komplett selbst auch nochmal zu übernehmen. Existiert ein name- und oder version-Property wird das auch im Prompt angezeigt. Ist es nicht angegeben wird – wie gewünscht – auch nichts ausgegeben.

Somit muss die letzte Zeile in der npm.lua einfach auskommentiert werden oder die ganze Funkton gelöscht und der Aufruf gleich mit.

--clink.prompt.register_filter(npm_prompt_filter, 40)

Nach den Anpassungen muss Cmder einmal neu gestartet werden, damit die Änderungen Wirkung zeigen.

Laravel from Scratch

Laravel schreibt aktuell die Version 5.2 und Jeffrey Way aktualisiert nun die beliebte Serie „Laravel From Scratch“ http://laravelfromscratch.com/

In typischer Erklärbärmanie liefert Jeffrey ein verständliches Informations-Chop-Sue mit leicht verdaulichen Happen und trainiert ganz nebenbei das Verstehen der englischen Sprache.

Laracasts selbst ist m.E. das Mekka der Laravel-Entwickler. In Hunderten kurzen Videos werden so manche Mysterien gelöst, die als reiner Text herunter geschrieben oftmals nur schwer verständlich gewesen wären. Ein weiterer Vorteil der Videos ist die Aufmerksamkeit denen man ihnen zukommen lassen muss, durch das Ansprechen von Ohr und Auge zugleich prägen sich die Informationen gleich besser ein.

cmder {git} {lamb}

Auch unter Windows 10 nutze ich die aufgebohrte Konsole Namens cmder. Leider zeigte sich das Promt nach dem Upgrade in seltsamen Gewand mit kryptischen Bezeichnungen. Also kurz nach einer Lösung gesucht und auch gefunden.

Das Problem scheint an einer inkompatiblen Version von clink mit Windows 10 zu liegen. Man besorge sich die portablen Version von clink und entpacke den Inhalt des .zip kurzerhand in /vendor/clink im cmder-Verzeichnis.

Laravel Elixir mit Bower, Bootstrap, SASS und Gulp

Was Composer für das Backend – ist Bower für das Frontend. Von Haus aus wird Laravel mit der LESS-Variante von Bootstrap ausgeliefert und funktioniert – da vorkompiliert – out of the box. Wer nun aber lieber SASS verwendet und obendrein die Komponenten noch über das Package-Management von Bower einbeziehen möchte, der muss die richtigen Knöpfe kennen. Laravel Elixir mit Bower, Bootstrap, SASS und Gulp weiterlesen

Laravel Elixir Setup

Eine der eingebauten Neuerungen von Laravel 5.0 ist Elixir. Damit ist es möglich über ein schlankes API Gulp-Tasks zu definieren. So erhält man eine elegante Möglichkeit verschiedene CSS und Javascript Präprozessoren sowie Testing-Werkzeuge für seine Projekte einzubauen und zu benutzen. Das Setup birgt jedoch einige Fallstricke.

Laravel Elixir Setup weiterlesen