HandCoder : extension Nvu pour Tidy et PHP

Le premier forum francophone sur l'éditeur de pages Web multiplateforme (Linux, Mac OS X, Windows) qui monte… KompoZer, héritier de Nvu, permet de créer vos pages Web graphiquement (wysiwyg) sans aucune connaissance du langage HTML.

Modérateur : chinon37

Do-IT
Iguane
Messages : 537
Inscription : 03 juil. 2005, 09:46

Message par Do-IT »

Kaze a écrit :La beta du jour : HandCoder-b20060313 Wordpad accepte désormais de sauvegarder un fichier "tordu".
Je crois que je vais devoir garder les deux nouvelles préférences dans HandCoder, je ferai la localisation pour la prochaine version.
Wordpad oui, mais la poisse me poursuit. Avec crimson ca marche toujours pas. Tu as fais quoi ?
Mais comme je suis perceverant :) => Le fait de passer d'un fichier actif a un autre dans nvu (ouverture d'un autre fichier ou basculement d'un onglet) ou un simple affichage de l'onglet source du fichier actif => l'enregistrement devient possible dans l'editeur externe. (c'est trop louche)

La 2eme preference n'est pas exclusif avec la 1ere ? ou inversement ? Pourquoi garder les deux series d'extension de fichier ? Tu as oublié volontairement les templates ?
Redhat, CentOs, Mandriva, Ubuntu au boulot. Ubuntu à la maison. Vista et Xp grâce à la vente liée.
Soutenir KompoZer
Kazé
Varan
Messages : 1743
Inscription : 10 févr. 2005, 10:26

Message par Kazé »

Do-IT a écrit :Wordpad oui, mais la poisse me poursuit. Avec crimson ca marche toujours pas. Tu as fais quoi ?
J'aurais voulu le faire exprès ce coup-là... J'ai modifié la façon dont le gestionnaire de sites se met en attente, mais ça ne suffit pas.

J'ai constaté le problème sur mon poste XP avec WordPad. Vu ce que tu écris, je pense que c'est lié au fait que HandCoder analyse le contenu du fichier à éditer : si cette analyse est "trop" rapide, au moment où HandCoder envoie le fichier à l'éditeur texte, le fichier peut être considéré par Windaube comme étant encore en cours de lecture par Nvu.
Je pense que le problème se pose avec Crimson parce qu'il est beaucoup plus rapide à lancer que WordPad (enfin bon, je n'en sais rien, je ne l'ai toujours pas installé, mais il pèse beaucoup moins lourd en mémoire).

La seule solution valable, c'est d'afficher une boite de dialogue ("ce fichier ne peut pas être édité avec Nvu") avant de lancer l'éditeur texte. Ca devrait marcher à 100%, je mettrai ça dans la beta de demain.
Do-IT a écrit :La 2eme preference n'est pas exclusif avec la 1ere ? ou inversement ? Pourquoi garder les deux series d'extension de fichier ?
  1. document HTML :arrow: édition avec Nvu :
    • les fichiers *.html, *.shtml, *.xhtml sont ouverts directement dans Nvu ;
    • pour les autres fichiers, examen du code :
      • page PHP ou fragment :arrow: création d'un fichier temporaire et édition avec Nvu
      • code non éditable :arrow: (alerte +) lancement de l'éditeur texte (cas "tordu", relativement rare)
  2. fichier texte :arrow: ouverture avec l'éditeur texte (et peut-être un jour, ouverture dans un onglet "texte" de Nvu)
  3. image :arrow: insertion dans le document
  4. autre type de fichier :arrow: action par défaut du système
Nvu ne connait que les types HTML et Image ; HandCoder élargit la notion de document HTML aux pages PHP et fragments, et définit le type "texte".

Ou pourrait éventuellement supprimer ce type "texte" de HandCoder, et laisser l'OS ouvrir tous les fichiers qui ne sont ni des images, ni des documents HTML. Là, grâce à ce type "texte", on peut distinguer les fichiers éditables en texte des autres (mp3, mpeg, pdf, ...). Tu peux double-cliquer sur n'importe quel fichier du gestionnaire de sites, HandCoder l'ouvre avec une application appropriée, sans planter.

NsmConText ajoute encore les types CSS et Média, et partagera avec HandCoder une branche de préférences.
Do-IT a écrit :Tu as oublié volontairement les templates ?
Je préfère ne plus parler de template, pour ne pas entretenir la confusion avec les modèles de Nvu.
Si un fichier PHP se présente sous la forme d'une page HTML avec du PHP dedans (et éventuellement un prologue PHP avant le DOCTYPE), c'est nécessairement un template PHP, c'est-à-dire un script PHP qui génère une page complète. Si la page PHP ne contient pas de prologue, HandCoder rajoute un prologue bidon.

En clair, j'ai ajouté "tpl" comme extension possible de "Document HTML". Je préfère que chaque utilisateur fasse le choix des extensions qu'il considère comme éditable avec Nvu.
KompoZer lead dev
Ubuntu 10.04 Lucid Lynx — « L'erreur est humaine, mais vraiment foutre la merde nécessite le mot de passe root. »
Do-IT
Iguane
Messages : 537
Inscription : 03 juil. 2005, 09:46

Message par Do-IT »

Kaze a écrit :le fichier peut être considéré par Windaube comme étant encore en cours de lecture par Nvu.
La seule solution valable, c'est d'afficher une boite de dialogue ("ce fichier ne peut pas être édité avec Nvu")
Ca explique pas pourquoi un fichier non enregistrable dans l'editeur externe le devient suite a une autre action dans nvu (qui n'a aucun rapport avec le fichier en cours d'edition externe).

1. Ouverture d'un fichier tordu avec nvu => Ouverture automatique de l'editeur externe
2. Enregistrement impossible dans l'editeur externe
3. Action dans nvu (ex affichage source)
4. Enregistrement possible dans l'editeur externe.

Le fait de ralentir l'ouverture de l'editeur externe va regler le probleme ?
Redhat, CentOs, Mandriva, Ubuntu au boulot. Ubuntu à la maison. Vista et Xp grâce à la vente liée.
Soutenir KompoZer
Kazé
Varan
Messages : 1743
Inscription : 10 févr. 2005, 10:26

Message par Kazé »

La beta du jour : HandCoder-b20060314
Ajout d'une alerte pour les fichiers tordus + localisation des nouvelles préférences.
Do-IT a écrit :Le fait de ralentir l'ouverture de l'editeur externe va regler le probleme ?
Je crois que oui. En tout cas ça résoud le problème avec Crimson.

En parlant de cet éditeur : il est pas mal (il me rappelle ConTEXT et Notepad++), mais il ne fait ni pliage de code, ni auto-complétion ? Il est en anglais chez moi, l'interface n'est pas localisable (ça fait pas fuir les anglophobes) ?
De toutes façons, sapusépalibre :twisted: (et pas dispo sous Linux).
KompoZer lead dev
Ubuntu 10.04 Lucid Lynx — « L'erreur est humaine, mais vraiment foutre la merde nécessite le mot de passe root. »
Do-IT
Iguane
Messages : 537
Inscription : 03 juil. 2005, 09:46

Message par Do-IT »

Kaze a écrit :De toutes façons, sapusépalibre :twisted:
C'est pour ca que je viens d'installer notepad++ (v3.5). Avec toutes les bons morceaux dedans dont tu parles. A priori il ne souffre pas du bug (avec la beta d'il y a deux jours). Crimson a l'air sympathique (plus que scite), mais si un autre fait plus l'affaire, ....
Avant qu'on me coupe le courant pour la matinée, je voulais te suggerer une option (cachée ?) pour la fenetre d'alerte (de fichier tordu).

Bon je dl la derniere beta.
Redhat, CentOs, Mandriva, Ubuntu au boulot. Ubuntu à la maison. Vista et Xp grâce à la vente liée.
Soutenir KompoZer
JujuLand
Lézard à collerette
Messages : 378
Inscription : 21 juil. 2004, 19:24

Message par JujuLand »

Et en plus, il fait un pliage autoritaire à 4096 caractères ce qui est parfois génant (lignes en javascript dans macros.cfg de K-Meleon ...

Au fait, puisque je te tiens, j'ai réussi à localiser les quelques extensions xul que K-Meleon utilise, je l'ai fait de manière intuitive, sans trop comprendre certaines subtilités, mais bon, ça fonctionne.

Pour les chromes Gecko, il suffisait simplement de prendre les bonnes sources, je ne m'étais pas aperçu (lunettes à changer ? :shock:) que les chromes Firefox et Mozilla n'étaient pas les mêmes.

Donc pour conclure sur ce point, pour K-Meleon, la localisation des chromes est assez simple, il suffit de modifier le installed-chrome.txt (remplacer les en-US et US par ce qui va bien, et surtout de supprimer les fichiers et répertoires suivants:

chrome\chrome.rdf
chrome\overlauinfo
profiles\<profile>\*.xlt\xul.mfl
profiles\<profile>\*.xlt\chrome\xul.mfl

Par contre, je ne te cacherai pas que pour Nvu et le reste de la galaxie Mozilla, je ne me suis pas penché sur le problème, et ne pourrai pas beaucoup t'aider.

A+
Kazé
Varan
Messages : 1743
Inscription : 10 févr. 2005, 10:26

Message par Kazé »

JujuLand is back !
JujuLand a écrit :Au fait, puisque je te tiens, j'ai réussi à localiser les quelques extensions xul que K-Meleon utilise, je l'ai fait de manière intuitive, sans trop comprendre certaines subtilités, mais bon, ça fonctionne.
[...]
Par contre, je ne te cacherai pas que pour Nvu et le reste de la galaxie Mozilla, je ne me suis pas penché sur le problème, et ne pourrai pas beaucoup t'aider.
J'avais complètement zappé K-Meleon. :oops:
J'ai cru un moment que j'avais compris quelque chose aux localisations, mais nada, niet, zilch, ça ne marche pas. KaZcadeS fonctionne à peu près en multilingue, mais plante si on l'utilise sur une version de Nvu dont la langue n'est pas incluse. Le pire, c'est que je n'arrive pas à le refaire sur HandCoder, ça reste en anglais pour tous les postes. Ca m'énerfff !!!

J'ai réussi à me faire un Nvu multilingue avec des bricolages comparables aux tiens, mais tant que Locales-Switcher n'est pas installé, ça fonctionne de travers. Je vais télécharger les versions US et FR de K-Meleon pour faire un diff et voir tes modifs de plus près, ça va peut-être m'aider...
KompoZer lead dev
Ubuntu 10.04 Lucid Lynx — « L'erreur est humaine, mais vraiment foutre la merde nécessite le mot de passe root. »
JujuLand
Lézard à collerette
Messages : 378
Inscription : 21 juil. 2004, 19:24

Message par JujuLand »

J'ai réussi à me faire un Nvu multilingue avec des bricolages comparables aux tiens, mais tant que Locales-Switcher n'est pas installé, ça fonctionne de travers. Je vais télécharger les versions US et FR de K-Meleon pour faire un diff et voir tes modifs de plus près, ça va peut-être m'aider...
Attention, la version française dispo en téléchargement est la Fr4 qui utilise en-US traduit, donc mauvais exemple.

En fait, pour K-Meleon, tout se situe dans le installed-chrome.txt. Il n'y a aucun mécanisme plus ou moins bien planqués dans les jar et dans l'exe pour faire ça, donc, tu n'y verras pas grand chose.

Simplement, j'ai enfin trouvé les bonnes sources pour récupérer des chromes locales, et un petite modif des fichiers et une suppression d'autres, suffit à changer la langue. On pourrait même imaginer la possibilité de changer la langue depuis les menus K-Meleon. Mais je commence par une install multi-langue, on verra pour la suite.

Rien à voir avec une détection automatique de la langue comme le font Thunderbird, Firefox ou Nvu. (et encore le font-ils ??)

A+
Do-IT
Iguane
Messages : 537
Inscription : 03 juil. 2005, 09:46

Message par Do-IT »

"y'a encore un bug"
nvu > ouverture d'un fragment php (ok)
ouverture d'un autre fichier (n'importe quel type sauf tordu) > onglet du 1er fichier ecrasé (mais pas mort car impossible de le réouvrir)
Redhat, CentOs, Mandriva, Ubuntu au boulot. Ubuntu à la maison. Vista et Xp grâce à la vente liée.
Soutenir KompoZer
Kazé
Varan
Messages : 1743
Inscription : 10 févr. 2005, 10:26

Message par Kazé »

Vu. Se produit également avec des fichiers HTML dont le <body> est vide.
Si on ajoute un <br /> en fin de fragment ça retombe en marche.
Mais je pense qu'il vaudrait mieux ouvrir les fragments 100% PHP dans l'éditeur texte...

Un autre bug : ouvrir un fragment, passer en source, ajouter quelque part

Code : Tout sélectionner

echo("</body></html>")
:arrow: la page est perdue, Nvu ne va pas tarder à planter.
KompoZer lead dev
Ubuntu 10.04 Lucid Lynx — « L'erreur est humaine, mais vraiment foutre la merde nécessite le mot de passe root. »
Do-IT
Iguane
Messages : 537
Inscription : 03 juil. 2005, 09:46

Message par Do-IT »

Kaze a écrit :Un autre bug : ouvrir un fragment, passer en source, ajouter quelque part

Code : Tout sélectionner

echo("</body></html>")
:arrow: la page est perdue, Nvu ne va pas tarder à planter.
C'est le mode super vicieux ca. D'autant qu'on avait dit que le source qui contient du php n'est pas editable avec nvu. Il y a une ou deux beta j'avais deja essayé de réinjecter du </body></html> via l'editeur externe (mode vicieux basic). De memoire j'ai meme du essayé via un insertion > code php.
Mais je pense qu'il vaudrait mieux ouvrir les fragments 100% PHP dans l'éditeur texte...
Je pense aussi, d'autant que la derniere version de notepad++ me plait.

Faut me le dire si je devient lourd a ce sujet. Mais est-ce qu'il y a une option caché dans nvu pour supprimer l'onglet source ? (en attendant tidy@Daniel ou ViewFormattedSource@kzspro)
Redhat, CentOs, Mandriva, Ubuntu au boulot. Ubuntu à la maison. Vista et Xp grâce à la vente liée.
Soutenir KompoZer
Kazé
Varan
Messages : 1743
Inscription : 10 févr. 2005, 10:26

Message par Kazé »

La beta du jour : HandCoder-b20060315
Les fichiers 100% PHP s'ouvrent dans l'éditeur texte, et l'onglet "Source" est plus robuste (les modifications en "Source" sont annulées si le code est considéré comme "tordu").

Concernant l'onglet "Source" : dès qu'on fait une modification dedans, l'indentation de tous les scripts, commentaires ou éléments <pre> est perdue (avec ou sans HandCoder). Je ne crois pas qu'on puisse corriger ça avec une extension, il faudrait pouvoir modifier le code de Nvu.
On pourrait utiliser aStyle pour réparer l'indentation des scripts, mais ça se payerait cher en performances et ça ne résoudrait pas le problème des <pre> (que j'utilise beaucoup pour mes documentations).
En clair, j'ai bricolé cet onglet "Source" pour qu'il affiche correctement les prologues et les fragments, mais on ne peut pas en espérer grand-chose de mieux ; je ne ferai plus d'autres bricolages dans cet onglet.
Donc, pour éviter de perdre les indentations dans les scripts, soit on ne fait aucune modification en "Source", soit on met tous les scripts dans des fichiers externes.

Pour la suite de HandCoder (après la release), je crois qu'il serait possible d'éditer des fichiers texte avec Nvu. Il suffirait :
  • d'inclure le fichier dans un <pre> (après avoir remplacé tous les "<" par < et ">" par >)
  • de griser le bouton "Navigateur" et toutes les fonctionnalités de mise en forme
  • de masquer les onglets "Normal", "Balises HTML", "Source", "Aperçu" et la barre d'état
  • d'enregistrer le contenu du <pre> (après avoir restauré les "<" et ">") pour sauvegarder le fichier
Ca permettrait d'avoir un équivalent Notepad (le pire éditeur texte du monde) dans un onglet de Nvu, et éventuellement de se passer d'éditeur externe pour éditer des fichiers "tordus" ou 100% PHP.
Do-IT a écrit :la derniere version de notepad++ me plait.
Normal, il utilise Scintilla comme éditeur de texte, comme SciTE ! :P
Maurice a écrit :Faut me le dire si je devient lourd a ce sujet. Mais est-ce qu'il y a une option caché dans nvu pour supprimer l'onglet source ? (en attendant tidy@Daniel ou kzspro)
Pfff, et moi qui viens de me casser le bol à bricoler cet onglet... :evil:
Sérieusement, j'aime bien l'idée. Il n'y a pas d'option cachée, donc le top serait une sélection :
  • afficher l'onglet "Source"
  • afficher l'onglet "Source" en lecture seule
  • masquer l'onglet "Source" (recommandé)
J'implémenterai ça pour une version ultérieure, et j'en profiterai pour revoir cette fenêtre de préférences que je trouve trop compliquée.
KompoZer lead dev
Ubuntu 10.04 Lucid Lynx — « L'erreur est humaine, mais vraiment foutre la merde nécessite le mot de passe root. »
Do-IT
Iguane
Messages : 537
Inscription : 03 juil. 2005, 09:46

Message par Do-IT »

C'est normal ce qui se passe quand on clique sur défaut pour les extensions ? Suppression de htm :( et ajout de xml
En plus nvu ouvre quand meme les extensions .htm
y'a quelque chose qui va pas dans ton filtre avec htmlnimportkoi ca ouvre les fichiers .htm

Parametres par défaut > [mode vicieux ON] > Ouverture d'un fichier test.x >

Code : Tout sélectionner

Erreur : text.match(reHasPI) has no properties
Fichier source : chrome://handcoder/content/HandCoder.js
Ligne : 684
J'implémenterai ça pour une version ultérieure
Et l'option pour desactivé le la fenetre d'alerte Ceci n'est pas un document HTML
Pfff, et moi qui viens de me casser le bol à bricoler cet ...
fenetre d'alerte, ...
Redhat, CentOs, Mandriva, Ubuntu au boulot. Ubuntu à la maison. Vista et Xp grâce à la vente liée.
Soutenir KompoZer
Kazé
Varan
Messages : 1743
Inscription : 10 févr. 2005, 10:26

Message par Kazé »

Do-IT a écrit :C'est normal ce qui se passe quand on clique sur défaut pour les extensions ? Suppression de htm :( et ajout de xml
Ah non, idéalement ça devrait garder la même liste d'extensions.
J'ai ajouté le *.htm pour les futurs ex-utilisateurs de DW et FP.
A corriger.
Do-IT a écrit :Parametres par défaut > [mode vicieux ON] > Ouverture d'un fichier test.x >

Code : Tout sélectionner

Erreur : text.match(reHasPI) has no properties
Fichier source : chrome://handcoder/content/HandCoder.js
Ligne : 684
C'est quoi le "mode vicieux" ? Ton fichier text.x il contient quoi ??
Je vais mater ça.
Et l'option pour desactivé le la fenetre d'alerte "Ceci n'est pas un document HTML"
J'ai oublié. AMHA cette fenêtre ne sert à rien pour la plupart des éditeurs texte, donc je vais plutôt la désactiver par défaut, et faire une option cachée pour l'activer.
KompoZer lead dev
Ubuntu 10.04 Lucid Lynx — « L'erreur est humaine, mais vraiment foutre la merde nécessite le mot de passe root. »
Do-IT
Iguane
Messages : 537
Inscription : 03 juil. 2005, 09:46

Message par Do-IT »

Un fichier html tout simple que j'ai renommé. J'aurai pu prendre .tpl mais j'ai choisi x car il y a un x dans les deux lignes des extensions. Certe pas un usage ni une logique normal.
Redhat, CentOs, Mandriva, Ubuntu au boulot. Ubuntu à la maison. Vista et Xp grâce à la vente liée.
Soutenir KompoZer
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Semrush [Bot] et 3 invités