Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/11/2016, à 17:59

Arbiel

Enregistrement en local d'une intervention

Bonjour

Je me demande comment enregistrer sur mon disque les interventions que je veux pouvoir retrouver facilement. Par exemple, je désire mémoriser cette intervention pour, dans le futur, ne pas avoir à rechercher dans quelle conversation elle a été publiée.

J'ai "Enregistrer la cible du lien sous…" qui enregistre l'intégralité de la conversation, ce qui est mieux que rien, mais qui ne me satisfait pas, alors que "Copier l'adresse du lien", à savoir "https://forum.ubuntu-fr.org/viewtopic.p … #p21628219" envoie directement sur la dite conversation.

Merci à quiconque pourra me mettre sur la voie

Arbiel

[Edit] Je viens de créer un lanceur

[Desktop Entry]
Comment=FAT32
Exec=xdg-open https://forum.ubuntu-fr.org/viewtopic.php?pid=21628219#p21628219
Icon=firefox
Terminal=false
Type=Application
StartupNotify=true
Name[fr_FR]=montage d'une partition fat32 en lecture-écriture

qui affiche l'intervention en question, mais dont la pérennité n'est pas assurée car mon lanceur ne fonctionnera plus lorsque la conversation sera versée aux archives

Dernière modification par Arbiel (Le 15/11/2016, à 18:13)


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#2 Le 15/11/2016, à 18:18

erresse

Re : Enregistrement en local d'une intervention

Salut,

En principe, si tu cliques droit sur la date à droite de l'entête du message, le lien doit renvoyer directement sur ce message de la conversation. Avec l'option "Copier l'adresse du lien", est-ce que ça donne l'adresse du message ou celle de la conversation complète ?


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#3 Le 15/11/2016, à 18:43

MicP

Re : Enregistrement en local d'une intervention

Wouaouh !

Je suis trés honoré que tu utilise un de mes dernier messages comme exemple de message à conserver. smile

(si ça se trouve, c'est un exemple pris au hasard…)

=======

monPostID="21628219";
wget -O- https://forum.ubuntu-fr.org/viewtopic.php?pid=${monPostID}#p${monPostID} | sed -n '/<div id="p'${monPostID}'"/,/^<\/div>/p' > postID-${monPostID}.html

le "div" contenant le post dont le pid est 21628219 sera sauvegardé sous le nom :

postID-21628219.html

Pour visualiser son contenu avec un navigateur html,
il faudra demander au navigateur HTML d'utiliser l'encodage unicode

Dernière modification par MicP (Le 15/11/2016, à 20:59)

Hors ligne

#4 Le 15/11/2016, à 19:38

Arbiel

Re : Enregistrement en local d'une intervention

erresse a écrit :

En principe, si tu cliques droit sur la date à droite de l'entête du message, le lien doit renvoyer directement sur ce message de la conversation.

Ce n'est pas qu'un principe, c'est la réalité

erresse a écrit :

Avec l'option "Copier l'adresse du lien", est-ce que ça donne l'adresse du message ou celle de la conversation complète ?

La conversation complète. Le lanceur, par contre, dans lequel j'ai enregistré l'adresse du message, affiche le message au sein de la conversation, mais il s'agit bien sûr, de texte qui provient du serveur, et non, comme je le souhaiterais, de texte mémorisé sur mon disque.

MicP a écrit :

trés honoré

Tu vas un peu fort car je ne suis qu'un quidam sans grande importance. En fait, c'est moi qui suis très honoré que tu sois toi-même très honoré de l'attention que j'ai portée à ton message. smile

MicP a écrit :

(si ça se trouve, c'est un exemple pris au hasard…)

Non, pas du tout. Non que j'utilise fréquemment des partitions FAT32, mais ton message met en œuvre la commande udisksctl qui me paraît intéressante. Il donne aussi une liste d'options de montage dont je voudrais prendre le temps de chercher à quoi elles correspondent exactement et en comprendre l'impact.

À plusieurs reprises déjà j'ai eu des difficultés pour retrouver des informations que je juge intéressantes, que je sais avoir lues sur le forum. Il m'arrive même parfois d'être incapable de les retrouver.

Dernière modification par Arbiel (Le 15/11/2016, à 19:43)


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#5 Le 15/11/2016, à 19:59

erresse

Re : Enregistrement en local d'une intervention

Arbiel a écrit :

À plusieurs reprises déjà j'ai eu des difficultés pour retrouver des informations que je juge intéressantes, que je sais avoir lues sur le forum. Il m'arrive même parfois d'être incapable de les retrouver.

T'es pas le seul !!! roll

Au moins, tant qu'elles restent sur le forum (ce qui est censé être le cas), il faudrait pouvoir disposer d'une vraie recherche ciblée pour trouver ce qu'on veut, pas de cette recherche trop générale et finalement bien peu efficace...

Oui, je sais, le moteur est libre et tout et tout... mais il ne fournit pas des résultats aussi bien que Google, désolé !

Un exemple : si j'ai participé à une conversation et que je veux la retrouver ultérieurement, pour rechercher dans mes propres conversations (Mes message), je fais comment ?

Bon, mais pour en revenir au sujet en question : On peut aussi (c'est laborieux, mais bon...) copier le texte du message dans son intégralité et le coller au format HTML dans Writer. On obtient un doc lisible et qu'il est possible d'enregistrer, voir d'indexer même...


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#6 Le 15/11/2016, à 20:13

MicP

Re : Enregistrement en local d'une intervention

Pour un enregistrement au format texte :

monPostID="21526716";
wget -O- https://forum.ubuntu-fr.org/viewtopic.php?pid=${monPostID}#p${monPostID} | \
sed -n '/<div id="p'${monPostID}'"/,/^<\/div>/p'                                  | \
lynx -dump -force_html -stdin > postID-${monPostID}.txt

Le "div" contenant le post dont le pid est 21526716 sera sauvegardé sous le nom :

postID-21526716.txt

Mais pour cette ligne de commandes, il faudra installer le paquetage lynx qui est un navigateur web au format texte qui occupera 31 kB sur le disque une fois installé.

=======

…la commande udisksctl qui me paraît intéressante. …

Voir aussi :

21620797
21621048
21607210
21556433
21556582
21556146

Dernière modification par MicP (Le 17/11/2016, à 02:57)

Hors ligne

#7 Le 15/11/2016, à 20:55

Arbiel

Re : Enregistrement en local d'une intervention

Merci beaucoup

Voila le résultat d'un "gedit postID-${monPostID}.txt"

#13 [1]Aujourd'hui à 14:36

   MicP

Re : Fstab récalcitrant, disque ne montant pas en écriture

   Je viens de faire un test avec une clef usb :

   J'ai créé sur cette clef une table des partitions de type msdos
   Ensuite, j'y ai créé une partition que j'ai formaté avec le système de
   fichiers du type FAT32
   Ensuite, depuis mon compte utilisateur, j'ai utilisé udisksctl pour
   monter ce système de fichiers
michel@debg53sw:~$ udisksctl mount -b /dev/sdc1
Mounted /dev/sdc1 at /media/michel/AAEC-8255.
michel@debg53sw:~$

   Le système de fichiers a bien été monté, et, en visualisant le fichier
   /etc/mtab,
   j'en ai profité pour récupérer les options de montage qui ont été
   utilisées pour ce montage :
   (les options ci-dessous ne concernent que le système de fichiers de la
   partition de MA clef USB, pour MON compte utilisateur (uid 1000)
   Pour le disque dur, il est possible qu'elles soient légèrement
   différentes)
…
/dev/sdc1 /media/michel/AAEC-8255 vfat rw,nosuid,nodev,relatime,uid=1000,gid=100
0,fmask=0022,dmask=0077,codepage=437,iocharset=utf8,shortname=mixed,showexec,utf
8,flush,errors=remount-ro 0 0
…

   J'ai démonté le système de fichiers FAT32 de la partition /dev/sdc1 de
   la clef /dev/sdc :
michel@debg53sw:~$ udisksctl unmount -b /dev/sdc1
Unmounted /dev/sdc1.
michel@debg53sw:~$

   =======
   Alors, j'ai créé un sous-répertoire dans mon répertoire personnel
   (/home/michel) qui me servira de point de montage
michel@debg53sw:~$ mkdir ~/maFat32

   Et j'ai ajouté les deux lignes suivantes dans mon fichier /etc/fsatb :
   (il faut les privilèges du compte root pour pouvoir modifier ce
   fichier)
# Pour mon système de fichiers en FAT32
UUID=AAEC-8255 /home/michel/maFat32 vfat rw,nosuid,nodev,relatime,uid=1000,gid=1
000,fmask=0022,dmask=0077,codepage=437,iocharset=utf8,shortname=mixed,showexec,u
tf8,flush,errors=remount-ro 0 0

   Puis j'ai testé le montage de ce système de fichiers par /etc/fstab :
sudo mount -a

   Voilà. Mon système de fichiers FAT32 est maintenant monté à chaque
   démarrage du système,
   et il est accessible en lecture/écriture par le point de montage
   /home/michel/maFat32

   Dernière modification par MicP (Aujourd'hui à 14:58)

   En ligne

Références

   1. file:///tmp/lynxXXXX63Y85u/viewtopic.php?pid=21628219#p21628219

On perd les balises, met c'est un moindre mal.

Une petite erreur, corrigée ci-dessous

monPostID="21628219";
wget -O- https://forum.ubuntu-fr.org/viewtopic.php?pid=${monPostID}#p${monPostID} | \
sed -n '/<div id="p'${monPostID}'"/,/^<\/div>/p'                                     | \
lynx -dump -force_html -stdin > postID-${monPostID}.txt

viewtopic.php?pid au lieu de viewtopic.php?PostID

Il ne me reste plus qu'à faire un petit script avec en entrée le lien lui-même, tel que copié dans le presse-papier et un dialogue utilisateur pour saisir où et sous quel nom il faut enregistrer le message.


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#8 Le 15/11/2016, à 20:58

MicP

Re : Enregistrement en local d'une intervention

…Une petite erreur, corrigée ci-dessous…

Merci beaucoup. smile

C'est une erreur dans l'utilisation du rechercher/remplacer avec mon éditeur de texte.

Je corrige les posts originaux en conséquence.

…On perd les balises, met c'est un moindre mal. …

C'était mon but : obtenir un format texte.

On peut garder les balises en utilisant la ligne de commandes du message #3
mais bien sûr, ce qu'il en sort est du html sans un en-tête html qui pourrait lui indiquer l'encodage du texte, etc...

C'est tout-à fait possible d'insérer un en tête adapté, mais si c'est pour utiliser cette ligne de commande dans une boucle qui génèrerait une page html de plusieurs posts,
il vaudrait mieux que ce soit la fonction d'appel à cette boucle qui créé et insère l'en-tête.

Dernière modification par MicP (Le 15/11/2016, à 21:17)

Hors ligne

#9 Le 16/11/2016, à 00:08

Arbiel

Re : Enregistrement en local d'une intervention

J'ai ajouté

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" dir="ltr">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

en tête et bien sûr,

</html>

à la fin pour obtenir avec la commande du #3 du html que firefox affiche correctement.

Pour aller plus loin, il semble imaginable d'insérer chaque nouveau message dans un fichier html comparable aux pages du forum.

Mais je vais m'en tenir à la création de pages html locales en entourant le résultat de ta commande entre l'entête et le "pied de page" indiqués ci-dessus

Arbiel

Dernière modification par Arbiel (Le 16/11/2016, à 00:15)


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#10 Le 16/11/2016, à 00:51

MicP

Re : Enregistrement en local d'une intervention

Pour bien faire, il fallait au moins une balise body et mettre la balise meta entre des balises head
du coup, j'en ai profité pour y ajouter un titre, les références aux feuilles de style et l'icône ubuntu.

Tu pourra changer de thème en modifiant la feuille de style correspondante : là, j'ai utilisé Xubuntu_darker.css

Dans la page HTML résultante, le message s'affiche sur toute la largeur de la page
car je n'ai pas repris toute l'imbrication des balises div originales.

J'ai rajouté une ligne sed à la ligne de commandes originale
afin que les liens notés en haut à droite des messages (date et heure)
pointent vers le message original sur le forum ubuntu (histoire de retrouver le fil original du message).

Si le navigateur utilisé pour visualiser les pages crées doit travailler hors ligne, il faudra
télécharger les pages css et les fichiers auxquels elles font référence,
et adapter le script pour utiliser les pages css et fichiers téléchargés.

#!/bin/bash

# Source : https://forum.ubuntu-fr.org/viewtopic.php?pid=21628597#p21628597
#
# Paramètres :
# - Entrée : ID du post à récupérer.
# - Sortie : Création du fichier HTML nommé postID-<id du post récupéré>.html

# Test si un paramètre a été donné => on affiche un message et on quitte le script avec un code d'erreur à 1
[[ -z $1 ]] && { echo "Donnez en paramètre un N° d'ID de message."; exit 1; } 

# Variables
monPostID="${1}"
fichOut="postID-${monPostID}.html"

# En-tête HTML
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" dir="ltr">
  <head>
    <title>Extrait(s) du forum.ubuntu-fr.org</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link rel="shortcut icon" href="https://www-static.ubuntu-fr.org/theme2010/images/commun/ubuntu/icone.png" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design Ubuntu" href="https://www-static.ubuntu-fr.org/theme2010/css/forum.css" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design Ubuntu" href="https://www-static.ubuntu-fr.org/theme2010/css/forum-ubuntu.css" />
    <link rel="stylesheet" type="text/css" href="https://forum.ubuntu-fr.org/style/Xubuntu_darker.css" />
  </head>
  <body>
' > "${fichOut}"

# Récupération du post et traitement
wget -O- https://forum.ubuntu-fr.org/viewtopic.php?pid=${monPostID}#p${monPostID} 2>/dev/null | \
sed  -n '/<div id="p'${monPostID}'"/,/^<\/div>/p'                                             | \
sed     's|href="viewtopic.php|href="https://forum.ubuntu-fr.org/viewtopic.php|' >> "${fichOut}"

# Fermeture du fichier HTML
echo '  </body>
</html>' >> "${fichOut}"

Exemple de ligne de commande utilisant ce script
qui va créer le fichier postID-21620797.html :

recupPost 21620797

=======
Je ne doute pas un instant qu'il y a mieux à faire : je ne suis pas programmeur.

Dernière modification par MicP (Le 16/11/2016, à 05:34)

Hors ligne

#11 Le 16/11/2016, à 11:02

Arbiel

Re : Enregistrement en local d'une intervention

Bonjour MicP

Je ne connais pas grand chose au html, et je te remercie des ajouts que tu as effectués. L'introduction des feuilles de style améliore grandement la lisibilité du message.

Je ne suis pas programmeur moi non plus, mais je vais essayer de le modifier pour introduire un dialogue fondé sur yad. Pour ce qui est du paramètre d'entrée, il me semble plus pratique d'introduire non pas le seul numéro de message, mais son adresse complète, telle que copiée dans le presse-papier avec un clic droit sur l'entête, et d'accepter plusieurs références à introduire dans le fichier résultant.

Une petite question cependant : a-t-on la certitude qu'il n'y a pas de <div>…</div> à l'intérieur du message ?

Arbiel

P.S. Pourquoi ne publies-tu pas ton script dans la rubrique adéquate du forum. Il intéresse nombre d'entre nous, si j'en crois :

errerre a écrit :
Arbiel a écrit :

À plusieurs reprises déjà j'ai eu des difficultés pour retrouver des informations que je juge intéressantes, que je sais avoir lues sur le forum. Il m'arrive même parfois d'être incapable de les retrouver.

T'es pas le seul !!!


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#12 Le 16/11/2016, à 12:09

MicP

Re : Enregistrement en local d'une intervention

il me semble plus pratique d'introduire non pas le seul numéro de message, mais son adresse complète, telle que copiée dans le presse-papier avec un clic droit sur l'entête, et d'accepter plusieurs références à introduire dans le fichier résultant..

Impec : j'avais déja fait un script qui utilisait plusieursN° d'ID en entrée, et j'avais pensé aussi à l'utilisation du lien complet. Donc, ce n'est pas un problème.
Il en reste un : Si plusieurs posts sont récupérés, il faudra choisir et entrer un nom pour le fichier de sortie.
Je ne sais pas si tu veux un script interactif ou un script utilisable non-interactif.

…a-t-on la certitude qu'il n'y a pas de <div>…</div> à l'intérieur du message ?…

Oui il y a bien sûr des <div> puisqu'il faut bien que les zones de texte de type code soient dans un <div>  qui permet de définir leur apparence (sur fond noir avec police à chasse fixe), mais comme tu vois, ma commande sed ne prends que le div fermant suivant qui est en début de ligne.
Mais je pense refaire la fonction avec moins de commandes à appeler et une méthode plus appropriée au HTML.

…un dialogue fondé sur yad.…

Une inconnue à prendre en compte et à définir : quel sera le dialogue, car il faudra bien prévoir dy envoyer des informations à afficher et d'autre à récupérer, et comme je ne sais pas ce que tu compte en faire, je ne peux pas envisager toutes les possibilités, ou t'en proposer une qui ne remplirait pas les fonctionnalités que tu espère.

=======
Quoi qu'il en soit, le script tel quel fait son travail, il ne reste plus qu'à "l'enrober" (le faire exécuter par)  dans un un autre script bash ou et le script yad qui va l'appeler .
Je viens juste d'ouvrir la page de documentation ubuntu sur yad, et il n'y aura qu'un problème que tu es le seul à pouvoir résoudre : définir l'apparence (l'organisation, la présentation, etc.) et la logique de fonctionnement des boîtes de dialogues. Pour le reste, ce n'est rien du tout à faire.

…Pourquoi ne publies-tu pas ton script dans la rubrique adéquate du forum.…

Parceque je réponds à des questions dans un fil de discussion mais rien n'empêche de recopier (ou demander à ce que soient déplacés) nos messages échangés vers un fil plus approrié.

Je pense qu'alors, des personnes beaucoup plus qualifiées viendront dégrossir ce semblant de code pour en faire quelque chose de plus propre,

Mais définissons bien d'abord ce qu'il faut faire, ça leur évitera de faire des propositions, et d'être déçus d'avoir travaillé pour rien si on change plusieurs fois de méthodes.

Car ce sont tous des fainéants, et c'est d'ailleurs leur principale qualité : Tu verrais le temps qu'ils passent pour trouver le moyen de n'avoir à faire que le minimum (et moins encore si possible)…c'est épuisant rien que d'y penser.

Dernière modification par MicP (Le 16/11/2016, à 13:10)

Hors ligne

#13 Le 16/11/2016, à 18:49

MicP

Re : Enregistrement en local d'une intervention

En entrée : Un lien HTML vers un message provenant du forum.ubuntu-fr.org

#!/bin/bash

# Source : https://forum.ubuntu-fr.org/viewtopic.php?pid=21628597#p21628597
#
# Paramètres :
# - Entrée : Un Lien HTML ou ID du message du forum.ubuntu-fr.org
# - Sortie : Fichier HTML à créer qui sera nommé postID-<ID du post récupéré>.html

# Test si un paramètre a été donné => on affiche un message et on quitte le script avec un code d'erreur à 1
[[ -z $1 ]] && { echo "Donnez en paramètre un N° d'ID de message."; exit 1; } 

# Variables
monPostID="${1##*\#p}"    # Récuoérer la valeur numérique qui termine la ligne du lien HTML ( juste après la suite de caractères "#p")
fichOut="postID-${monPostID}.html"

# En-tête HTML
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" dir="ltr">
  <head>
    <title>Extrait(s) du forum.ubuntu-fr.org</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link rel="shortcut icon" href="https://www-static.ubuntu-fr.org/theme2010/images/commun/ubuntu/icone.png" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design Ubuntu" href="https://www-static.ubuntu-fr.org/theme2010/css/forum.css" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design Ubuntu" href="https://www-static.ubuntu-fr.org/theme2010/css/forum-ubuntu.css" />
    <link rel="stylesheet" type="text/css" href="https://forum.ubuntu-fr.org/style/Xubuntu_darker.css" />
  </head>
  <body>
' > "${fichOut}"

# Récupération du message et extraction du DIV contenant le message
wget -O- https://forum.ubuntu-fr.org/viewtopic.php?pid=${monPostID}#p${monPostID}   2>/dev/null    | \
sed  -n '/<div id="p'${monPostID}'"/,/^<\/div>/p'                                                  | \
sed     's|href="viewtopic.php|href="https://forum.ubuntu-fr.org/viewtopic.php|' >> "${fichOut}"

# Fermeture du fichier HTML
echo '  </body>
</html>' >> "${fichOut}"

Dernière modification par MicP (Le 17/11/2016, à 02:15)

Hors ligne

#14 Le 16/11/2016, à 19:52

erresse

Re : Enregistrement en local d'une intervention

MicP, avec ton script, la récupération du message est impeccable ! smile
On peut très bien envisager d'enregistrer ces fichiers dans un répertoire spécifique pour les regrouper, mais il faudrait pouvoir identifier leur contenu, par exemple avec le titre de la conversation, pour retrouver le sujet traité ultérieurement...
Comme la consultation se fait dans le navigateur Internet, on pourrait prévoir une fonction pour se reconnecter à la conversation du forum à partir du message enregistré : il suffirait de mémoriser l'url complet du forum dans le message. Ça permettrait de revoir le reste des échanges si besoin est.
Est-ce que ça te semble possible de récupérer le titre et de s'en servir pour nommer le fichier ?


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#15 Le 16/11/2016, à 21:00

MicP

Re : Enregistrement en local d'une intervention

Merci erresee smile
(j'avais pas fait attention que le message était de toi)

On peut très bien envisager d'enregistrer ces fichiers dans un répertoire spécifique pour les regrouper, mais il faudrait pouvoir identifier leur contenu, par exemple avec le titre de la conversation, pour retrouver le sujet traité ultérieurement...

Faisable, d'autant que je ne suis pas satisfait de l'utilisation de sed pour ce travail, awk devrait mieux convenir, ou encore mieux : un parser XML
et quand le lien vers le message est récupéré, le titre de la page aussi => prévoir une extraction du titre du fil.
Mais attention : certains caractères risquent de ne pas passer dans un nom de répertoire ou/et fichier (c'est pareil)

NOTE : Par exemple de titre extrait de ce fil de discussion : "Enregistrement en local d&#039;une intervention / Autres logiciels et problèmes généraux / Forum Ubuntu-fr.org"
On y trouve une entité HTML (pas trop compliqué, mais bon) et surtout des caractères qu'il ne vaut pas mieux utiliser dans un nom de fichier, et à plus forte raison dans un nom de répertoire…
Bref, ça risque de faire compliqué, mais pas impossible quand même.
Il reste aussi que le titre du fil peut-être modifié, ne serait-ce que parce que le problème évoqué a été [Résolu] (tiens! deux autres caractères qui pourraient poser des problèmes.)

Comme la consultation se fait dans le navigateur Internet, on pourrait prévoir une fonction pour se reconnecter à la conversation du forum à partir du message enregistré : il suffirait de mémoriser l'url complet du forum dans le message. Ça permettrait de revoir le reste des échanges si besoin est.

C'est déjà fait, mais ma dernière commande sed ne fonctionnait pas bien, alors j'ai remis une deuxième commande sed comme dans le script d'avant.

Clique sur la date/heure du message sauvegardé => tu te retrouve dans le message original et donc dans le fil de discussion original.

J'ai modifié entre-temps le script précédent en fonction de ce que je dis dans ce message.

NOTE : Comme on dit chez Windows, il y a une intéressante "feature" : les messages s'affichent sur toute la largeur de la page web
car en fait, il manque toute l'imbrication des DIVs originales qui encadrent le fil de discussion.

Dernière modification par MicP (Le 17/11/2016, à 13:03)

Hors ligne

#16 Le 16/11/2016, à 21:18

Arbiel

Re : Enregistrement en local d'une intervention

Bonsoir

J'ai été occupé, et je dois repartir, mais j'ai commencé à réfléchir. Voilà ce que j'avais commencé à rédiger

Dans l'immédiat le script me donne ce que je souhaitais : pouvoir mémoriser des messages qui m'apportent des informations que je pourrais ne pas savoir retrouver dans le futur.

Pour un script plus élaboré et moins contraignant pour l'utilisateur, on peut effectivement concevoir une interface graphique pour la saisie des informations, qui débouche ensuite sur l'appel d'une commande, de sorte que l'utilisateur puisse invoquer l'une ou l'autre.

Les données en entrée sont
la liste des numéros ou des références de message (à voir s'il est utile de prévoir ces deux types d'information)
le nom et la localisation du fichier à créer
l'emplacement du répertoire où sont stockées les feuilles de style.

L'enregistrement en local des feuilles de style permet d'exploiter les fichiers hors ligne, ce qui me paraît intéressant, et légèrement moins consommateur de ressources que la relecture systématique de ces feuilles. L'emplacement du répertoire n'a pas lieu de changer d'un appel à l'autre. Le définir par une variable globale pourrait être une bonne idée, car cela permet d'en donner facilement la valeur dans la ligne de commande ou dans un lanceur dans la ligne EXEC, avec la formulation env VAR=…. À défaut, ce peut être un répertoire caché en .qqch dans le répertoire de l'utilisateur.

Permettre à l'utilisateur de désigner directement le fichier à créer lui évite de devoir le déplacer et le renommer, car même s'il n'en contient qu'un, le numéro de message n'est pas assez explicite pour permettre à l'utilisateur, passées quelques semaines, ou même seulement quelques jours, de savoir quelle information il y a mémorisée. Le répertoire dans lequel le fichier doit être enregistré devrait lui aussi être constant d'un appel à l'autre. On serait alors tenté de procéder comme pour le dossier des feuilles de styles, et ne demander que le nom du fichier à créer, saisie plus simple que la navigation dans les dossiers et saisie du nom de fichier.

Ces dossiers, par défaut, pourraient se trouver en
/Téléchargement/Forum/posts
/Téléchargement/Forum/css
même si je ne suis pas fana de l'utilisation des termes anglophones, mais posts et css ont l'avantage d'être largement partagés dans notre communauté, et je ne suis pas seul au monde.

Forum peut aussi être compris comme For(um)u(buntu)m(essages).


Pour ce qui est de l'utilisation d'un parser xml, j'ai essayé avec xmlstarlet, mais il n'a pas d'option pour indiquer qu'il s'agit de html. Il m'a injurié en m'indiquant, on pouvait s'y attendre, que le code est mal formé.

Je dois partir

A plus tard

Arbiel


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#17 Le 17/11/2016, à 12:57

MicP

Re : Enregistrement en local d'une intervention

Bonjour

…Les données en entrée sont
la liste des numéros ou des références de message (à voir s'il est utile de prévoir ces deux types d'information) …

Actuellement, mon dernier script accepte les 2 en entrée : ID ou lien HTML
Il est bien sûr possible d'envoyer d'autres paramètres en entrée à ce scipt, ce qui permettrait de lui donner un nom de répertoire et/ou de fichier pour l'enregistrement

…L'enregistrement en local des feuilles de style…

Il faudra prévoir de récupérer les autre feuilles de style qui sont référencées …dans les feuille de style.
Ou alors, créer une feuille de style perso, car je ne sais pas jusqu'où va cette imbrication de feuilles de style…

Tout le reste (répertoires, nom des fichiers, listes, etc) devrait être délégué à un autre script appelant qui lancera l'inerface graphique (si necessaire) pour les dialogues.
Il reste à définir une logique de gestion de ces fichiers sauvegardés, et cela dépends de chacun.

Dernière modification par MicP (Le 17/11/2016, à 13:01)

Hors ligne

#18 Le 17/11/2016, à 19:30

Arbiel

Re : Enregistrement en local d'une intervention

Bonjour

@erresse & MicP

Je n'ai pas vu, dans le script, de lien permettant de retourner à la conversation.

Je ne suis pas certain de l'utilité d'utiliser le titre de la conversation. Ce titre n'est pas toujours adapté à la conversation elle-même, du fait de précisions apportées au fil de l'eau par l'auteur initial. De plus, l'information que l'on souhaite mémoriser peut n'avoir qu'un lointain rapport avec la conversation.

Les références en entrée peuvent ne pas provenir toutes de la même conversation. C'est certes peu probable, mais en l'occurrence, sans nom de fichier donné par l'utilisateur, quel titre retenir ? Le titre de la première référence ?

Cependant, si la récupération du titre n'est pas difficile, on peut prévoir une option "Nommer le fichier par le titre de conversation inclus dans la première référence." On ne peut bien évidemment pas proposer ce titre par défaut, puisque le script n'a pas encore lu les messages.

@MicP

J'ai bien vu que tu as adapté le script pour accepter un lien ou un numéro de message.

Je pense qu'il faut laisser la porte ouverte à des forum en d'autres langues, auxquels certains d'entre nous peuvent être abonnés, ou pour le moins, peuvent consulter de temps à autre. Pour voir ce qu'il en est à l'étranger, je viens de répondre à une demande d'aide sur le forum anglophone.

Le lien vers mon message est le suivant
https://ubuntuforums.org/member.php?u=1869085
mais, dans la page, le code qui correspond au début de ma réponse est
<div id="post_message_13571232">
Le lien donné conduit à l'affichage de la première ligne de ma réponse, avec un bouton pour lire le reste

<div class="excerpt">Hi
To install on a USB stick
- prepare your partitions (gparted or LVM) as you prefer, setting apart what you want to protect from what may be left...</div>       
        <div class="fulllink"><a href="showthread.php?t=2343322&amp;p=13571232#post13571232">see more</a></div>

La structure des pages du forum anglophone est donc tout à fait différente de celle des pages de notre forum. Je n'ai pas consulté les autres forum, mais il est évident que le script que tu as mis au point ne peut pas être adapté à toutes ces différentes structures.

Dans ces conditions, pour permettre la mémorisation d'informations obtenues sur des forum en langue étrangère, la seule solution qui me semble réaliste est la création d'un lanceur qui envoie vers la référence fournie en entrée, comme celui que j'avais fait à la main avant que tu ne publie ton script.

Les interfaces, qu'elles soient graphiques ou en ligne de commande, doivent donc proposer soit la création d'une page produite sur la base de ton script, soit la création d'un lanceur vers cette référence.

Pour ce qui concerne les feuilles de style, je ne sais absolument pas comment se fait le lien entre un <div> et le style à appliquer au texte en question. Il m'arrive, dans des conditions que je n'ai pas essayé de comprendre, d'arriver sur le forum avec un thème différent du notre. Je suppose que j'y arrive par le forum d'ubuntu et que les feuilles de style y sont différentes, mais cependant compatibles et que la seule différence est la couleur des encadrements.

Il est vraisemblablement trop compliqué d'analyser le contenu d'un message pour en déduire les feuilles de style à insérer dans le fichier. Pourrait-on recopier en local l'ensemble des feuilles utilisées par le forum ?
Cet ensemble est-il stable ?
Peut-on introduire les feuilles de style directement dans le fichier, de sorte que la modification de cet ensemble, ou du contenu d'une feuille n'ait aucun impact sur un fichier préalablement enregistré en local ?

Pour la gestion des fichiers ou des lanceurs créés, c'est effectivement à chacun de s'organiser. Cependant, comme un certain nombre d'entre nous ne veulent certainement pas s'investir dans la définition d'une logique personnelle, je pense nécessaire de proposer des valeurs par défaut. On peut soit utiliser un répertoire général ("Téléchargement"), soit un répertoire du nom du script. Je ne sais pas ce qui est le plus approprié.

Je vais essayer commencer à écrire l'écran de l'interface graphique.

Arbiel

Dernière modification par Arbiel (Le 17/11/2016, à 19:53)


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#19 Le 18/11/2016, à 16:14

erresse

Re : Enregistrement en local d'une intervention

Arbiel a écrit :

Je n'ai pas vu, dans le script, de lien permettant de retourner à la conversation.

Normal, il n'y en a pas dans le script...
Lorsque tu as capturé un message et que tu le le ré-affiches dans ton navigateur, il apparaît avec sa barre brune qui identifie l'intervenant, le numéro de message et la date et l'heure d'enregistrement du message. Comme dans la conversation sur le forum, si tu cliques sur ce champ date / heure, ça te renvoie sur le même message dans la conversation du forum et tu peux alors naviguer dans la conversation originale.

Arbiel a écrit :

Je ne suis pas certain de l'utilité d'utiliser le titre de la conversation. Ce titre n'est pas toujours adapté à la conversation elle-même, du fait de précisions apportées au fil de l'eau par l'auteur initial. De plus, l'information que l'on souhaite mémoriser peut n'avoir qu'un lointain rapport avec la conversation.

Pour une utilisation du genre "bloc-notes", je pense que retenir le titre de la conversation n'est pas inutile, quoique je suis finalement d'accord sur le fait que ce n'est pas obligatoirement le critère le plus pertinent pour cerner précisément le contenu du message.
Ajoute à cela les remarques de MicP, parfaitement fondées, sur le fait que le titre est susceptible de contenir des caractères spéciaux qui peuvent être incompatibles avec la formation d'un nom de fichier ou de dossier.
Je suis en train de construire un index qui prendrait en critère d'entrée le titre (saisi ou extrait du message) et ferait la correspondance avec le nom du fichier qui peut alors être quelconque (celui choisi par MicP fait très bien l'affaire) pour afficher le message.

Arbiel a écrit :

Les références en entrée peuvent ne pas provenir toutes de la même conversation. C'est certes peu probable, mais en l'occurrence, sans nom de fichier donné par l'utilisateur, quel titre retenir ? Le titre de la première référence ?

Ça, j'avoue que je ne l'ai pas envisagé. Tu voudrais constituer un fichier contenant plusieurs messages (créer une pseudo conversation avec des messages en rapport autour d'un même sujet ?
Pour ma part, je ne pensais qu'à un message par fichier (ce qui est bien sûr beaucoup plus basique)...

Je vois que le reste de ton message tend à concevoir un véritable outil universel pouvant être utilisé sur des forums divers et variés...
Ça risque de devenir très vite assez ardu ne crois-tu pas ? Quand on songe à la diversité de codage des centaines de forums de par le monde, comment imaginer un processus commun pour les prendre tous en compte ?


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#20 Le 19/11/2016, à 00:16

Arbiel

Re : Enregistrement en local d'une intervention

Bonsoir

Voici le premier jet.

#!/bin/bash
#forum V0.2, le 20/11/2016 00:30
################################################
# initialisations générales
################################################
	function initialisation () {
#		shopt -s extglob;
		Gbl_tempo_msg=500;
		Gbl_ext_html="html";
		Gbl_ext_lanceur="desktop";
		Gbl_url_forum="https://forum.ubuntu-fr.org";
	}
################################################
# initialisations à partir du message html
################################################
	function init_msg_html () {
		monPostID="${Gbl_url##*\#p}";
		[ "${Gbl_url}" = "{monPostID}" ] && Gbl_url="${Gbl_url_forum}/viewtopic.php?pid=${monPostID}#p${monPostID}";
		wget -O "${f_html:="$(tempfile -p forum -s .html)"}" "${Gbl_url}"   2>/dev/null ;
		Gbl_entete="$(sed -ne "\|<!DOCTYPE|,\|<html|p" "${f_html}")";
		f_head="$(tempfile -p forum -s .xml)";
		sed  -ne "\|<head|,\|</head>|p" "${f_html}" 1>"${f_head}";
		Gbl_div="$(cat "${f_html}" | \
		sed  -n '/<div id="p'${monPostID}'"/,/^<\/div>/p'                                                  | \
		sed  's|href="viewtopic.php|href="${Gbl_url_forum}/viewtopic.php|';)"
		Gbl_fichier="$(xmlstarlet sel -t -m "//title" -v "//title" "${f_head}" | sed -e "s|[[:space:]]*/.*$||")";
	}
################################################
# initialisations à partir du code html
################################################
	function init_hors_html () {
		Gbl_url="Référence du message";
		Gbl_fichier="Nom du fichier ou du lanceur à créer";
	}
###################################################
# création du lanceur
##################################################
	function lanceur () {
		function gen_lanceur () {
			echo "[Desktop Entry]" ;
			echo "Type=Application" ;
			echo "Version=1" ;
			echo "StartupNotify=true" ;
			echo "Terminal=false" ;
			echo "Comment=Créé par forum le "$(date +%d/%m/%y);
			echo "Name=${fichOut}" ;
			echo "Icon=firefox" ;
			echo "Exec=xdg-open \"${Gbl_url}\"" ;
		}
	fichOut="${Gbl_fichier%\.${Gbl_ext_lanceur}}.${Gbl_ext_lanceur}";
	gen_lanceur > "${Gbl_rep}/${fichOut}";
	chmod u+x "${Gbl_rep}/${fichOut}";
	msg="Le lanceur \"${fichOut}\" a été enregistré dans le répertoire \"${Gbl_rep}\"";
	notify-send -u normal -t "${Gbl_tempo_msg}" -i firefox "Forum" "${msg}";
	}
#####################################################
# création d'un Gbl_fichier local
####################################################
	function html () {
		fichOut="${Gbl_fichier%\.${Gbl_ext_html}}.${Gbl_ext_html}";
		{ echo "${Gbl_entete}"; cat "${f_head}" ; echo '<body>'; echo "${Gbl_div}" ; echo '</body></html>'; } 1> "${Gbl_rep}/${fichOut}";
		msg="Le fichier \"${fichOut}\" a été enregistré dans le répertoire \"${Gbl_rep}\"";
		notify-send -u normal -t "${Gbl_tempo_msg}" -i firefox "Forum" "${msg}";
	}

#############################################
# dialogue utilisateur
##############################################
	function lecture_param () {
		titre="\nMémorisation d'un message publié sur forum.ubuntu-fr.org dans un fichier local pour une disponibilité hors ligne (bouton "Valider"),"
		titre="${titre}\n\nou de sa référence (url) quelle qu'elle soit dans un lanceur pour une disponibilité"
		titre="${titre} en ligne uniquement (bouton "Lanceur")."
		param="$(yad --form --title="Forum" --button="gtk-ok:0" --button="Lanceur:2" --button="Annuler:3" \
			--width=1100 \
			--text="${titre}" --always-print-result --sticky --center \
			--field="Référence ou numéro (forum.ubuntu-fr.org) du message (1) :" \
			--field="Nom du fichier ou du lanceur à créer (2)" \
			--field="Répertoire où enregistrer le résultat:CDIR" \
			--field="Répertoire des feuilles de style (3):CDIR" \
			--field=":LBL" \
			--field="(1) : La référence est lue dans le presse-papier; "http://" ou "https://" y sont alors obligatoires:LBL" \
			--field="(2) : Le type de fichier, html ou desktop, est ajouté automatiquement:LBL" \
			--field="(3) : Pour la disponibilité locale du message, les feuilles de style doivent aussi être disponibles localement:LBL" \
			"${Gbl_url}" "${Gbl_fichier}" "${Gbl_rep}" "${Gbl_css}")"
		cr="${?}";
		[ "${cr}" = "1" ] && return 1;
		Gbl_url="$(echo ${param} | cut -d "|" -f 1)";
		Gbl_fichier="$(echo ${param} | cut -d "|" -f 2)";
		Gbl_rep="$(echo ${param} | cut -d "|" -f 3)";
		Gbl_css="$(echo ${param} | cut -d "|" -f 4)";
		return $((${cr}));
	}
##########################################
# procédure principale
#########################################
	function princ () {
# obtention du contenu du presse-papier
		Gbl_url="$(xclip -o)";
		[ -z "${Gbl_url}" ] && init_hors_html || init_msg_html;
		Gbl_rep="Répertoire où enregistrer le fichier ou le lanceur";
		Gbl_css="Répertoire des feuilles de style";
		lecture_param;
		case "${cr}" in
			0) html;;
			1) echo "erreur";;
			2) lanceur;;
			3) : ;;
			esac;
		return 0;
	}
	initialisation;
	princ;

Comme vous le verrez en le testant, il permet de créer soit un fichier pour consultation locale par utilisation du script présenté par MicP au point #13, soit un lanceur, pour consultation en ligne de l'url.

L'entrée de l'url est prévue par le presse-papier, mais elle peut être saisie à la main dans l'interface utilisateur. Le numéro de message est possible, pour le seul forum ubuntu-fr, alors que l'url peut désigner n'importe quelle page. Il est préférable de copier l'url dans le presse-papier avant de lancer le script.

Le script utile yad, xclip et notify-send.

Les feuilles de style nécessite encore du travail. Le fichier créé télécharge les feuilles de style. Une réflexion est nécessaire sur ce point. J'ai introduit dans l'interface graphique la possibilité de désigner où sont ces feuilles, mais cette information n'est pas utilisée.

La création du lanceur est assez comparable avec le fait de marquer les pages dans le navigateur, ce que je fais assez peu car j'en trouve la gestion un peu lourde. De plus, le lanceur utilise xdg-open pour afficher l'url, ce qui permet de changer sans difficulté de navigateur.

La manière dont je vois l'utilisation est la suivante : un clic droit sur l'entête du message, puis un clic droit sur le lanceur du navigateur dans lequel aura été introduite une action permettant de lancer le script. (je ne l'ai pas encore fait, mais c'est d'une simplicité extrême).

Arbiel

P.S.

Voici mon lanceur, modifié.
J'ai modifié la ligne

Actions=NewWindow;NewPrivateWindow;Forum;

et ajouté la fin les quatre lignes

[Desktop Action Forum]
Name=Memorisation message Forum
Exec=forum
OnlyShowIn=Unity;
[Desktop Entry]
Version=1.0
Name=Firefox Web Browser
Name[ar]=متصفح الويب فَيَرفُكْس
Name[ast]=Restolador web Firefox
Name[bn]=ফায়ারফক্স ওয়েব ব্রাউজার
Name[ca]=Navegador web Firefox
Name[cs]=Firefox Webový prohlížeč
Name[da]=Firefox - internetbrowser
Name[el]=Περιηγητής Firefox
Name[es]=Navegador web Firefox
Name[et]=Firefoxi veebibrauser
Name[fa]=مرورگر اینترنتی Firefox
Name[fi]=Firefox-selain
Name[fr]=Navigateur Web Firefox
Name[gl]=Navegador web Firefox
Name[he]=דפדפן האינטרנט Firefox
Name[hr]=Firefox web preglednik
Name[hu]=Firefox webböngésző
Name[it]=Firefox Browser Web
Name[ja]=Firefox ウェブ・ブラウザ
Name[ko]=Firefox 웹 브라우저
Name[ku]=Geroka torê Firefox
Name[lt]=Firefox interneto naršyklė
Name[nb]=Firefox Nettleser
Name[nl]=Firefox webbrowser
Name[nn]=Firefox Nettlesar
Name[no]=Firefox Nettleser
Name[pl]=Przeglądarka WWW Firefox
Name[pt]=Firefox Navegador Web
Name[pt_BR]=Navegador Web Firefox
Name[ro]=Firefox – Navigator Internet
Name[ru]=Веб-браузер Firefox
Name[sk]=Firefox - internetový prehliadač
Name[sl]=Firefox spletni brskalnik
Name[sv]=Firefox webbläsare
Name[tr]=Firefox Web Tarayıcısı
Name[ug]=Firefox توركۆرگۈ
Name[uk]=Веб-браузер Firefox
Name[vi]=Trình duyệt web Firefox
Name[zh_CN]=Firefox 网络浏览器
Name[zh_TW]=Firefox 網路瀏覽器
Comment=Browse the World Wide Web
Comment[ar]=تصفح الشبكة العنكبوتية العالمية
Comment[ast]=Restola pela Rede
Comment[bn]=ইন্টারনেট ব্রাউজ করুন
Comment[ca]=Navegueu per la web
Comment[cs]=Prohlížení stránek World Wide Webu
Comment[da]=Surf på internettet
Comment[de]=Im Internet surfen
Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web)
Comment[es]=Navegue por la web
Comment[et]=Lehitse veebi
Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
Comment[fi]=Selaa Internetin WWW-sivuja
Comment[fr]=Naviguer sur le Web
Comment[gl]=Navegar pola rede
Comment[he]=גלישה ברחבי האינטרנט
Comment[hr]=Pretražite web
Comment[hu]=A világháló böngészése
Comment[it]=Esplora il web
Comment[ja]=ウェブを閲覧します
Comment[ko]=웹을 돌아 다닙니다
Comment[ku]=Li torê bigere
Comment[lt]=Naršykite internete
Comment[nb]=Surf på nettet
Comment[nl]=Verken het internet
Comment[nn]=Surf på nettet
Comment[no]=Surf på nettet
Comment[pl]=Przeglądanie stron WWW 
Comment[pt]=Navegue na Internet
Comment[pt_BR]=Navegue na Internet
Comment[ro]=Navigați pe Internet
Comment[ru]=Доступ в Интернет
Comment[sk]=Prehliadanie internetu
Comment[sl]=Brskajte po spletu
Comment[sv]=Surfa på webben
Comment[tr]=İnternet'te Gezinin
Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ
Comment[uk]=Перегляд сторінок Інтернету
Comment[vi]=Để duyệt các trang web
Comment[zh_CN]=浏览互联网
Comment[zh_TW]=瀏覽網際網路
GenericName=Web Browser
GenericName[ar]=متصفح ويب
GenericName[ast]=Restolador Web
GenericName[bn]=ওয়েব ব্রাউজার
GenericName[ca]=Navegador web
GenericName[cs]=Webový prohlížeč
GenericName[da]=Webbrowser
GenericName[el]=Περιηγητής διαδικτύου
GenericName[es]=Navegador web
GenericName[et]=Veebibrauser
GenericName[fa]=مرورگر اینترنتی
GenericName[fi]=WWW-selain
GenericName[fr]=Navigateur Web
GenericName[gl]=Navegador Web
GenericName[he]=דפדפן אינטרנט
GenericName[hr]=Web preglednik
GenericName[hu]=Webböngésző
GenericName[it]=Browser web
GenericName[ja]=ウェブ・ブラウザ
GenericName[ko]=웹 브라우저
GenericName[ku]=Geroka torê
GenericName[lt]=Interneto naršyklė
GenericName[nb]=Nettleser
GenericName[nl]=Webbrowser
GenericName[nn]=Nettlesar
GenericName[no]=Nettleser
GenericName[pl]=Przeglądarka WWW
GenericName[pt]=Navegador Web
GenericName[pt_BR]=Navegador Web
GenericName[ro]=Navigator Internet
GenericName[ru]=Веб-браузер
GenericName[sk]=Internetový prehliadač
GenericName[sl]=Spletni brskalnik
GenericName[sv]=Webbläsare
GenericName[tr]=Web Tarayıcı
GenericName[ug]=توركۆرگۈ
GenericName[uk]=Веб-браузер
GenericName[vi]=Trình duyệt Web
GenericName[zh_CN]=网络浏览器
GenericName[zh_TW]=網路瀏覽器
Keywords=Internet;WWW;Browser;Web;Explorer
Keywords[ar]=انترنت;إنترنت;متصفح;ويب;وب
Keywords[ast]=Internet;WWW;Restolador;Web;Esplorador
Keywords[ca]=Internet;WWW;Navegador;Web;Explorador;Explorer
Keywords[cs]=Internet;WWW;Prohlížeč;Web;Explorer
Keywords[da]=Internet;Internettet;WWW;Browser;Browse;Web;Surf;Nettet
Keywords[de]=Internet;WWW;Browser;Web;Explorer;Webseite;Site;surfen;online;browsen
Keywords[el]=Internet;WWW;Browser;Web;Explorer;Διαδίκτυο;Περιηγητής;Firefox;Φιρεφοχ;Ιντερνετ
Keywords[es]=Explorador;Internet;WWW
Keywords[fi]=Internet;WWW;Browser;Web;Explorer;selain;Internet-selain;internetselain;verkkoselain;netti;surffaa
Keywords[fr]=Internet;WWW;Browser;Web;Explorer;Fureteur;Surfer;Navigateur
Keywords[he]=דפדפן;אינטרנט;רשת;אתרים;אתר;פיירפוקס;מוזילה;
Keywords[hr]=Internet;WWW;preglednik;Web
Keywords[hu]=Internet;WWW;Böngésző;Web;Háló;Net;Explorer
Keywords[it]=Internet;WWW;Browser;Web;Navigatore
Keywords[is]=Internet;WWW;Vafri;Vefur;Netvafri;Flakk
Keywords[ja]=Internet;WWW;Web;インターネット;ブラウザ;ウェブ;エクスプローラ
Keywords[nb]=Internett;WWW;Nettleser;Explorer;Web;Browser;Nettside
Keywords[nl]=Internet;WWW;Browser;Web;Explorer;Verkenner;Website;Surfen;Online 
Keywords[pt]=Internet;WWW;Browser;Web;Explorador;Navegador
Keywords[pt_BR]=Internet;WWW;Browser;Web;Explorador;Navegador
Keywords[ru]=Internet;WWW;Browser;Web;Explorer;интернет;браузер;веб;файрфокс;огнелис
Keywords[sk]=Internet;WWW;Prehliadač;Web;Explorer
Keywords[sl]=Internet;WWW;Browser;Web;Explorer;Brskalnik;Splet
Keywords[tr]=İnternet;WWW;Tarayıcı;Web;Gezgin;Web sitesi;Site;sörf;çevrimiçi;tara
Keywords[uk]=Internet;WWW;Browser;Web;Explorer;Інтернет;мережа;переглядач;оглядач;браузер;веб;файрфокс;вогнелис;перегляд
Keywords[vi]=Internet;WWW;Browser;Web;Explorer;Trình duyệt;Trang web
Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;网页;浏览;上网;火狐;Firefox;ff;互联网;网站;
Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;網際網路;網路;瀏覽器;上網;網頁;火狐
Exec=firefox %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=firefox
Categories=GNOME;GTK;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
StartupNotify=true
Actions=NewWindow;NewPrivateWindow;Forum;

[Desktop Action NewWindow]
Name=Open a New Window
Name[ar]=افتح نافذة جديدة
Name[ast]=Abrir una ventana nueva
Name[bn]=Abrir una ventana nueva
Name[ca]=Obre una finestra nova
Name[cs]=Otevřít nové okno
Name[da]=Åbn et nyt vindue
Name[de]=Ein neues Fenster öffnen
Name[el]=Άνοιγμα νέου παραθύρου
Name[es]=Abrir una ventana nueva
Name[fi]=Avaa uusi ikkuna
Name[fr]=Ouvrir une nouvelle fenêtre
Name[gl]=Abrir unha nova xanela
Name[he]=פתיחת חלון חדש
Name[hr]=Otvori novi prozor
Name[hu]=Új ablak nyitása
Name[it]=Apri una nuova finestra
Name[ja]=新しいウィンドウを開く
Name[ko]=새 창 열기
Name[ku]=Paceyeke nû veke
Name[lt]=Atverti naują langą
Name[nb]=Åpne et nytt vindu
Name[nl]=Nieuw venster openen
Name[pt]=Abrir nova janela
Name[pt_BR]=Abrir nova janela
Name[ro]=Deschide o fereastră nouă
Name[ru]=Новое окно
Name[sk]=Otvoriť nové okno
Name[sl]=Odpri novo okno
Name[sv]=Öppna ett nytt fönster
Name[tr]=Yeni pencere aç 
Name[ug]=يېڭى كۆزنەك ئېچىش
Name[uk]=Відкрити нове вікно
Name[vi]=Mở cửa sổ mới
Name[zh_CN]=新建窗口
Name[zh_TW]=開啟新視窗
Exec=firefox -new-window
OnlyShowIn=Unity;

[Desktop Action NewPrivateWindow]
Name=Open a New Private Window
Name[ar]=افتح نافذة جديدة للتصفح الخاص
Name[ca]=Obre una finestra nova en mode d'incògnit
Name[de]=Ein neues privates Fenster öffnen
Name[es]=Abrir una ventana privada nueva
Name[fi]=Avaa uusi yksityinen ikkuna
Name[fr]=Ouvrir une nouvelle fenêtre de navigation privée
Name[he]=פתיחת חלון גלישה פרטית חדש
Name[hu]=Új privát ablak nyitása
Name[it]=Apri una nuova finestra anonima
Name[nb]=Åpne et nytt privat vindu
Name[ru]=Новое приватное окно
Name[sl]=Odpri novo okno zasebnega brskanja
Name[tr]=Yeni bir pencere aç
Name[uk]=Відкрити нове вікно у потайливому режимі
Name[zh_TW]=開啟新隱私瀏覽視窗
Exec=firefox -private-window
OnlyShowIn=Unity;

[Desktop Action Forum]
Name=Memorisation message Forum
Exec=forum
OnlyShowIn=Unity;

Dernière modification par Arbiel (Le 20/11/2016, à 01:32)


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#21 Le 20/11/2016, à 01:51

Arbiel

Re : Enregistrement en local d'une intervention

Bonsoir

Je recopie dans le fichier créé la section <head>…</head> de la page. Cette section est du xml bien formé, ce qui m'a permis de lire le titre et de le proposer dans l'écran de saisie, et ce qui va simplifier la gestion des feuilles de style pour laquelle je pense utiliser un répertoire qui aurait la même structure que le répertoire du forum. Plutôt que d'en demander la localisation dans l'écran de saisie, je le prendrais par "env" comme une variable globale, et à défaut, je le créerais sous le nom "forum" dans /.

Les lignes telles que

<link rel="stylesheet" media="screen" type="text/css" title="Design Ubuntu" href="https://www-static.ubuntu-fr.org/theme2010/css/forum-ubuntu.css" />

deviendraient

<link rel="stylesheet" media="screen" type="text/css" title="Design Ubuntu" href="????/forum/www-static.ubuntu-fr.org/theme2010/css/forum-ubuntu.css" />

mais je ne sais pas ce que doit être "????"

Arbiel


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#22 Le 20/11/2016, à 10:25

moko138

Re : Enregistrement en local d'une intervention

Arbiel,
Je vais être un peu long, mais c'est dans une optique de gain de temps à terme.

1) Pour dissiper deux idées fausses :
1.a) Quand une discussion est transférée dans la section "archives", non, son url ne change pas.
Seule disparaît l'indexation par google.

1.b)

Arbiel a écrit :
erresse a écrit :

En principe, si tu cliques droit sur la date à droite de l'entête du message, le lien doit renvoyer directement sur ce message de la conversation.

Ce n'est pas qu'un principe, c'est la réalité

Oui bien sûr. Donc quand tu poursuis ainsi :

Arbiel a écrit :
erresse a écrit :

Avec l'option "Copier l'adresse du lien", est-ce que ça donne l'adresse du message ou celle de la conversation complète ?

La conversation complète.

cela ne peut résulter que d'une fausse manip' et/ou d'un malentendu.
  - -

2) Pour enregistrer un ou plusieurs messages (consécutifs) dans un fichier,
il suffit, avec mozilla, de le/les sélectionner à la souris et de faire
Fichier > imprimer > imprimer dans un fichier > cocher sélection
N.B. : modifier le nom pré-affiché (sinon, on écrase l'enregistrement précédent).
On produit ainsi un fichier .PDF.

Astuces : dans les options d'impression, mettre en en-tête l'url à gauche, et rien à droite ; on aura ainsi l'url complète dans le pdf.
  Et mettre en pied de page la date.

La caractéristique de cette méthode est de créer autant de fichiers que d'enregistrements, ce qui peut être considéré comme un inconvénient au moment de retrouver l'info dans son disque dur. C'est pourquoi j'utilise depuis des années une autre méthode :
  - -

3) Regrouper les infos dans un fichier fourre-tout en .TXT
Par exemple, j'y ai mis au fil des ans :

Fichier fourre-tout a écrit :

(...)
==================
CHIFFREMENT    chiffrer implique LVM (depuis 13.10)
cf. malbo : forum.ubuntu-fr.org/viewtopic.php?pid=15393911
  L'inverse n'était pas vrai le 19/5/2013 :
cf. malbo : forum.ubuntu-fr.org/viewtopic.php?pid=13599911#p13599911
  Et comment distinguer un lvm non chiffré d'un lvm chiffré?
A) avec 15.10, tiramiseb dit:
forum.ubuntu-fr.org/viewtopic.php?pid=21142961#p21142961
"si le volume était chiffré, le device utilisé serait /dev/dm-1, pas /dev/mapper/xubuntu--vg-root..."

B) avec 14.04.3, malbo dit
forum.ubuntu-fr.org/viewtopic.php?pid=21028881#p21028881
  "Quand je vois une partition "crypto_LUKS", que le Boot-Info soit fait depuis une session live ou depuis le Ubuntu installé, il s'agit d'une installation chiffrée (ça je le savait déjà).
  Quand je vois une partition "LVM2_member", que le Boot-Info soit fait depuis une session live ou depuis le Ubuntu installé, il ne s'agit pas d'une installation chiffrée."
(...)
==================
ECRAN Extinction
lien mort forum.ubuntu-fr.org/viewtopic.php?pid=16626391#p16626391, Vaykadji avait dit :
sh -c "sleep 1; xset dpms force off;"
  ceci va juste éteindre l'écran qui se rallumera à la moindre pression d'une touche du clavier ou à un mouvement de souris.
  Pour lui associer un raccourci-clavier, avec Xubuntu 12.04,
Paramètres/ Gestionnaire de paramètres/ Clavier/ Racccourci des applications/ Ajouter/,
coller la commande dans le champ,
puis exécuter au clavier, pour le définir, le raccourci.
(...)
==================
FSTAB Options de MONTAGE
http://doc.ubuntu-fr.org/mount_fstab ou mount_fstab
"defaults     Correspond à: rw,suid,dev,exec,auto,nouser,async"

exec/noexec     Autorise l'exécution des programmes (par défaut)
auto/noauto     Montage automatique (ou non) lors d'un appel mount -a (par défaut)
nouser     Seul le compte root peut monter/démonter le système de fichier (par défaut)
_netdev     Le système de fichiers est sur une machine qui nécessite un accès réseau. Cela indique au système d'attendre que la configuration réseau soit active avant de procéder au montage
atime/noatime     Inscrit (ou non) la date d'accès (préférez noatime pour les SSD)
windows_names     Empêche l'usage des caractères non compatibles avec Windows dans les noms de fichiers :  / \ : ? * < > " barre verticale.
nofail     man fstab dit: "ne pas renvoyer d'erreur pour ce périphérique  s'il n'existe pas."
nobootwait     (spécifique à ntfs ?) Cf. malbo, in forum.ubuntu-fr.org/viewtopic.php?pid=20060841#p20060841
(...)
==================
LIVE  Erreur "gfxboot.c32: not a COM32R image"
forum.ubuntu-fr.org/viewtopic.php?pid=18363671
  C'est un bug connu. Voici l’explication : En raison de changements dans syslinux, il n'est actuellement pas possible d'utiliser usb-creator de Ubuntu 14.04 et versions antérieures pour écrire des images USB pour Ubuntu 14.10.
solution simple: à la question
"gfxboot.c32: not a COM32R image
boot:"
répondre : live
(...)

Remarque :
Dans l'optique d'aider un tiers qui n'a pas la même feuille de style/forum que la mienne, je remplace souvent, dès la saisie, le lien absolu (ex: forum.ubuntu-fr.org/viewtopic.php?pid=20060841#p20060841) par le lien relatif :

./viewtopic.php?pid=20060841#p20060841

  - -

  Inconvénient du fourre-tout unique
Il demande un peu de saisie manuelle pour compenser la perte des balises ;
  Avantage du fourre-tout unique
C'est la rapidité pour retrouver l'info à partir de Ctrl F, même dans un fichier de plusieurs milliers de lignes. Et ce sans avoir à se demander si on a rangé l'info dans un fichier nommé
"fstab.pdf" ou "mount_fstab.pdf" ou "options_de_montage.pdf" ou...


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#23 Le 20/11/2016, à 18:55

Arbiel

Re : Enregistrement en local d'une intervention

Bonjour

@moko

Merci pour ces précisions.

moko a écrit :

Quand une discussion est transférée dans la section "archives", non, son url ne change pas.

C'est bon à savoir. Cela me rassure pour la pérennité des lanceurs que je peux être conduit à enregistrer, ce dont je doutais un peu.

moko a écrit :

cela ne peut résulter que d'une fausse manip' et/ou d'un malentendu.

C'est plutôt un malentendu, ou une mauvaise compréhension du verbe "donne" dans la question

erresse a écrit :

Avec l'option "Copier l'adresse du lien", est-ce que ça donne l'adresse du message ou celle de la conversation complète ?

L'action "copier l'adresse du lien" appliquée aux derniers messages de la page
https://forum.ubuntu-fr.org/viewtopic.p … 999899&p=2
donne, en remontant à partir du dernier message, les liens suivants

https://forum.ubuntu-fr.org/viewtopic.php?pid=21630908#p21630908
https://forum.ubuntu-fr.org/viewtopic.php?pid=21630895#p21630895
https://forum.ubuntu-fr.org/viewtopic.php?pid=21630884#p21630884

Pour chacun de ces liens, l'action "Ouvrir le lien dans un nouvel onglet" provoque l'affichage du message à l'écran, mais chacun à l'intérieur de la même page du forum, intégralement téléchargée. Je viens de le vérifier pour m'en assurer.
Ma réponse était effectivement erronée puisque le lien copié dans la presse-papier est spécifique à chaque message. Elle était même erronée à double titre, puisque la page chargée n'est pas la conversation intégrale, mais la page de la conversation qui contient le message.

moko a écrit :

2) Pour enregistrer un ou plusieurs messages (consécutifs) dans un fichier,
il suffit, avec mozilla, de le/les sélectionner à la souris et de faire
Fichier > imprimer > imprimer dans un fichier > cocher sélection
N.B. : modifier le nom pré-affiché (sinon, on écrase l'enregistrement précédent).
On produit ainsi un fichier .PDF.

Effectivement, je viens de tester. C'est une possibilité qui se trouve, à mes yeux, plus lourde à mettre en œuvre que les deux clics du script que j'ai publié, mais qui ne nécessitait aucun développement. Et le temps consacré par les uns et les autres sur ce sujet aurait permis de mémoriser un grand de messages ! Cependant, tu trouves toi aussi qu'il y a mieux à faire, mais l'inconvénient que tu soulignes vaut aussi pour le script que j'ai publié.

moko a écrit :

La caractéristique de cette méthode est de créer autant de fichiers que d'enregistrements, ce qui peut être considéré comme un inconvénient au moment de retrouver l'info dans son disque dur

La création d'un fichier texte brut, à la main, est également une solution, avec les avantages et les inconvénients que tu notes, et avec lesquels je suis tout à fait d'accord. Il convient alors à chacun de se positionner sur ce qui lui convient le mieux entre chercher entre des fichiers, avec le risque de ne pas trouver si le nom du fichier n'est pas assez explicite, ou chercher dans un fichier, avec le risque de constater que l'information cherchée n'est pas dans le fichier, car, malgré son intérêt, la lourdeur de la méthode a découragé l'utilisateur de l'enregistrer.

La suite ci-dessous n'a rien à voir avec le fond de ta remarque, mais tend uniquement à montrer que, en publiant une information sur le forum, on reste souvent confiné dans un contexte particulier.

CHIFFREMENT    chiffrer implique LVM (depuis 13.10)

Ceci n'est vrai que dans le cadre du chiffrement en laissant ubiquity décider de ce qu'il convient de faire. Cette option d'ubiquity est une aberration, que malbo condamne tout comme moi. Le chiffrement n'est pas une option banale à proposer à tout un chacun. Pour le mettre en œuvre, il faut réfléchir à l'organisation de ses partitions ou ses volumes logiques et de s'interroger sur ce que l'on veut chiffrer. Nul besoin pour chiffrer son système ou sa partition /home d'indiquer quoi que ce soit à ubiquity. Mais, dans ces conditions tout n'est pas automatique. Il faut, si, pour avoir pratiqué cette méthode il y a un certain temps, mes souvenirs sont restés intacts, mettre à jour initrd.img, et peut-être aussi grub.cfg.

Quand je vois une partition "LVM2_member", que le Boot-Info soit fait depuis une session live ou depuis le Ubuntu installé, il ne s'agit pas d'une installation chiffrée."

Ceci n'est pas tout à fait juste non plus. En lisant les premières lignes du rapport de démarrage de mon disque interne,

============================= Boot Info Summary: ===============================

=> Windows 7/8/2012 is installed in the MBR of /dev/sda.
=> Grub2 (v2.00) is installed in the MBR of /dev/sdb and looks at sector 1 of
    the same hard drive for core.img. core.img is at this location and looks
    for (,msdos1)/grub.

sda1: __________________________________________________________________________

    File system:       ntfs

    Boot files:        /bootmgr /Boot/BCD

sda2: __________________________________________________________________________

    File system:       ntfs

    Operating System:  Windows 7
    Boot files:        /Windows/System32/winload.exe

sda3: __________________________________________________________________________

    File system:       vfat

sda4: __________________________________________________________________________

    File system:       LVM2_member
    Boot sector type:  -
    Boot sector info:

on conclurait que ma partition système et ma partition /home ne sont pas chiffrées, ce qui n'est pas le cas. La conclusion de malbo découle de ce qu'il s'est confiné dans le contexte du chiffrement par l'option de chiffrement d'ubiquity.

Arbiel

Dernière modification par Arbiel (Le 20/11/2016, à 19:00)


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#24 Le 20/11/2016, à 20:42

moko138

Re : Enregistrement en local d'une intervention

Merci de ces précisions !


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#25 Le 20/11/2016, à 20:53

erresse

Re : Enregistrement en local d'une intervention

Bonsoir à tous,

Bon, pour ceux qu'une petite application restreinte (cantonnée à ce seul forum) peut intéresser, j'ai un peu élaboré le script de départ de MicP (c'est quand même la base du processus). Voici ma version, fonctionnelle mais testée à la va-vite par mes soins...

#!/bin/bash

# Enregistrement / recherche des messages utiles du forum Ubuntu-fr

enregistre() {
# Source : https://forum.ubuntu-fr.org/viewtopic.php?pid=21628597#p21628597
#
# Paramètres :
# - Entrée : Un Lien HTML ou ID du message du forum.ubuntu-fr.org
# - Sortie : Fichier HTML à créer qui sera nommé postID-<ID du post récupéré>.html

# Test si un paramètre a été donné => on affiche un message et on quitte le script avec un code d'erreur à 1
[[ -z "$1" ]] && { echo "Donnez en paramètre un N° d'ID de message."; exit 1; } 

# Variables
monPostID="${1##*\#p}"    # Récupérer la valeur numérique qui termine la ligne du lien HTML ( juste après la suite de caractères "#p")
fichOut="${repPost}/postID-${monPostID}.html"

# En-tête HTML
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" dir="ltr">
  <head>
    <title>Extrait(s) du forum.ubuntu-fr.org</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link rel="shortcut icon" href="https://www-static.ubuntu-fr.org/theme2010/images/commun/ubuntu/icone.png" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design Ubuntu" href="https://www-static.ubuntu-fr.org/theme2010/css/forum.css" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design Ubuntu" href="https://www-static.ubuntu-fr.org/theme2010/css/forum-ubuntu.css" />
    <link rel="stylesheet" type="text/css" href="https://forum.ubuntu-fr.org/style/Xubuntu_darker.css" />
  </head>
  <body>
' > "${fichOut}"

# Récupération du message et extraction du DIV contenant le message
wget -O- https://forum.ubuntu-fr.org/viewtopic.php?pid=${monPostID}#p${monPostID}   2>/dev/null    | \
sed  -n '/<div id="p'${monPostID}'"/,/^<\/div>/p'                                                  | \
sed     's|href="viewtopic.php|href="https://forum.ubuntu-fr.org/viewtopic.php|' >> "${fichOut}"

# Fermeture du fichier HTML
echo '  </body>
</html>' >> "${fichOut}"

# Récupération du titre du post
titre=$(grep '<h3>' "${fichOut}" | sed 's/<h3>/ @ /g' | sed 's/<\/h3>/ @ /g' | awk -F" @ " '{print $2}')
index=$(echo "${titre##*\:\ }" | perl -n -mHTML::Entities -e ' ; print HTML::Entities::decode_entities($_) ;')
titre="$(zenity --entry --title "Forum Ubuntu-fr - Messages utiles" --text "Corrigez ou remplacez éventuellement le titre de la conversation, puis validez-le s.v.p.    " --width "600" --entry-text "${index}")"
[[ "$?" = 0 ]] && index="${titre}"
echo -e "${index}\x09${fichOut}" >> "${fichIdx}"
}

visualise() {
# Recherche et visualisation d'un message dans le navigateur
messURL=$(sort "${fichIdx}" | sed "s/\t/\n/g" | zenity --list --title "Forum Ubuntu-fr - Messages utiles" --text "Choisissez un titre de conversation" --width "600" --column="Libellé" --column="Message" --hide-column="2" --print-column="2" --hide-header)
[[ "$?" = 0 ]] && x-www-browser "${messURL}" &
}

# Programme principal

# Variables
repPost="${HOME}/.recupPost"	# On vérifie l'existence du répertoire d'enregistrement
[[ -d "${repPost}" ]] || mkdir "${repPost}"	# ou on le crée si nécessaire
fichIdx="${repPost}/postIndex"

reponse="$(zenity --list --radiolist --title "Forum Ubuntu-fr - Messages utiles" --width "350" --column="Option" --column="Libellé" --column="Choix" --hide-column="3" --print-column="3" TRUE "Enregistrer le message sélectionné" ENR FALSE "Rechercher/Visionner un message" VIS)"
[[ "$?" != 0 ]] && exit 0	# si non OK, on sort !
case "${reponse}" in
	ENR)
		# Récupère l'URL dans le presse-papier et appelle la fonction d'enregistrement
		enregistre "$(xclip -o -selection c)";;
	VIS)
		visualise;;
	*)
		exit 1;;
esac

exit 0

J'ai créé un répertoire caché à cet effet dans mon dossier personnel, pour recevoir les données afférant à cet outil : "$HOME/.recupPost/".
Dans ce dossier, j'ai enregistré le script que j'ai aussi baptisé "recupPost" : "$HOME/.recupPost/bin/recupPost".
J'ai ensuite créé un lanceur sur mon bureau pour exécuter ce script et je l'ai copié dans les lancements rapides du tableau de bord (pour y avoir accès même lorsque le navigateur est ouvert en maximisé).
Le fonctionnement est le suivant :
1) Enregistrement du message :
- Lorsqu'on veut mémoriser un message d'un intervenant dans une conversation sur le forum, on clique droit sur la date/heure du message et on choisit "Copier l'adresse du lien".
- On clique alors sur le lanceur du script de récupération qui ouvre une fenêtre pour choisir si on enregistre un message ou si on veut en visualiser un. Ici, le choix est d'abord "Enregistrer..." bien sûr pour récupérer le message.
- Le script enregistre le message sous la forme d'un fichier .html (le script de base de MicP) et crée une entrée d'index comprenant le titre de la conversation et le lien vers le message qu'on vient d'enregistrer. Ce titre peut être accepté tel quel ou corrigé voire remplacé à loisir pour mieux correspondre à la teneur du message.
2) Visualisation d'un message :
- On clique sur le lanceur du script qui ouvre sa fenêtre de choix de la fonction, et on choisit cette fois de "Rechercher/Visualiser..." un message préalablement mémorisé.
- Une fenêtre s'affiche alors avec la liste des titres des différents messages triée en ordre alphabétique. On sélectionne une des entrées et on clique "Valider" pour ouvrir le message dans le navigateur par défaut du système.
- Une fois le message affiché dans le navigateur, il est possible de cliquer sur la date/heure de l'entête pour accéder à la conversation d'origine dans le forum, ce qui permet de parcourir la conversation (il se peut que plusieurs messages soient intéressants, même si on n'en a mémorisé qu'un plus évocateur...).

Voilà, si certains d'entre vous sont tentés... bon test, et donnez votre avis et les bugs éventuels rencontrés.
cool


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne