Die Grenzen zwischen (kompilierten) Mac-Programmen und einer Website verschwimmen. Viele Websites bieten inzwischen einen Funktionsumfang, den man bis vor einigen Jahren nur von "richtigen" Programmen gewohnt war. Google Text & Tabellen ist dafür ein gutes Beispiel. Diese sogenannten Web-Applications können sich inzwischen dank Google Chrome sogar im Mac-Dock einnisten und öffnen die entsprechende Website in Google Chrome, sobald man sie "öffnet".
Doch man möchte vielleicht nicht unbedingt zig Browser-Fenster/-Tabs mit den meist genutzten Web-Anwendungen offen haben, sondern diese als eigenständige Programm-Icons im Dock für den "Zugriff mit einem Klick" platziert haben.
Ich habe bei mir zum Beispiel aus WhatsApp Web, Google Keep und meiner selbstgebastelte Einkaufsliste eigenständige Pseudo-Programme erstellt.Zwei Lösungen dafür möchte ich nun vorstellen.
Fluid
Fluid ist ein Shareware-Programm, das gratis genutzt werden kann, aber durch die Bezahlung von 5 US$ noch ein paar zusätzliche Features freischaltet.
Web-Adresse der gewünschten Website und einen Namen, den das Programm tragen soll, eingeben und schon hat man ein eigenständiges Programm, welches den Inhalt der spezifizierten Website anzeigt, wenn man es öffnet.Die Möglichkeit, das Programm vom Dock in die Menü-Leiste zu verschieben (dafür in der Fluid-Web-Applikation den Menübefehl Programm-Menü > Pin to Status Bar... wählen; Rückgängig durch einen Ctrl-Klick auf das Menü-Icon). Damit habe ich mir meine selbstgebastelte Einkaufsliste mit einem Klick zugänglich gemacht.
Außerdem kann man nach Bezahlung der Shareware-Gebühr User-Scripts und User-Styles integrieren.
Ergo
- Einfach zu bedienen
- nutzt WebKit
- kann Websites auch in der Menü-Leiste integrieren
GoogleChrome Wrapper
Man kann statt WebKit auch Google Chrome als "Engine" für die "zum Programm gemachte Website" verwenden.
An sich macht man nichts anderes, als den Shell-Befehl
mit einem Icon zu versehen und ein doppelklick-bares Programm daraus zu machen.
Ein kleines und praktisches Skript, das die notwendigen Maßnahmen hierfür automatisiert durchführt, ist hier auf Github zu finden https://gist.github.com/demonbane/1065791
Ich habe das Skript allerdings etwas modifiziert: Einerseits auf Deutsch übersetzt und die Möglichkeit hinzugefügt, einen Wunsch-Speicherort für das erstellte Programm anzugeben.
# Von https://gist.github.com/demonbane/1065791
echo "\n\nWie soll der Name der Applikation lauten?"
read inputline
name="$inputline"
echo "\nWie lautet die URL der Seite, aus der Sie eine Applikation erstellen wollen?\n(z.B. https://www.google.com/calendar/render)"
read inputline
url="$inputline"
echo "\nWie lautet der absolute Pfad zum gewünschten PNG-Programm-Icon?\n(z.B. /Users/username/Desktop/icon.png)"
read inputline
icon="$inputline"
chromePath=""
while [[ $chromePath == "" ]]
do
echo "\nWie lautet die absolute Pfad-Angabe zu Google Chrome?\n(nur mit Enter bestätigen für Standard-Pfad /Applications)"
read inputline
if [[ $inputline == "" ]]; then
chromePath="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
else
chromePath="$inputline/Google Chrome.app/Contents/MacOS/Google Chrome"
fi
if [ ! -f "$chromePath" ]; then
echo "$inputline/Google Chrome konnte nicht gefunden werden."
chromePath="";
fi
done
appRoot=""
while [[ $appRoot == "" ]]
do
echo "\nWo möchten Sie das neue Programm platziert haben?\n(nur mit Enter bestätigen für Standard-Pfad /Applications - bitte nur absolute Pfad-Angaben!)"
read inputline
if [[ $inputline == "" ]]; then
appRoot="/Applications"
else
appRoot="$inputline"
fi
if [ ! -d "$appRoot" ]; then
echo "$appRoot konnte nicht gefunden werden."
appRoot="";
fi
done
# various paths used when creating the app
resourcePath="$appRoot/$name.app/Contents/Resources"
execPath="$appRoot/$name.app/Contents/MacOS"
profilePath="$appRoot/$name.app/Contents/Profile"
plistPath="$appRoot/$name.app/Contents/Info.plist"
# make the directories
mkdir -p "$resourcePath" "$execPath" "$profilePath"
# convert the icon and copy into Resources
if [ -f "$icon" ] ; then
sips -s format tiff "$icon" --out "$resourcePath/icon.tiff" --resampleHeightWidth 128 128 >& /dev/null
tiff2icns -noLarge "$resourcePath/icon.tiff" >& /dev/null
fi
# create the executable
cat >"$execPath/$name" <<EOF
#!/bin/sh
exec "$chromePath" --app="$url" --user-data-dir="$profilePath" "\$@"
EOF
chmod +x "$execPath/$name"
# create the Info.plist
cat > "$plistPath" <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" “http://www.apple.com/DTDs/PropertyList-1.0.dtd”>
<plist version=”1.0?>
<dict>
<key>CFBundleExecutable</key>
<string>$name</string>
<key>CFBundleIconFile</key>
<string>icon</string>
</dict>
</plist>
EOF
# Fertig
echo "\nProgramm wurde erfolgreich erstellt.\n\n"
open $appRoot
Ihr könnt das Skript hier herunterladen, entpacken, ausführbar machen
chmod +x makeapp.sh
und dann ausführen ./makeapp.sh
Voraussetzungen
- Google Chrome muss installiert sein
- Ein Programm-Icon als PNG-Datei muss vorliegen
- Keine Angst vor dem Umgang mit der Kommandozeile
- nutzt Google Chrome
- Simple Sache
![]() ![]() ![]() ![]() |
|
Erstellt am: 11.04.2015 unter den Kategorien Online . | Kommentieren |