Come posso aggiungere scorciatoie di correzione automatica a livello di codice?

4

In Preferenze di Sistema > Tastiera > Testo , posso aggiungere scorciatoie che saranno disponibili a me globalmente tramite correzione automatica.

Diciamo che avevo 100 di queste scorciatoie e che erano su due Mac, invece di aggiungere / rimuovere ogni singolo oggetto a mano, c'è un modo per mantenere un singolo file .plist in grado di gestire queste scorciatoie?

    
posta Jake Bellacera 17.12.2013 - 23:56
fonte

1 risposta

6

Puoi copiare le impostazioni su un altro Mac copiando ~/Library/Preferences/.GlobalPreferences.plist .

Si noti che le preferenze sono memorizzate nella cache in 10.9, quindi se si sostituisce un plist o lo si modifica direttamente, chiudere e riaprire le applicazioni non applicherà le modifiche. Puoi applicare le modifiche eseguendo defaults read -g , eseguendo killall cfprefsd , o eseguendo il logout e ripristinando le modifiche. Le modifiche apportate con i valori predefiniti sono ancora applicate se hai appena chiuso e riaperto un'applicazione.

Stampa le impostazioni correnti:

defaults read -g NSUserDictionaryReplacementItems

Aggiungi un'impostazione:

defaults write -g NSUserDictionaryReplacementItems -array-add '{on=1;replace=cmd;with="⌘";}'

Sostituisci tutte le impostazioni:

defaults write -g NSUserDictionaryReplacementItems '(
{on=1;replace=cmd;with="⌘";},
{on=1;replace=opt;with="⌥";}
)'

Stampa le impostazioni correnti in formato XML:

defaults read -g NSUserDictionaryReplacementItems | plutil -convert xml1 - -o -

Sostituisci tutte le impostazioni:

amp() { local x=${1//&/&amp; }; x=${x//</&lt; }; printf %s "${x//>/&gt; }"; }
out='<array>'
while IFS= read -r l; do
  out+="<dict><key>on</key><integer>1</integer><key>replace</key><string>$(amp "${l%% *}")</string><key>with</key><string>$(amp "${l#* }")</string></dict>"
done <<< 'cmd ⌘
opt ⌥'
defaults write -g NSUserDictionaryReplacementItems "$out</array>"

Sostituisci NSUserDictionaryReplacementItems con NSUserReplacementItems in 10.8 e precedenti.

    
risposta data 19.12.2013 - 17:59
fonte

Leggi altre domande sui tag