Introduction
Les versions plus récentes d'Arachnophilia (5.3 et plus récentes) représentent un de ces points de départ dans l'histoire de ce programme, points à partir desquels il est nécessaire de prendre un nouveau départ. Plus précisément, les modifications apportées à cette version sont si importantes — y compris une réécriture de la plupart des macros et de la documentation — qu'il est nécessaire de supprimer le répertoire utilisateur d'Arachnophilia pour tirer pleinement parti des modifications.
Pour effectuer cette modification, veuillez lire ces instructions, puis :
- Quitter Arachnophilia
- Supprimer le répertoire /home/benutzer/.Arachnophilia
- Relancer Arachnophilia
Après avoir suivi ces étapes, l'utilisateur verra une réinstallation des fichiers utilisateur d'Arachnophilia — c'est un signe que la suppression a été effectuée avec succès. Soit dit en passant, c'est la bonne approche pour traiter les problèmes qui semblent insurmontables : pour surmonter les différents problèmes qui pourraient survenir, supprimez simplement /home/benutzer/.Arachnophilia et relancez Arachnophilia.
Arachnophilia 5.3 représente un grand changement et comporte de nombreuses nouvelles fonctionnalités. Trois ans se sont écoulés depuis la dernière mise à jour majeure de ce programme, suffisamment de temps pour dresser une liste des améliorations souhaitées. Cette page explique les nouveautés.
XHTML
Depuis Arachnophilia version 5.3, Arachnophilia est devenu un atelier XHTML.
Une nouvelle version de HTML est apparue, nommée "XHTML", qui présente tellement d'avantages par rapport au HTML qu'Arachnophilia a été complètement retravaillée pour en tirer parti. Ailleurs dans ces directions, ainsi que dans les menus et les invites d'Arachnophilia, le terme HTML apparaît, mais rappelez-vous qu'il s'agit simplement d'une commodité syntaxique : il fait référence à XHTML.
Les difficultés antérieures d'Arachnophilia liées à l'embellissement et au formatage HTML, ainsi qu'à l'analyse des pages Web à la recherche d'erreurs de balises, ont été corrigées dans cette version. Dans les versions précédentes d'Arachnophilia, certaines fonctionnalités ont dû être abandonnées car elles ne pouvaient pas coexister avec les ambiguïtés et incohérences internes du HTML pur. Dans la nouvelle version d'Arachnophilia, le meilleur de ces fonctionnalités a été restauré. Plus précisément, HTML Beautify fonctionne désormais de manière fiable et HTML Validate, un outil permettant de rechercher et de corriger les erreurs structurelles, une fonctionnalité inédite depuis Arachnophilia 4.0, est de retour et fonctionne très bien.
XHTML est cohérent en interne d'une manière que HTML ne peut pas l'être, et il simplifie grandement la tâche de conception et de maintenance des pages Web. Arachnophilia est désormais structuré autour de XHTML et peut vous aider à convertir vos pages HTML en XHTML.
Si votre site contient des pages HMTL et que vous ne souhaitez pas les convertir, certaines fonctionnalités d'Arachnophilia ne fonctionneront pas pour vous, en particulier les fonctionnalités "HTML Beautify" et "HTML Validate" se comporteront probablement mal. Si vous décidez de passer à XHTML, je vous propose ces commentaires :
- En XHTML, il n'y a aucune ambiguïté sur les balises. Une balise particulière apparaît toujours de la même manière, il n'y a aucune latitude quant à la manière dont une balise peut être utilisée.
- Toutes les balises XHTML sont soit des paires <like> </this>, soit des balises simples à fermeture automatique <like this/>. Il n'y a qu'une seule exception (la balise DOCTYPE en haut d'une page).
- Les versions précédentes d'Arachnophilia contenaient des définitions et des pratiques de balises « détendue » (lire : fausses), en particulier l'absence de balises de fermeture </li> et </option>. Ces erreurs ont été corrigées.
- Contrairement à ce que le lecteur peut croire, en partie à cause de la syntaxe assouplie du HTML et en partie à cause de mes erreurs dans les versions antérieures d'Arachnophilia, la balise "img" se ferme automatiquement : <img src="path" />. Il en va de même pour les balises <input />, <meta /> et une douzaine d'autres. Et certaines balises que je croyais orphelines sont en fait censées avoir des balises de fermeture associées, par exemple <li></li> et <option></option>.
- Pour conclure cette liste, je souhaite reformuler l'idée de base : toutes les balises XHTML se répartissent en deux catégories :
- Balises simples à fermeture automatique <comme celle-ci/>.
- Balises appariées <like> </this>.
Il n'y a qu'une seule exception : la balise <!DOCTYPE ... > qui apparaît au début de chaque page HTML ou XHTML est une bizarrerie qui ne correspond pas au modèle strict.
N'oubliez pas que ce changement est en place. Si vous utilisez les nouveaux HTML Beautify ou HTML validate et qu'ils ne fonctionnent pas comme prévu, ce sera à cause de balises de page qui ne respectent pas cette syntaxe XHTML stricte.
Conversion en XHTML
Étant donné qu'Arachnophilia prend en charge les expressions régulières et peut les appliquer à plusieurs pages à la fois, il devrait être relativement facile de convertir un ensemble de pages Web de HTML en XHTML en convertissant les balises
en masse. Ce type de tâche est mieux réalisé avec un script dédié appliqué simultanément à l'ensemble d'un site Web, mais pour quelques pages, la capacité d'automatisation et de création de macros d'Arachnophilia devrait la rendre relativement simple.
Arachnophilia utilise désormais les conventions XHTML, mais cela ne garantit pas que vos pages passeront la validation XHTML. Un exemple d'erreur consiste à placer des balises de formatage en dehors des éléments de bloc, comme ceci :
contenu du texte
Arachnophilia vous permettra de le faire, et son validateur HTML ne se plaindra pas (car les balises sont correctement imbriquées), mais la page échouera à la validation XHTML en ligne. Le bon format est :
contenu du texte
Une autre erreur courante consiste à disposer les balises d'une manière qui semble logique, mais qui est erronée :
<i><b>mon texte</i></b>
La forme correcte :
mon texte
Le validateur HTML d'Arachnophilia détectera cette classe d'erreurs et vous aidera à les corriger, car il vérifie le bon séquençage des balises.
Unicode
Prise en charge d'Unicode
Modifications supplémentaires
Aller à la balise opposée
Il y a une nouvelle fonctionnalité dans les versions récentes d’Arachnophilia, ajoutée à la demande générale. Vous pouvez désormais passer d'une balise HTML à sa partenaire en appuyant simplement sur une touche (Alt-J, élément de menu "HTML ... Passer à la balise opposée"). Si la balise se trouve à l’extrémité d’un document volumineux, cette fonctionnalité vous y mènera. Si la balise partenaire ne se trouve qu'à quelques caractères sur la même ligne, cette fonctionnalité placera le curseur d'édition immédiatement à gauche de la balise partenaire. Si vous appuyez plusieurs fois sur Alt-J, le curseur d'édition passe d'un partenaire à l'autre.
Cette fonctionnalité est utile pour résoudre les problèmes de syntaxe qui ne produisent pas nécessairement un message d'erreur dans HMTL Beautify ou HTML Validate, ou pour comprendre la structure d'un document en parcourant sa hiérarchie de balises.
Améliorations de l'affichage/Anticrénelage
Les routines d'affichage d'Arachnophilia ont été recodées pour utiliser l'anticrénelage, une technique de lissage des polices. Sur la plupart des systèmes, cette modification améliore considérablement l'apparence des fenêtres d'édition et de certains autres affichages.
Mais sur certains systèmes, cette fonctionnalité de lissage des polices peut ne pas fonctionner comme prévu. Si la fonction d'anticrénelage pose des problèmes sur votre système, vous pouvez la désactiver. Cliquez simplement sur l'élément de menu "Texte... AntiAliasing activé/désactivé".
Embellissement HTML, validation HTML
HTML Validate est une nouvelle fonctionnalité (il existait une forme antérieure de cette fonctionnalité dans Arachnophilia 4.0) qui affiche et aide à corriger de manière interactive les erreurs de syntaxe des pages. Comme toutes les nouvelles fonctionnalités d’Arachnophilia, celle-ci suit strictement les règles de syntaxe XHTML. Une boîte de dialogue apparaît, vous permettant de cliquer sur des messages d'erreur spécifiques, et le programme répond en sautant d'un emplacement de balise à l'autre qui ne correspondent pas.
HTML Beautify est plus poli que dans les versions précédentes. En plus de suivre les règles XHTML dans son comportement, il n'essaie pas de forcer chaque balise sur une ligne distincte comme dans les versions précédentes, ce qui s'est avéré être une erreur. La nouvelle version produit une liste claire et lisible qui ne modifie pas l'apparence affichée des pages qu'elle embellit. Si vous souhaitez une liste plus lisible et que vous avez plusieurs balises par ligne dans vos pages, vous pouvez séparer les balises manuellement en fonction de vos besoins.
HTML Beautify et HTML Validate fonctionnent mieux lorsque les documents traités contiennent une syntaxe de balise XHTML valide.
Problèmes XHTML
Les routines internes d'Arachnophilia ont été retravaillées pour bien prendre en compte les règles XHTML, notamment la fourniture d'une balise de fermeture </li>, une erreur de longue date.
J'ai créé un nouvel ajout à Arachnophilia après avoir essayé de valider mes pages à l'aide d'un validateur XHTML en ligne. Il s'avère que (a) contrairement à ce que je pensais à tort, il y a une balise de fermeture </li>, (b) l'emplacement de cette balise de fermeture est déterministe — il n'y a aucune latitude quant à son emplacement, et (c) déterminer cet emplacement à l'oeil dépasse les compétences dérisoires du simple mortel.
J'ai répondu à ce besoin en écrivant une nouvelle fonctionnalité qui commence par supprimer toutes les balises </li> du document, puis procède à leur localisation correcte. C’est assez fiable et évite bien des frustrations. La nouvelle fonction s'appelle "[ReplaceLiTags]" et elle est disponible dans le menu "HTML ... Plus de fonctions". Ce n'est qu'après avoir écrit la première version de cette routine que j'ai pu automatiser partiellement la conversion de mes pages du HTML (mon plutôt bâclé) vers le XHTML.
Je dois ajouter (et si je ne le fais pas, un de mes lecteurs me fera l'affaire) qu'une balise dont le placement est totalement déterministe ne sert à rien. La balise d'ouverture <li> identifie une ligne qui doit être mise à puce d'une manière ou d'une autre, et son partenaire de fermeture doit exister. Comme je l'ai dit, il n'y a aucune latitude quant à l'emplacement de la balise de fermeture. La preuve en est que je peux automatiser le placement de la balise de fermeture, quelle que soit la taille ou la complexité du document, et s'il y a une différence entre le placement de la balise par l'algorithme et celui d'un humain, cela ne peut que signifier que l'humain a fait une erreur.
Si l'utilisateur rencontre une erreur de syntaxe lors de l'utilisation de HTML Validate impliquant des balises <li> ...</li>, "[ReplaceLiTags]" doit être le premier remède appliqué.
Suivi des modifications de fichiers
Arachnophilia suit désormais les modifications apportées au fichier disque de chaque document ouvert, et si le fichier disque est modifié par un autre programme pendant que l'édition est en cours, une fois qu'Arachnophilia aura à nouveau attiré l'attention de l'utilisateur (techniquement, « focus »), il alertera l'utilisateur et lui fournira une liste de choix.
Problèmes d'affichage
L'affichage, quelque peu gênant, comporte tout de même deux modes distincts (coloration syntaxique sans retour à la ligne, et retour à la ligne sans coloration syntaxique). L'affichage est inchangé sauf qu'il est meilleur grâce à l'antialiasing. Cette double personnalité pourrait changer à l'avenir, mais pour qu'elle change, j'ai réalisé que je devrais abandonner toute la base de code et recommencer, ce que je ne suis pas enclin à faire pour le moment.
Autres modifications
Un type de fichier CSS a été ajouté, en raison de l'importance croissante des feuilles de style en cascade dans la conception des pages. Les fonctionnalités de coloration de la syntaxe et d'embellissement du code fonctionnent avec ce nouveau type de fichier.
Certains fichiers de configuration internes ont désormais disparu. En particulier, un ensemble de fichiers de configuration chargés de répertorier les variantes de balises et les exceptions a disparu, car de telles choses n'existent pas en XHTML.
J'ai corrigé une série de bugs petits mais ennuyeux que j'ai suivis au cours des dernières années, trop nombreux pour être répertoriés ici.
J'espère que vous apprécierez cette nouvelle version d'Arachnophilia !