Aus Shell Skript eine MacOS App erstellen und App Icon ändern
Gerade noch über die verschlimmbesserte Funktion zum Hinzufügen von Apps zur Finder Toolbar gemeckert, und schon mit dem Problem konfrontiert, dort ein Shell Skript unterbringen zu wollen.
Man kann zwar ein Shell Skript per CMD-Drag’n’Drop in die Finder Toolbar ziehen, allerdings öffnet ein Klick auf dieses Skript selbiges im Text-Editor. Shell Skripte werden aus der Finder Toolbar heraus offensichtlich nicht ausgeführt. Es stellt sich also die Frage, wie man auf einfache Art und Weise aus einem Shell Skript eine native MacOS App macht, um diese dann in die Finder Toolbar zu ziehen.
MacOS App aus Shell Skript mit Hilfs-Skript erstellen
Die Lösung bedient sich eines Hilfs-Skriptes appify, das aus einem Shell Skript eine MacOS App generiert.
#!/usr/bin/env bash
Appify="$(basename "$0")"
if [ ! "$1" -o "$1" = "-h" -o "$1" = "--help" ]; then cat <
Copyright © 2011 Mathias Bynens
Copyright © 2011 Sencha Labs Foundation
Copyright © 2015 Axel Dietrich
EOF
exit; fi
# Options
appify_SRC="$1"
appify_FILE="$(basename $appify_SRC)"
appify_NAME="${2:-$(echo "$appify_FILE"| sed -E 's/.[a-z]{2,4}$//' )}"
appify_ROOT="$appify_NAME.appify/Contents/MacOS"
appify_RESOURCES="$appify_NAME.appify/Contents/Resources"
appify_INFO="$appify_NAME.appify/Contents/Info.plist"
# Create the bundle
if [[ -a "$appify_NAME.appify" ]]; then
echo "$PWD/$appify_NAME.appify already exists :(" 1>&2
exit 1
fi
mkdir -p "$appify_ROOT"
mkdir -p "$appify_RESOURCES"
touch "$appify_RESOURCES/$appify_NAME.icns"
# Copy the source into the bundle as the CFBundleExecutable
if [ -f "$appify_SRC" ]; then
cp "$appify_SRC" "$appify_ROOT/$appify_FILE"
echo "Copied $appify_ROOT/$appify_FILE" 1>&2
else
# Create a new blank CFBundleExecutable
cat <<-EOF > "$appify_ROOT/$appify_FILE"
#!/usr/bin/env bash
echo "This ('$0') is a blank appified script." 1>&2
exit 1
EOF
echo "Created blank '$appify_ROOT/$appify_FILE' be sure to edit this file to make it do things and stuff" 1>&2
fi
chmod +x "$appify_ROOT/$appify_FILE"
# Create the Info.plist
cat <<-EOF > "$appify_INFO"
CFBundlePackageType
APPL
CFBundleInfoDictionaryVersion
6.0
CFBundleName
$appify_NAME
CFBundleExecutable
$appify_FILE
CFBundleIdentifier
appified.$USER.$appify_FILE
CFBundleVersion
0.1
CFBundleGetInfoString
0.1 appified by $USER at `date`
CFBundleIconFile
$appify_NAME.icns
CFBundleShortVersionString
0.1
EOF
# Appify!
if [[ -a "$appify_NAME.app" ]]; then
echo "$PWD/$appify_NAME.app already exists :(" 1>&2
exit 1
fi
mv "$appify_NAME.appify" "$appify_NAME.app"
# Success!
echo -e "nBe sure to customize your $appify_INFO" 1>&2
echo "Optional: Put your own Icon(set) as $appify_NAME.icns in $appify_NAME.app/Contents/Resources" 1>&2
echo -e "Created $PWD/$appify_NAME.app. Done!n"
Das Skript wird unter dem Namen appify
im Home-Verzeichnis gespeichert und anschliessend im Terminal per chmod +x appify
ausführbar gemacht.
Mit dem Aufruf
$ ./appify das-shell-skript.sh
wird im selben Verzeichnis aus dem Shell Skript das-shell-skript.sh
eine MacOS App mit dem Namen das-shell-skript.app
generiert. Mit Angabe eines zusätzlichen Parameters “App Name”
$ ./appify das-shell-skript.sh "App Name"
lässt sich der MacOS App ein anderer Name geben.
Diese App lässt sich nun per CMD-Drag’n’Drop in die Finder Toolbar ziehen und von dort aus starten. Unschön könnte das Standard-Icon sein, dass MacOS dieser App in der Finder Toolbar gibt. Aber auch dafür gibt es eine unkomplizierte Lösung.
Das Icon einer MacOS App ändern
Der einfache Weg
- Zunächst eine rechteckige PNG-Grafik mit 512 x 512 px mit dem gewünschten Icon anlegen.
- Dann Doppel-Klick auf die PNG-Grafik; die Grafik wird im Previewer angezeigt.
- Nun mit CMD-C die Grafik in die Zwischenablage kopieren.
- Danach Rechtsklick auf die im ersten Schritt angelegte MacOS App und im Kontext-Menü “Get Info” anklicken.
- Im Popup-Info-Fenster ist oben links das (Standard-)Icon dieser App zu sehen. Dieses Icon anklicken; es sollte ein blauer Rahmen erscheinen.
- Nun mit CMD-V die eigene Grafik hineinkopieren.
Fertig!
Der Weg für Profis
Dabei wird das Icon direkt mit in die MacOS App eingebaut. Dazu erledigt das appify-Skript bereits die Vorarbeit, indem es eine Info.plist
Datei anlegt. In dieser ist unter anderem die Information enthalten, welchen Namen eine Icon(set)-Datei trägt, in der sich ein oder mehrere App-Icons für die MacOS App befindet.
- Wir benötigen zunächst eine *.icns Datei, in der das Icon unserer App abgespeichert ist. “icns” steht dabei für Iconset, da eine solche Datei auch App-Icons in unterschiedlichen Größen bevorraten kann. Im einfachsten Fall ist das nur ein Icon. Der Weg zu einem solchen *.icons File kann wie folgt aussehen:
- Terminal öffnen.
- Verzeichnis
das-shell-skript.iconset
anlegen. - In dieses Verzeichnis die gewünschte App-Icon-Grafik als
icon_512x512.png
kopieren. (Annahme: Es handelt sich um eine Grafik mit 512 x 512 px) - Den Befehl
iconutil -c icns das-shell-skript.iconset
ausführen.
Nun sollte im aktuellen Verzeichnis eine Datei
das-shell-skript.icns
existieren. Wenn ja, kann mitrm -rf das-shell-skript.iconset
das Iconset-Verzeichnis gelöscht werden. - Rechtsklick im Finder auf unsere MacOS App
das-shell-skript.app
. Es erscheint das Kontext-Menü. Dort “Show Package Contents” wählen. - Im Finder wird nun der Inhalt unserer MacOS App angezeigt. Dies sollte das Verzeichnis
Contents
sein. Doppelklick. - Auf der nächsten Ebene befindet sich die erwähnte Info.plist Datei sowie zwei Unterverzeichnisse. Doppelklick auf
Resources
. - Dort befindet sich eine (leere) Datei mit Namen
das-shell-skript.icns
. Diese durch die in Schritt 1 angelegte *.icns-Datei ersetzen.
Fertig! Aber halt! Viele Wege führen nach Rom.
Die Superhero-Methode für echte Männer
Benötigt die XCode Developer Tools.
- Terminal öffnen.
- Mit
sips -i das-shell-skript.png
aus der Grafik sozusagen die eigene Icon-Datei erstellen. - Die Grafik als Ressource speichern. Das geht mit dem Befehl
DeRez -only icns das-shell-skript.png > icon.rsrc
. - Einbinden dieser Ressource in unsere App mit
Rez -append icon.rsrc -o $'das-shell-skript.app/Iconr'
. - MacOS mitteilen, dass diese App jetzt ein Icon hat:
SetFile -a C das-shell-skript.app
.
Fertig!
Klamottenkiste: Der Eupander als “Trick des Monats” in der 64’er
Was man nicht alles auf dem Speicher findet. Oder im Keller. Zusammen mit dem dortens exhumierten C64 aka “die Brotkiste”, vgl. den zugehörigen Post auf Fatzebook, flatterte mir eine Fotokopie in die Hände. Die Fotokopie eines Artikels aus der 64’er. Die 64’er war Ende der 80er, Anfang der 90er Jahre, das “Magazin für Computerfans”. Wer seinerzeit nicht nur mit Daddeln auf dem brotlaibbraunen C64 beschäftigt war, hat sich möglicherweise mit dieser Gazette auf dem Laufenden gehalten. Dazu zählte in der Regel auch das Abtippen unzähliger Zeilen Programm-Kode oder – eigentlich noch schlimmer aber dafür deutlich weniger fehleranfällig – Kolonnen über Kolonnen an Hexadezimalzeichen mit dem MSE (MaschinenSpracheEditor). Das Ergebnis der Mühen waren Spiele, Tools und anderes Zeugs. Mal mehr nützlich, meistens weniger.
Seinerzeit war ich in der Demo-Szene als Coder aktiv und einige wenige Demos sind tatsächlich noch als Images für die gängigen C64-Emulatoren im Netz zu finden. Die Demos waren technisch ok, was man aber für das Gros der textuellen Inhalte in den damals üblichen Laufschriften nicht behaupten kann. Fehlergespicktes Englisch oder Deutsch mit teilweise hochnotpeinlichen Inhalten. Daher ersparen wir uns allen eine Verlinkung und konzentrieren uns auf Beiträge, die die Welt bereichertern. Und damit zurück zur Fotokopie aus der 64’er, datiert auf November 1989.
In der 64’er wurde regelmässig der “Trick des Monats” ausgelobt. Das war üblicherweise eine Software, die eine clevere Lösung für ein Problem bietet, und damit das Leben geplagter C64-Nutzer erleichtern konnte. Die Demo-Programmierung erfolgte in der Regel “low-level” und damit in Maschinensprache. Die Eigenheit solcher Maschinenspracheprogramme war, dass sie auf dem C64 nur mit einem sogenannten SYS-Kommando aufgerufen werden konnten. Ein Maschinenspracheprogramm, das von Diskette geladen wurde, konnte also nicht einfach per RUN gestartet werden, sondern bedurfte eben jenes SYS-Befehls, bspw. SYS 4096.
Der “Trick des Monats” war nun ein Tool, das ein Maschinensprache-Programm so veränderte, dass dieses geladen und eben doch mit RUN gestartet werden konnte. Der Name “Eupander V2.2” war ein reines Kunstwort ohne jeden Bezug zum Programm und fand seinen Ursprung in einem chinesischen Jahreskalender, der damals einen Panda zeigte. Die Versionsnummer wurde künstlich auf 2.2 gesetzt, um einen fortgeschrittenen Entwicklungsstand zu suggerieren. Dann ging das Ganze mit einer kurzen Beschreibung an die Redaktion der 64’er und wurde, zu meinem allergrössten Erstaunen, a) tatsächlich angenommen und b) auch noch zum “Trick des Monats” gekürt. Das Honorar betrug satte 120 DM; aus heutiger Sicht ein Witz, aber inflationsbereinigt war das in der Prä-Euro-Ära vor 25 Jahren ganz ordentlich.
MacOS Mavericks: Apps in Finder Toolbar ergänzen
Bisher war immer alles ganz einfach und intuitiv beim MacOS. Aber das Betriebssystem kommt in die Jahre. Alternative Formulierung: Die Entwickler sind auch nur Menschen. Aber warum Sachen, die gut und einfach funktionierten, verkompliziert werden, will sich nicht erschließen.
So ist das beispielsweise mit der Funktion geschehen, die das Hinzufügen eigener Apps in die Toolbar des Finders erlaubt. Der Prozess vor Mavericks: Im Finder in das Verzeichnis mit der App oder dem Automator Skript wechseln, das zur Finder-Toolbar hinzugefügt werden soll. Dann die App/das Skript per Drag’n’Drop in die Toolbar-Leiste an die gewünschte Stelle ziehen. Fertig.
Der Ablauf ist bei Mavericks zwar fast identisch, aber dann doch eben gerade so anders, dass man erst einmal wie Ochs vor’m Berg steht. Es funktioniert weiterhin per Drag’n’Drop, allerdings muss nun die CMD-Taste beim Ziehen gedrückt sein! Oder noch genauer: Erst die CMD-Taste drücken und gedrückt halten. Dann auf die gewünschte App klicken und diese auf die Toolbar-Leiste ziehen. Dann Maustaste lösen und CMD-Taste lösen.
Das kann man ja beim besten Willen nicht als Prozessoptimierung betrachten. Und es soll mir auch keiner kommen und behaupten, es hätten mit der alten Methode ohne CMD-Taste zu viele Leute “aus Versehen” Apps in die Toolbar-Leiste des Finders gezogen… Aber Problem erkannt, Problem gebannt! 🙂
MacOS ForkLift2 Favoriten exportieren
ForkLift2 von BinaryNights ist eine funktionsreiche Alternative für den MacOS-Finder und wir vom Hersteller selber mit “[…] most advanced file manager and FTP + SFTP + Amazon S3 + WEBDav client for Mac OS X (10.7 +)” beworben. In der Tat macht ForkLift2 vieles sehr gut, allerdings fehlt die Möglichkeit, die Liste der eingetragenen FTP-Server und weiterer Favoriten zu exportieren, um sie auf einem anderen Rechner zu importieren.
Der Workaround.
- Die Datei
~/Library/Preferences/com.binarynights.ForkLift2.plist
von dem Rechner aus sichern, der als Favoriten-Quelle dient. - Auf dem Zielrechner in dasselbe Verzeichnis wechseln.
- Die Aktivitätsanzeige (activity monitor) starten und den Prozess
cfprefsd
stoppen. - Die gesicherte Datei
com.binarynights.ForkLift2.plist
in das Verzeichnis (Schritt 2) des Zielrechners kopieren.
NB: Zwischen dem Stoppen des cfprefsd
-Prozesses und dem Kopieren der Datei sollte nicht zu viel Zeit vergehen, da MacOS den cfprefsd
-Prozess automatisch wieder startet.
NB: In der Datei sind nur die Konfigurationsinformationen der Favoriten gespeichert, nicht jedoch deren Passwörter! Für den Transfer der Passwörter gibt es scheinbar keine Lösung. Will heißen, alle Passwörter müssen “von Hand” neu eingegeben werden.
Dieser Workaround wurde von BinaryNights auf Nachfrage eines Nutzers bei Twitter genannt. Warum es keine native Ex-/Import-Funktion gibt, die insbesondere auch die Passwörter transferiert, ist ein wenig rätselhaft.
Wider dem Kommentar-Spam in WordPress
Trotz aller Bemühungen der Suchmaschinen sich von (leicht) manipulierbaren Faktoren zur Bewertung des Rankings einer Web-Seite zu lösen, zählen beispielsweise (Back)Links nach wie vor zu den wichtigen Kriterien bei der automatisierten Beurteilung von Stärke und Vertrauenswürdigkeit eines Online-Auftritts. Das wird sich ändern, aber bis es soweit ist, wird weiterhin aktiver Link-Aufbau betrieben. Dabei werden neben Foren und Frageportalen auch gerne Blog-Kommentare für die Erzeugung von Backlinks herangezogen.
Viele WordPress-Installationen und -Themes verwenden das Standard-Kommentar-Formular von WordPress. Es ist üblich, dass neben dem Namens- und E-Mail-Feld auch häufig ein URL-/Webseite-Feld bereitgestellt wird. Und genau dieses URL-/Webseite-Feld wird gerne für den Aufbau von spammigen Backlinks verwendet. Es spricht natürlich nichts dagegen, neben der eigenen E-Mail-Adresse auch eine interessante Homepage oder Web-Seite als Kommentar zu einem Blogbeitrag zu hinterlassen. Aber in schöner Regelmässigkeit dient das Website-Feld eher dazu, einen Link auf irgendein Projekt zu produzieren, das in ebenso schöner Regelmässigkeit nichts mit dem Beitrag zu tun hat, zu dem ein Kommentar hinterlassen wurde.
Aus gegebenem Anlass gibt es ab sofort auf der Nullseite kein URL-/Webseite-Feld mehr. Bei Verwendung des WordPress-Standard-Formulars und falls das Theme keine Editier-Möglichkeiten der Formularfelder erlaubt, kann mit dem folgenden Einzeiler, den man in die functions.php
hinzufügt, das URL-/Webseite-Feld entfernt werden.
add_filter( "comment_form_default_fields", function( $fields ) { unset( $fields[ "url" ] ); return $fields; } );
Details zu den möglichen Feldern (eng. “fields”) gibt es in der Funktionsreferenz zur comment_form()
-Funktion.
Kodi (XBMC) auf Fire TV installieren – bebilderte Kurzanleitung
[1] Erster Teil: Kodi auf dem Fire TV installieren
- ADB Debugging und Apps unbekannter Herkunft aktivieren. Dafür vom Fire TV Startbildschirm auf Einstellungen gehen und von dort zu System und dann Entwickleroptionen. Hier die Optionen “ADB-Debugging” und “Apps unbekannter Herkunft” einschalten.
- Fire TV IP-Adresse. Zu System -> Info -> Netzwerk wechseln und die IP-Adresse notieren.
- adbFire Download. Tool für Windows, Mac oder Linux hier downloaden und, falls nötig, installieren (Mac-Nutzer: Doppelklick auf *.dmg-Datei und App in Applications-Ordner ziehen).
- kodi Image Download. Dazu auf die kodi.tv Download-Seite gehen und das Android ARM apk-Image downloaden.
- adbFire starten. (Mac-Nutzer ggf. Rechtsklick und von dort via “Öffnen” starten, da adbFire von unbekanntem Entwickler stammt.)
- Setup Device klicken, um die Daten des eigenen Fire TVs einzutragen.
- FireTV verbinden. Dazu in der Drop-Down Liste links neben “Device Setup” das soeben eingetragene Gerät auswählen und im Anschluß den Button “Connect” klicken.
Wenn die Verbindung hergestellt werden konnte, erscheint unten rechts die Meldung “Device connected”.
Kommt keine Verbindung zustande, die Informationen auf der Webseite des adbFire-Entwicklers studieren; insbesondere den Abschnitt dbFire can’t connect? Click here.
- Kodi (XBMC) auf dem Fire TV installieren. Dazu Klick auf “Install APK”.
Es öffnet sich ein “Datei auswählen”-Dialog. Hier das in Schritt 4 heruntergeladene Kodi APK-Image auswählen und bestätigen. adbFire geht auf Nummer sicher und fragt noch einmal nach, ob dieses Image wirklich auf dem Fire TV installiert werden soll.
Wer sich sicher ist, bestätigt nun mit “Yes”. Die Installation wird durchgeführt. Während der Installation zeigt adbFire den Fortschritt mit einem Progress Bar unten rechts neben “Device connected” an. Nach erfolgreicher Installation erscheint die Meldung “Installed”.
Es genügt, dem Gerät unter “Description” einen Namen zu geben und die in Schritt 2 (s.o.) notierte IP-Adresse unter “Device IP” einzutragen. Anschließend “Save” klicken.
Nun ist Kodi auf dem Fire TV installiert und lässt sich – mit einer Menge Klickerei – über das Einstellungen-Menü und “Alle installierten Apps verwalten” aufrufen.
[2] Zweiter Teil: Kodi mit nur drei Klicks starten
Wir haben erst die halbe Miete. Denn nach der unter [1] beschriebenen Prozedur ist Kodi jetzt zwar auf dem Fire TV installiert, allerdings sind 27(!) Klicks mit der Fernbedienung nötig, um Kodi zu starten. Nein? Oh doch: Von der Startseite 10 x DOWN bis Einstellungen, 1 x ENTER, 3 x RIGHT bis Anwendungen, 1 x ENTER, 3 x DOWN bis Alle installierten Apps verwalten, 1 x ENTER, 6 x DOWN bis “Kodi”, 1 x ENTER und noch ein finales ENTER für “App starten”. Macht in Summe 27 Klicks und ist für die regelmässige Nutzung ein “no go”.
Glücklicherweise gibt es verschiedene Wege, um Kodi mit deutlich weniger Klicks starten zu können (bis hin zum Autostart beim Booten des Fire TV). Der hier beschriebene Ansatz entspricht im Wesentlichen dem im kodi.wiki beschriebenen, verwendet allerdings wieder das bereits in [1] benutzte Tool adbFire und setzt auf die App ikono TV statt auf Cinema TV.
- ikono TV App installieren. Im Web-Browser amazon.de aufrufen und nach der App “ikono TV” suchen.
Mit Klick auf den Kostenfrei-Button wird die App “gekauft” und gelangt in die App-Cloud des Fire TVs. Danach auf Einstellungen -> Mein Konto und dort “Amazon-Inhalte synchronisieren” wählen. Im Anschluß wieder zur Startseite, dann auf den Menüpunkt Apps, zur ikono TV App navigieren und starten. Damit wird die App aus der Cloud auf den Fire TV geladen und installiert. - Llama, ikono TV, Kodi. In diesem Schritt wird adbFire benötigt, also adbFire starten und Fire TV verbinden (Connect Button). Danach Klick auf “Llama Options”.
Es öffnet sich ein Popup-Fenster, in dem die folgenden Einstellungen sinnvoll sind: Check “Install Llama” (Ohne Llama geht es nicht!), “Link Media Center to ikono TV” und “Replace ikono TV icon with Kodi icon”.
Die Ersetzung des Icons ist rein kosmetisch, steigert aber den WAF (Woman Accpeptance/Approval Factor; vgl. Wikipedia) ungemein.
Mit Klick auf “Ok” geht’s los. Es wird die Llama App auf dem Fire TV installiert, ein paar Einstellungen vorgenommen, Kodi mit der ikono TV App verknüpft und das Icon ausgetauscht. So sieht die Erfolgsmeldung von adbFire aus.
- Llama starten und Daten importieren. Über Hauptmenü -> Einstellungen -> Anwendungen zum Punkt “Alle installierten Apps verwalten” durchhangeln und ENTER. Dann die Llama App suchen und ENTER und “App starten”. Den Disclaimer aktzeptieren. Okey Doke bestätigen.
Nun die Menü-Taste auf der Fernbedienung drücken (“Hamburger” rechts neben Home-Buttom) und im daraufhin erscheinenden Popup-Menü “Import/Export von Daten” wählen. Es erscheint ein weiteres menü, das u.a. den Import von einer URL oder SD-Karte anbietet. Eigentlich sollte da auch USB erscheinen, aber bei mir war’s nur die SD-Karte. Also “Import von SD-Karte” wählen, Nachfrage bestätigen und Llama importiert die von adbFire bereitgestellte Regel, die den Start von ikono TV überwacht und statt ikono TV unser Kodi startet.
Das war’s! Wenn alles funktioniert hat, sollte die Startseite in etwa so aussehen und Kodi lässt sich mit nur drei Klicks starten.
Eventuell erscheint noch das alte ikono TV Icon. Hier kann ein Reboot des Fire TV helfen: Einfach länger als fünf Sekunden die Auswahl-Taste (in der Mitte der Richtungstasten) und die Play-Taste gleichzeitig gedrückt halten.
MacOS: grüner Zoom Button soll wieder Fenster maximieren
Mit MacOS 10.10 “Yosemite” hat Apple einige Neuerungen eingeführt. Dazu zählt u.a. ein geändertes Verhalten des grünen Zoom Buttons, der sich oben links in jedem Applikationsfenster befindet. Bisher führte ein Klick auf diesen Button dazu, daß das zugehörige Fenster maximiert – also auf die gesamte Bildschirmfläche exklusive Title Bar und Dock aufgezogen – wurde.
In Yosemite schaltet ein Klick auf diesen Button die Applikation nun in den Vollbildmodus. Wenn sich die Maus den Buttons nähert, deuten dieses Verhalten auch zwei kleine Pfeile im grünen Button an.
Es gibt eine Möglichkeit, das alte Verhalten – also Maximieren des Applikations-Fensters – zu erreichen. Leider nicht dauerhaft über eine Einstellung sondern nur über eine (simple) Tastenkombination für jeden einzelnen Klick. Dazu muß während des Klicks die Alt-Taste gedrückt werden. Nähert sich die Maus den Buttons bei gedrückter Alt-Taste, so wird das (alte) Verhalten im grünen Button durch das bekannte Plus-Symbol angezeigt.
Update auf MacOS 10.10 Yosemite und MAMP Apache startet nicht mehr
- Falls MAMP läuft via “Stop Servers”-Button die Server stoppen.
- Ein Terminal-Fenster öffnen. Geht beispielsweise mit CMD+Leertaste, dann
terminal
tippen und mit Return bestätigen. - Im Terminal-Fenster mit
cd /Applications/MAMP/bin/apache2/bin
und abschließendem Return in das genannte Verzeichnis wechseln. - Dort die Datei
envvars
in_envvars
umbenennen:move envvars _envvars
und Return. - Danach im MAMP Fenster “Start Servers” klicken.
Läuft.
Minimierung von HTML, PHP, CSS und JavaScript mit Smaller für Mac
Im April 2010 hat Google mit dem Artikel Using site speed in web search ranking in seinem Webmaster Central Blog offiziell die Ladezeit einer Web-Seite als Ranking-Faktor deklariert. Der Vorteil schnell ladender Web-Seiten liegt auf der Hand: Neben einer verbesserten User Experience lassen sich lt. Google dadurch ebenfalls Betriebskosten reduzieren.
Viele Tools unterstützen bei der Analyse und Optimierung der eigenen Web-Site. Zu den bekannteren gehört Googles eigenes PageSpeed-Tool, das sowohl als Online-Variante als auch in Plugin-Form bspw. für Firefox oder natürlich Chrome zur Verfügung steht. Ebenfalls bekannt: Das von Yahoo bereitgestellte YSlow sowie die in Googles Webmaster Tools angezeigte Site Performance (unter Labs, dann Site Performance).
Die Optimierungsvorschläge dieser Tools sind umfangreich und reichen vom verzögerten Laden von JavaScript, der Nutzung von Cache Validators oder Browser Caching weiter über die Angabe von Grafik-Abmessungen, der Nutzung von CSS Sprites bis hin zur Minimierung von Grafik und HTML, PHP, CSS sowie JavaScript Dateien. Für den letztgenannten Fall stellt Chen Luo mit seiner Smaller ein hervorragendes Tool bereit, daß diese Arbeit optimiert und insbesondere die Stapelverarbeitung mehrerer Dateien gleichzeitig erlaubt.
Zwar gibt es dafür auch zahllose online Tools, allerdings sind diese in der Regel auf eine Teilmenge der verschiedenen Dateitypen spezialisiert. So beispielsweise der YUI Online Compressor, der nur JavaScript und CSS komprimiert, nicht jedoch PHP oder HTML. Die Smaller App erlaubt dagegen in einem Arbeitsgang alle genannten Dateitypen gleichzeitig zu minimieren. Der Prozeß läuft in wenigen einfachen Arbeitsschritten ab.
Nach Download und Start der Smaller App wird der Nutzer mit einer leeren Arbeitsfläche begrüßt.
Im folgenden Beispiel wurden zwei Javascript- und CSS-Dateien sowie eine HTML-Datei per Drag’n’Drop auf die Arbeitsflächer der Smaller App gezogen.
Mit einem Klick auf den Minify-Button beginnt Smaller mit der Minimierung und zeigt während der Arbeit den Fortschritt auf der Arbeitsoberfläche an.
Die minimierten Dateien werden automatisch im selben Verzeichnis wie die Originaldatei gespeichert.
Im Optionsdialog der Smaller App können zahlreiche Einstellungen vorgenommen, um die Arbeitsweise des Programms an die eigenen Bedürfnisse anzupassen.
So ist es möglich, den Klick auf den Minify-Button einzusparen, indem Smaller mit der Minimierung beginnt sobald Dateien per Drag’n’Drop auf die Arbeitsoberfläche gezogen wurden. Minimierte Dateien können automatisch mit dem Suffix “.min” ergänzt werden, so daß aus “main.js” bspw. “main.min.js” wird. Das Standardverhalten die minimierten Dateien im selben Verzeichnis abzulegen kann ebenso geändert werden, wie die automatische Erstellung einer gezippten Version.
Der Autor stellt eine 30-Tage-Testversion auf seiner Webseite smallerapp.com zum Download bereit. Zum Preis von gerade einmal $20,- erhält der Nutzer eine extrem praktische Drag’n’Drop Applikation für den Mac, die die Minimierung der gängigen Web-Datei-Formate unter einem Dach bündelt.
Slicy für MacOS – komfortabel Grafiken aus Photoshop Dateien ausschneiden
Slicy vom Hersteller MacRabbit ist eine geniale MacOS Applikation, die diesen Ablauf per Drag’n’Drop automatisiert und damit extrem komfortabel gestaltet. Die Arbeit mit Slicy läuft dabei in drei simplen Schritten ab.
- Layer Gruppen oder einzelne Layer mit dem gewünschten Dateinamen benennen.
- Photoshop PSD Datei auf die Slicy-App ziehen.
- Grafiken werden automatisch von Slicy extrahiert und im gewünschten Zielformat abgespeichert.
Darüberhinaus verfügt Slicy über eine Änderungserkennung, d.h. sobald eine Photoshop-Datei geändert wurde, kann Slicy die enthaltenen Grafiken automatisch erneut extrahieren, ohne das dafür die Datei erneut in Slicy gezogen werden muß.
Der Ablauf im Detail anhand einer von Slicy mitgelieferten Beispieldatei (Basic Tagging): Inhalt sind vier Sterne, die mit Slicy automatisch extrahiert werden sollen.
Hier die Magie: Die Sterne-Layer werden mit den zukünftigen Dateinamen benannt, also Star1.png, Star2.png, etc.
Die Slicy Applikation starten.
Photoshop-Datei auf die App ziehen. Slicy beginnt mit seiner Arbeit.
Slicy zeigt nach der Extraktion die erkannten Grafiken aus der Photoshop Datei an. Nun kann über den Save-Button oben mit Wahl des Zielordners gespeichert werden.
Nach dem Speichern fragt Slicy selbständig, ob zukünftige Änderungen an dieser Datei automatisch einen neuen Export-Vorgang anstoßen sollen. Sehr praktisch! Hier die ausgeschnittenen und exportierten Dateien; Transparency bleibt selbstverständlich beim Export erhalten.
Slicy bietet noch weitere Funktionen wie bspw. Auto-Sizing für Retina Displays oder die Möglichkeit, bestimmte Bereiche in einer Grafik zu definieren, aus denen dann Teile extrahiert werden. Kurzum: Eine kleine und feine MacOS Applikation, die das Exportieren von Grafiken oder Teilen davon kinderleicht macht und daher unverzichtbar für jeden Web, App oder Icon Designer ist.
MacRabbit verkauft Slicy zum Preis von $29,- auf seiner Website macrabbit.com. Eine Testversion steht zum Download bereit.