[Anfänger] Pfadübegabe, POSIX, do script

Dieses Thema im Forum "Scripting und Automatisierung" wurde erstellt von Wolfgang K., 04.05.2006.

  1. Wolfgang K.

    Wolfgang K. Thread Starter MacUser Mitglied

    Beiträge:
    13
    Zustimmungen:
    0
    MacUser seit:
    17.02.2005
    Hallo Macuser,

    ich will ein Skript basteln, das es mir erlaubt, die momentan markierte Datei in vim im Terminal zu bearbeiten. Nur das mit der POSIX-Umwandlung scheint irgendwie nicht zu funktionieren.

    Vielleicht kann mir von euch jemand weiterhelfen?

    Code:
    tell application "Finder"
    	set myfile to first item of (get selection)
    	set myfile_posix to quoted form of POSIX path of myfile	tell application "Terminal"
    		activate
    		do script "vim " & quoted form of myfile_posix
    	end tell
    end tell
    
     
  2. chebfarid

    chebfarid MacUser Mitglied

    Beiträge:
    894
    Zustimmungen:
    75
    MacUser seit:
    05.10.2005
    Hallo Wolfgang,
    gute Idee, Dein Script, Du warst auch schon auf dem richtigen Weg! Was Dein Script nicht hat funktionieren lassen sind zwei Dinge:
    a) der "Finder" kann mit Finderselektionen und Mac-Filepaths arbeiten, hat aber keine Ahnung von "POSIX path", deshalb muß die entsprechende Zeile außerhalb des Finderblocks aufgerufen werden
    b) eine funktionierende File-Identifikation im "Finder" braucht den Zusatz as alias, sonst ist auch die POSIX-Bestimmung nicht durchführbar.

    So funktioniert Dein Script ohne Probleme:
    Code:
    tell application "Finder"
    	set myFiles to selection
    	set myFile to item 1 of myFiles as alias
    end tell
    -- ist einfacher, wenn das Kommando schon vorher zusammengesetzt wird:
    set kommando to "vim " & (quoted form of POSIX path of myFile)
    tell application "Terminal"
    	activate
    	do script kommando
    end tell
    Frohes scripten
    Farid
     
  3. Wolfgang K.

    Wolfgang K. Thread Starter MacUser Mitglied

    Beiträge:
    13
    Zustimmungen:
    0
    MacUser seit:
    17.02.2005
    Hallo Farid,

    besten Dank für die schnelle Hilfe!
     
Die Seite wird geladen...