Batch Upload für Sonorasaurus

5 July, 2010 (00:08) | AppleScript, Useful Snippets | By: hubi

Ich habe mir ja vor kurzem ein iPad zugelegt (Nelson sein Name) und war auf der Suche nach einer Player-Software, mit der ich zur Not halbwegs komfortabel Musik machen kann. Dabei bin ich auf Sonorasaurus gestoßen. Neben der File-Sync Lösung, die über USB funktioniert, ist bisher nur ein einfacher Webserver vorhanden, über den sich jeden Datei einzeln hochladen lässt. Da ich aber unbedingt über das Netzwerk schnell den ein oder anderen Song nachladen können möchte, habe ich mir hierfür.... RICHTIG, ein kleine AppleScript geschrieben. Es nutzt curl um im batch Dateien auf das iPad zu laden (aktiviert Sonorasaurus-Webserver vorrausgesetzt). Die IP des iPads stellt man über den Dateinamen (Prefs-Datei habe ich mir mal gespart) ein. Ein einfaches Droplet, Mp3-Dateien drauf-ziehen, warten, auf dem iPad abspielen =)


Upload to Sonorasaurus v.1.0
28.7 kB (24 hits)

Code zum markieren einmal anklicken Code im Skript-Editor öffnen

--04.07.2010 hubionmac.com

--Tested with Mac OS 10.6.4 

--Sonorasaurus File Upload Droplet

on open these

tell application "Finder"

set myname to name of (path to me)

end tell

set AppleScript's text item delimiters to "Upload mp3s to "

set ipad_ip to text item 2 of myname

set AppleScript's text item delimiters to ".app"

set ipad_ip to text item 1 of ipad_ip

set AppleScript's text item delimiters to ""

set server_address to "http://" & ipad_ip & ":8888"

repeat with this in these

set this_x to POSIX path of (this as alias)

set this_file to do shell script "basename " & quoted form of this_x

if this_file ends with ".mp3" then

set this_dir to do shell script "dirname " & quoted form of this_x

do shell script "cd " & quoted form of this_dir & ";curl -F \"file=@" & this_file & "\" -F \"button=Upload\" " & server_address

end if

end repeat

display dialog "finished" giving up after 4

end open

.webloc vs .url -> Weburl Verweise

12 June, 2010 (11:28) | Nice2Know, OS X | By: hubi

Laut diesem Thread bei Stack Overflow kann man .webloc Dateien neben der Variante Drag&Drop auch von Hand schreiben und zwar im XML-Format seit Mac OS 10.3. Eine besonders kurze und wohl auch universellere Variante ist das .url Format:

Code zum markieren einmal anklicken

[InternetShortcut]

URL=http://www.apple.com/

 

Wichtig dabei ist dass, die Datei auf 3 Zeilen besteht, also die letzte leer ist.

Webdev: Webkit Transition Beispiel

31 May, 2010 (04:52) | webdev | By: hubi

Ich wollte für eine kleine Web-Anwendung die ich gerade schreibe einen Effekt nutzen, den ich auf der Seite von The Wonderfactory gesehen habe. Dort kann man auf der Seite die Schlagzeilen durchblättern, was vermutlich mit der selben Technik umgesetzt wurde, die die auch für die HTML-5 Ausgabe der Sports-Illustrated genutzt haben.
Ich bin nicht so ein Freund von aufgeblähten JavaScript-Bibliotheken (zu aufgebläht für meine Seite) und diesen setTimeout-Pfusch den man nutzt, um etwas Bewegung in eine Seite zu bringen. Deshalb und weil die Seite die ich gerade schreibe wohl hauptsächlich von Webkit-Browsern angesteuert werden dürfte, habe ich mir so eine Wisch-Effekt-Box mit dem ein bissle JavaScript und etwas mehr CSS zusammengebaut. Unterm Strich können diese Webkit-Transition-Effekte einiges an JavaScript-Code überflüssig machen und die Seite läuft damit auch problemlos auf dem iPhone =)
Und die Animation soll angeblich auch von der Hardware beschleunigt werden.
Link zur Demo Seite

I am NOT REWE!

22 May, 2010 (11:49) | NERV! | By: hubi

Ich kaufe mehrmal die Woche da ein, trotz der kostenpflichtigen Plastik-Tüten mit fett Werbung drauf, aber diese eingedeutschte Audio-Gehirn-Wäsche geht mir jetzt endgültig auf den Sack. Ab jetzt nur noch mit Mp3-Player und Jute-Beutel! Abzukassieren und dann noch den Leuten ohne Ausweichmöglichkeit vorzuträllern (Man kann sich die Ohren kaum zuhalten, wenn man sein Körpchen trägt.), dass REWE toll ist und man dazu gehören sollen.... NOPE!

dann schon lieber

PDF Wasserzeichen die II 1/2.

14 May, 2010 (23:15) | Printing | By: hubi

Die Sache mit den Ordner-Aktionen war zwar ganz nett, aber nicht wirklich die zuverlässigste Lösung den Vorgang anzustoßen. Aus diesem Grund habe ich einen kleinen Automator-Workflow gebaut, der zuverlässig das Wasserzeichen (via pdftk) einbaut. So kommt das ganze Ding dann auch mit Sonderzeichen im letztendlichen Dateinamen klar. Der Workflow funktioniert unter 10.5 und 10.6. Zur Installation einfach in /Library/PDF Services/ kopieren und von nun an kann in jedem Druckdialog "PDF pdftk" ausgewählt werden.
Der Workflow fragt nach einem Dateinamen und erstellt das fertige PDF mit dem Dateinamen in einen Ordner "Watermarked PDFs" auf dem Schreibtisch. Sollte ein Dateiname bereits vorhanden sein, wird in Finder-Art durch-nummeriert.
Am Ende noch ein kurzer Dialog, ob das erstellte PDF gleich an eine neue Email gehängt werden soll. Fertig =)
Das Feintuning bleibt jedem selbst überlassen. Damit der Workflow funktioniert, muss aber pdftk installiert sein, einfach von hier die fertig kompilierte Version (zusammen mit den Ordneraktion) laden.
(Das Hintergrund-PDF sucht sich das Skript direkt auf dem Startvolumen (_PDF_BACKGROUND.pdf)

PDFTK Wasserzeichen (Print-Workflow) v.1.0
156.44 KB (70 hits)

Wie mülle ich mein Home-Verzeichnis voll?

13 May, 2010 (23:19) | NERV!, software | By: hubi

Zum Beispiel mit:

UI-Browser

/Applications/UI\ Browser.app
~/Application Support/eSellerate
~/Preferences/com.prefabsoftware.uibrowser.plist
~/Logs/K6J1GI(IkG.plist

Bin geneigt es die iShovel zu nennen

13 May, 2010 (09:14) | Blafasel | By: hubi

... oder wenn Letherman ein Schaufel produzieren würden, wäre es bestimmt so eine:

Zu verwenden als Zange, Küchenmesser, Sense, Säge, Hacke, Kletterhacken, Paddel, Beil, Zollstock, Kampfschild, Dosenöffner, Drahtschneider und Schaufel. Einzig die eingebaute Motor-Säge und der innen liegende Strohhalm fehlen da noch.

Safari: Öffne alle JavaScript Links

5 May, 2010 (22:16) | Safari, Useful Snippets | By: hubi

Kann recht praktisch sein, wenn man sich mal alle JavaScript-Dateien zu einer Website anzeigen lassen möchte...

Code zum markieren einmal anklicken Code im Skript-Editor öffnen

tell application "Safari"

tell document 1

--set mybaseURL to do JavaScript "document.URL.slice(0, document.URL.lastIndexOf('/')+1)"

set jslinks to do JavaScript "var jssrcarray = new Array()

for (var i=0;i<document.getElementsByTagName('script').length;i++)

{

jssrcarray.push(document.getElementsByTagName('script')[i].src)

}

jssrcarray

"

repeat with jslink in jslinks

open location jslink

end repeat

end tell

end tell

Nervige Overlays auf Website entfernen

4 May, 2010 (09:41) | NERV!, javascript | By: hubi

Früher waren es die Pop-Up-Fenster heute sind es nervig Overlays, die die Sicht auf eine Website versperren. Entweder schaltet man stumpf JavaScript aus oder klickt die Overlays weg, was dann den Aufruf von anderen Overlays oder Popups zur Folge hat. Ein kleine Hilf stellt diese JavaScipt-Code dar, den der alle diese Overlay-Dinger schlichtweg ausblendet. (Quick&Dirty).

Code zum markieren einmal anklicken Code im Skript-Editor öffnen

tell application "Safari"

tell document 1

do JavaScript "for (var i=0;i<document.getElementsByTagName('*').length;i++)

{

if ((document.getElementsByTagName('*')[i].style.position == 'absolute')||(document.getElementsByTagName('*')[i].style.position == 'fixed'))

document.getElementsByTagName('*')[i].style.display = 'none'

}"

end tell

end tell

Macnews hat da eine etwas abgeänderte Form, das Overlay wird dort über eine Stylesheet definiert, deshalb nun computed style und schon funktioniert es wieder =)

Code zum markieren einmal anklicken Code im Skript-Editor öffnen

tell application "Safari"

tell document 1

do JavaScript "for (var i=0;i<document.getElementsByTagName('*').length;i++)

{

if ((document.defaultView.getComputedStyle(document.getElementsByTagName('*')[i],null).position == 'absolute')||(document.defaultView.getComputedStyle(document.getElementsByTagName('*')[i],null).position == 'fixed'))

document.getElementsByTagName('*')[i].style.display = 'none'

}"

end tell

end tell

Cleanternet

2 May, 2010 (13:03) | Nice2Know | By: hubi

Ist zar schon etwas ältert...

Dann noch ein etwas andere Ansatz, quasi aber zu selben Thema: