Salut à tous,
M'étant récemment mis au scripting pour le 6pad++, je rencontre quelques
préoccupations que je voudrais vous soumettre.
1. j'ai une variable locale au module qui ne semble pas être reconnue dans le
corps d'une des fonctions.
l'erreur affichée est la suivante:
>>> Traceback (most recent call last):
File "E:\applications\6pad++\lib\yannick\common.py", line 47, in
SelectionPointEnd
UnboundLocalError: local variable 'iSelectionPointStart' referenced before
assignment
Pourtant, la variable iSelectionPointStart est bien déclarée avant les
fonctions et à laquelle la valeur "-1" est attribuée.
Et j'ai bien vérifié plusieurs fois, il n'y a pas d'erreur dans l'écriture du
nom de cette variable.
Qu'est-ce qui cloche ?
2. je rencontre un problème de reconnaissance d'encodage de caractères.
En effet, lorsque je met des triples guillemets (""") ou des caractères
accentués dans mon code, cela produit l'erreur suivante:
Syntax error. Unicode UTF8 codeck can not decode xxxxxx.
Cela même si j'ajoute des instruction d'en-tête tels que: import sys, import
os, et import string.
Ce qui m'oblige pour le moment à ne pas mettre de caractères accentués et à ne
pas utiliser les triples guillemets.
Où est-ce que je merde ?
Maintenant j'aurais quelques questions et avis sur le logiciel.
1. Dans la documentation j'ai remarqué qu'il y avait une fonction pour charger
des fichiers de langue.
Est-ce que les fichiers de langue se cumulent ou s'écrasent
A mon avis étant donné que le 6pad++ est désormais un logiciel international,
l'utilisation de cette fonction serait un bon moyen de faire en sorte que des
scripts puissent venir avec leurs propres fichiers de langue pour permettre de
traduire leurs textes dans les autres sans pour autant toucher au code source.
2. Il faut se poser la question de savoir: Si on fait des script/plugin pour
mieux développer en langage python, ce sera pour quelle version du python ?
Il faudra prendre en compte que les utilisateurs auront sur leur ordinateur
telle ou telle version du python et voudront développer pour cette version. Ce
qui fait que le 6pad++ devra trouver le moyen de communiquer avec ces versions
installées de python (probablement par ligne de commande) pour effectuer des
actions propres à elles.
C'est pourquoi je pense qu'il faut déja une fonction de listage des pythons
installés sur l'ordinateur en cours et une proposition d'effectuation de choix
par les menus.
3. Qu'en est-il de l'idée de créer des profils propres à des langages
particuliers ?
Parce que je peux vouloir que suivant le type de fichier, les raccourcis soient
les mêmes, mais les comportements différents.
4. Est-il possible à l'heure actuelle de créer des interfaces ?
En wx ou autre ?
Ce serait intéressant par script de pouvoir proposer soi-même ses fenêtre et
recueillir les réponses.
Ce qui me fait subitement penser comme alternative à un petit logiciel de
création de formulaire nommé iniform je crois, et qui proposait des
communications par ligne de commande et des réponses dans un fichier ini.
5. J'entrevois l'ajout (par moi ou par d'autres):
* de l'intégration de fonction PyBraces pour insérer et enlever des accolades
du code source affiché. J'avais envoyé ici-même deux fonction extraites du
edsharp. Il faudra les convertir en pythons et ça fera l'affaire.
* d'un système d'aide pour les mots clé sous le curseur: je l'ai déja fait pour
mon python Editor et ça marche plutôt bien. Faut juste que je convertisse le
code du vb6 au python.
* d'un menu pour compiler le projet si présence du py2exe et si choix de la
bonne version du python installé.
Ca aussi je l'ai déja fait par ailleurs, et il me faut seulement le convertir.
* d'un menu pour recharger les scripts sans avoir à fermer et réouvrir 6pad++.
Est-ce qu'un tel moyen n'existe pas déja ?
* d'un système d'intellicence, c'est-à-dire la proposition de mots clé dans une
liste déroulante suivant les premières lettres tapées sous le curseur.
Pour ce faire, (le code de Maan Aloun de son logiciel d'exploration des modules
python peut nous être utile.
Et maintenant, le temps pour faire tout ça. Mon Dieu le temps pour faire tout
ça !!!
Et mon boulot qui me tient toujours par la gorge.
Yannick Daniel Youalé
La programmation est une religion. Aimez-la, ou quittez-la.
www.visuweb.net