Homeverzeichnis umbenannt?

Posted in Applescript, Calendar on Juni 19th, 2006

Für mich ist es ehrlich gesagt etwas unverständlich warum viele User ihr Homeverzeichnis umbennen. Muss ich wohl nicht verstehen, Fakt ist dass es offensichtlich des Öfteren passiert, und in den Userforen bei der Diskussion zu dem Thema immer wieder der Wunsch geäussert wird, man möge vor so einer Aktion doch durch einen entsprechenden Warnhinweis bewahrt werden.
Diese Warnung gibt es standardmäßig nicht im System, aber man kann sie sich ganz einfach selber machen mit folgendem Script das man als Ordneraktion an den Ordner “Benutzer” anhängt:


on removing folder items from this_folder after losing these_items
tell application "Finder"
display dialog "You just changed the name of your Homefolder. You should rename it to what it was before immediately. If you don‘t do so, you will run into serious trouble, after the next boot. Your browser now opens a helpsite.
===
Du hast soeben Deinen Homefolder umbenannt. Du solltest das sofort rückgängig machen, sonst wirst Du massive Probleme nach dem nächsten Start bekommen. Dein Browser öffnet nun eine Seite mit Hilfe." with icon stop
end tell
do shell script "open http://www.macuser.de/forum/showthread.php?t=144597"
end removing folder items from

Den Artikel Homeverzeichnis umbenannt?

FTP-Upload via Kontextmenü

Posted in Applescript, Calendar on Juni 17th, 2006

als Aktion für On My Command1:


tell application "Finder"
set these_items to the selection
end tell
repeat with i from 1 to the count of these_items
set this_item to (item i of these_items) as alias
set this_info to info for this_item
set a to POSIX path of this_item
end repeat
set ScriptBefehl to "curl -T " & a & " -u User:Pass ftp://Host/Pfad/"
do shell script ScriptBefehl

Lädt die aktuell ausgewählte Datei auf den im Script angegebenen Server/Verzeichnis hoch.

  1. 1On My Command
Den Artikel FTP-Upload via Kontextmenü

PDF2RTF Service

Posted in Calendar, Software on Mai 28th, 2006

Der Name ist Programm und ermöglicht PDFs nicht nur lesend, sondern auch zur weiteren Bearbeitung z.B. in Textedit zu öffnen. Sehr praktisch.
Download bei: DEVON Technologies.

Den Artikel PDF2RTF Service

Bildschirmfüllende Fenster

Posted in Applescript, Calendar on Mai 2nd, 2006

Viele Leute ärgern sich über das Verhalten von OS X dass der Klick auf den grünen Punkt das Fenster nicht unbedingt auf die volle Bildschirmgrösse bringt.
Abhilfe schafft dieses Script zu dem mir die Idee gekommen ist als ich im Applescriptforum von Fischer-Bayern1 über die ersten beiden Zeilen des Scripts gestossen bin.


set ts to screen list starting with main screen
set theSize to screen size of item 1 of ts
set t1 to first item of theSize
set t2 to second item of theSize
tell application "Safari"
set bounds of window 1 to {0, 0, t1, t2}
end tell

Hier am Beispiel Safari. Es lässt sich aber auch jedes andere Programm einsetzen. Bei manchen Programmen wie z.B. dem Finder muss man allerdings den zweiten Wert in der Klammer ändern, da das Fenster sonst zum Teil unter der Menüleiste verschwindet. Beim Finder hat sich ein Wert von 44 bei mir bewährt. Wie man das Script dann in der Praxis ansprechen will bleibt jedem selbst überlassen. In den Scriptordner gelegt steht es im Scriptmenü in der Menüleiste zur Verfügung, als Programm gespeichert kann man es sich auch bequem in die Symbolleiste des Finders legen, oder man triggert es mit Quicksilver…hier bietet sich wirklich für jeden Geschmack die passende Methode.

Nachtrag: Mir ist gerade eingefallen dass ja nicht jeder (so wie ich) sein Dock automatisch ausblendet, und zu allem Überfluss auch nicht bei jedem das Dock (falls permanent eingeblendet) an der selben Stelle sitzt. Vielleicht überlege ich mir da noch was…bis dahin muss man halt damit leben wie es ist, bzw. die Größen an die persönlichen Bedürfnisse anpassen, was ja auch nicht schwer ist, z.B. so:


set t2 to (second item of theSize) - Dockgröße

Welchen Wert (t1/t2) man verändert, hängt halt davon ab wo man das Dock positioniert hat. Die Werte in den geschweiften Klammern sind: {Desktop von links, Desktop von oben, Breite des Fensters, Höhe des Fensters}

  1. 1Applescriptforum von Fischer-Bayern
Den Artikel Bildschirmfüllende Fenster

Auf der Suche mit Seti?

Posted in Calendar, Software on Mai 1st, 2006

Immer wieder sehe ich bei vielen Leuten den Seti-Bildschrimschoner laufen, und ärgere mich jedesmal darüber wie man seine wertvolle CPU-Zeit für so einen überflüssigen Mist verplempern kann.
Wenn man Zeiten hat in denen der eigene Rechner für Distributed Computing zur Verfügung steht, dann bitte für sinnvolle Projekte wie das vom Rothberg Institut1, oder Folding@Home2, um nur mal zwei aus einer wirklich großen Zahl unterstützenswerter Projekte zu nennen.
Wer sich ausführlicher informieren möchte welche Projekte sinnvoller unterstützt sind als die völlig überflüssige Suche nach extraterrestrischem Leben, der wirft mal einen Blick auf distributedcomputing.info3.

  1. 1Rothberg Institut
  2. 2Folding@Home
  3. 3distributedcomputing.info
Den Artikel Auf der Suche mit Seti?

Quickcommand

Posted in Applescript, Calendar on April 19th, 2006

Ein Freund der erst vor kurzem zum Mac gewechselt ist hat mich letztens gefragt ob es unter OS X nicht sowas gibt wie “Alt-F2″ bei KDE.

Ich musste das verneinen, meinte aber dass man sich sowas mit Applescript und einem Hotkeytrigger (hier wirds Geschmackssache, ich nutze für sowas Quicksilver) selber basteln kann. Herausgekommen ist dabei folgendes Script:


set theResult to display dialog "Enter command" default answer "" buttons {"Execute", "Execute with Feedback"} default button 1
set theCmd to text returned of theResult
set Exec to theCmd
if button returned of theResult is "Execute" then
do shell script Exec
else
set t to do shell script Exec
display dialog t
end if

Natürlich ist das nur eine erste Idee, und lässt sich nach Belieben verändern, anpassen, erweitern, etc…

Info vom System Profiler

Posted in Applescript, Calendar on April 7th, 2006

Je umfangreicher und detaillierter die Infos die man im Supportfalle bekommen kann sind, umso eher kommt man einem Problem auf die Schliche. Um als Admin den User mit der Problemsuche möglichst wenig zu belasten, habe ich mir mal folgendes Script zusammengebastelt, das dem User eigentlich nur noch einen einzigen Mausklick abverlangt. Und selbst den könnte man evtl. sogar noch wegrationalisieren, aber beim Versenden von Daten ist es nicht nur eine Frage der Machbarkeit/Bequemlichkeit, sondern auch des Vertrauens wenn das Senden der User anstossen muss. Ausserdem bleibt ihm so die Möglichkeit evtl. weitere Infos in die Mail zu schreiben.


set theHost to do shell script "hostname"
set theUser to do shell script "whoami"
set theCmd to "system_profiler > /Users/" & theUser & "/Desktop/sysprof.txt"
do shell script theCmd
set theAttachment to "/Users/" & theUser & "/Desktop/sysprof.txt"
set theSubject to "System Profiler | " & theHost
set theContent to "Systemprofil im Anhang"
set theSenderAdress to "sysprof@" & theHost
set theRecipient to "Admin"
set theRecipientAdress to "admin@firma.de"
tell application "Mail"
set newMessage to make new outgoing message with properties {subject:theSubject, content:theContent & return & return}
tell newMessage
set visible to true
-- set sender to theSenderAdress
make new to recipient at end of to recipients with properties {name:theRecipient, address:theRecipientAdress}
tell content
make new attachment with properties {file name:theAttachment} at after the last paragraph
end tell
activate
-- send newMessage
end tell
end tell

Das Script ruft System Profiler auf, und speichert die gesammelten Daten in die Datei “sysprof.txt”, und verschickt diese Datei dann per Mail an den Admin.
Veränderungen/Erweiterungen sind natürlich beinahe endlos möglich.

Den Artikel Info vom System Profiler

Apple Knowledge Base

Posted in Applescript, Calendar on März 12th, 2006

Ich nutze oft und ausgiebig die Apple Knowledge Base, und wollte eine einfache Möglichkeit haben schnell zu bestimmten Dokumenten zu kommen.
Also habe ich mir folgendes Script zusammengebastelt:


display dialog "Enter Knowledge Base Document Number:" default answer "" buttons {"GO", "Cancel"} default button 1
copy the result as list to {text_returned, button_pressed}
get text_returned
set theCmd to "open http://docs.info.apple.com/article.html?artnum=" & text_returned
do shell script theCmd

Das Script wird von einem Quicksilver-trigger gestartet. Für mich momentan der bequemste Weg zu den Dokumenten in der Apple Knowledge Base.

Den Artikel Apple Knowledge Base

Uninstall MMInputFamily and Drivers

Posted in Applescript, Calendar on März 10th, 2006

Ich habe so ein kleines USB-Kästchen von Terratec1 zum Fernshen via DVB-T. Zuerst habe ich es mit iTele2 und den entsprechenden Treibern betrieben, war damit aber nicht glücklich und habe mir dann EyeTV3 2.0 gekauft.
EyeTV kann aber das Kästchen nicht finden/ansprechen solange die Treiber von iTele noch aktiv im System sind.
Ich habe dann mal spasseshalber ein Uninstallscript für die Treiber geschrieben, weil es noch keinen Uninstaller gab.
Auf meinen Rechnern funktioniert er zuverlässig. Und siehe da: EyeTV findet dann auch das Terratec-Kasterl, und arbeitet einwandfrei.

DOWNLOAD

  1. 1Terratec
  2. 2iTele
  3. 3EyeTV
Den Artikel Uninstall MMInputFamily and Drivers

Terminalkommandos zusammensetzen

Posted in Applescript, Calendar on März 7th, 2006

Oft hat man Shellscripte die folgende Syntax haben:


Befehl Infile Outfile

also nach ihrem Aufruf als Parameter eine Inputdatei und eine Outputdatei erwarten, meist mit unterschiedlichen Dateiendungen.
Je nachdem wieviele Dateien umgewandelt werden sollen kann es recht lästig sein das Script x-mal aufzurufen und das Kommando anzupassen.
Hier kann man wunderbar Apple Script ins Spiel bringen. Aus genau so einer Aufgabenstellung heraus ist auch die Idee zu diesem Script entstanden.
Es ging dabei um die Umwandlung von *.dvi-Dateien in *.pdf-Dateien.1.


on SuchenUndErsetzen(derText, SuchText, Ersatztext)
set AppleScript's text item delimiters to the SuchText
set the itemListe to every text item of derText
set AppleScript's text item delimiters to the Ersatztext
set derText to the itemListe as string
set AppleScript's text item delimiters to ""
return derText
end SuchenUndErsetzen
try
tell application "Finder" to set the source_folder to (choose folder) as alias
end try
tell application "Finder"
set these_files to every file of folder source_folder -- whose name contains ".dvi"
end tell
repeat with i from 1 to the count of these_files
set this_file to (item i of these_files as string)
set this_info to info for this_file
set theDatei to this_file
set a to (POSIX path of (theDatei) as string)
-- get this_info
set SuchListe to {".dvi"}
set ErsatzListe to {"."}
set OriginalText to a
repeat with i from 1 to (count of SuchListe)
set SuchText to item i of SuchListe
set Ersatztext to item i of ErsatzListe
set OriginalText to SuchenUndErsetzen(OriginalText, SuchText, Ersatztext)
end repeat
set thePfad to OriginalText
-- get thePfad
set theSrcFile to thePfad & "dvi"
-- get theSrcFile
set theOutFile to thePfad & "pdf"
-- get theOutFile
set Befehl to "voller/Pfad/zum/script "
set Exec to Befehl & theSrcFile & " " & theOutFile
-- display dialog Exec
do shell script Exec
end repeat

Das Script muss natürlich entsprechend angepasst werden, wo es nötig ist (Dateiendungen, Pfad zum Befehl/Script).
Ausserdem empfiehlt es sich natürlich statt “do shell script” sich das Ganze erstmal per “display dialog” anzeigen zu lassen um sicher zu gehen dass man keinen Murks gemacht hat.

  1. 1Es ging dabei um die Umwandlung von *.dvi-Dateien in *.pdf-Dateien.
Den Artikel Terminalkommandos zusammensetzen