Aquí está el flujo de trabajo como lo estoy haciendo ahora: puedo copiar una frase, abra el Finder y haga clic en etiquetas verdes. Puedo copiar/pegar esa frase para encontrar el nombre de archivo que la contiene. Entonces se abre en la vista previa, de donde puedo imprimir. Hago esto cientos de veces al día, y tiene un teclado programable que me ahorra un montón de clics. Se va a ejecutar Applescripts.
Desde ahora es claro que en realidad no se requieren los archivos que se muestran en el Buscador de la ventana con el fin de alcanzar su objetivo último, que me había prestado la sugerencia de @apple9321 y se utiliza mdfind
para recuperar los archivos de rutas y coinciden con los nombres de los archivos, contra el contenido del portapapeles.
La primera mitad de la siguiente secuencia de comandos realiza estas tareas. Lo siento, la secuencia de comandos aparece tan largos-en realidad no, ya que la mayoría de ellas tomada por los comentarios que he añadido para ayudar a guiarlo a través de lo que cada parte de la secuencia de comandos. Copia-n-pegarlo en el Editor de secuencias de Comandos y ejecutar (con texto adecuado ya sentado en el portapapeles).
-- Get the text from the clipboard
-- to use for searching filenames
set SearchTerm to the clipboard as text
set SearchTerm to quoted form of (["*", SearchTerm, "*"] as text)
-- Run a bash command to retrieve all
-- files with a green tag and a filename
-- that includes the above search term
-- (case-insensitive)
set Command to ["mdfind ", ¬
"\"((kMDItemUserTags = '*Green*'cd) ", ¬
"&& (kMDItemDisplayName = ", ¬
SearchTerm, ¬
"cd))\""] as text
try -- Run the bash command and get a list of file paths
set FileList to paragraphs of (do shell script Command)
on error -- No matching filenames, script terminates
return 0
end try
-- Convert the string file paths to a class
-- that AppleScript can use to reference the files
repeat with PathToFile in FileList
set end of FileList to POSIX file PathToFile
set FileList to rest of FileList
end repeat
-- Open the files in Preview and print the documents.
-- You may not need to actually need to include the
-- `open` command, as I believe Preview will still
-- be able to run a `print` command if you hand it a
-- list of file references, e.g. print FileList
tell application "Preview"
open FileList
-- You can omit `with properties` or just
-- include the print settings you want
-- (see the AppleScript "Preview" dictionary
-- for details of other available settings)
print documents with properties ¬
{copies:1, target printer:"Epson Stylus Photo PX830"}
end tell
La segunda mitad de la secuencia de comandos hace algunos quehaceres de la casa con los tipos de archivo para hacerlos utilizables, pero luego es bastante simple para AppleScript para abrir el archivo(s) en la vista previa de impresión y fuera de ellas.
Tengo que poner una advertencia aquí, y declaro que no he sido capaz de probar la print
comando vista previa en AppleScript. Esto es debido a que no tengo una impresora. Pero mi fuerte sensación es que esto debe funcionar con pocos, si alguno, tweaks, y probablemente incluso permite imprimir sin necesidad de abrir los archivos en primer lugar:
tell application "Preview" to print FileList
Pero, como he dicho, no puedo físicamente a prueba a mí mismo y yo voy por lo que se infiere de la vista previa's diccionario de AppleScript (que también contiene una lista de la configuración de impresión, debe usted necesita para especificar estos desde el interior de la secuencia de comandos-me especificado copies
y target printer
simplemente como dos ejemplos que parecía ser el más útil, pero estos no son necesarios).
¿Suena esto como que satisface sus necesidades ?
Su programables teclado suena como una buena forma de activar esta secuencia de comandos después de copiar la frase de búsqueda en el portapapeles. El método alternativo habría sugerido para otras personas que no tienen un dispositivo de este tipo, sería crear un Automator servicio, para que un atajo de teclado (tecla de acceso) puede ser asignada para activar la secuencia de comandos de esa manera; o que el servicio se activa después de resaltar algunas de texto y haga clic en el fin de enviar este texto directamente en el servicio, como una alternativa para copiarlo al portapapeles.
Una nota final: elegí mdfind
en esta instancia, ya que implicaba que quería buscar a través de todos los verdes de etiquetado de archivos en su disco duro, y esto lo hace más rápido que builtin comandos de AppleScript. Sin embargo, si usted sólo necesita buscar verde de etiquetado de los archivos en una carpeta específica o un par de carpetas, puede ser mejor utilizar integrados comandos de AppleScript (dependiendo de cuántos archivos en estas carpetas). Si usted encuentra los archivos que faltan a partir de los resultados de mdfind
, puede que necesite volver a índice de Spotlight (sudo mdutil -Ea
de Terminal). Se toma un tiempo para reconstruir el almacén de metadatos, pero ninguno de los archivos omitidos de los resultados de búsqueda que debe aparecer ahora va a estar allí. Usted puede obtener una vista previa de la lista completa de los resultados de la búsqueda en la Terminal escribiendo este comando: mdfind "kMDItemUserTags == 'Green'"
, que debería lista de todos los verdes-los archivos marcados.
Si necesita ayuda o tiene alguna duda, deja un comentario y me pondré en contacto con usted. Puedo modificar el código si tienes específico después de los pensamientos.