Mavericks: ¿CÓMO AGREGAR el origen de input a través de plists / defaults?

Estoy tratando de automatizar mi configuration de OS X pero estoy atascado tratando de agregar programáticamente una nueva fuente de input o layout de keyboard.

Usualmente uso dos layouts: regular en los EE. UU. Y EE. UU. Internacional, entonces lo que estoy tratando de hacer es simplemente agregar el layout de los EE. UU. Internacional.

  • ¿Hay alguna manera de configurar el keyboard inalámbrico para controlar la luz del keyboard?
  • El atajo de command-eliminar no funciona para mí
  • Método abreviado de keyboard para abrir aplicaciones en el Dock
  • Autocorrección en Mavericks para dictionary rumano
  • Cómo cambiar el tipo de dispositivo bluetooth en Mac (por ejemplo, reconocimiento de fuerza del dispositivo bluetooth como un keyboard)
  • Establecer diacríticos rumanos usando AltGr en El Capitan
  • Esto es lo que noté hasta ahora. Cuando agrego manualmente el layout, veo que esta input se agrega a mi key AppleEnabledInputSources en la com.apple.HIToolbox com.apple.HIToolbox:

     --- a/def0.txt +++ b/def1.txt @@ -17,6 +17,11 @@ { "Bundle ID" = "com.apple.PressAndHold"; InputSourceKind = "Non Keyboard Input Method"; + }, + { + InputSourceKind = "Keyboard Layout"; + "KeyboardLayout ID" = 15000; + "KeyboardLayout Name" = "USInternational-PC"; } ); AppleInputSourceHistory = ( 

    defaults read com.apple.HIToolbox esta salida haciendo los defaults read com.apple.HIToolbox por defaults read com.apple.HIToolbox . Puedo confirmar la misma adición abriendo directamente ~/Library/Preferences/com.apple.HIToolbox.plist .

    Así que decidí que probablemente todo lo que tenía que hacer era simplemente agregar la misma input y todo funcionaría. Así que revertí la adición manual (y confirmé que la input del plist había desaparecido) y ahora intenté:

     $ defaults write com.apple.HIToolbox AppleEnabledInputSources -array-add '{InputSourceKind="Keyboard Layout"; "KeyboardLayout Name"="USInternational-PC"; "KeyboardLayout ID"=15000;}' 

    Confirmo de nuevo a través de los defaults read por defaults read que agrega la misma input al plist, ¡pero no funciona!

    Intenté eliminar cfprefsd y SystemUIServer e incluso reiniciar, pero ninguno de estos parece funcionar.

    ¿Alguien tiene una pista sobre lo que podría estar pasando aquí?

  • La Utilidad de Discos no muestra el post OK después de Verificar el Disco
  • ¿Puedo hacer que las cerraduras de mayúsculas y minúsculas habiliten el locking de mayúsculas cuando el locking de mayúsculas está asignado al control?
  • ¿Hay un atajo de keyboard para search en Wikipedia "x"?
  • OS X 10.9: Eliminar fonts de input del keyboard
  • Finder en Mavericks no labelrá files en unidades de networking
  • ¿Hay alguna forma de compartir solo UN escritorio en Mavericks?
  • One Solution collect form web for “Mavericks: ¿CÓMO AGREGAR el origen de input a través de plists / defaults?”

    Resulta que el formatting que utilicé para la input AppleEnabledInputSources era malo porque considera todo como una string , ¡pero el KeyboardLayout ID debe ser de tipo integer !

    Entonces, la forma correcta de hacerlo sería a través de XML:

     defaults write com.apple.HIToolbox AppleEnabledInputSources -array-add '<dict><key>InputSourceKind</key><string>Keyboard Layout</string><key>KeyboardLayout ID</key><integer>15000</integer><key>KeyboardLayout Name</key><string>USInternational-PC</string></dict>' 

    Después de ejecutar ese command y hacer un logout / login, parece que las cosas funcionan bien.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).