.mht file che mostrano l'icona exec su Mac

1

Sto lavorando su un Mac (Yosemite, OS X 10.10.5) e ho diversi file mht che ho creato su Firefox selezionando File → Salva come MHT. Ho già associato i file con Firefox - li apre di default - ma i file continuano a mostrare l'icona exec. Quello che sto cercando è un modo per far riconoscere a macOS l'estensione del file mht: ad esempio, quando un file PDF viene rinominato in macOS, solo il nome del file viene evidenziato ma non l'estensione, tuttavia quando un file mht viene rinominato, sia il nome del file che l'estensione del file (mht) sono molto chiari.

Ho provato a navigare su Firefox - > Mostra contenuto pacchetto - > Contenuti e, dal momento che mancava, ho aggiunto mht a Info.plist usando 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>

Questo non ha funzionato. C'è un modo per far riconoscere a macOS l'estensione mht e associarla all'icona di Firefox? In alternativa, come posso fare in modo che macOS associ un'icona a questi file (oltre a modificare manualmente l'icona su ciascun file nella finestra Ottieni informazioni)?

    
posta Leia 19.10.2017 - 01:44
fonte

1 risposta

2

Nei commenti, hai indicato che i file dei problemi erano su un'unità esterna. È formattato come FAT (o NTFS)?

Questi filesystem non hanno alcun concetto di file eseguibili , quindi il sistema sembra presumere che tutto sia un programma eseguibile. Non preoccuparti, non c'è niente di sbagliato nel file.

Perché lo fa? Bene, è un problema con le autorizzazioni.

Per visualizzare le autorizzazioni su un file, puoi aprire un terminale, digita ls -ld con uno spazio dopo di esso, trascina il file e premi A capo. La prima parte dell'output sarà simile a questa:

-rw-r--r--

Quindi cosa significa tutto questo?

r: read  w: write  x: execute

    -        rwx     rwx     rwx
    |       └─┬─┘   └─┬─┘   └─┬─┘
additional  user    group   world
  info     perm.s   perm.s  perm.s

Prova questo su qualche file nella tua cartella home. Dovresti ottenere qualcosa come rw-r--r-- . Ora prova qualcosa sul tuo disco esterno: probabilmente è rwxrwxrwx .

(Le unità esterne di solito non hanno un concetto di proprietà, quindi anche su un'unità con formattazione HFS + otterrai lo stesso set in ogni campo. Modifica: L'ho provato su un file casuale e ritornava con rw-r--r-- . Oops.)

Risolve il problema

Il modo corretto

Se la partizione su cui è attivo il file è formattata HFS + (come il disco di sistema) o qualsiasi file system Unix (ad esempio ext4, XFS), puoi utilizzare chmod . Per fare ciò, digita chmod -x in un terminale, aggiungi uno spazio e trascina nel tuo file, proprio come con ls sopra. Hit Return, e dovresti essere d'oro.

In effetti, vale sempre la pena sparare: è sicuro provare qualsiasi tipo di filesystem. Se non funziona, vedi sotto.

Il modo improprio, nascondendolo solo

Sui filesystem senza concetto di file eseguibili, chmod fallirà silenziosamente e non succederà nulla. Puoi comunque nasconderlo impostando un'icona . Per fare ciò, Ottieni informazioni su un file (⌘I) e trascina un file .icns sull'icona nell'angolo in alto a sinistra. ( Puoi anche copiare e incollare l'icona da qualcos'altro - è probabilmente la strada da percorrere qui. Se vuoi un'icona personalizzata, continua a leggere.)

Quindi, come ottieni questo misterioso file .icns ?

Il modo più semplice è semplicemente aprire un'immagine in Anteprima, selezionare tutto (⌘A) e copiarlo (⌘C) . Quindi puoi semplicemente incollarlo nell'icona dell'angolo (fai clic per selezionarlo prima).

Ma le immagini .icns hanno un vantaggio nascosto: possono essere visualizzate in modo diverso a diverse dimensioni. Questo è ottimo per le icone di app, che è la ragione principale dell'esistenza. Se vuoi fare la tua immagine, fai quanto segue:

Un po 'fuori tema: le tue icone personali si comportano in modo diverso a diverse dimensioni

  1. Colleziona un set di immagini, con dimensioni da 64x64 a 1024x1024. Questi sono per i display Retina, li ridimensionerai più tardi. Inseriscili in una cartella denominata whatever.iconset .
  2. Rinominare ognuno di essi in icon_<halfwidth>x<halfheight>@2x.png (ad esempio, l'icona 64px sarebbe [email protected] ).
  3. Duplica ogni icona, dimezza le dimensioni e rinomina icon_<newwidth>x<newheight>.png (ad esempio icon_32x32.png ). Questo può essere automatizzato con uno script di shell, usando il comando sips (esegui man sips per maggiori informazioni sull'utilizzo di esso).

Vedrai che se esegui l'anteprima di Quick Look nella cartella, vedrai l'icona e vedrai come si comporta in diverse dimensioni.

  1. Converti in .icns con questo comando: iconutil --convert icns e trascina nel tuo iconset, come con gli altri comandi.

Associazione del tipo di file con Firefox

Non so se il tuo processo avrebbe funzionato, ma dovrai assicurarti che il sistema possa vedere il cambiamento. Lo fai con lsregister :

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

Sostituisci .../Firefox.app con il percorso di Firefox o trascinalo nel terminale.

    
risposta data 27.12.2017 - 22:18
fonte

Leggi altre domande sui tag