Este applecript funciona para mí:
-- 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
Usando las otras respuestas en esta página, he creado una aplicación que se puede arrastrar a la barra de tareas del buscador.
Puede descargarlo desde aquí: https://github.com/rc1/iTermTo
fuente
Esto está integrado en iTerm2 a partir de la versión 3.1.0.
Para usar la funcionalidad:
en Finder, haga clic con el botón derecho en una carpeta -> Servicios -> Nueva ventana iTerm2 aquí
Nota: el
Services
submenú está en la parte inferior del menú del botón derecho.Referencia
En este enlace, haga clic en Mostrar versiones anteriores , luego, en iTerm2 3.1.0, haga clic en Mostrar registro de cambios y busque servicios , encontrará esto:
fuente
Eche un vistazo al
cdto
proyecto alojado en https://github.com/jbtule/cdto "Finder Toolbar app para abrir el directorio actual en la Terminal (o iTerm, X11). Esta aplicación está diseñada (incluido su icono) para colocarse en la barra de herramientas de la ventana del buscador ".fuente
Solo para completar, antes de encontrar esta pregunta, lo que funcionó para mí fue:
Applescript Editor-> File-> Export-> File Format = .app
..app
suelte la barra de herramientas del Finder.Esto da como resultado un botón de la barra de herramientas del Finder que abre el directorio actual en una nueva
iTerm2
pestaña. XtraFinder ofrece dicho botón, pero abre nuevas ventanas.Aquí se puede encontrar una solución similar que utiliza servicios , que enlaza con soluciones AppleScript aún más relacionadas:
Mi AppleScript adaptado es:
Esta solución se comentó en este hilo relacionado con los botones .
Gracias a la respuesta iTermTo anterior.
fuente
Supongo que se debe a que el funcionamiento interno de iTerm ha cambiado, pero ninguna de las soluciones funcionó para mí. Lo que hizo fue el siguiente código:
O usando Automator como un servicio de búsqueda:
fuente
Con iTerm:
Preferencias de Iterm y en la pestaña Perfiles, vaya a la subpestaña General, configure el Directorio de trabajo en "Reutilizar el directorio de la sesión anterior".
fuente
Aquí hay un script simplificado que siempre abre una nueva pestaña (como el script de bulljit):
Si desea que el script reutilice las pestañas existentes, reemplace el
tell current terminal
bloque con algo como esto:Pero eso no funcionará si, por ejemplo, la sesión actual está ocupada o ejecuta un proceso menor o menor.
Ajustar el script en un bloque de prueba hace que falle en silencio.
reopen
abre una nueva ventana de terminal si no hay ventanas visibles o si solo está abierta, por ejemplo, la ventana de preferencias. Finder también tiene unainsertion location
propiedad, que generalmente estarget of Finder window 1
el escritorio. Pero hay un error en 10.7 y posterior en el que a menudo se refiere a otra ventana que no sea la ventana frontal.Algunos problemas potenciales con el script de bulljit:
front window
(window 1
), que puede ser una ventana de información o una ventana de preferencias.Finder window 1
siempre sería una ventana del navegador de archivos./
si la ventana del Finder frontal muestra una vista que no tiene una ruta (como la vista de Red).Sin embargo, prefiero usar una función como esta:
fuente