hyperlien dans un document pointant vers un document

Discussions à propos du traitement de textes Writer mais également sur l'éditeur HTML.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Shadok
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 23 avr. 2006 12:11
Localisation : France, Niort (79)

hyperlien dans un document pointant vers un document

Message par Shadok »

Bonjour :D ,

Je suis débutant sous Linux (Mandriva 2005 LE avec KDE 3.3, pas de multiboot, Linux a une machine dédiée) et sous Open Office 2.0.2 (JRE installé).

J’ai conçu sous MS Word (pour Windows, bien sûr) une bibliothèque de maquettes d’actes juridiques sous forme de documents .doc, reliés entre eux par de nombreux hyperliens ; les .doc sont de plus truffés de signets et les hyperliens pointent vers l’un ou l’autre des signets.

Sous Open Office, la reconnaissance de mes documents est assez bonne. Mais j'ai deux pépins :
- lorsque je suis dans un document et que je clique sur un lien, le lien fonctionne et le document cible s’ouvre, mais jamais sur le signet : c’est systématiquement la première page qui s’affiche (comme s’il n’y avait pas de signet) ;
- pour ne rien arranger, à chaque fois que je clique sur un lien pointant vers un document cible, avant que ce dernier ne s’ouvre… Konqueror se lance !

Y a t-il un moyen d’arranger ça siouplé ? Dois-je modifier un paramètre d’Open Office ? A vrai dire, j’angoisse un peu car ma bibliothèque pèse 200 Mo et comprend plusieurs dizaines de milliers d’hyperliens et presque autant de signets, je me vois mal les refaire, ça représente près de dix ans de travail :(


Nota : avant d’envoyer ce post, j’ai voulu voir ce que cela donnait avec des documents au format .doc créés directement sous Open Office et non pas importés : même souci. Je ferai un test sous Windows 2000 à la première occasion.
version 2.4.x sous Linux Mandriva 2008.1

version 3.0.x sous Windows XP
glafa
Membre lOOyal
Membre lOOyal
Messages : 46
Inscription : 17 févr. 2006 09:43
Localisation : 27180

Message par glafa »

Bonjour,
Je commence seulement à utiliser Writer et, concernant les émetteurs et cibles d'hyperliens, j'ai été un peu dérouté par la sémantique : les signets (de MS W) sont ici des "Repères des texte" et figurent dans le navigateur de Writer sous une rubrique différente des Hyperliens, mais sont bien proposés comme cible d'hyperlien en cliquant sur le bouton rouge du champ "Cible".
Ceci posé, j'ai une série de documents avec des centaines de liens de ce type et ça fonctionne correctement.
OOo 2.0.2 sous WinXP SP2 - Que d'eau, que d'eau!
Shadok
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 23 avr. 2006 12:11
Localisation : France, Niort (79)

Message par Shadok »

Bonjour 8) ,

Si le signet est dans le même document que celui où se trouve l'hyperlien, ça marche chez moi. Mais s'il est dans un autre document, c'est là que j'ai le problème... Je vais faire un essai sous XP SP2...
version 2.4.x sous Linux Mandriva 2008.1

version 3.0.x sous Windows XP
glafa
Membre lOOyal
Membre lOOyal
Messages : 46
Inscription : 17 févr. 2006 09:43
Localisation : 27180

Message par glafa »

L'articulation n'est pas très facile :
Pour cibler un objectif dans un autre document, la méthode que j'ai trouvée consiste, dans la boîte de dialogue de création de l'hyperlien, à donner le chemin du document dans le champ "Chemin" (et non pas "Cible") et à donner la cible via le bouton rouge du champ "Cible" cette fois, action qui a pour effet d'afficher le navigateur pour le document cible.
C'est peut-être un peu confus, mais la manoeuvre n'est pas facile!
OOo 2.0.2 sous WinXP SP2 - Que d'eau, que d'eau!
Avatar de l’utilisateur
Hagar Delest
SuppOOrter
SuppOOrter
Messages : 1467
Inscription : 01 févr. 2006 08:12

Message par Hagar Delest »

Voici ce que j'ai fait sous XP : j'ai créé 2 documents Word, l'un pointant sur un signet de l'autre.

1. Si j'ouvre le premier avec OOo et clique sur l'hyperlien, j'ai une erreur (Windows ne trouve pas le fichier !)
1.1. Si j'essaie de modifier la cible en passant par la fenêtre d'hyperlien, même chose (là, c'est un peu bizarre).
2. Si je sauvegarde le fichier cible en format OOo (odt), et que je modifie simplement son extension dans la barre d'adresse du lien dans le premier fichier, le lien fonctionne et me positionne directement au bon endroit.

Donc sous XP, il faudrait simplement convertir tous les documents en .odt et ensuite changer les extensions .doc en .odt dans tous les liens (à faire par une macro).
Désormais sur le forum anglophone avec une version Sun sur une xubuntu (maison) et Windows (boulot).
Shadok
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 23 avr. 2006 12:11
Localisation : France, Niort (79)

Message par Shadok »

Bonjour :P ,

Hagar, j'ai eu les mêmes idées que toi et je suis arrivé presque aux mêmes résultats que toi sous XP... et sous Linux aussi ! Si le document cible est en .odt, donc en format natif, OOo n'a pas à le récupérer, il s'ouvre immédiatement et Konqueror ne se lance pas. 2d problème résolu ; 'suffirait en effet de changer les liens par macro.

Donc, déjà, moralité : si OOo est parfait pour récupérer un document .doc (nota : c'est déjà pas si mal ! Au bureau, nous utilisons MS Office... mais on a installé OOo sur les postes rien que pour récupérer en urgence les documents Word corrompus, okazou !!), il n'est pas idéal pour travailler avec ce format et mieux vaut travailler dans le format natif .odt !

Sauf que le problème numéro 1, lui, il est toujours là : dans mon cas, lorsque le document cible est converti en .odt, les signets sont bien convertis en marque-pages, ils sont visibles dans le navigateur d'OOo, mais totalement inactifs : pas moyen d'aller dessus via le navigateur ; et l'hyperlien du document source refuse d'aller dessus, c'est toujours la première page qui s'affiche... Je ne vais tout de même pas devoir éditer les signets de tous mes documents... Chez toi, Hagar, tu dis que ça fonctionne ?

A priori, il y aurait bien un problème de récupération des signets d'un document .doc créé sous MS office (version 2000 dans mon cas).
version 2.4.x sous Linux Mandriva 2008.1

version 3.0.x sous Windows XP
Avatar de l’utilisateur
Hagar Delest
SuppOOrter
SuppOOrter
Messages : 1467
Inscription : 01 févr. 2006 08:12

Message par Hagar Delest »

Je confirme (sous XP), quand j'ouvre un document Word (2000) avec signet, le signet est bien dans les repères de texte, il est accessible depuis le navigateur (OOo me positionne sur sa position quand je double-clique dessus) ainsi que depuis un autre document (par lien hypertexte).

Tu peux joindre un fichier source et un fichier cible (en supprimant les éléments confidentiels s'il y en a et en laissant des signets) au format Word ?
Désormais sur le forum anglophone avec une version Sun sur une xubuntu (maison) et Windows (boulot).
Avatar de l’utilisateur
Hagar Delest
SuppOOrter
SuppOOrter
Messages : 1467
Inscription : 01 févr. 2006 08:12

Message par Hagar Delest »

J'ai essayé chez moi sous Linux et je pense que le problème de base vient de l'adresse du fichier : tout document .doc fait sous MSWord a été fait sous XP (logique). Donc les chemins des fichiers cibles sont du type 'C:/Quelque part sur le disque'. Or sous Linux, il n'y a pas de 'C:/', il faut donc changer l'adresse en 'Quelque part sur le disque' reconnaissable par Linux (avec 'mnt/Partition Win/' avant par exemple si multiboot).

Quand je charge le .doc sous Linux et que je clique sur un lien vers un document cible (sans changer l'adresse), j'ai effectivement le navigateur qui se lance.

Si je change l'adresse du lien, le .doc cible s'ouvre à la bonne position du signet/repère de texte (et je n'ai pas eu besoin de le convertir en .odt avant).

Je ne te suis pas trop dans ton premier post : tu dis être sur une machine Linux 100% et que tu arrives à ouvrir des documents Word créés sous Win grâce aux hyperliens ? Comment Konqueror trouve ces fichiers cible ???
Désormais sur le forum anglophone avec une version Sun sur une xubuntu (maison) et Windows (boulot).
Shadok
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 23 avr. 2006 12:11
Localisation : France, Niort (79)

Message par Shadok »

Bonsoir :) ,

Pour mes essais sous Linux, j'ai bel et bien édité mes liens pour supprimer le "C/" ; sinon, j'ai évidemment un beau message d'erreur !

Le lien corrigé fonctionne et le fichier cible est bien trouvé et ouvert, pas de problème. Mais il ne s'ouvre pas sur le signet : il s'ouvre obstinément à la première page. Quand j'ouvre un fichier cible, que je lance le navigateur (plutôt bien conçu, soit-dit en passant), et que je clique sur un signet d'origine, rien ne se passe, je ne suis pas envoyé dessus :evil: .

Par contre, si je crée dans le même document cible un signet sous OOo, il fonctionne impec', tant avec le navigateur que comme cible pour un lien venant d'un autre document.

Je ne suis pas en multiboot : j'ai tout bêtement copié à titre d'essai quelques fichiers de la machine sous Windows vers la machine sous Linux avec une clé USB. Ce sont des fichiers créés sous Word 2000 avec Windows 2000. Je vais essayer d'en préparer quelques-uns expurgés de ce qui est trop confidentiel... merci !
version 2.4.x sous Linux Mandriva 2008.1

version 3.0.x sous Windows XP
Shadok
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 23 avr. 2006 12:11
Localisation : France, Niort (79)

Message par Shadok »

Bonjour et désolé d’avoir tant tardé…

Voici, pour les essais, deux de mes fichiers… violemment censurés.

Le fichier « PV conversion du capital en euros SARL et SNC.doc » est la cible, le fichier « PV vierge de SARL et SNC pluripersonnelle.doc » est celui de départ.

Arborescence sous Windows :

C:/Explorateur juridique/Maquettes actes juridiques/PV SARL et SNC 3/PV conversion du capital en euros SARL et SNC.doc

C:/Explorateur juridique/Maquettes actes juridiques/PV SARL et SNC 6/PV vierge de SARL et SNC pluripersonnelle.doc

J'ai installé ces fichiers sur une machine sous Linux, dans un répertoire quelconque. J'ouvre sous OO le fichier de départ, qui est resté en .doc ; en première page, le lien « Procès-Verbal d’Assemblée Générale »fonctionne, il pointe vers un signet qui se trouve dans le même document - je n’ai en ce cas aucun souci. Si je veux actionner l'un des liens hypertextes « Conversion en Euros », bien sûr cela ne fonctionne pas, le début du chemin de fichier étant erroné.

Les fichiers que je t'ai envoyé sont dans l'état ci-avant.

Si j'édite les liens « Conversion en Euros » sous OO/Linux, ils fonctionnent, mais... Konqueror se lance, la récupération du fichier .doc aussi (tout ça bloquant mon misérable portable de 4 ans d'âge pendant plusieurs dizaines de secondes...), et mon fichier cible s'ouvre, mais en première page au lieu de le faire sur le signet.

Si je sauvegarde mon fichier cible en .odt, il souvre sans délai et sans que Konqueror se lance, mais toujours en première page. Le signet existe bien dans le navigateur, mais les liens pointant dessus depuis un autre fichier ne le reconnaissent pas. Je n'arrive même pas à éditer le signet : je dois le supprimer et le recréer ensuite sous OO pour que ça marche.

Voilà, tu connais tout de mes malheurs. Une solution te vaudrait ma reconnaissance éternelle... pour donner une idée, dans le répertoire « Notes », j'ai joint un fichier nommé « Index » ; c'est une sorte de table des matières faite de liens pointant vers les principaux fichiers de ma bibliothèque (j'ai tellement de maquettes d'actes que j'ai parfois du mal à savoir où elles sont classées, j'ai été obligé de faire cet index pour m'y retrouver) ; elle est longue de plus de 20 pages et elle ne répertorie que 10% de mes fichiers sources, lesquels comportent des dizaines des signets et des centaines de liens... chacun. S'il me faut tous les éditer, le suicide me semble une alternative raisonnablement envisageable...


http://oooforum.free.fr/cijoint/fichier ... 034445.zip
version 2.4.x sous Linux Mandriva 2008.1

version 3.0.x sous Windows XP
Avatar de l’utilisateur
Hagar Delest
SuppOOrter
SuppOOrter
Messages : 1467
Inscription : 01 févr. 2006 08:12

Message par Hagar Delest »

Bon, je crois que j'ai trouvé. Le problème semble venir de là :

Code : Tout sélectionner

<text:bookmark-start text:name="listedespiecesremisesauxassocies"/>
<text:bookmark-end text:name="listedespiecesremisesauxassocies"/> 
Comme il n'y a pas de texte associé (entre les 2 balises start et end), il faudrait que le repère de texte soit importé de cette manière :

Code : Tout sélectionner

<text:bookmark text:name="listedespiecesremisesauxassocies"/>
A priori, je ne vois que 2 méthodes :
1. Modifier les chaines directement par macro dans les fichiers content.xml de la structure du fichier odt.
Une fois le fichier content.xml modifié et remis dans l'archive, le fichier devient illisible par OOo. Je pense que c'est faisable mais je dois louper quelque chose (méthode de compression, ... ?).

2. Nettoyer les repères de texte. C'est long mais ça semble fonctionner :
Pré-requis : installer la macro suivante : http://ooomacros.org/user.php#188207
a - Sauver le fichier dont les signets posent problème en format odt.
b - Avec la macro di-dessus, convertir tous les repères de texte en références (les sélectionner tous d'un coup).
c - Sauver le fichier, et le fermer.
d - Réouvrir le fichier, convertir les références en repères de texte une par une et en sauvegardant à chaque conversion.

Bon courage.
Désormais sur le forum anglophone avec une version Sun sur une xubuntu (maison) et Windows (boulot).
Shadok
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 23 avr. 2006 12:11
Localisation : France, Niort (79)

Message par Shadok »

Bonjour 8) ,

Je te remercie de t'être donné tout ce mal...

... et je craignais au final un truc de ce genre :twisted: .

Bon ben kan faut y aller faut y aller le fonds de l'air est frais et toutes ces sortes de choses et je crois que j'ai de quoi faire pour les longues soirées d'hiver :mrgreen: ... Je vais voir si ça marche et si c'est long ou pas, j'ai environ 12 000 fichiers (heureusement, tous n'ont pas de signets ! Mais bon, beaucoup en ont, kan même...)... et
version 2.4.x sous Linux Mandriva 2008.1

version 3.0.x sous Windows XP
Avatar de l’utilisateur
Hagar Delest
SuppOOrter
SuppOOrter
Messages : 1467
Inscription : 01 févr. 2006 08:12

Message par Hagar Delest »

Il y aurait peut-être un truc à faire : modifier la macro que je t'ai signalée pour automatiser tout ça.

Elle ferait alors ce genre de choses (si tous tes signets sont sans texte associé) :
- Aller au prochain signet (avec le curseur)
- Récupérer son nom
- Supprimer ce signet
- Créer un signet avec ce nom
- Sauvegarder (éventuellement)
- Recommencer la procédure jusqu'à la fin du doc.

Ca peut valoir le coup d'étudier un peu les macros car si ça marche, un seul clic sera alors suffisant pour chaque doc.

NB: c'est moi qui ai modifié la macro Reference Manager donc si tu as des questions, n'hésite pas.
Désormais sur le forum anglophone avec une version Sun sur une xubuntu (maison) et Windows (boulot).