Dieses AppleScript funktioniert für mich:
-- script was opened by click in toolbar
on run
tell application "Finder"
try
set currFolder to (folder of the front window as string)
on error
set currFolder to (path to desktop folder as string)
end try
end tell
CD_to(currFolder, false)
end run
-- script run by draging file/folder to icon
on open (theList)
set newWindow to false
repeat with thePath in theList
set thePath to thePath as string
if not (thePath ends with ":") then
set x to the offset of ":" in (the reverse of every character of thePath) as string
set thePath to (characters 1 thru -(x) of thePath) as string
end if
CD_to(thePath, newWindow)
set newWindow to true -- create window for any other files/folders
end repeat
return
end open
-- cd to the desired directory in iterm
on CD_to(theDir, newWindow)
set theDir to quoted form of POSIX path of theDir as string
tell application "iTerm"
activate
delay 1
-- talk to the first terminal
try
set myterm to the first terminal
on error
set myterm to (make new terminal)
end try
tell myterm
try
-- launch a default shell in a new tab in the same terminal
launch session "Default Session"
on error
display dialog "There was an error creating a new tab in iTerm." buttons {"OK"}
end try
tell the last session
try
-- cd to the finder window
write text "cd " & theDir
on error
display dialog "There was an error cding to the finder window." buttons {"OK"}
end try
end tell
end tell
end tell
end CD_to
Mit den anderen Antworten auf dieser Seite habe ich eine App erstellt, die in die Finder-Taskleiste gezogen werden kann.
Sie können es hier herunterladen: https://github.com/rc1/iTermTo
quelle
Dies ist in iTerm2 ab Version 3.1.0 integriert.
So verwenden Sie die Funktionalität:
Klicken Sie im Finder mit der rechten Maustaste auf einen Ordner -> Dienste -> Neues iTerm2-Fenster
Hinweis: Das
Services
Untermenü befindet sich ganz unten im Kontextmenü.Referenz
Zu diesem Link klicken anzeigen Ältere Versionen , dann unter iTerm2 3.1.0 Klick anzeigen Changelog und Look für Dienstleistungen , werden Sie diese finden:
quelle
Schauen Sie sich das
cdto
Projekt an, das unter https://github.com/jbtule/cdto "Finder Toolbar App gehostet wird , um das aktuelle Verzeichnis im Terminal (oder iTerm, X11) zu öffnen die Symbolleiste des Finder-Fensters. "quelle
Der Vollständigkeit halber war das, was für mich funktionierte, bevor ich diese Frage fand:
Applescript Editor-> File-> Export-> File Format = .app
..app
die Symbolleiste des Finders per Drag & Drop .Dies führt zu einer Finder-Symbolleistenschaltfläche, die das aktuelle Verzeichnis auf einer neuen
iTerm2
Registerkarte öffnet . XtraFinder bietet eine solche Schaltfläche an, öffnet jedoch neue Fenster.Eine ähnliche Lösung für die Verwendung von Diensten finden Sie hier , die auf noch verwandte AppleScript-Lösungen verweist:
Mein angepasstes AppleScript ist:
Diese Lösung wurde in diesem knopfbezogenen Thread kommentiert .
Dank der obigen Antwort von iTermTo .
quelle
Ich denke, es liegt daran, dass sich die Interna von iTerm geändert haben, aber keine der Lösungen hat für mich funktioniert. Was tat, war der folgende Code:
Oder verwenden Sie Automator als Suchdienst:
quelle
Mit iTerm:
Iterm Preferences und unter der Registerkarte Profiles gehen Sie zur Unterregisterkarte General, setzen Sie Working Directory auf Reuse previous session's directory.
quelle
Hier ist ein vereinfachtes Skript, das immer eine neue Registerkarte öffnet (wie Bulljits Skript):
Wenn das Skript vorhandene Registerkarten wiederverwenden soll, ersetzen Sie den
tell current terminal
Block durch Folgendes:Dies funktioniert jedoch nicht, wenn beispielsweise die aktuelle Sitzung ausgelastet ist oder ein less- oder vim-Prozess ausgeführt wird.
Wenn Sie das Skript in einen try-Block einschließen, schlägt es im Hintergrund fehl.
reopen
Öffnet ein neues Terminalfenster, wenn keine sichtbaren Fenster vorhanden sind oder wenn nur zum Beispiel das Einstellungsfenster geöffnet ist. Finder hat auch eineinsertion location
Eigenschaft, die normalerweisetarget of Finder window 1
oder der Desktop ist. Es gibt jedoch einen Fehler in 10.7 und höher, bei dem häufig auf ein anderes Fenster als das vorderste Fenster verwiesen wird.Einige mögliche Probleme mit dem Skript von Bulljit:
front window
(window 1
) abzurufen, der ein Informationsfenster oder ein Voreinstellungsfenster sein kann.Finder window 1
wäre immer ein Dateibrowserfenster./
wenn im vordersten Finder-Fenster eine Ansicht ohne Pfad angezeigt wird (wie in der Netzwerkansicht).Ich bevorzuge es jedoch, nur eine Funktion wie diese zu verwenden:
quelle