Résolu finder > pas de prévisualisation des .srt

MamZeLLe

Membre actif
29 Mars 2008
112
7
Bonjour,

Je suis passée récemment à Sierra (via achat MacBook Air) et je constate que mes fichiers .srt s'affichent/s'illustrent en Exec dans un carré noir.
J'ai configuré que TextEdit soit l'application par défaut pour l'ouverture des .srt mais ces derniers restent illustrés en Exec et non pas en une illustration TextEdit càd en carré blanc qui permettait (autrefois) de prévisualiser le contenu.

Une modification est-elle possible ?
 
Bonjour MamZelle

Afin de vérifier si l'affichage en type exec (càd. comme relevant de la classe des fichiers exécutables en ligne de commande dans le «Terminal») ne viendrait pas des permissions fixées sur les fichiers > je te propose la petite expérimention suivante :

  • tu vas à : Applications > Utilitaires > tu lances le «Terminal» ;
  • dans la fenêtre qui s'est ouverte > tu saisis seulement :
  • Bloc de code:
    ls -lan
    (les "l" étant les minuscules de la lettre "L") et tu sautes un espace avec la barre d'espacement du clavier ;
  • tu fais un glisser-déposer au pointeur d'un seul de tes fichiers .srt au choix dans la fenêtre du «Terminal» > ce qui va renseigner automatiquement le chemin au fichier et son nom ;
  • tu presses la touche ↩︎ (= "Entrée") du clavier pour activer la commande.

en retour > tu vas voir s'afficher une ligne décrivant les droits fixés sur le fichiers : permissions (en lecture > écriture > exécution) + accédants anonymés (user = toi et groupe = staff en valeurs numériques, genre : 501 20) + date + adresse.

=> il suffit que tu postes ici en copier-coller seulement le début de ligne sans la date ni l'adresse (qui mentionnerait ton nom d'utilisatrice) > et il sera clair si le problème provient de l'executable_bit (permission d'exécution x en valeur symbolique) qui se trouverait accidentellement fixé sur le fichier en question comme il est régulièrement fixé sur les fichiers de nature exec.
 
Bonjour.
Comment avez-vous configuré le .srt ?

Bonjour Herszk,
Tout simplement en faisant cmd+i (lire les infos) > "Ouvrir avec :" > TextEdit par défaut >"Tout modifier..." > Continuer.
Les .srt s'ouvrent alors avec TextEdit comme souhaité mais pas de preview possible.

Bonjour MamZelle

Afin de vérifier si l'affichage en type exec (càd. comme relevant de la classe des fichiers exécutables en ligne de commande dans le «Terminal») ne viendrait pas des permissions fixées sur les fichiers > je te propose la petite expérimention suivante .....

Bonsoir Macomaniac,

Voici la réponse du Terminal :


ls -lan/Volumes/Samsung\ USB/TV\ Shows\ Février\ 2017/Rectify\ 4/Rectfy\ 408.srt

ls: illegal option -- /

usage: ls [-ABCFGHLOPRSTUWabcdefghiklmnopqrstuwx1] [file ...].

Sous Lion, je n'avais pas ce problème et je n'ai pas changé de "fournisseur" de .srt.

 
Dernière édition par un modérateur:
Salut
Tu as oublié un espace entre ls -lan et /Volumes/Samsung\ USB/TV\ Shows\ Février\ 2017/Rectify\ 4/Rectfy\ 408.srt
la bonne commande est :
ls -lan /Volumes/Samsung\ USB/TV\ Shows\ Février\ 2017/Rectify\ 4/Rectfy\ 408.srt
 
Il faut donc que MamZelle > après avoir tapé :
Bloc de code:
ls -lan
n'oublie pas de sauter un espace avec la barre d'espacement du clavier > avant de faire son glisser-déposer > et de valider > pour obtenir en retour la ligne d'information attendue (au lieu d'un message d'erreur).
 
Le problème ne viendrait-il pas du formatage du support externe? Fat32 ou exFat?

Bonsoir Jeanjd63,

Non, je ne le pense pas. Ces .srt étaient initialement stockés sur le HD du MB Air et le problème se manifestait également.

Merci de ton intérêt pour mon post ;-)



Il faut donc que MamZelle > après avoir tapé :
Bloc de code:
ls -lan
n'oublie pas de sauter un espace avec la barre d'espacement du clavier > avant de faire son glisser-déposer > et de valider > pour obtenir en retour la ligne d'information attendue (au lieu d'un message d'erreur).

Effectivement, j'avais oublié l'espace après le ls-lan :-/

ls -lan /Volumes/Samsung\ USB/TV\ Shows\ Février\ 2017/Rectify\ 4/Rectfy\ 408.srt

-rwxrwxrwx@ 1 501 20 68369 31 déc 10:01 /Volumes/Samsung USB/TV Shows Février 2017/Rectify 4/Rectfy 408.srt

Alors Docteur ? :-D
 
Dernière édition par un modérateur:
Comme tu peux le voir > les permissions sur ton fichier test Rectify 408.srt sont :
Bloc de code:
-rwxrwxrwx

Voici comment cela s'interprète :

⚫︎ le tiret - en tête de syntagme désigne par convention la nature de l'objet --> c'est un fichier (un dossier aurait été indiqué par un d comme directory : répertoire).

⚫︎ le rwxrwxrwx désigne ici l'alignement des 3 "triplettes" de permissions : une pour le propriétaire (user) > une pour le groupe principal (désigné plus loin par 20 = staff = le groupe de ceux qui ont un compte dans l'OS) > une pour le groupe secondaire (everyone ou n'importe qui) => tu décomposes donc le syntagme ainsi : user = rwx > staff = rwx > everyone = rwx.

⚫︎ une triplette de permissions consiste dans l'alignement de 3 possibilités permissives : r= read (lire) > w = write (écrire) > x = execute (exécuter). Donc rwx désigne des permissions plénières = la possibilité de lire le fichier > d'écrire au contenu du fichier > d'exécuter le fichier (à le supposer de nature exécutable).

⚫︎ tu t'aperçois donc que ton fichier Rectify 408.srt comporte des permissions plénières pour ses 3 accédants --> càd. l'user (= toi), staff (le groupe principal) et everyone (le groupe secondaire) possèdent les 3 permissions de lire > écrire > exécuter le fichier.

⚫︎ Or ton fichier est un fichier de type "texte" > càd. qui peut être ouvert en « lecture » de son contenu par une application comme «TextEdit». Mais ce n'est en aucune façon, intrinsèquement parlant, un fichier de type "exécutable" > càd. ayant pour contenu des instructions programmatiques pouvant donner lieu à une action-Système.

⚫︎ Un fichier de type "texte" ne doit jamais porter aucune permission exécutive (l'executive_bit : x) car cela n'a aucun sens. Seul un fichier "programmatique" doit porter des permissions exécutives (l'executive_bit : x) car cela fait sens dans son cas de figure.

⚫︎ Or ton fichier .srt porte 3 permissions exécutives x pour l'user = toi > le groupe staff > et le groupe everyone alors qu'il ne s'agit que d'un fichier texte. Il est donc pris par le Système pour un fichier de type "exec" alors qu'il n'en est pas un.​

En conséquence : il faut supprimer sur ce fichier (et par extension sur tous les autres fichiers .srt) > les permissions exécutives x qui lui donnent la fausse apparence d'un fichier exécutable > et le fait donc afficher par le Finder comme un fichier de type exec.

Je te propose donc le test suivant > toujours uniquement sur un seul fichier > celui que tu as pris en exemple --> tu commences par saisir le départ de commande :
Bloc de code:
chmod 644
et tu sautes un espace avec la barre d'espacement du clavier > tu refais un glisser-déposer de ton fichier > tu valides.

Cette commande appelle l'utilitaire (un exécutable ! de nature binaire) chmod (change_mode) avec la valeur 644 qui est une notation de permissions en mode numérique (dit: valeur octale). En valeur octale, en effet, r=4 > w=2 > x=1. D'où 6 (pour l'user) = r=4 + w+2 + x=0 > 4 (pour staff) = r=4 + w=0 + x=0 > 4 (pour everyone) = r=4 + w=0 + x=0. En résumé : 644 = permissions de lire et écrire au fichier pour user (toi) > lire seulement pour staff et everyone > aucune permission exécutive pour personne (afin de respecter la nature "texte" simple du fichier).

=> tu n'as qu'à dire si ton fichier a récupéré son apparence de fichier texte > et si tu peux l'ouvrir d'un double-clic par «TextEdit» appelé par défaut (au lieu du «Terminal»). Si c'est bien le cas > il suffira de passer une commande récursive (portant sur toute la profondeur d'un dossier) sur le dossier qui contient tes sous-titres > et l'executable_bit x sera supprimé pour tous.
 
Dernière édition par un modérateur:
Comme tu peux le voir > les permissions sur ton fichier test Rectify 408.srt sont :
Bloc de code:
-rwxrwxrwx

Voici comment cela s'interprète :

⚫︎ le tiret - en tête de syntagme désigne par convention la nature de l'objet --> c'est un fichier (un dossier aurait été indiqué par un d comme directory : répertoire).

⚫︎ le rwxrwxrwx désigne ici l'alignement des 3 "triplettes" de permissions : une pour le propriétaire (user) > une pour le groupe principal (désigné plus loin par 20 = staff = le groupe de ceux qui ont un compte dans l'OS) > une pour le groupe secondaire (everyone ou n'importe qui) => tu décomposes donc le syntagme ainsi : user = rwx > staff = rwx > everyone = rwx.

⚫︎ une triplette de permissions consiste dans l'alignement de 3 possibilités permissives : r= read (lire) > w = write (écrire) > x = execute (exécuter). Donc rwx désigne des permissions plénières = la possibilité de lire le fichier > d'écrire au contenu du fichier > d'exécuter le fichier (à le supposer de nature exécutable).

⚫︎ tu t'aperçois donc que ton fichier Rectify 408.srt comporte des permissions plénières pour ses 3 accédants --> càd. l'user (= toi), staff (le groupe principal) et everyone (le groupe secondaire) possèdent les 3 permissions de lire > écrire > exécuter le fichier.

⚫︎ Or ton fichier est un fichier de type "texte" > càd. qui peut être ouvert en « lecture » de son contenu par une application comme «TextEdit». Mais ce n'est en aucune façon, intrinsèquement parlant, un fichier de type "exécutable" > càd. ayant pour contenu des instructions programmatiques pouvant donner lieu à une action-Système.

⚫︎ Un fichier de type "texte" ne doit jamais porter aucune permission exécutive (l'executive_bit : x) car cela n'a aucun sens. Seul un fichier "programmatique" doit porter des permissions exécutives (l'executive_bit : x) car cela fait sens dans son cas de figure.

⚫︎ Or ton fichier .srt porte 3 permissions exécutives x pour l'user = toi > le groupe staff > et le groupe everyone alors qu'il ne s'agit que d'un fichier texte. Il est donc pris par le Système pour un fichier de type "exec" alors qu'il n'en est pas un.​

En conséquence : il faut supprimer sur ce fichier (et par extension sur tous les autres fichiers .srt) > les permissions exécutives x qui lui donnent la fausse apparence d'un fichier exécutable > et le fait donc afficher par le Finder comme un fichier de type exec.

Je te propose donc le test suivant > toujours uniquement sur un seul fichier > celui que tu as pris en exemple --> tu commences par saisir le départ de commande :
Bloc de code:
chmod 644
et tu sautes un espace avec la barre d'espacement du clavier > tu refais un glisser-déposer de ton fichier > tu valides.

Cette commande appelle l'utilitaire (un exécutable ! de nature binaire) chmod (change_mode) avec la valeur 644 qui est une notation de permissions en mode numérique (dit: valeur octale). En valeur octale, en effet, r=4 > w=2 > x=1. D'où 6 (pour l'user) = r=4 + w+2 + x=0 > 4 (pour staff) = r=4 + w=0 + x=0 > 4 (pour everyone) = r=4 + w=0 + x=0. En résumé : 644 = permissions de lire et écrire au fichier pour user (toi) > lire seulement pour staff et everyone > aucune permission exécutive pour personne (afin de respecter la nature "texte" simple du fichier).

=> tu n'as qu'à dire si ton fichier a récupéré son apparence de fichier texte > et si tu peux l'ouvrir d'un double-clic par «TextEdit» appelé par défaut (au lieu du «Terminal»). Si c'est bien le cas > il suffira de passer une commande récursive (portant sur toute la profondeur d'un dossier) sur le dossier qui contient tes sous-titres > et l'executable_bit x sera supprimé pour tous.

Aucun changement. Le fichier s'ouvre bien en TextEdit mais toujours pas de preview.
J'ai pourtant bien respecté les consignes dans le Terminal
 
toujours pas de preview.

Rhâââ ! Est-ce que tu veux dire que l'icône du fichier est toujours un rectangle anthracite avec un logo vert exec à l'intérieur ?

Tu as bien pourtant l'extension .srt qui termine l'intitulé du fichier et plus d'executable_bit...

Si tu prends toujours le même fichier utilisé en exemple > qui donc doit avoir perdu ses permissions d'exécution suite à ta commande dans le «Terminal» > pour en faire un glisser-déposer sur ton Bureau de session afin de créer une copie => est-ce que la copie sur ton Bureau est toujours affichée de la même façon ou comme un fichier-texte ?
 
Rhâââ ! Est-ce que tu veux dire que l'icône du fichier est toujours un rectangle anthracite avec un logo vert exec à l'intérieur ?

Tu as bien pourtant l'extension .srt qui termine l'intitulé du fichier et plus d'executable_bit...

Si tu prends toujours le même fichier utilisé en exemple > qui donc doit avoir perdu ses permissions d'exécution suite à ta commande dans le «Terminal» > pour en faire un glisser-déposer sur ton Bureau de session afin de créer une copie => est-ce que la copie sur ton Bureau est toujours affichée de la même façon ou comme un fichier-texte ?


Regarde :

170220114211176225.png
 
Quand on a un problème avec QuickLook, on peut aussi s'intéresser à comment il est configuré.
Dans Terminal on peut utiliser la commande qlmanage pour savoir comment tel types de fichier est pris en compte, quels sont les modules d'affichage disponibles etc.
Avec qlmanage -m on doit obtenir des informations sur la configuration en général. L'idée est de voir si et comment sont pris en compte les fichiers .srt. On peut peut-être indiquer gentiment à QuickLook que ce sont des fichiers texte tout simplement.
 
Je file bosser, je reviendrai dans la soirée pour régler ce problème.. en espérant vous retrouver tous les 2 :)
 
Ton disque externe te sert d'échanges avec une machine de type PC ou une TV?

Ce MB Air ne disposant que de 60G de capacité de mémoire, j'y stocke alors des vidéos que j'élimine très régulièrement.
Je souhaite aussi que cette clé puisse être utilisée sur PC.