Contesto
In Safari, c'è un campo di testo, in cui contiene il nome di un'immagine con estensione .png
e devo rimuovere tale estensione.
Soluzione
Scrivi uno script, in cui, simula Delete(⌫)4 volte la chiave, se sono presenti caratteri precedenti .png
, rimuovendo così l'estensione.
Problema
Qui dice che dovrebbe essere fatto key code 51
ma che non sembra funzionare. Una ricerca su Google ha prodotto altri codici chiave come 127.
Cose per risolvere la mia soluzione
Qual è il codice chiave corretto? C'è un modo per scoprirlo tu stesso come Controllo accessibilità per pulsanti, campi ecc. Ho provato a registrare, non funziona? Apple ha un elenco ufficiale di codici chiave?
Per chi è interessato, di seguito è la sceneggiatura, niente di speciale:
# Checks and remove .png if exists
tell application "System Events"
set oldClipboard to the clipboard
repeat 4 times
key code 123 using {shift down} # Left Arrow key. Selects last 4 chars
end repeat
keystroke "c" using {command down}
set newClipboard to the clipboard as text
if newClipboard is equal to ".png" then
#keystroke (ASCII character 127) # Other "code", doesn't work
key code 51
delay 0.1
end if
key code 124 # Right Arrow key, works
set the clipboard to oldClipboard
end tell
set x to "something.dmg"
<newline>if x ends with ".dmg" then set x to characters 1 thru -5 of x as string