Ho designato una cartella per ricevere screenshot che ricevo dal comando screenshot Mac predefinito. Come posso ottenere un prompt che mi consenta di rinominare tutti gli screenshot che prendo?
Grazie
Ho usato Cocktail per specificare che gli screenshot sono salvati in una cartella chiamata "Screenshot" sul mio Mac. Io uso un'app chiamata "Hazel" per guardare quella cartella e per eseguire automaticamente un AppleScript che mostra una finestra di dialogo che chiede se voglio rinominare lo screenshot.
Ecco la finestra di dialogo che si apre automaticamente:
EccounoscreenshotdiHazel,conlamiaregola"Name it":
Facendoclicsulpulsantemodifica(matita)inquellafinestravengonovisualizzatelecondizioniinbaseallequaliverràeseguitalaregola.Comepuoivedere,Hazeleseguiràl'AppleScriptseilfileèun'immagine,aggiuntaoggi,ilcuicommentoNONcontienelaparola"Hazel". Poiché gli screenshot appena creati non contengono commenti con la parola "Hazel", queste sono le condizioni giuste. (Quando viene eseguito lo script, aggiunge un commento con la parola "Hazel" al file.)
EccoilmioAppleScript.
tellapplication"System Events"
set the_apps to every process whose frontmost is true
set the_app to item 1 of the_apps
set the_app_name to name of the_app
set old_name to name of theFile
set the_choice to display dialog "If you want to rename this file, do it" buttons {"Rename", "No thanks"} default button "Rename" default answer old_name
end tell
if the button returned of the_choice is "Rename" then
set the_date_string to do shell script "date '+%Y.%m.%d'"
tell application "Finder"
set the comment of theFile to "Name changed with Hazel"
set the_name to text returned of the_choice
set cleaned_name to change " " into "_" in the_name
set cleaned_name to the_date_string & "_" & cleaned_name
if (characters 12 thru 13 of cleaned_name as string) is "wm" then
move theFile to (POSIX file "/Users/cboyce/Dropbox/Screenshots/Webmaster Screenshots")
else
move theFile to (POSIX file "/Users/cboyce/Dropbox/Screenshots/Renamed Screenshots")
end if
set the name of theFile to cleaned_name & ".png"
end tell
end if
tell application the_app_name to activate
La prima parte dello script registra il nome dell'app in primo piano al momento della creazione dello screenshot. Ha anche il passo "Display Dialog".
La seconda parte dello script rinomina lo screenshot e lo sposta in una cartella "Renamed Screenshots". Se metto "wm" all'inizio del nuovo nome del file, lo script inserisce lo screenshot rinominato in una speciale cartella "Webmaster Screenshots". Lo script sostituisce anche gli spazi con caratteri di sottolineatura, ma non è necessario includere quella parte. Si noti inoltre che lo script imposta il commento dello screenshot su "Nome modificato con Hazel". Ovviamente puoi creare le tue condizioni ma questo funziona per me.
Dovrai cambiare il nome utente nello script, nelle due righe che iniziano con "sposta il file". Sostituisci "cboyce" (il mio nome utente) con qualunque sia il tuo. Se non sei sicuro di cosa sia il tuo, cerca la cartella Utenti al livello più alto del disco rigido del tuo Mac, aprilo e cerca la cartella con l'icona della casa. Il nome di quella cartella è il nome utente. In realtà, devi cambiare l'intero percorso. Sto salvando i miei screenshot rinominati in cartelle memorizzate nella mia cartella Dropbox ma tu puoi ovviamente metterli dove preferisci. Quindi cambia il percorso in quelle linee "sposta il file" per puntare alle tue cartelle.
Hazel è un software commerciale, ma puoi usarlo gratuitamente in modalità Demo. La modalità demo ti consente di guardare solo una singola cartella, che nel tuo caso è tutto ciò di cui hai bisogno. Puoi scaricare Hazel da Noodlesoft.com .
Potresti provare a utilizzare l'app Grab. Viene fornito con il software di sistema ed è memorizzato nella cartella Utility. Puoi utilizzare Grab per acquisire uno screenshot, quindi fare clic sulla voce di menu File e selezionare Salva. Questo ti consentirà di dare un nome al file e selezionare la cartella in cui salvare la schermata.
Potresti creare un servizio con Automator.app, al quale puoi assegnare un collegamento nelle Preferenze Servizi (anche quelle esistenti possono essere sovrascritte).
Apri Automator, seleziona Servizio come tipo di documento, seleziona nella parte superiore della finestra: Il servizio non riceve input in nessuna applicazione . Fai doppio clic su azione Esegui AppleScript o trascinalo nella metà destra della finestra e inserisci il seguente script:
set destFolder to "/Path/to/the/Folder/" --insert here path to Screenshot folder
set screenshotName to text returned of (display dialog "Screenshot" default answer "")
set destFile to destFolder & screenshotName & ".png"
---------------------------------------
-- give a warning in case file is already existing
try
alias (POSIX file destFile)
set _exists to true
repeat until _exists is false
try
set screenshotName to text returned of (display dialog "Filename is already existing!" default answer "")
alias (POSIX file (destFolder & screenshotName & ".png"))
on error
set _exists to false
end try
end repeat
set destFile to destFolder & screenshotName & ".png"
end try
---------------------------------------------
do shell script "screencapture -io " & quoted form of destFile
(*
--------------------------
screencapture:
-i = Capture screen interactively
-o = In window capture mode, do not capture the shadow of the window
--------------------------
*)
Assicurati di inserire il percorso della tua cartella screenshot nella prima riga!
Lo script non rinomina ... ma prima imposta il nome e quindi crea lo screenshot.
Per accedere rapidamente alle "Preferenze servizi", fai clic sul nome del programma attualmente attivo nella barra dei menu (ad esempio Safari) e seleziona "Preferenze servizi" nella voce di menu "Servizi". Trova il tuo servizio creato lì e aggiungi un collegamento ad esso ... ad es. cmd-ctrl-5
Leggi altre domande sui tag macbook