Siempre abra archivos PDF desde una ruta con un programa no predeterminado

2

Mi aplicación PDF predeterminada es Vista previa. Ahora, tengo una carpeta (con subcarpetas) con archivos PDF que me gustaría abrir todo el tiempo con otro programa. Así que básicamente necesito poner un "Programa predeterminado" para una ruta restringida. Desafortunadamente, "Abrir siempre ..." no es una opción (incluso si funcionaría), porque los documentos en esta carpeta cambian con bastante frecuencia.

¿Alguien sabe si Automator o AppleScript pueden ayudarme con esto?

Caliguvara
fuente

Respuestas:

1

¿Usando Finder para la gestión de archivos?

Arrastre su programa de elección a la barra de herramientas y suéltelo allí :

Agregue un archivo o una aplicación: presione y mantenga presionada la tecla Comando, luego arrastre el elemento a la barra de herramientas del Finder hasta que vea un signo más verde.

Ahora haga doble clic en un PDF para abrir el PDF aún en Vista previa.

Puede seleccionar sus otros archivos PDF y luego colocarlos en el icono de la barra de herramientas para el programa que elija.


Usar una forma más programática sería hacer un alias para

open -a YourAlternativePDFViwer.app 

Luego escriba Terminal en su alias, arrastre y suelte todos sus archivos PDF especiales en la Terminal. Luego, Terminal expande todas las rutas a sus archivos PDF y, al presionar Entersu visor preferido, debe abrir todos esos archivos PDF.

Aún más fácil sería un alias que diga lo siguiente:

open -a YourAlternativePDFViwer.app /path/to/your/SpecialtyPDFS/*.pdf

Si se requiere más automatización, puede echar un vistazo a la Referencia de acciones de carpeta .

Para hacer doble clic en AFAIK, es uno u otro . Pero dependiendo de las características especiales del tipo de archivo, RCDefaultApp podría valer la pena.

LangLangC
fuente
1

Si guarda el siguiente script en su carpeta / Users / your username / Library / Workflows / Applications / Folder Actions, estará disponible para seleccionar en el diálogo de configuración de acciones de carpeta. Luego, cada vez que agregue un archivo PDF a la carpeta designada, establecerá la aplicación predeterminada a cualquier visor de PDF que haya asignado en el script.


Reorganicé el guión un poco para hacerlo un poco más universal. Ahora es más fácil modificar el código para que funcione con diferentes extensiones de archivo y diferentes aplicaciones, simplemente cambiando los valores de las propiedades y dejando el cuerpo del script completamente intacto.

Esta versión estará dirigida SOLO A LOS PDF , sin importar qué tipo de archivo se agregue a la carpeta

property Default_App_To_Open_With1 : alias "Macintosh HD:Applications:Adobe Acrobat Reader DC.app:"
property Default_App_To_Open_With2 : alias "Macintosh HD:Applications:TextEdit.app:"
property Default_App_To_Open_With3 : alias "Macintosh HD:Applications:Preview.app:"

property Default_App : Default_App_To_Open_With2

property name_Extension : "pdf"

on adding folder items to this_folder after receiving dropped_items
    repeat with this_File in dropped_items
        tell application "System Events"
            if name extension of this_File is name_Extension then
                set default application of this_File to Default_App
            end if
        end tell
    end repeat
end adding folder items to
wch1zpink
fuente
1
Por lo general, solo uso el valor predeterminado de macOS para PDF, que por supuesto es Vista previa, sin embargo, tengo algunas carpetas diferentes en las que siempre he abierto los PDF en Skim, aunque de forma manual. Acabo de implementar su solución en esas carpetas en particular, mientras estaba vacía y luego les agregué los PDF. ¡Buena respuesta! +1
usuario3439894
1
Por cierto, he recodificado el código en mi implementación de su respuesta, ya que cambió las marcas de fecha / hora y en el proceso descubrí que no necesita ninguno de los open for access ...códigos relacionados. set default application ...funciona por sí solo sin nada de eso.
user3439894
De Verdad? Eso es extraño porque creo que la razón por la que puse "Open For Access" y su código relacionado, fue en un intento de solución de problemas, algunos errores que arrojaba el script. HMM ... Supongo que fue algo más que había cambiado que arrojaba los errores LOL gracias por el aviso. En realidad, ahora que lo pienso, creo que inicialmente tenía "Finder" tratando de configurar la aplicación predeterminada, en lugar de eventos del sistema ... Si recuerdo correctamente, el "abrir para acceder" era parte del código inicial "Finder" Estaba trabajando y parecía funcionar, así que dejé esa parte del código allí
Wch1zpink
FWIW, así es como se ve mi controlador de acciones de carpeta: paste.ee/p/VRZlX
user3439894
1
Cuando configuré originalmente la acción de carpeta con su código original, cambió la marca de fecha / hora de modificación en los archivos y no quiero que la marca de fecha / hora de modificación cambie desde la fecha de creación a menos que el contenido real del archivo cambie internamente, no Los atributos xattr. Entonces, usando GetFileInfo obtengo la fecha de creación y luego uso SetFile para establecer la fecha de modificación en la fecha de creación, ya que eso era lo que eran antes de la acción de la carpeta. GetFileInfo y SetFile son parte de Command Line Tools para Xcode.
user3439894