DefaultKeyBinding.dict
En ~/Library/KeyBindings/DefaultKeyBinding.dict
vous permet de définir vos propres combinaisons de touches dans Mac OS X. Il peut être dans l'un des deux formats suivants : l'ancien format NeXT ( exemple ) ou le format XML plist de style moderne ( exemple ).
Reliure +
Je voulais lier à nouveau la commande de retour en arrière ( + ) à deleteWordBackward:
et j'ai reçu de l'aide dans ce fil de discussion AskDifferent . Il a été suggéré que je l'utilise comme mon DefaultKeyBinding.dict
fichier :
/* my keybindings */
{
"@\U007F" = "deleteWordBackward:"; /* delete backwards one word */
}
Ce conseil a fonctionné (merci, les gars !), mais j'ai déjà un système de DefaultKeybinding.dict
au format XML, je voulais donc essayer de le faire fonctionner de cette façon. J'ai d'abord ajouté ce texte au bas de mon fichier existant :
<key>@\U007F</key>
<string>deleteWordBackward:</string>
Et j'ai également essayé de créer un tout nouveau fichier au format XML avec seulement l'adresse de l'utilisateur. + l'entrée :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>@\U007F</key>
<string>deleteWordBackward:</string>
</dict>
</plist>
Mais aucun des deux fichiers n'a fonctionné. La situation apparente, alors, est que vous pouvez relier à nouveau + uniquement dans l'ancien format NeXT, et non dans le format XML plist. Mes questions sont les suivantes :
- Est-ce exact, ou la syntaxe doit-elle changer d'une manière ou d'une autre lorsque je passe au format XML ?
- Est-ce que je regretterai d'avoir déménagé le reste de ma
DefaultKeyBinding.dict
à l'ancienne syntaxe ? Cela ne demanderait pas beaucoup de travail - il ne s'agit que d'une ou deux douzaines d'entrées - mais je ne sais pas si l'ancien style est déprécié ou déconseillé pour une autre raison.
Editer : Original DefaultKeyBinding.dict
Quelqu'un a demandé des informations sur mon dossier original dans les commentaires, alors je me suis dit que je pourrais tout aussi bien l'inclure ici.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key></key>
<string>complete:</string>
<key>^ </key>
<string>setMark:</string>
<key>^a</key>
<string>moveToBeginningOfLine:</string>
<key>^e</key>
<string>moveToEndOfLine:</string>
<key>^j</key>
<string>setMark:</string>
<key>^v</key>
<string>pageDown:</string>
<key>^w</key>
<string>deleteToMark:</string>
<key>^x</key>
<dict>
<key>^m</key>
<string>selectToMark:</string>
<key>^x</key>
<string>swapWithMark:</string>
</dict>
<key>~</key>
<string>deleteWordBackward:</string>
<key>~<</key>
<string>moveToBeginningOfDocument:</string>
<key>~></key>
<string>moveToEndOfDocument:</string>
<key>~^h</key>
<string>deleteWordBackward:</string>
<key>~b</key>
<string>moveWordBackward:</string>
<key>~d</key>
<string>deleteWordForward:</string>
<key>~f</key>
<string>moveWordForward:</string>
<key>~n</key>
<string>scrollLineDown:</string>
<key>~p</key>
<string>scrollLineUp:</string>
<key>~v</key>
<string>pageUp:</string>
<key>~</key>
<string>deleteWordBackward:</string>
</dict>
</plist>