spirigwi •----->


Anmeldedatum: 10.07.2003 Beiträge: 1517 Wohnort: Olten-CH
|
Verfasst am: 22.07.2007 - 19:43 Titel: PFAD eines Finderobjektes: UNIX oder POSIX: nach Wahl |
|
|
Statt den Pfad mit choose zu ermitteln(Was eine 3-fache Option voraussetzen würde: file alias folder) direkt aus der Findermarkierung.
Das Snippet soll in die Lücke springen, die seit OS9 für solches offen geblieben ist (SkirptEditor hatte < OSX die Funktion: "Verweis einsetzen...")
Um es sich bequem zu machen, kann man dieses Skript im Skript-Ordner als Skript lagern:
"HD:Users:usename:Library:Scripts"
Dann kann man es über das S-Menu aktivieren
hat Folgendes geschrieben: | set ButtList to {"Abbrechen", "Terminal-UNIX'/us../ap..'", "Finder-POSIX HD:Ap.:"}
tell application "Finder" to activate
tell application "Finder" to set (visible of every process whose visible is true and frontmost is false) to false
tell application "Finder" to display dialog ¬
"Man kann" & return & ¬
"• vor diesem Dialog-Aufruf ein Finderobjekt markieren oder:" & return & ¬
"• während diesem Dialog mit Spotlight ein Ziel aufsuchen, dann Spotlight durch Klick auf \"Alle Einblenden\" dazu bringen, dass eine Markierung im Finder erfolgt. Dazu genügt: " & return & ¬
"[APFEL+R]" & return & ¬
"Nun kann man wählen, welche Pfad-Art in den Zwischenspeicher soll:
" buttons ¬
{item 1 of ButtList, item 2 of ButtList, item 3 of ButtList} ¬
default button 3 with icon 1 giving up after "" --<--ACHTUNG: "" oder Zahlen für Secunden(OSX10.4)
copy the result as list to {the ButtKlick}
if the ButtKlick is item 1 of ButtList then return
if the ButtKlick is item 2 of ButtList then
tell application "Script Editor" to activate
tell application "Terminal" to my TerminalQtfOfPOSIXPfadER() --oooo
activate application "Terminal"
end if
if the ButtKlick is item 3 of ButtList then
tell application "Script Editor" to my FinderPOSIXPfadER() --oooo
tell application "Script Editor" to activate
end if
-------------------------------handler------------------------------------------
on TerminalQtfOfPOSIXPfadER() --oooo
tell application "Finder"
activate
try
set Sel to get selection as alias as text
set POSIXSel to quoted form of POSIX path of Sel
on error
display dialog "auf Finder ist nichts angewählt" buttons {"OK"} ¬
default button 1
activate
return
end try
activate
set DefAnsw to text returned of ¬
(display dialog "Unten steht der POSIX Path der Markierung: (User veränderbar!)" & return & ¬
"Auch nach allfälliger Veränderung wieder anzutreffen derartig-> " & ¬
POSIXSel & "-> in Zwischenspeicher!" & return & ¬
"Man kann damit ZB auch den über-/unter- Ordner anwählen lassen, ohne auf das letzte \":\" achten zu müssen" default answer Sel)
set the clipboard to "\"" & DefAnsw & "\""
if DefAnsw is not Sel then
display dialog ¬
"Neu im Zschischenspeicher deine letzte Eingabe:" & return & ¬
"sie wird nun vom Finder aufgesucht" default answer the clipboard
end if
try
select DefAnsw
set the clipboard to quoted form of POSIX path of DefAnsw
on error
set DefAnsw to text returned of ¬
(display dialog ¬
"auf Finder ist nichts angewählt oder falscher Pfad: " default answer ¬
DefAnsw buttons {"OK"} default button 1)
set the clipboard to quoted form of POSIX path of DefAnsw
activate
try
select DefAnsw
on error
tell current application to activate
error "Der letzte Prad lautet " & DefAnsw & "?"
end try
return
end try
end tell
end TerminalQtfOfPOSIXPfadER
on FinderPOSIXPfadER() --oooo
tell application "Finder"
activate
try
set Sel to get selection as alias as text
on error
display dialog "auf Finder ist nichts angewählt" buttons {"OK"} ¬
default button 1
activate
return
end try
set OffsDoPkt to offset of ":" in "\"" & Sel & "\""
activate
set DefAnsw to text returned of ¬
(display dialog ("Unten steht der POSIX Path der Markierung: (User veränderbar!)" & return & ¬
"Auch nach allfälliger Veränderung wieder anzutreffen derartig-> " & ¬
text items 1 thru OffsDoPkt of ("\"" & Sel & "\"") as text) & ".. : ..\"-> in Zwischenspeicher!" & return & ¬
"Man kann damit ZB auch den über-/unter- Ordner anwählen lassen, ohne auf das letzte \":\" achten zu müssen" default answer Sel)
set the clipboard to "\"" & DefAnsw & "\""
if DefAnsw is not Sel then
display dialog ¬
"Neu im Zschischenspeicher deine letzte Eingabe:" & return & ¬
"sie wird nun vom Finder aufgesucht" default answer the clipboard
end if
try
select DefAnsw
on error
set DefAnsw to text returned of ¬
(display dialog ¬
"auf Finder ist nichts angewählt oder falscher Pfad: " default answer ¬
DefAnsw buttons {"OK"} default button 1)
set the clipboard to "\"" & DefAnsw & "\""
activate
try
select DefAnsw
on error
tell current application to activate
error "Der letzte Prad lautet " & DefAnsw & "?"
end try
return
end try
end tell
end FinderPOSIXPfadER |
_________________ Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius |
|