Re: [CBLX] urlview et certains liens

[ Thread Index | Date Index | More lists.tuxfamily.org/carrefourblinux Archives ]


Salut Aldo et touts,

On Sun, Nov 14, 2010 at 05:19:45PM +0100, Aldo wrote:
> Yo manu+dom:
> 
> On Wed, Nov 10, 2010 at 02:40:15PM +0100, Dominique Asselineau wrote:
> > Aldo wrote on Wed, Nov 10, 2010 at 09:59:05AM +0100
> > > Yo Manu:
> > > 
> > > On Tue, Nov 09, 2010 at 08:30:41AM +0100, Emmanuel COUTRIS wrote:
> > > > Salut Aldo et tout le monde,
> > > > 
> > > > On Mon, Nov 08, 2010 at 07:30:31PM +0100, Aldo wrote:
> > > > > Hello,
> > > > > 
> > > > > je constate que urlview ne traite pas tous les liens de la façon qu'il le
> > > > > faudrait; je m'explique:
> > > > > si le lien est une url .php ou .html, là Ok Lynx ou Links2 etc l'ouvre;
> > > > > mais si le lien est un pdf, urlview ne semble pas être capable de le refiler
> > > > > à pstotext ou autre, et il ne propose même pas de le télécharger,
> > > > > du coup ça fais quelque chose puis ressort et revient dans la liste de liens
> > > > > dns urlview.
> > > > En fait urlview n'y est pas pour grand-chose (voir ci-dessous). Il lance
> > > > la même commande pour tout.
> > > > 
> > > > > Y a-t-il moyen de changer le comportement de urlview, ou y a-t-il moyen de
> > > > > lui faire suivre les règles de /etc/mailcap ?
> > > > oui... mais il faut écrire un petit script ou modifier celui
> > > > existant. Je m'explique:
> > > > - par défaut, urlview lance /etc/urlview/url_handler.sh sur toutes les
> > > >   chaînes correspondant à une expression régulière
> > > > - donc tu a une première option de retoucher ce script
> > > >   (url_handler.sh) pour qu'il fasse comme tu veux
> > > > - ta seconde option est de définir une autre commande dans ~/.urlview
> > > >   qui soit lancée pour toutes les URL. Cette commande peut être
> > > >   n'importe quoi dont... un script de ton cru
> > > > 
> > > > Perso, je pencherais plutôt pour la seconde option car je trouve que
> > > > url_handler est trop complexe pour l'usage que je voudrais en faire.
> > > 
> > > Le gros souci est que dans la man ça parle d'expressions régulière, 
> > 
> > Urlview est juste fait pour extraire les URL du mail et pour repérer
> > le protocole (http|ftp|mailto|...) afin de lancer la bonne appli (par
> > ex. lynx ou links pour http).
> > 
> > > et pour
> > > moi rien qu'à lire le contenu de l'un ou l'autre fichier de conf d'urlview,
> > > c'est comme si je devais me mettre au Mandarin ou aux symboes Cyrilliques!
> > > :-)
> > > Bref c comme d'hab, c pas gagné!!!
> > > 
> > > L'ideal serait d'avoir un template, genre pour traiter du ps pdf doc etc,
> > > car après tout dans Mutt quand tu traites un tel fichier, là les règles de
> > > /etc/mailcap sont respectées et donc un doc il l'ouvre après l'avoir traité
> > > par wv ou catdoc, un ps ou pdf il l'ouvre après l'avoir refilé à pstotext
> > > /etc, un mp3 il le refile à mplayer, etc. Bref ça fonctionne tout seul!
> > > C juste un peu frustrant que avec urlview y ait pas de template, à activer
> > > /qq part. 
> > 
> > Les templates dont tu parles (dans mailcap par ex.) sont à la charge
> > de l'application lancée par urlview.  Urlview n'est pas directement
> > concerné.  Si c'est du http, alors c'est ton navigateur préféré qui
> > active l'url et selon le content-type fourni par la réponse, ce sera
> > le viewer correspondant qui sera lancé par ton navigateur (pdftotext
> > ou autre).
> > 
> > Quand j'ai des problèmes avec urlview, je fais un couper-coller de
> > l'URL et je lance lynx ou links dessus (si c'est du HTTP).  Ensuite on
> > voit où est le problème.
> > 
> > J'ai effectivement remarqué que urlview n'extrayait pas toujours
> > correctement les URL (en particulier quand elles ne respectent pas les
> > recommandations).
> 
> Jpense uqe tu as raison dom, c plus un souci d'interprétation de la commande
> par lynx/links2/elinks ue du ressort d'urlview;
> donc on devrait voir ce que devrait faire lynx etc quand il reçoit une url
> avec pdf dedant:
> je pense qu'à la main lancée au prompt, il va demander s'il doit télécharger
> ou effaceer, alors uqe lancé via urlview il tente d'exécuter ça comme une
> url http à ouvrir, c de là que doit venir le problème.
> J'ignore comment le résoudre.
En réalité, urlview ne lance pas directement lynx/links/... dans sa
config par défaut. Il lance un analyseur de l'URL sur laquelle on a
validé pour choisir quel programme lancer. Le truc, c'est qu'il ne
regarde que le début de la chaîne: savoir si c'est http://, ftp://
Selon le résultat il lance un programme différent. Dans ton cas, pour
http et https il doit lancer lynx... mais que fait lynx sur un pdf ou
autre...?

Je vois plusieurs solutions possible:
- modifier le script existant... mais il reste des soucis: le script
  ne se base que sur l'URL et non sur le contenu. Que se passe-t-il si
  l'URL qui ne contient pas .pdf mais renvoie un PDF généré...?
- créer un nouveau script (c'est ce sur quoi je pars... mais
  sorry... je n'ai pas pu m'en occupé avant que tu reviennes
  Aldo!). Ici, mon idée est de me baser sur le contenu de l'en-tête
  pour savoir ce qu'il faut lancer après (analyser le
  content-type). Bon, il reste un soucis, peut-être pas trop important
  pour certains: le téléchargement (au moins de l'en-tête) s'exécute
  deux fois, à l'analyse et au lancement du vrai navigateur
- réécrire un urlview (euh... non je suis pas fou... mais j'aime les
  défi!). En fait je pense à ça parce urlview ne propose que de voir
  l'URL... mais on pourrait proposer de télécharger la cible et/ou
  choisir de piper la cible du lien vers une commande que l'on tape,
  et/ou pouvoir choisir temporairement une autre commande.

Voilà mes idées sur le sujet... Si l'un des dev
t'intéresse... préviens-moi: j'adore les défi !

Amicalement,

Manu

> 
> Aldo. 
> 
> ---

---
-- 
   CarrefourBLinuX MailingListe 
   Pour obtenir de l'aide, envoyez le sujet  help  à: 
   carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
   Archives: 
   http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/