¿Cómo puedo agregar accesos directos de autocorrección mediante programación?

4

En Preferencias del sistema > Teclado > Texto , puedo agregar accesos directos que estarán disponibles para mí de forma global a través de autocorrección.

Digamos que tenía 100 de estos accesos directos y estaban en dos Mac, en lugar de agregar / eliminar cada elemento individual a mano, ¿hay una manera de mantener un solo archivo .plist que pueda administrar estos accesos directos?

    
pregunta Jake Bellacera 17.12.2013 - 23:56

1 respuesta

6

Puedes copiar la configuración a otra Mac copiando ~/Library/Preferences/.GlobalPreferences.plist .

Tenga en cuenta que las preferencias se almacenan en caché en 10.9, por lo que si reemplaza una lista o la edita directamente, el cierre y la reapertura de aplicaciones no aplicarán los cambios. Puede aplicar los cambios ejecutando defaults read -g , ejecutando killall cfprefsd o cerrando la sesión y volviendo a iniciarla. Los cambios realizados con valores predeterminados aún se aplican si acaba de cerrar y volver a abrir una aplicación.

Imprima la configuración actual:

defaults read -g NSUserDictionaryReplacementItems

Añade una configuración:

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

Reemplazar todas las configuraciones:

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

Imprima la configuración actual como XML:

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

Reemplazar todas las configuraciones:

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>"

Reemplaza NSUserDictionaryReplacementItems con NSUserReplacementItems en 10.8 y versiones anteriores.

    
respondido por el user495470 19.12.2013 - 17:59

Lea otras preguntas en las etiquetas