Publication

Amaya

## Enregistrer et publier des documents

Amaya permet d'enregistrer les documents (X)HTML soit en format d'origine, soit en format texte. Les documents MathML, SVG, XML, CSS sont sauvegardés dans leur format d'origine.

Les sauvegardes distantes et locales peuvent être effectuées par les trois commandes Enregistrer, Enregistrer sous et Enregistrer tout.

Il existe un certain nombre d'options de configuration que vous pouvez changer par l'intermédiaire du menu de configuration.

Amaya ne fournit pas de vue d'ensemble de pages installées sur un serveur. Cependant il est possible d'enregistrer les fichiers d'un serveur comme si vous enregistriez des fichiers locaux, en utilisant les commandes Enregistrer et Enregistrer sous.

Pendant ces opérations, Amaya peut aussi enregistrer les ressources associées au document (images, feuilles de style, scripts).

### La commande Enregistrer

La commande Enregistrer peut être invoquée soit en choisissant Enregistrer depuis le menu Fichier (`Ctrl-s`) soit en cliquant sur le bouton .

Vous pouvez charger un document du web en spécifiant uniquement un nom de répertoire du serveur et omettant le nom de fichier par défaut (index.html ou Overview.html). Ceci est très utile quand on navigue, mais le nom du fichier est nécessaire pour la publication.

Normalement Amaya utilise l'en-tête HTTP `Content-Location` fournie par le serveur lors du chargement du document. Si le nom du fichier n'est pas fourni dans l'en-tête HTTP, Amaya demande de lui en fournir un lors de la sauvegarde.

Les ressources nouvellement ajoutées sont sauvées dans le même répertoire que celui du document. La liste des fichiers sauvés est proposée à l'utilisateur pour qu'il puisse retirer certains fichier.

Si vous voulez enregistrer des images nouvellement ajoutées dans un autre endroit que le document lui-même, utilisez la commande Enregistrer sous.

### Mise à jour d'un site web

Vous pouvez utiliser Amaya pour mettre à jour votre site web, même si le serveur ne supporte pas les méthodes HTTP Put et WebDAV. Quand l'édition du document distant est finie, vous utilisez la commande usuelle Enregistrer.

Quand la commande échoue, Amaya propose de garder une copie locale du document édité avec la même hiérarchie que celle du serveur. Si plusieurs documents du même site sont édités, ils seront enregistrés avec les même positions relatives.

Une fois l'édition Amaya terminée, vous pouvez mettre à jour votre site web en transférant les copies locales, telles quelles, sur le serveur avec votre méthode habituelle (ftp ou téléchargement).

### La commande Enregistrer tout

La commande Enregistrer tout vous permet de sauvegarder d'un coup tous les documents ouverts dans Amaya que vous avez modifiés mais pas encore sauvés. Elle fonctionne comme la commande Enregistrer, mais pour tous ces documents au lieu du seul document courant.

Cette commande peut être appelée par le menu Fichier ou par le bouton de la barre des boutons.

### La commande Enregistrer sous

Le fait de sélectionner l'entrée Enregistrer sous dans le menu Fichier ouvre une boîte de dialogue qui vous permet d'enregistrer le document courant en changeant le format et à une adresse différente.

Vous pouvez :

- enregistrer le document seule ou avec ses ressources (images, objets, style, scripts) sur un disque local ou un serveur web distant
- les images et les objets inclus peuvent être sauvés dans le répertoire du document ou à une adresse différente
- le style (y compris les feuilles de style et les images importées) et les scripts liés au document peuvent être sauvés dans le répertoire du document ou à une adresse différente
- toutes les URIs du document peuvent être mis à jour pour tenir compte de la nouvelles adresse du document et de ses ressources associées.

La boîte de dialogue comporte deux onglets et deux boutons. Le premier onglet permet de choisir les options pour le document lui-même, le deuxième les options pour les ressources associées (images, feuilles de style, scripts, etc.).

L'onglet Document contient :

- Le champ Adresse du document indique l'adresse où le document doit être sauvé. Ce peut être dans le système du fichier local (par exemple "/pub/html/welcome.html") ou un URI distant (par exemple "http://www.w3.org/pub/Welcome.html").

  Notez que vous devez donner le chemin complet. Vous devrez également vous assurer que vous avez le droit d'exécuter une méthode PUT dans le cas d'une URI. Regardez la page configurez votre serveur pour permettre la méthode PUT ou demandez à votre administrateur Web.

- Le menu Format de document propose le choix entre HTML, XML (XHTML) et Texte pour les documents HTML. Ce menu n'est pas proposé quand on sauve un document SVG, MathML, CSS ou tout autre type que (X)HTML. Par défaut Amaya conserve le format d'origine du document.

  Le format Texte (voir plus bas) supprime les balises HTML et produit du texte pur.

- Le menu Options :
  - Le choix Transformer les URLs transforme toutes les URIs courantes en URIs relatives quand c'est possible. Bien sûr, si le document est sauvé dans un fichier local et si les URIs pointent sur des fichiers distants, les URIs resteront absolues. Ceci assure que tous les liens dans le document soient préservés par la copie.

    Si vous sauvez le document localement pour le publier ensuite par ftp parce que votre fournisseur d'accès ou votre Webmaster ne vous permet pas d'utiliser la méthode HTTP Put, vous devez désactiver cette option pour ne pas altérer les liens calculés quand le document était sur le serveur http.

  - Le choix Copier les Images indique que les images et objets inclus dans le document doivent être copiés avec le document à une nouvelle adresse. Vous devez garder ce bouton actif, quand vous voulez engendrer une copie complète du document.

    Quand les images et les objets sont copiés, Amaya met à jour automatiquement tous les attributs src et data pour pointer vers les nouvelles adresses. Les nouvelles adresses sont des URIs relatifs.

  - Le choix Copier les ressources (styles, scripts, ...) indique que les feuilles de style (y compris les feuilles de style et les images importées) et les scripts inclus dans le document doivent être copiés avec le document à une nouvelle adresse. Vous devez garder ce bouton actif, quand vous voulez engendrer une copie complète du document.

    Quand ces ressources sont copiées, Amaya met à jour automatiquement tous les liens et processing instructions pour pointer vers les nouvelles adresses. Les nouvelles adresses sont des URIs relatifs.

- Le champ Charset permet de choisir l'encodage du document parmi la liste des encodages disponibles. Notez que cette option n'est offerte que pour les documents supportant la notion d'encodage, tels que les fichiers HTML ou XML. Cette option est valable pour la sauvegarde locale et distante d'un document.

  Très souvent le charset des documents web est contrôlé par le serveur. Il dépend soit du suffixe du document (html, xml, xhtml, svg, mml), soit des instructions données dans le fichier `.htaccess`.

- Le champ Mime Type permet de changer le type MIME d'un document lors d'une sauvegarde sur un serveur web distant. En activant ce bouton, un menu apparaît vous proposant un certain nombre de types MIME. Vous pouvez également saisir un type MIME différent de ceux qui sont proposés.

L'onglet Images, style et scripts contient :

- Le champ Où enregistrer les images vous permet de donner le répertoire où les images et les objets doivent être sauvés. Ce répertoire peut être sur un serveur web distant. Quand l'option Copier les Images est sélectionnée, ce champ est initialisé avec le nom du répertoire du document sauvé.
- Le champ Où enregistrer les ressources vous permet de donner le répertoire où les styles et scripts doivent être sauvés. Ce répertoire peut être sur un serveur web distant. Quand l'option Copier les ressources (styles et scripts) est sélectionnée, ce champ est initialisé avec le nom du répertoire du document sauvé.

Cette boîte de dialogue contient deux boutons :

- Le fait de cliquer sur Enregistrer débute le processus d'enregistrement du document. Si vous avez choisi de sauvegarder également d'autres ressources, une liste de ces ressources s'affiche et vous pouvez en retirer certaines, qui ne seront pas enregistrées.

  Pour enregistrer à distance, vérifiez que le proxy http n'est pas mis, ou que le serveur proxy et le serveur cible sont configurés pour travailler avec la méthode PUT.

- Le bouton Annuler arrête la commande.

### Enregistrement et encodage de caractères (charset)

Trois encodages standard sont considérés :

- `us-ascii` est un code 7-bit qui représente les 96 caractères imprimables (positions 32 à 127 en décimal).
- `iso-8859-1` est un code 8-bit qui représente les mêmes caractères `us-ascii`, aux mêmes positions, plus 95 autres caractères imprimables.
- `utf-8` est un encodage de longueur variable pour un jeu de caractères universel (Universal Character Set - UCS ou ISO10646). UCS représente des milliers de caractères. A noter que les 96 premiers caractères ont la même position dans UCS que dans `us-ascii` (et aussi dans `iso-8859-1`).

Si un document XML ou HTML contient un caractère non disponible dans le jeu de caractères (charset) fourni avec l'encodage, une représentation est nécessaire. XML offre deux telles représentations des caractères :

1. Une référence caractère représente la position (en décimal ou hexadécimal) du caractère dans UCS. Par exemple, la lettre grecque α (alpha) est représentée comme `&#x3b1;` (hexadécimal) ou `&#945;` (décimal)
2. Une référence entité utilise un nom pour représenter un contenu (dans ce cas un caractère). Par exemple la lettre grecque α est représentée comme `&alpha;`

Les références caractère peuvent être utilisées dans n'importe quel document XML ou HTML, mais les références entité sont autorisées seulement dans un document si lui-même contient un moyen de résoudre ces références.

La résolution des références entité est fournie par la définition du type qui se réfère à une DTD où les noms et les contenus associés sont définis. Pratiquement. cela signifie que vous pouvez utiliser des références entité seulement si `le <!DOCTYPE ...>` est présent et référence une DTD qui définit les noms utilisés.

Par défaut, Amaya préserve l'encodage initial du document, c'est l'encodage associé au document au chargement. Vous pouvez vérifier cet encodage avec la commande Affichage/Info document (champ Codage). Les commandes Enregistrer et Enregistrer tout sauvent le document avec cet encodage, tandis que la commande Enregistrer sous vous permet de choisir un autre encodage (champ Charset).

Quand un document est sauvé (commandes Enregistrer, Enregistrer tout ou Enregistrer sous) tous les caractères qui sont disponibles dans le jeu de caractères de l'encodage sont simplement écrits en utilisant cet encodage. Seules les autres caractères sont écrits en utilisant les références caractère ou entité. Le choix entre ces deux options est fait en accord avec le `doctype`. S'il y a un `doctype` qui référence une DTD qui définit un nom pour le caractère, une référence entité est utilisée (c'est-à-dire un nom), sinon Amaya engendre une référence caractère en hexadécimal.

Note : la commande Outils/Changer le doctype vous permet d'associer, de changer ou retirer le `doctype` à tout moment. Ceci vous permet de faire engendrer par Amaya soit des références caractère soit des références entité.

### Sauver le texte du document

La commande Enregistrer sous du menu Fichier visualise une boîte de dialogue permettant de sauver le document courant dans des formats différents. Le bouton Texte du menu Format de document sauve le document sous forme de texte. Les balises HTML sont remplacées par des espaces, sauts de lignes, etc. La liste de toutes les URIs utilisées dans le document est ajoutée à la fin de ce fichier.