Servicios del buscador: no se puede obtener / ejecutar un servicio específico

0

No puedo conseguir que funcione el servicio predeterminado "Nuevo terminal en la carpeta" del Finder, pase lo que pase. He intentado todos los trucos que he podido encontrar en línea.

Así que creé un nuevo servicio y aparece en la lista de Servicios, pero nuevamente, no puedo hacer que aparezca en el menú de servicios real ni tampoco funciona el mapeo de teclas de acceso rápido.

El truco es que este servicio exacto estuvo funcionando durante los últimos meses sin problemas . De repente simplemente dejó de funcionar. No he actualizado el sistema operativo ni nada.

Estoy en Sierra.

El script está abajo:

on run {input, parameters}

    tell application "Finder"

        set myWin to window 1

        set theWin to (quoted form of POSIX path of (target of myWin as alias))

        tell application "Terminal"

            activate

            tell window 1

                do script "cd " & theWin

            end tell

        end tell

    end tell

    return input

end run

Realmente necesito este servicio para funcionar, me ahorra mucho tiempo y realmente odio que no sea una característica confiable del sistema operativo.

    
pregunta Karric 02.02.2018 - 15:25

1 respuesta

0

macOS Sierra tiene dos Servicios de terminal , Nueva terminal en la carpeta y Nueva pestaña de terminal en la carpeta .

Vaya a Preferencias del sistema > Teclado > Accesos directos > Servicios > Archivos y carpetas , marca uno o ambos y agrega un atajo de teclado si lo deseas.

Luego, en Finder puede seleccionar una Carpeta , haga clic con el botón derecho y seleccione servicio en Servicios menú contextual, o desde el Buscador > en el menú Servicios o use el método abreviado de teclado si está asignado.

No es necesario utilizar AppleScript a menos que realmente quieras.

Aquí hay algunos ejemplos AppleScript código que funcionan de mi parte:

try
    tell application "Finder"
        set theTargetPath to quoted form of (POSIX path of (target of front window as string) as string)
    end tell
    tell application "Terminal"
        do script "pushd " & theTargetPath & "; clear"
        activate
    end tell
end try

Nota: El ejemplo AppleScript código es solo eso y aparte del uso de try sentencia , no emplea ningún manejo de errores y solo tiene el propósito de mostrar una de las muchas maneras en que se puede realizar una tarea. La responsabilidad recae siempre sobre el Usuario para agregar / usar el manejo de errores según sea necesario / deseado.

    
respondido por el user3439894 02.02.2018 - 16:02

Lea otras preguntas en las etiquetas