Comment ouvrir des fichiers .alg et plus largement

salut
je cherche à ouvrir des fichiers d’algorigramme, ( algorithmes ) qui finissent en .alg

Plus généralement, si j’ai un fichier .truc, peut-on explorer la base de fichiers pour trouver tous ceux qui l’ouvrent , avec une commande du genre
apt-cache suffixe truc
?

Bonjour
Je ne sais pas si l’info est fiable mais apparemment ce site dit qu’on peut les ouvrir avec algobox : ALG File Extension - What is an .alg file and how do I open it?
Algobox est disponible dans les dépôts debian

1 J'aime

Connais tu un logiciel sur Windows qui ouvre ces .alg ?? si oui tu peut essayer de trouver une alternative Linux https://linux-alternative.com/

salut

héhé
ça fait trop longtemps que j’ai arrêté windows, maintenant je réfléchis dans l’autre sens :slight_smile:

merci blunt
j’ai aussi retrouvé dans mes docs : il s’agit du programme algobox et/ou de son extension latex

RESTE MA QUESTION 2 :
existe-t-il un moyen de trouver les .deb qui autorise d’ouvrir tel ou tel suffixe?

avec Algobox du coup ?

https://packages.debian.org/search?searchon=sourcenames&keywords=algobox

Non
je ne suis pas clair.

Imagines que tu trouves un fichier .lmk
Existe-t-il un moyen de connaître les programmes ( les .deb) qui peuvent ouvrir ce fichier ( qui vont à l’installation créer un lien mime entre le programme et les .lmk ).
Et ce sans les installer.
Un peu comme apt-cache search cherche des données sur les .deb

J’ai pensé à ça car j’ai retrouvé des vieux fichiers algobox, et je ne savais par comment les ouvrir.

Dans mes souvenirs, si Windows se base sur l’extension d’un fichier pour savoir comment l’ouvrir, ce n’est pas le cas de Linux. L’information est stockée à l’intérieur du fichier, dans son header typiquement. Voir man file pour plus d’informations.
Donc peu de chance de trouver un utilitaire qui se base sur l’extension, puisque ce n’est pas comme ça que fonctionne le système.

Pour aller plus loin, tu peux demander à file ne te donner le type MIME du fichier (option --mime), tu peux prendre le résultat et le chercher dans ton moteur de recherche favori (ou pas).

Alors en cherchant sur le web comment trouver les applications selon le type MIME, on peut trouver des solutions comme ce script python (ici) qui fonctionne :

#!/usr/bin/env python3

from gi.repository import Gio
import sys

if len(sys.argv) != 2:
    print('Error: Exactly one command line argument needed')
    sys.exit(1)

for app in Gio.app_info_get_all_for_type(sys.argv[1]):
    print(app.get_id())

Il se base sur le module gi.repository de Python : gi.repository is the Python module for PyGObject (which stands for Python GObject introspection) which holds Python bindings and support for the GTK+ 3 toolkit and for the GNOME apps.

Maintenant qu’est-ce qu’il couvre exactement comme applications ? y-a-t-il moyen de mieux l’adapter à Debian ? Cela dépasse mes compétences, mais c’est intéressant…

bonne idée, malheureusement ça ne marchera pas pour tout :

$ file SuiteArithmétique-30termes.alg
SuiteArithmétique-30termes.alg: XML 1.0 document, ASCII text

c’est un xml/text, pas un alg évidemment

@pled même réponse donc, car ton script se lance avec xml/text

voilà les réponses actuelles :

app='application/pdf' ; grep -ls "$app" /usr/share/applications/* ; echo ; grep  "$app" ~/.config/mimeapps.list ; echo ; grep  "$app" /usr/share/applications/x-cinnamon-mimeapps.list ; echo ; grep  "$app"  /usr/share/applications/mimeinfo.cache |tr ";" "\n"

/usr/share/applications/atril.desktop
/usr/share/applications/calibre-ebook-viewer.desktop
/usr/share/applications/calibre-gui.desktop
/usr/share/applications/gimp.desktop
/usr/share/applications/gv.desktop
/usr/share/applications/libreoffice-draw.desktop
/usr/share/applications/mimeinfo.cache
/usr/share/applications/org.gnome.Evince.desktop
/usr/share/applications/org.inkscape.Inkscape.desktop
/usr/share/applications/x-cinnamon-mimeapps.list

application/pdf=org.gnome.Evince.desktop
application/pdf=userapp-masterpdfeditor4-HVCZQ1.desktop;

application/pdf=org.gnome.Evince.desktop;

application/pdf=atril.desktop
calibre-ebook-viewer.desktop
calibre-gui.desktop
gimp.desktop
gv.desktop
libreoffice-draw.desktop
org.gnome.Evince.desktop
org.inkscape.Inkscape.desktop

qui donne programmes ou fichiers desktop, ou fichiers list

Le programme python donne :

userapp-masterpdfeditor4-HVCZQ1.desktop
atril.desktop
calibre-ebook-viewer.desktop
calibre-gui.desktop
gimp.desktop
gv.desktop
libreoffice-draw.desktop
org.gnome.Evince.desktop
org.inkscape.Inkscape.desktop
display-im6.q16.desktop

Mais tout cela ne répond pas à la question : ils ne donnent un programme que s’il est déjà installé et uniquement par rapport au type mime , pas au suffixe
mais on avance, merci à tous

Si si ta question 2 a été répondue : Linux n’utilisant pas les extensions de fichiers, la réponse est NON, tout simplement.

Si tu veux absolument te baser sur l’extension d’un fichier, il faut te tourner vers des sites comme FileInfo, qui fonctionnent avec une base de données.

Oui et non.
je sais qu’il se base sur les mime, mais :
Je viens de créer un fichier html, je clique dessus, ça ouvre firefox ; je le renomme en .pdf et il essaie de s’ouvrir avec atril/evince
donc il se base sur l’extension

si je fais file HTML5.html.pdf, j’obtiens
HTML5.html.pdf: HTML document, ASCII text

mais si je clique droit , propriétés, ( avec nemo ) il me dit file Document (application/pdf) alors que le m$ême document avec html : Texte (text/html)

Donc linux/bash utilise les mime
L’explorateur de fichiers les extensions

reste plus qu’à trouver le fichier qui référence les extensions dans nemo

Cela m’inspire deux réflexions :

  • au début, tu parlais d’une appli genre apt-cache : là, je pense que ça n’existe pas, et pour de bonnes raisons.
  • ensuite, je ne sais pas quel DE tu utilises, mais il existe dans les paramètres (au moins sous Gnome) les « applications par défaut », et quand tu cliques sur un fichier dans un explorateur, c’est ça qu’on utilise, pour les extensions les plus connues comme .html. Pour les .txt, un click droit, « ouvrir avec… » et tu peux choisir aussi ton appli préférée et toujours l’utiliser. Cette action doit effectivement être stockée dans un fichier, mais nécessite une action de ta part. Et c’est lié au DE pas à l’OS.

Tout ça pour dire : si tu cliques sur un fichier .alg (avec l’appli algobox d’installée), est-ce que l’association fonctionne par défaut ?
Sinon, tu auras le même choix sur un click droit pour faire l’association.

Tout ça pour dire qu’il n’y a pas de règle unique mais file, comme l’extension ou le contenu aident à savoir à quoi on a affaire.
Un fichier avec une extension .pk3, utilisé dans Quake 3, n’est rien d’autre qu’une archive zip.
Un script en python ou un fichier pour algobox ne sont rien d’autre que du texte, voir aussi ligne suivante.
Un fichier avec une extension .txt peut être du texte encodé en utf8, en lat1, ou autre.
Un fichier avec une extension .doc peut être, hou là, plein de choses, merci MicroMou.

6 jours pour un problème de mime, ça fait beaucoup quand-même.
Il n’y a pas de problème spécifique de fichier .alg, ou algobox, vérification en 5 minutes, sans même installer algobox, mais seulement avec 3 fichiers système du paquet algobox:

/usr/bin/algobox
/usr/share/applications/algobox.desktop
/usr/share/mime/packages/x-algobox.xml

/usr/share/mime/packages/x-algobox.xml

  <mime-type type="application/x-algobox">
   <comment>Algobox document</comment>
   <glob pattern="*.alg"/>
   <glob pattern="*.ALG"/>
 </mime-type>

Un fichier algobox est un fichier xml avec extension .alg:

contenu de ftest.alg

<?xml version="1.0" encoding="UTF-8"?>
<algo>
</algo>
$ file ftest.alg
  ftest.alg: XML 1.0 document, ASCII text

Test d’ouverture dans environnement KDE, à partir de Dolphin, ou Nemo (Gtk3): aucun problème.

2023-04-11_18-24

Hypothèse: le fichier ~/.config/mimeapps.list a été trop tripatouillé.
Solution à essayer: le supprimer.
Les choix mimes seront ceux par défaut du système pour repartir propre.

salut
je ne suis toujours pas clair

la question comment ouvrir des fichiers .alg est résolue depuis longtemps avec blunt , point 2 : avec algobox.

la question suivante est : si j’ai un fichier avec une extension que je ne connais pas et qu’aucun programmes n’est associé avec, comment puis-je savoir le programme à installer.

C’est clair.

file donnera une indication, ou ouvrir le contenu du fichier (si format texte par exemple, xml ou autre) permettra de savoir de quoi il s’agit, voir regarder le header en hexa pour un binaire.
Plutôt que de tirer des plans sur la comète sur un problème virtuel, ouvre un sujet le jour où ça arrivera, avec un exemple concret.

Pour un type de fichier, il peut y avoir X solutions d’applications.

MIME Types: Complete List of MIME Types - HTTP - W3cubDocs

bah justement j’avais un problème ( les . alg ) et je voulais préparer une solution pour plus tard, j’ai inventé un mot pour ça : prévoir .

Si personne n’avais pu répondre sur les . alg, j’aurais pu avoir une méthode qui marche, ou plus souvent, quand quelqu’un me demande je peux répondre

Donc pas de solution générale miracle pour trouver un ‹ .deb › qui corresponde à un type d’extension de fichier.
Ça ne doit pas arriver tous les jours non plus…
Au cas par cas.