Alias - 'Mostrar original' en una nueva pestaña

3

Actualización:
Después de las dos respuestas hasta ahora, he movido los postes ligeramente. Necesito selecciones múltiples & pestañas - las respuestas existentes; uno tiene capacidad de selección múltiple, el otro me da pestañas, y me he dado cuenta de que es el camino a seguir.

Decidí que la mejor manera de realizar un seguimiento de un catálogo de fotografías publicadas sin alterar su jerarquía original era arrastrar los alias a una ubicación separada.

Sin embargo, muchos casos de uso requieren el original; no pueden hacer frente a la caída del alias, por ejemplo, un sitio web o Photos.app

Clic con el botón derecho - Mostrar original insiste en mostrarlo dentro del mismo contenedor de ventanas, por lo que volver a la carpeta de alias pierde su lugar, la selección desaparece. En una carpeta grande, esto realmente pone a prueba tu memoria en cuanto a dónde estabas.

¿Hay alguna forma de forzar que se abra en una nueva ventana, similar a Cmd / hacer doble clic en una carpeta, manteniendo así su lugar en la carpeta de alias?

Actualmente en High Sierra 10.13.4

    
pregunta Tetsujin 24.04.2018 - 18:35

3 respuestas

3

Con la ayuda de StackOverflow & a partir de las ideas presentadas en las respuestas de brw59 boris42 , ahora tengo esto, por user3439894

on run {input, parameters}
    set madeNewWindow to false
    repeat with i from 1 to count input
        tell application "Finder"
            if (kind of item i of input) is equal to "Alias" then
                set origFile to original item of item i of input
                if not madeNewWindow then
                    set aWindow to make new Finder window
                    set madeNewWindow to true
                else
                    my makeNewTab()
                end if
                set aWindow's target to origFile's parent
                select origFile
            end if
        end tell
    end repeat
end run

on makeNewTab()
    tell application "System Events" to tell application process "Finder"
        set frontmost to true
        tell front menu bar to tell menu "File" to tell menu item "New Tab"
            perform action "AXPress"
        end tell
    end tell
end makeNewTab

Combina lo que pensé que necesitaba con lo que realmente necesitaba, usando tanto UI como amp; scripts que no son UI & me presenta una nueva ventana, bien llena de pestañas, todas con un alias seleccionado, por lo que puedo hojear las pestañas & lidie con cada selección una a la vez, luego cierre después, dejando mi ventana original en su lugar.

    
respondido por el Tetsujin 26.04.2018 - 11:47
4

Miré a mi alrededor y encontré un manzano (que se puede convertir en un atajo) que simplemente quiere que tú quieras. Desafortunadamente, no es tan simple como debería ser. Sin embargo, es mejor que nada, y solo necesitas hacer esto una vez. Le ahorrará tiempo a largo plazo.

1) Abrir Automator.

2) Crear nuevo 'Servicio'

3) Establecer servicio recibe a 'sin entrada' en 'Buscador'

4) agrega 'Ejecutar applecript'

5) ponga este código dentro de él:

-- duplicateFinderTab.scpt
-- Uses a hacky workaroud to duplicate the frontmost Finder tab,
-- since Apple hasn't provided great AppleScript support for this.

----------------------------------------------
on run {}
    tell application "Finder"
        if (count of Finder windows) > 0 then set duplicate_me to target of front Finder window
        set _sel to the selection
    end tell

    new_tab()

    tell application "Finder"
        set target of front Finder window to duplicate_me
        select _sel
    end tell

    open_orig()

end run

----------------------------------------------
on new_tab()
    tell application "System Events" to tell application process "Finder"
        set frontmost to true
        tell front menu bar to tell menu "File" to tell menu item "New Tab"
            perform action "AXPress"
        end tell
    end tell
end new_tab
----------------------------------------------
on open_orig()
    tell application "System Events" to tell application process "Finder"
        set frontmost to true
        tell front menu bar to tell menu "File" to tell menu item "Show Original"
            perform action "AXPress"
        end tell
    end tell
end open_orig

6) guárdalo (si abres una ventana del buscador y seleccionas tu alias, luego regresas al automatizador y presionas 'ejecutar', entonces funcionará en este punto) - Nota: puede pedirte que agregues 'Automator' a 'Preferencias del sistema' - > 'Seguridad & Privacidad '- > Permisos de 'accesibilidad'.

7) en las preferencias del sistema, vaya a 'teclado' - > 'accesos directos' - > 'servicios' - > 'lo que sea que lo nombrases' ... elige un atajo (como "^ -CMD-O").

Otras cosas:

Puede requerir que hagas esto una vez:

cuando se selecciona el buscador, en el menú,

'Finder' - > 'Servicios' - > 'lo que sea que lo nombrases'

o si no aparece:

'Finder' - > 'Servicios' - > 'Preferencias de servicios ...' - > marque la casilla en las preferencias del sistema que se llama su aplicación

Hay otros errores de permiso que puede recibir dependiendo de cómo esté configurado su sistema, sin embargo, debe notar que el script SÍ funciona cuando presiona 'ejecutar' en el paso 6 o después del paso 5. Simplemente seleccione el archivo en el buscador luego cambia a la aplicación automator y pulsa "correr".

Y si todo funcionó sin problemas para usted, el acceso directo de cmd-cntl-O debería funcionar para usted, para que pueda hacer ese acceso directo (que abre una nueva pestaña de la misma selección), luego haga clic derecho y seleccione 'mostrar original' '

Editar por OP
Si recibe un error "com.automator.runner.xpc no está permitido el acceso de asistencia", entonces la solución no es obvia.
No puede agregar com.automator.runner.xp en sí mismo a Assistive Access, ni la ayuda de Automator o Automator Runner, sin embargo, después de reiniciar, la pista fue que se activaron dos errores, no solo uno.

La adición del Finder al acceso de asistencia permitió que se ejecutara el script.

    
respondido por el brw59 24.04.2018 - 21:43
4

Una solución mucho más corta y limpia sin scripts de UI:

Abra Automator, cree un nuevo Servicio, acepte archivos y carpetas del Finder, agregue una acción Ejecutar AppleScript y escriba lo siguiente:

on run {input, parameters}
    repeat with aFile in input
        tell application "Finder"
            try
                set origFile to original item of aFile
                set aWindow to make new Finder window
                set aWindow's target to origFile's parent
                select origFile
            end try
        end tell
    end repeat
end run

Tu pantalla debería verse así:

GuardeelserviciodeAutomatorcomoRevealinNewWindow,luegoabraPreferenciasdelsistema/Teclado/Accesosdirectos/Servicios.BusqueelservicioRevelarennuevaventana,hagaclicenAgregaraccesodirectoyescribaR.Tupantalladeberíatenerunaspectocomoeste:

Cierre e intente el servicio en el Finder seleccionando uno o más alias y presionando el acceso directo elegido R . Funciona con varios archivos, carpetas y puede realizar la Revelación incluso si algunos de los elementos no son en realidad alias (de ahí el intento de intentar / finalizar en el script).

    
respondido por el boris42 25.04.2018 - 11:49

Lea otras preguntas en las etiquetas