FAQ

FAQ: Meccanismo dei tag di macOS (Finder) e spiegazione dell’implementazione di questa app

1. Che cosa sono i tag del Finder in macOS e dove vengono memorizzati?

I tag del Finder fanno parte dei metadati dei file; non vengono scritti direttamente nel contenuto del file, ma all’interno delle sue attributi estesi (xattr). La chiave principale utilizzata è:

Il contenuto corrisponde a un plist binario, che rappresenta essenzialmente un “array di tag”. Ogni elemento del tag include il nome del tag e un numero associato al colore, con valori compresi tra 0 e 7 (0: nessun colore, 1: grigio, 2: verde, 3: viola, 4: blu, 5: giallo, 6: rosso, 7: arancione).

Pertanto:


2. Informazioni sugli attributi estesi precedenti: com.apple.FinderInfo

com.apple.FinderInfo è una funzionalità più vecchia presente in alcune versioni di macOS e del Finder:

Più precisamente:


3. Problema delle lingue: perché lo stesso colore appare come “tag diversi” in sistemi con lingue diverse?

macOS salva i nomi dei tag sotto forma di stringhe localizzate:

Per il sistema operativo si tratta quindi di due tag distinti. L’app utilizza le API di sistema per ottenere i nomi predefiniti dei colori, pertanto il risultato dipenderà dall’impostazione della lingua del sistema (in “Preferenze di Sistema → Generali → Lingua e regione / Lingua interfaccia”, se è selezionato “Automatico”, seguirà la lingua attuale del sistema). Se la lingua del sistema non coincide con quella dell’app, potrebbero verificarsi discrepanze nei nomi dei tag.


4. Perché nelle impostazioni dell’app è necessario mantenere la coerenza con la configurazione dei tag del Finder?


5. Come vengono conservati i metadati dei tag in base alle diverse posizioni dei dischi o delle reti? (APFS / AppleDouble / NTFS ADS)

5.1 APFS (disco locale) — Salvataggio nativo degli xattr (il metodo più affidabile)

APFS supporta nativamente gli attributi estesi, pertanto i metadati dei tag vengono salvati direttamente negli xattr del file stesso.

5.2 Posizioni che non supportano o supportano parzialmente gli xattr — AppleDouble (._nomefileoriginale)

Quando il file system o il protocollo di destinazione non è in grado di conservare in modo affidabile gli xattr (come avviene spesso con FAT32, exFAT e unità di rete quali SMB/WebDAV/NFS), macOS archivia i metadati in file AppleDouble associati:

Visibilità:

Importante: motivo comune della “perdita” dei tag:

5.3 Connettività SMB a NTFS: possibile utilizzo di ADS (Alternate Data Streams)

Quando si accede a un volume NTFS tramite SMB e se sono soddisfatte le condizioni del server e del protocollo, macOS potrebbe non generare file ._, bensì scrivere i metadati nei ADS (Alternate Data Streams) di NTFS:

Attenzione, però:


6. Come visualizzare gli xattr dei tag di un file?

Il comando xattr da riga di comando non è pratico: non è in grado di gestire né di visualizzare attributi plist binari come com.apple.metadata:_kMDItemUserTags; è necessario utilizzare l’opzione -px per ottenere un output corretto in formato esadecimale.

Si consiglia l’utilizzo di strumenti di terze parti:


7. Qual è la relazione tra Spotlight e i tag? I tag dipendono da Spotlight?


8. Che cosa fa l’“indicizzazione avanzata” di questa app?

Quando Spotlight non è in grado di indicizzare determinati file (ad esempio, su dischi esterni, unità di rete o cartelle escluse dall’indicizzazione), l’app offre un’indicizzazione avanzata: