1 votes

Les fichiers .mht affichent l'icône exec sur Mac

Je travaille sur un Mac (Yosemite, OS X 10.10.5) et j'ai plusieurs fichiers mht que j'ai créés sur Firefox en sélectionnant File Save as MHT. J'ai déjà associé les fichiers à Firefox - il les ouvre par défaut - mais les fichiers continuent d'afficher l'icône exec. Ce que je recherche, c'est un moyen de faire en sorte que MacOS reconnaisse l'extension de fichier mht : par exemple, lorsqu'un fichier PDF est renommé dans MacOS, seul le nom du fichier est mis en évidence, mais pas l'extension, alors que lorsqu'un fichier mht est renommé, le nom du fichier et l'extension (mht) sont tous deux mis en évidence.

J'ai essayé de naviguer dans Firefox -> Show Package Contents -> Contents et, comme il manquait, j'ai ajouté mht à l'Info.plist en utilisant TextEdit :

<dict>
    <key>CFBundleTypeExtensions</key>
    <array>
        <string>html</string>
        <string>htm</string>
        <string>shtml</string>
        <string>xht</string>
        <string>xhtml</string>
        <string>mht</string> <!-- added -->
    </array>
    <key>CFBundleTypeIconFile</key>
    <string>document.icns</string>
    <key>CFBundleTypeName</key>
    <string>HTML Document</string>
    <key>CFBundleTypeOSTypes</key>
    <array>
        <string>HTML</string>
    </array>
    <key>CFBundleTypeRole</key>
    <string>Viewer</string>
</dict>

Cela n'a pas fonctionné. Existe-t-il un moyen pour que MacOS reconnaisse l'extension mht et l'associe à l'icône de Firefox ? Sinon, comment puis-je faire en sorte que MacOS associe une icône à ces fichiers (autrement qu'en changeant manuellement l'icône de chaque fichier dans la fenêtre "Get Info") ?

3voto

lamas Points 2252

Dans les commentaires, vous avez indiqué que les fichiers problématiques se trouvaient sur un disque externe. Est-il formaté en tant que GRAISSE (ou NTFS) ?

Ces systèmes de fichiers n'ont aucune notion des fichiers exécutables Le système semble donc supposer que tout est un programme exécutable. Ne vous inquiétez pas, il n'y a rien d'anormal dans ce fichier.


Pourquoi fait-il cela ? Il s'agit d'un problème de permissions.

Pour voir les permissions d'un fichier, vous pouvez ouvrir un terminal et taper ls -ld avec un espace après, faites glisser votre fichier et appuyez sur Retour. La première partie de la sortie ressemblera à ceci :

-rw-r--r--

Qu'est-ce que cela signifie ?

r: read  w: write  x: execute

    -        rwx     rwx     rwx
    |             
additional  user    group   world
  info     perm.s   perm.s  perm.s

Essayez ceci sur un fichier de votre dossier personnel. Vous devriez obtenir quelque chose comme rw-r--r-- . Essayez maintenant quelque chose sur votre disque externe - c'est probablement rwxrwxrwx .

(Les disques externes n'ont généralement pas de notion de propriété, de sorte que même sur un disque formaté en HFS+, vous obtiendrez le même ensemble dans chaque champ. Editer : J'ai testé cette méthode sur un fichier aléatoire et j'ai obtenu le résultat suivant rw-r--r-- . Oups.)


Régler le problème

La bonne méthode

Si la partition sur laquelle se trouve le fichier est formatée HFS+ (comme votre disque système) ou tout système de fichiers Unix (par exemple ext4, XFS), vous pouvez alors utiliser chmod . Pour ce faire, tapez chmod -x dans un terminal, ajoutez un espace, et glissez votre fichier, comme avec ls ci-dessus. Appuyez sur Retour, et vous devriez avoir trouvé votre bonheur.

En fait, cela vaut toujours la peine d'essayer - il n'y a pas de danger à essayer. cualquier type de système de fichiers. Si cela ne fonctionne pas, voir ci-dessous.

La mauvaise façon de procéder - la dissimulation

Sur les systèmes de fichiers sans notion de fichiers exécutables, chmod échouera silencieusement et rien ne se passera. Vous pouvez toujours cacher cela en définition d'une icône . Pour ce faire, obtenez des informations sur un fichier (I) et faites glisser un fichier .icns sur l'icône dans le coin supérieur gauche. ( Vous pouvez également copier et coller l'icône à partir d'un autre élément. -C'est probablement la meilleure solution. Si vous souhaitez une icône personnalisée, lisez la suite).

Alors, comment obtenir ce mystérieux .icns fichier ?

La méthode la plus simple consiste à ouvrir une image dans l'aperçu, tout sélectionner (A) et copier (C) . Il vous suffit ensuite de le coller dans l'icône du coin (cliquez d'abord pour le sélectionner).

Mais .icns ont un avantage caché : elles peuvent s'afficher différemment selon la taille. C'est idéal pour les icônes d'applications, qui sont leur principale raison d'être. Si vous souhaitez faire en sorte que votre propre image puisse s'afficher de la sorte, vous pouvez procéder comme suit :


Légèrement hors sujet : faire en sorte que vos propres images d'icônes se comportent différemment en fonction de la taille.

  1. Rassemblez un ensemble d'images, avec des tailles allant de 64x64 à 1024x1024. Elles sont destinées aux écrans Retina, vous les réduirez plus tard. Placez-les dans un dossier nommé whatever.iconset .
  2. Renommez chacun d'entre eux en icon_<halfwidth>x<halfheight>@2x.png (par exemple, l'icône de 64 px serait icon_32x32@2x.png ).
  3. Dupliquer chaque icône, réduire sa taille de moitié et la renommer icon_<newwidth>x<newheight>.png (par exemple, icon_32x32.png ). Cette opération peut être automatisée à l'aide d'un script, en utilisant la commande sips (exécuter man sips pour plus d'informations sur son utilisation).

Vous verrez que si vous prévoyez un aperçu rapide du dossier, vous verrez votre icône, et vous verrez comment elle se comporte à différentes tailles.

  1. Le convertir en .icns avec cette commande : iconutil --convert icns et faites glisser votre jeu d'icônes, comme pour les autres commandes.

Associer le type de fichier à Firefox

Je ne sais pas si votre processus aurait fonctionné, mais vous devez vous assurer que le système peut voir le changement. Pour ce faire, vous pouvez utiliser lsregister :

/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister .../Firefox.app

Remplacer .../Firefox.app avec le chemin d'accès à Firefox, ou faites-le glisser dans le terminal.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X