Lorsque la fenêtre d'informations de Finder est utilisée pour associer des fichiers d'un type particulier à une application :
- la préférence est effective immédiatement.
Lorsque Terminal est utilisé pour apporter une modification similaire à ~/Library/Preferences/com.apple.LaunchServices.plist
- la préférence n'est pas effective immédiatement.
Question
Pourquoi Launch Services ne respecte-t-il pas immédiatement un enregistrement dans le fichier com.apple.LaunchServices.plist
de l'utilisateur ?
Une réponse idéale pourrait faire référence à une page de la zone de développement Apple.
Les réponses ne nécessitent pas l'exécution d'une commande.
Contexte
Agent ou daemon ?
Me demandant si un daemon ou un agent rendent effectives les modifications dans ce fichier .plist, j'ai lancé :
sudo launchctl list
Dans la liste, sous la rubrique label, je ne vois rien qui pourrait être lié à Launch Services.
Références
Une réponse à la question de Stack Overflow Comment définir l'application par défaut pour des types de fichiers spécifiques sur Mac OS X? suggère :
… pour être rechargé. Vous pouvez vous déconnecter, attendre quelques minutes ou forcer le redémarrage de launchservices …
Dans mon cas :
- la déconnexion n'a pas eu l'effet souhaité
- J'ai utilisé l'approche
lsregister
, mais ce type de balayage est long.
La réponse acceptée à la question Super User Existe-t-il un moyen plus rapide de modifier les applications par défaut associées aux types de fichiers sur OS X? suggère :
… redémarrer le système d'exploitation pour appliquer les changements (se déconnecter et se reconnecter n'est pas suffisant) …
— si un redémarrage suffit, cela est probablement moins chronophage que de tuer puis recharger la base de données de Launch Services.
2 votes
lsregister -kill -seed
ne prend pas autant de temps (quelques secondes sur mon Air), mais cela fait apparaître les avertissements d'ouverture des applications pour la première fois sur OS X. C'est pourquoi redémarrer est généralement une méthode moins ennuyeuse pour appliquer les changements.