Coucou Abdel,
Une autre amélioration à te proposer pour le forPython.
C'est l'ajout de la fonctionnalité de suppression de la ligne sous le
curseur.
Quand plusieurs lignes sont sélectionnées, supprime toutes les lignes
impliquées.
La fonctionnalité nous évite de nous préoccuper de la prise en compte des
indentation lors de l'effectuation de cette manoeuvre, et cerise sur le
gâteau, c'est en un seul coup.
Etant donné que c'est une commande de suppression, je te suggère de
l'ajouter aux éléments du menu "suppression".
Comme raccourci clavier à lui assigner, comme je l'ai déjà dit dans un
précédent message, CTRL+D me semble plus approprié à cause de sa fréquence
d'utilisation qui devrait être assez grande.
Voici le code
Début du code python
def deleteCurrentLine ():
# supprime la ligne ou les lignes sélectionnées sous le curseur
nb = 0
iLineStart, iLineEnd, j = 0, 0, 0
d, f = 0, 0
# on trouve le nombre de lignes total du document
nb = sp.window.curPage.lineOfOffset (len(sp.window.curPage.text))
# on trouve les numéros des lignes de début et de fin
iLineStart = sp.window.curPage.lineOfOffset
(sp.window.curPage.selectionStart)
iLineEnd = sp.window.curPage.lineOfOffset (sp.window.curPage.selectionEnd)
# on identifie la position de début du texte à supprimer
d = sp.window.curPage.lineStartOffset(iLineStart)
# on identifie la position de fin du texte à supprimer
# si la fin est la dernière ligne
if iLineEnd == nb:
# la position de fin est la fin de tout le texte
f = len(sp.window.curPage.text)
else: # ce n'est pas la dernière ligne
# la fin est le début de la ligne suivante
f = sp.window.curPage.lineStartOffset(iLineEnd+1)
# end--if
# sélection de la portion à supprimer
sp.window.curPage.select(d, f)
# suppression
sp.window.curPage.selectedText = ""
sp.say("Suppression de ligne", True)
# lecture de la nouvelle ligne courante
sp.say(sp.window.curPage.line(sp.window.curPage.curLine))
# end--def
Fin du code python
J'ai pas mis l'instruction pour la création du menu, mais tu sais comment ça
se passe, etc, etc...
Amicalement,
Yannick Daniel Youalé
La programmation est une religion. Aimez-la, ou quittez-la.
www.visuweb.net
----- Original Message -----
From: "_Abdel_" <[email protected]>
To: <[email protected]>
Sent: Thursday, February 04, 2016 11:24 PM
Subject: [progliste] Re: 6pad++- amélioration de l'extension forPython
Bonsoir la ML,
Sans plus tarder, j'ai le plaisir de vous communiquer la nouvelle version
de
l'extension "forPython", réalisée avec 6pad++ version beta.
Grâce aux suggestions de Yannick, nous avons intégré la possibilité de
pouvoir vocaliser les changements de niveaux avec tab, shift + tab, ou
backSpace, lorsqu'on est en début de ligne.
La seconde amélioration, que je qualifierais de plutôt importante, c'est
que
désormais, en réalisant le raccourci clavier "CTRL+M", chacune et chacun
pourra modifier les raccourcis-claviers des différentes commandes, selon
les
préférences.
Idées d'amélioration.
Je pense qu'il serait intéressant d'intégrer 2 autres modes de lecture des
entêtes de lignes, "Lire les indentations" et "Lire les numéros de lignes
et
les indentations".
Ca permettrait de reconnaître la mixité des caractères d'indentation s'il
y
en a et de pouvoir se corriger si on a fait une erreur en mélangeant des
tabs et des espaces.
La seconde idée, ce serait d'isoler les regexp ayant permis de retrouver
les
classes et fonctions dans un dictionnaire.
En effet, je trouve personnellement que les dictionnaires sont beaucoup
plus
souples à manier que les variables globales, mais ça reste un avis
personnel.
Autre idée, mais je pense qu'elle aura plus sa place lorsque j'aurais
mieux
compris comment implémenter une treeView avec la version alpha, ce serait
de
pouvoir construire un plan du module en cours d'implémentation ou de
consultation, pour mieux reconnaître les relations classes/sous-classes et
classes/fonctions et attributs, etc.
Mais ce n'est pour le moment qu'un rêve bien entendu.
Ah j'oubliais, il faudrait aussi essayer d'intégrer la possibilité
d'exécuter du code comme dans le module de Cyrille, mais je n'ai pas
encore
bien compris comment implémenter cette partie.
Toute aide sera la bienvenue les amis.
Je vous souhaite une agréable soirée.
Bien amicalement,
Abdel.
----- Original Message -----
From: "Cyrille" <[email protected]>
To: <[email protected]>
Sent: Thursday, February 04, 2016 10:30 PM
Subject: [progliste] Re: 6pad++- amélioration de l'extens ion forPython
Salut Abdel,
Merci, c'était bien ça !
Cyrille
-----Message d'origine-----
De : [email protected] [mailto:[email protected]] De la
part de _Abdel_
Envoyé : jeudi 4 février 2016 20:13
À : [email protected]
Objet : [progliste] Re: 6pad++- amélioration de l'extens ion forPython
Salut Cyrille,
Sauf erreur de ma part, il me semble que tu dois copier le répertoire lib
figurant dans ton 6pad++ beta, dans le répertoire de ta version alpha, et
le
module ctypes sera alors importable sans PB.
Je l'ai fait ici, et ça marche nickel.
Bien amicalement,
Abdel.
----- Original Message -----
From: "Cyrille" <[email protected]>
To: <[email protected]>
Sent: Wednesday, February 03, 2016 11:13 PM
Subject: [progliste] Re: 6pad++- amélioration de l'extens ion forPython
Salut Quentin,
J'ai essayé de tester ton nouveau 6pad++.
Mais il est incapable d'exécuter la ligne :
import ctypes
dans une de mes extensions, alors que la version beta le faisait bien.
Sais-tu à quoi ça pourrait être dû ?
Voici le traceback Python :
Traceback (most recent call last):
File "D:\Applications\_test\6pad++_beta1_test2\plugins\perso.py", line
6,
in <module>
import ctypes
File "C:\MinGW\ProgQ\9pad++\lib\ctypes\__init__.py", line 7, in
<module>
ImportError: No module named '_ctypes'
>>> >>>
Merci d'avance.
Cyrille
-----Message d'origine-----
De : [email protected] [mailto:[email protected]] De
la
part de QuentinC
Envoyé : lundi 1 février 2016 20:53
À : [email protected]
Objet : [progliste] Re: 6pad++- amélioration de l'extens ion forPython
Bonsoir,
Je vous mets ce soir en ligne en avant première une nouvelle version
alpha de 6pad++.
J'ai notamment enrichi l'API avec les task dialogs.
J'y ai aussi ajouté les 3 plugins que j'avais commencé, si vous voulez
les reprendre/continuer ce serait avec plaisir. Vous pouvez aussi vous
contenter de commenter bien sûr.
Téléchargement ici:
https://dl.dropboxusercontent.com/u/25797488/6pad%2B%2B.zip
Les 3 plugins expérimentaux inclus sont :
* audio_indent: un plugin qui sonorise les changements d'indentation
* dialogs: un plugin qui va proposer des boîtes de dialogue
additionnelles et d'autres outils relatifs aux dialogues. Pour le moment
je vous propose uniquement la TreeViewDialog. Vous pouvez déjà vous
amuser pas mal avec !
* developer: un plugin dont le but était de regrouper des
fonctionnalités utiles pour les développeurs. Ce qui est proposé pour le
moment, c'est juste une petite démo qui ne fait pas grand chose. L'idée
est d'identifier le type de fichier en cours d'édition d'une part, et
d'autre part le type de projet et son dossier racine. But du jeu,
proposer des items de menus disponibles de manière globale mais
réagissant différemment selon le type de fichier et le type de projet
ouvert. Si on veut proposer des fonctionnalités pour aller à la
fonction/classe précédente/suivante, commenter/décommenter une ligne,
etc. multilangage, on peut partir de cette base.
La détection de projet pourrait permettre d'ajouter des items genre
compiler, exécuter, lancer les tests, le débogueur, etc.
Conscient qu'on ne peut rien faire avec de concret pour l'instant, je
voulais surtout avoir votre avis.
Voilà, have fun !
Progliste :
Pour se désinscrire de la liste :
mailto:[email protected]?subject=unsubscribe
Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/
Je vous rappelle que les pièces jointe sont activés leur taille est
limité
à
2 MO
Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé,
je
vous répondrez en privé.
---
L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.
https://www.avast.com/antivirus
Progliste :
Pour se désinscrire de la liste :
mailto:[email protected]?subject=unsubscribe
Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/
Je vous rappelle que les pièces jointe sont activés leur taille est
limité
à 2 MO
Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé,
je vous répondrez en privé.
Progliste :
Pour se désinscrire de la liste :
mailto:[email protected]?subject=unsubscribe
Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/
Je vous rappelle que les pièces jointe sont activés leur taille est
limité
à
2 MO
Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé,
je
vous répondrez en privé.
---
L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.
https://www.avast.com/antivirus
Progliste :
Pour se désinscrire de la liste :
mailto:[email protected]?subject=unsubscribe
Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/
Je vous rappelle que les pièces jointe sont activés leur taille est
limité
à 2 MO
Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé,
je vous répondrez en privé.
Progliste :
Pour se désinscrire de la liste :
mailto:[email protected]?subject=unsubscribe
Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/
Je vous rappelle que les pièces jointe sont activés leur taille est limité à 2 MO
Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Ou en utilisant la nouvelle page de partage :
http://outils-n.archive-host.com/partage-fm0m7b947vglikp9Efpso94gt
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé, je
vous répondrez en privé.