Las asociaciones de teclas TextEdit modificadas en DefaultKeyBinding.dict dejaron de funcionar

He personalizado enlaces de edición de text en ~ / Library / KeyBindings / DefaultKeyBinding.dict, pero todos dejaron de funcionar en TextEdit.app cuando me actualicé a Lion. Todavía funcionan bien en otras aplicaciones de Cocoa como Safari.

Los enlaces pnetworkingeterminados del sistema, como ^ F para moveForward: funcionan como siempre.

  • Usa F12 para abrir Herramientas de desarrollo en Chrome
  • ¿Qué hace el button do?
  • Acceso directo de keyboard :: Eliminar marcador de Google Chrome
  • ¿Cómo puedo cambiar un command y las asociaciones de teclas del cursor globalmente?
  • Cómo deshabilitar CMD + E para expulsar?
  • ¿Cómo ingresar a un espacio sin interrupciones en iOS?
  • ¿Alguien más que utiliza DefaultKeyBinding.dict lo notó? ¿Hay alguna manera de solucionarlo o de otra forma de personalizar las asociaciones de teclas en TextEdit?

  • ¿Cómo puedo acceder a los documentos de TextEdit guardados en iCloud en una PC?
  • ¿Hay atajos de keyboard para mover los párrafos hacia arriba o hacia abajo al editar text?
  • ¿Cómo usar CTRL + W en lugar de CMD + W en Chrome?
  • ¿Cómo uso un símbolo de "intersección" en la palabra?
  • Intercambio de teclas modificadoras en un keyboard PS / 2
  • Averiguar qué command está vinculado a un atajo de keyboard en TextMate
  • 2 Solutions collect form web for “Las asociaciones de teclas TextEdit modificadas en DefaultKeyBinding.dict dejaron de funcionar”

    El problema fue que había movido el file DefaultKeyBinding.dict real a otra parte para fines de control de versiones y lo vinculé a él.

    La mayoría de las aplicaciones estaban cargando el file a través del enlace simbólico, pero TextEdit (y resulta que algunas otras aplicaciones que pensé que simplemente no soportaban enlaces de teclas) deben hacer algo diferente y no lo vieron.

    Entonces, uy, lección aprendida. No enlace simbólicamente los files de configuration de su sistema.

    Tuve el mismo problema con el enlace simbólico de este file, pero no quería ceder a esta limitación, así que creé un gancho de precompilation de git para actualizar ~ / Library / KeyBindings / DefaultKeyBinding.dict cada vez que se confirmaba mi versión.

    Aquí está el código (para Git):

     #!/bin/bash if [[ $(git diff --cached --name-only | grep '.configurations/DefaultKeyBinding.dict' | wc -l) -eq 1 ]]; then FILE_PATH_IN_LIBRARY=~/Library/KeyBindings/DefaultKeyBinding.dict BASE_DIR=$(git rev-parse --show-toplevel) FILE_PATH_IN_SCM=${BASE_DIR}/.configurations/DefaultKeyBinding.dict NORMAL=$(tput sgr0) BRIGHT=$(tput bold) GREEN=$(tput setaf 2) printf "${BRIGHT}${GREEN}The file <%s> was modified, updating %s${NORMAL}\n" $FILE_PATH_IN_SCM $FILE_PATH_IN_LIBRARY cp $FILE_PATH_IN_SCM $FILE_PATH_IN_LIBRARY fi 

    Para usarlo, todo lo que necesita hacer es replace FILE_PATH_IN_SCM=${BASE_DIR}/.configurations/DefaultKeyBinding.dict con la location del file en su repository de Git.

    Si nunca antes has creado un git hook (este fue el primero), debes colocar este código en:

     <your-git-repo>/.git/hooks/pre-commit 

    No te olvides de ejecutar chmod +x <your-git-repo>/.git/hooks/pre-commit para que sea ejecutable.

    Después, cada confirmación que involucre este file mostrará algo como:

     The file </Users/myuser/.scripts/.configurations/DefaultKeyBinding.dict> was modified, updating /Users/myuser/Library/KeyBindings/DefaultKeyBinding.dict 
    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).