Forum Linux.général [résolu] Ouvrir les fichiers selon leur extension

Posté par (page perso) .
Tags : aucun
1
9
août
2012

Bonjour,

je cherche comment ouvrir certains fichiers selon leur extension, comme avec Windows.
Je souhaite que mes fichiers *.truc s'ouvrent avec un script que j'ai fait, en faisant un simple double-clic dessus depuis un gestionnaire de fichiers. Ce sont des fichiers textes que je souhaite traiter d'une manière particulière. Je les lance plusieurs dizaines de fois par jour.

Je suis quasi certain qu'il suffit d'une modification dans mimeapps.list mais je ne pige pas laquelle.
J'ai testé: text/x-truc mais cela ne fonctionne pas. Il faut peut-être définir x-truc ailleurs ?

Je tourne avec xfce depuis quelques jours, mais je pense que ce type de manip fonctionne avec les autres gestionnaires.

  • # Avec Nautilus

    Posté par (page perso) . Évalué à 1.

    Clic droit -> Propriétés

    Onglet : ouvrir avec -> changer l'application par défaut

    Y a-t-il quelque chose comme ça avec Thunar ?

    Commentaire sous licence LPRAB - http://sam.zoy.org/lprab/

  • # xdg-open

    Posté par (page perso) . Évalué à 2.

    XDG est fait pour ça, il me semble.

    https://wiki.archlinux.org/index.php/Xdg-open par exemple (premier lien trouvé sur un moteur de recherche très connu)

    • [^] # Re: xdg-open

      Posté par (page perso) . Évalué à 1.

      oups pardon j'ai lu trop vite… c'est par par extension mais par mimetype, ce n'est pas ce que tu veux… moinssez !

    • [^] # Re: xdg-open

      Posté par . Évalué à 2.

      Ici, xdg-open fonctionne par extension, je viens de tester avec un fichier qui a une mauvaise extension, et c'est l'application associée à l'extension qui s'est ouverte, pas le type mime.

      • [^] # Re: xdg-open

        Posté par (page perso) . Évalué à 2.

        A priori xdg-open ne fait rien de plus que de lancer l'application par défaut. Que ce soit par type mime ou par extension.
        Je viens de tester, j'ai zéro différence par rapport à l'utilisation "normale".

  • # MIME pas mage

    Posté par . Évalué à 2.

    Sous Unix les fichiers sont identifiés par leur type MIME et tous les explorateurs de fichiers se basent sur ça.

    Si tu veux ouvrir un fichier en te basant sur son extension, il ne te reste plus qu'à créer un nouveau type MIME (genre application/extension-monext) qui match uniquement sur l’extension du fichier.
    Je sais que c'est possible, mais je n'ai personnellement jamais modifié à la main la "mimeinfo database".

    Tu trouvera des infos en cherchant sur internet, genre là : http://standards.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-latest.html

    • [^] # Re: MIME pas mage

      Posté par (page perso) . Évalué à 3.

      Plusieurs types de fichiers sont par défaut ouverts suivant leur extension. Ça doit dépendre des distribution mais par exemple les fichiers .mp4 sont comme ça sur plusieurs.

      Tu prends un fichier texte, tu le renommes en .mp4 et il va s'ouvrir avec ton lecteur vidéo (Totem dans mon cas).
      Donc le type mime n'est pas pris en compte dans ce cas.

      • [^] # Re: MIME pas mage

        Posté par . Évalué à 3.

        Je pense plutôt que ça continu à ouvrir selon le type mime, mais que la définition de celui-ci ne se base que sur l'extension du fichier pour le déterminer.

        Faut pas confondre trois choses :
        1: Le type MIME qui définit le contenu d'un fichier, genre video/mpeg, image/gif, etc.
        2: Les "Magic Numbers" qui sont un moyen d'identifier le contenu d'un fichier (=lui attribuer un type MIME), genre le GIF89a au début d'une image gif, le #! au début d'un script… C'est ce que Linux (entre-autre) utilise, mais pas Windows.
        3: L'extension qui est un autre moyen (peu fiable) d'identifier le type d'un fichier et de lui attribuer un type MIME. Utilisé majoritairement par Windows mais aussi sous Linux si le type du fichier n’est pas identifiable par son contenu (chiffré ?) ou si personne ne s'est encore fait chier à spécifier les "Magic infos" (le cas du mp4) ?

        • [^] # Re: MIME pas mage

          Posté par (page perso) . Évalué à 1.

          Tu nommes cela comme tu veux, la question reste: comment fait-on pour ouvrir en se basant sur l'extension ?

          • [^] # Re: MIME pas mage

            Posté par . Évalué à -1.

            je ne suis pas sur qu'on puisse, l'extension n'etant que de la cosmetique (heritée de windows) par rapport au contenu du fichier (le mimetype)
            ou alors il faut changer de navigateur de fichier pour qu'il n'utilise plus les mimetype, voire desactiver les mimetypes sur ta machine.

            • [^] # Re: MIME pas mage

              Posté par . Évalué à 10.

              Raaaahhhh

              NeoX -> Comme je l'ai écrit plus haut le mimetype est une façon normalisé de spécifier le type de contenu d'un fichier, Linux se base majoritairement sur le contenu pour définir le mimetype, mais l'extension où même autre-chose peuvent parfaitement être utilisés.

              Kerro -> Vu qu'apparemment il te faut une méthode précise :
              1: tu crée un fichier XML :

              <?xml version="1.0"?>
               <mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
                 <mime-type type="application/extension-truc">  
                 <comment>.truc files</comment>
                 <glob pattern="*.truc"/>
                </mime-type>
               </mime-info>
              
              

              2: tu l'enregistre sous le nom truc-mime.xml

              3: tu lance la commande (en user ou en root suivant que tu veule créer le nouveau type pour l'utilisateur courant ou tout le système) :

              xdg-mime install truc-mime.xml
              
              

              Tu lance ton navigateur de fichiers, maintenant les fichiers .truc devrait avoir un mime type unique :
              nouveau mime type

              Reste plus qu'à spécifier avec quel programmes ce type doit s'ouvrir :
              ouvrir avec

              Si ça marche pas (le nouveau mimetype n'aparrait pas) :
              - Thunar gère aussi le bureau si je me rappelle bien, la "mimeinfo database" n’est peut-être rechargée qu'au premier lancement, essayer de re-lancer la session.
              - Voir le lien que j'ai donné dans mon premier post, les passages au sujet de la priorité des types.

              Les Gentooistes vaincront !

              • [^] # Re: MIME pas mage

                Posté par (page perso) . Évalué à 3.

                Nickel, ça fonctionne !
                J'avais potassé la doc que tu indiques (j'étais tombé dessus avant de poser la question) mais n'avais pas pigé comment faire.

                J'ai testé en tant qu'utilisateur, c'est parfait.

                Les fichiers modifiés le sont de manière non triviale (1 copie + 4 fichiers modifiés, je parle pour la déclaration du type, pas pour l'association de l'application). Même si cela peut se faire à la main, LA solution est celle indiquée par Tonton Benoit.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.