Traitez les dossiers avec une extension comme .service comme des dossiers normaux au lieu de bundles dans le Finder

8

Existe-t-il un moyen de forcer le Finder à traiter un dossier nommé whatever.servicecomme un dossier et non un service?

Pour être très clair, il est facile de recréer mon problème. Je viens de créer un nouveau dossier, je le renomme name.serviceet je ne peux plus ouvrir le dossier. De plus, les informations sur le fichier ne me permettent pas de changer le type ou de choisir un autre programme pour l'ouvrir.

bejumi
la source
1
Le clic droit (Ctrl-clic) et "Afficher le contenu du package" ne font-ils pas ce que vous voulez?
Doon
@Doon, pas quand nous devons l'utiliser dans un chemin de sortie pour d'autres logiciels.
bejumi

Réponses:

3

Les "répertoires avec extensions de fichiers" (bundles) sont un moyen courant sur OS X de regrouper des éléments constitués de plusieurs fichiers dans un seul package, tels que des extensions de noyau, des fichiers iWork (avant iWork 09), des projets iMovie, des applications, etc.

Vous pouvez généralement modifier le Info.plistfichier d' une application pour supprimer la définition du bundle incriminé qu'elle a défini - par exemple .themepour iMovie.

Comme cela .serviceest défini pour les services système (voir par exemple /System/Library/Services- accédez-y depuis l'élément de la barre de menu de l'application, puis sélectionnez Services ), vous casseriez probablement des choses en supprimant cette définition.

Si vous vous sentez chanceux:

Ouvrez /System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plistpar exemple à l'aide de Xcode (après avoir modifié les autorisations de fichier et de répertoire à l'aide chmodde Terminal) et supprimez l'entrée incriminée dans le tableau CFBundleDocumentTypes .

entrez la description de l'image ici

Vous avez besoin des autorisations d'administrateur pour ce faire. Je recommande d'avoir des sauvegardes actuelles. Il est possible que quelque chose se brise si cette association n'est pas purement cosmétique.

Daniel Beck
la source
Je me demande ce que leur désactivation via RCDefaultApp fait .
slhck
@slhck Exécutez opensnoopet voyez ce qui se passe sur votre disque lorsque vous modifiez ce paramètre.
Daniel Beck
J'ai essayé de commenter l'entrée CoreTypes.bundle/Contents/Info.plist, mais cela n'a pas affecté la façon dont les .services sont traités par le Finder.
Lri
@Lri Avez-vous mis à jour la base de données Launch Services comme décrit dans la rubrique liée? J'ai oublié de le mentionner à nouveau ici.
Daniel Beck
2
J'aurais dû le mentionner plus tôt, mais les deux fois j'ai essayé de le modifier CoreTypes.bundle/Contents/Info.plistm'a presque bloqué hors d'OS X. Aucune application graphique lancée après une connexion normale. La restauration à CoreTypes.bundlepartir d'une sauvegarde Time Machine semble la corriger. (Je suis toujours assez perplexe pourquoi cela s'est produit - je n'ai pas changé les autorisations ou le propriétaire du Info.plistet je n'aurais pas dû l'invalider.)
Lri