Epb PHOENIX 2.68

Programmation d'applications complexes
Avatar de l’utilisateur
Zorro
Messages : 2185
Inscription : mar. 31/mai/2016 9:06

Epb PHOENIX 2.68

Message par Zorro »

j'ai donc repris une bonne partie du code de EPb , je l'ai renommé "Phoenix"
car ce code renait vraiment de ses cendres ... j'ai bien failli tout beiner ...
grace a Marc56 qui m'a bien aiguillé sur les Regex ... ça s'arrange :)

j'ai pu multiplier par 1000 au moins la vitesse de réaction ... par contre
je suis loin encore de l’éditeur officiel ... mais pour des codes de taille moyenne ça va :)

vous allez me dire, pourquoi utiliser Epb ? c'ets vrais que l'editeur officiel a bien progressé , et franchement, ce serai aujourdhui
je ne me serai pas lancé dans le codage d'un editeur pour Purebasic !

a telecharger ici :
http://michel.dobro.free.fr/STLINE2/?page_id=141


pour l'utiliser , il suffit de lancer Epb.exe
une fois la taille de l'editeur choisi en redimensionnant la fenetre, un appuis sur la touche F8
permet de passer dans les reglages des parametres
le plus important est l'onglet "chemin"
il faut allez cliquer sur Pbcompiler.exe , generalement situé dans le dossier "compilers" de Purebasic
le chemin pour la version 32 bit est obligatoire
l'ideal etant de renseigner les chemin des compilo 32 et 64 bits..

l'onglet "Alias" est desactivé, ça sert a rien de le parametrer ....
l'onglet coloration permet de se choisir un theme de couleur ou bien d'en charger un (dans le dossier theme de EPB)
si vous faite un theme n'oubliez pas de le sauver (bouton sauver le Style courant)

l'onglet "option de compilation" n'est vraiment utile QUE pour les espaces de tabulations
ou la taille des tabulation reelles... ou l'activation des guide d'indentations...les autres parametres sont en doublon..
par exemple:
pour les parametres de compilation on peut les changer dans les onglets de droite de EPb

ensuite vous cliquez sur le bouton "Actualiser EPB" , ça va relancer EPB avec les nouveaux parametres...

pour compiler avec EPB c'est soit
F6 pour compilation avec debugger
F5 pour compilation sans Debugger
soit F7 pour la creation de l'executable
ce qui correspond a ces icones dans le menu Image (Merci Ar-s)

ces icones : Image
servent a choisir si on compile avec le compilateurs 32bits ou 64 bits ou .. les deux !!
dans ce dernier cas, la compile se fera d'abords en 32 puis en 64 ...dans la foulée

la "mise en forme" du code se fait avec contrl+tab ... c'est encore perfectible,(il y a des petits bugs de mise en forme)
avec EPB on est pas obligé de sélectionner le code avant de mettre en forme..
ça met dans ce cas tout le code en forme ....
pour détabuler , il faut utiliser Shift gauche+tab


je vais quand meme vous montrer les petits plus de Epb :)
tout d'abords , les déclarations de procedures ... j'aime bien avoir mes procedures en fin de code (un truc qu'on ne peut meme pas faire en python)
alors voici comment procéder avec Epb

1- on efface toute déclarations existantes...
ensuite :--> Image
et voila :)

autre petit truc :
rgb() et multiselection ... avec Epb on peut :
surligner un rgb() pour voir sa couleur dans l'editeur :)
et
sélectionner plusieurs choses a l'aide de la touche Control, pour modifier d'un coup toutes les selections
Image


dans EPB a droite j'ai 3 onglets dans lequel je met les constantes, les procedures, et les signets ...
on peut ainsi a loisir choisir de "sauter" dans le code en cliquant sur ce qu'on recherche ...
pour les constantes, j'ai ajouté la possibilité de sauter sur toutes les instances de la constante dans le code
il suffit de cliquer plusieurs fois
Image

pour les anciens, qui connaissent deja Epb , il permet toujours l'utilisation de mot clef specials...

par exemple si on veux inclure une image dans le code (catchimage())

il suffit de faire ainsi :
Image

bien sur il ya d'autres mot clef , ça va du cryptage/decryptage du code
en passant par "$forum" pour vous retrouver ici meme

ou bien $intro pour creer un petit cartouche de présentation du code ... bref... plein d'autre trucs a tester ... :)


Control+F permet d'appeler la fenetre de recherche ....
en bas de cette fenetre, on peut aussi effectuer une recherche dans les fichiers....
par exemple on defini un terme de recherche, on choisi un dossier ou se touve nos codes *.pb
et on lance la recherche , ça va ressortir tout les codes ou se trouve le terme recherché ;)

on peut ensuite charger celui qu'on veux dans EPb ;)



voila, je me suis remis dans ce code, parce que certains m'ont demandé ce que devenait EPB
meme si je code beaucoup moins en Purebasic , il m'arrive de temps en temps de l'utiliser
et donc d'utiliser EPb .. je l'avais fait pour une utilisation personel d'abords... mais si ça plait a quelqu'un..:lol:

j'avais toujours en tete de corriger ses plus grosses failles , j'aime pas laisser un prg qui tourne mal ...:)
pour la petite histoire, c'est juste apres l'arret de Japbe , que j'ai voulu faire mon editeur pour une raison simple
c'est que l'editeur officiel avait un gros defaut qui a surement été corrigé depuis
c'est lorsqu'on cliquait dans la marge , ça repliait d'un coup le code lorsqu'on editait dans une procedure
c'etait tres tres tres penible .. :lol:
du coup je me suis dit , je vais faire un editeur qui sera comme Japbe , qui ne se pliera pas au moindre clique ! :)

c'est aussi la raison pour laquel on met en forme le code dans EPB avec Contrl+Tab , puisque c'est ainsi
qu'on faisait avec Japbe :)
Dernière modification par Zorro le jeu. 07/nov./2019 13:00, modifié 5 fois.
Image
Image
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Avatar de l’utilisateur
Zorro
Messages : 2185
Inscription : mar. 31/mai/2016 9:06

Re: Epb PHOENIX 2.68

Message par Zorro »

et puis il y a aussi :mrgreen:

les onglets :
Image

la possibilité de transformer le code en Asm (et aussi de refaire un exe avec .. )
Image


Generer une page Html du code (et accessoirement pouvoir l'imprimer avec le navigateur )
Image


et enfin , different themes :

Image

vous voulez retirer des commentaires dans une zone, mais ceux ci sont mélangés au millieu des lignes de code ?
Image

vous avez des lignes de code qui sont sur une seule ligne séparées par des ":" ?
Image

vous avez des lignes vide qui espace un peut trop le code ? (cette algo peut etre employé plusieurs fois, pour mieux compresser ;)
Image



:)
Dernière modification par Zorro le sam. 29/juin/2019 16:39, modifié 1 fois.
Image
Image
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Ollivier
Messages : 4190
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Re: Epb PHOENIX 2.68

Message par Ollivier »

Phoenix, c'est du plaggia sur la bière Grimbergen.

Bonne renaissance, en tout cas, en espérant que ça plaise aux adeptes.
Avatar de l’utilisateur
Zorro
Messages : 2185
Inscription : mar. 31/mai/2016 9:06

Re: Epb PHOENIX 2.68

Message par Zorro »

Ollivier a écrit : en espérant que ça plaise aux adeptes.
bah... j'ai surtout fait cet editeur pour moi a la base , alors l'essentiel c'est que ça me plait :)
Image
Image
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Ollivier
Messages : 4190
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Re: Epb PHOENIX 2.68

Message par Ollivier »

C'est open source ?
Avatar de l’utilisateur
Micoute
Messages : 2522
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Epb PHOENIX 2.68

Message par Micoute »

Merci Zorro pour le partage, j'adore.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 5.73 PB 6.00 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Avatar de l’utilisateur
Zorro
Messages : 2185
Inscription : mar. 31/mai/2016 9:06

Re: Epb PHOENIX 2.68

Message par Zorro »

non il n'est pas open source. (mais peut etre un jour..)

dans les points négatif : (et Todo list)

la complétion me prends énormément de temps (complétion Go-scintilla)
alors pour le moment lorsqu'on entre une nouvelle procedure ou constante, ou structure
la complétion ne s'active pas sur les nouvelles entrées ....
elle s'active que si on click sur l'onglet Image
ou control+Tab ou click bouton droit....

de meme , a cause de la lenteur de la completion que je rencontre , je n'ai pas inclus les variables dedans ....

il peut arriver que certains mot , lorsqu'on pose le curseur dessus, et qu'on appuis sur F1 , n'ait pas leur correspondance dans la doc ...
dans le cas ou ça vous arrive, dites moi le mot, que je l'ajoute ...


le debuggeur interne a EPB Image
remarche !
soit on le demarre avec l'icone , soit:
debog_on() ;ouvre le debugger (ou second editeur)
debog_off() ; le ferme
debog (6,"toto") ; affiche toto ligne 6
debog (5,str(i)) ; affiche le contenu de i ligne 5
debog_cls() ; efface l'editeur


la synthese vocal :
je me suis rendu compte que certains message d'erreur pouvait etre super long a lire avec la synthèse vocal
ce problème est connu, il faut que je m’attelle a la chose

il y a des petits bugs de coloration, parfois .... c'est go-scintilla , c'est pas MOA !! :mrgreen:



ps: j’intègre le prog "PureForm" de Gnozal , je n'ai jamais pu avoir sa permission (je n'arrive plus a le joindre .. comme beaucoup)
cependant, j'avais de tres bon rapport avec lui, je ne pense pas qu'il m'aurai refusé cette inclusion dans EPB ...

PureForm marche toujours avec Pb 5.70 il faut juste supprimer la ligne

Code : Tout sélectionner

if Creategadgetlist()
du code généré
Dernière modification par Zorro le dim. 23/juin/2019 8:50, modifié 2 fois.
Image
Image
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Marc56
Messages : 2146
Inscription : sam. 08/févr./2014 15:19

Re: Epb PHOENIX 2.68

Message par Marc56 »

Just tested: ça scintille à donf' au niveau de la statusbar même en ne faisant rien, preuve d'un tas de calculs en tache de fond ? Tu gagnerais peut-être à en supprimer (ex: nb de cars dans la ligne: pas utile IMHO) ou à ne mettre à jour cette ligne que quand le gadget est mis à jour (il y a une api pour ça dans le gadget scintilla).
Temps depuis le lancement: Inutile d'afficher les secondes, donc on peut diviser la boucle par 60

Quand je regarde l'IDE de PB, je constate que le bookmark n'est mis à jour que si on change de ligne active (flèche haut, bas, entrée ou souris). Je pense que c'est une bonne méthode pour éviter les boucles de test continuelles ?

:wink:
Avatar de l’utilisateur
Zorro
Messages : 2185
Inscription : mar. 31/mai/2016 9:06

Re: Epb PHOENIX 2.68

Message par Zorro »

Marc56 a écrit :Just tested: ça scintille à donf' au niveau de la statusbar même en ne faisant rien, preuve d'un tas de calculs en tache de fond ?

Tu gagnerais peut-être à en supprimer (ex: nb de cars dans la ligne: pas utile IMHO) ou à ne mettre à jour cette ligne que quand le gadget est mis à jour (il y a une api pour ça dans le gadget scintilla).

non pas vraiment, pas de calculs...
cela viens de la superposition de ma statubar avec l'editeur d'information qui est juste dessous !
j'utilise une grosse bidouille Api windows pour avoir les info en couleur....

lorsque tu pose ton curseur sur une procedure , si c'est une procedure perso, ça ecrit avec la couleur attribuée au procedure Perso
si c'est une procedure Purebasic, ça ecrit avec la couleur que tu as attribuer aux procedure Purebasic
le "flipping" c'est juste un probleme lié a la superposition des 2 gadgets (editeurs dessous et statut bar dessus)
il suffit de remonter un peu la ligne qui separe l'editeur inferieur de l'editeur de code pour ne plus avoir ce probleme... :)
PS: peut etre dois-je remontrer la taille vertical de l'editeur inferieur... (ou carrement le supprimer , perso je ne m'en sert jamais)



Temps depuis le lancement: Inutile d'afficher les secondes, donc on peut diviser la boucle par 60
ça ne changera rien, c'est un timer qui gere ça ! (donc en parallèle du prg principal) ;)
Quand je regarde l'IDE de PB, je constate que le bookmark n'est mis à jour que si on change de ligne active (flèche haut, bas, entrée ou souris). Je pense que c'est une bonne méthode pour éviter les boucles de test continuelles ?
:wink:
pour le moment ma mise a jour des listviews a lieu sur Return/backspace/delete ... faut que j'ajoute les fleches..(pas pensé LOL )

alors, je n'ai pas de "boucles continuel" ; j'en ai qu'un seule !! la boucle des events ..
que j'ai nommé en interne "temp Reel"
dans lequel je surveille si on tape un mot clef "magique" comme "$forum" par exemple

donc c'est une serie de IF--- Endif :)

j'ai mesuré le temps, la grosse perte de temps ce sont bien les completions proposé par la librairie "Go-scintilla"
et aussi , en second, les temps de remplissage de mes listes... mais vraiment, bien en dessous
sauf... lorsqu'il y a plethore de procedures+constantes.... là forcement, c'est plus lourd a gerer ...

mais le pire c'est bien les completions ...
Falsam a montré une façon de faire ses completion qui a l'air super rapide
par contre, je risque de perdre l'aspect "compact" de la fenetre des completions de Goscintilla...
faudra que je creuse ça, un de ces 4 :)

(j'aime bien le fait d'avoir la completion juste sous la ligne qu'on ecrit .... )
Image
Image
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Avatar de l’utilisateur
grendizer
Messages : 59
Inscription : mer. 29/mai/2019 6:29

Re: Epb PHOENIX 2.68

Message par grendizer »

Un grand merci pour ce partage tu trés bon travaill en tout cas Bravo
Avatar de l’utilisateur
Zorro
Messages : 2185
Inscription : mar. 31/mai/2016 9:06

Re: Epb PHOENIX 2.68

Message par Zorro »

Merci :)

une correction va bientot arriver ...

ajout des touches flechée haut/bas .... de la touche souris gauche..... pour la prise en compte des listviews droite
donc on a Return/backspace/flechehaut/flachebas/clique souris bouton gauche pour remplissage des listview

et bouton droit souris/click sur le haut de l'onglet/ Alt+tab et Shift+tab (tabulation/detabulation code) pour la completion...


j'ai viré l'editeur de Statut en bas de l'editeur... il ne servait qu'a donner des infos a propos de la compilation
je donne ces infos par un systeme d'affichage specifique a EPb ..
je peut toujours cumuler ces infos, et relier ça a un messagerequester() via une commande special (genre : $info)

d'avoir un editeur en moins c'est toujours ça de gagner... surtout que je vais essayer d'en remettre un autre en route :lol:
Image
Image
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Avatar de l’utilisateur
majikeyric
Messages : 602
Inscription : dim. 08/déc./2013 23:19
Contact :

Re: Epb PHOENIX 2.68

Message par majikeyric »

ça claque !!! 8)
Avatar de l’utilisateur
Zorro
Messages : 2185
Inscription : mar. 31/mai/2016 9:06

Re: Epb PHOENIX 2.68

Message par Zorro »

@majikeyric : Merci encore pour ton cruncher -puncher :)
Dernière modification par Zorro le dim. 23/juin/2019 8:51, modifié 1 fois.
Image
Image
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Avatar de l’utilisateur
Zorro
Messages : 2185
Inscription : mar. 31/mai/2016 9:06

Re: Epb PHOENIX 2.68

Message par Zorro »

bon j'ai mis a jour l'archive toujours au meme lien de telechargement

au menu :
j'ai donc viré l'editeur du bas qui ne servait qu'a afficher les infos concernant la compilation
(les messages du compilo )
j'ai remplacé ça par une nouvelle commande magique "$info"
cette commande affichera un messagerequester avec les infos de la compilation (et des erreurs éventuelles )
comme ça, plus besoin de ce vilain éditeur de bas de page :)

j'ai aussi remis en route le petit debugger intégré a EPB
il suffit soit d'utiliser l'icone Image
soit d'utiliser la commande "debog_on" pour le faire apparaitre ....

on peut le considérer comme un second éditeur , qui permet par exemple de copier des morceaux de codes dedans
pour réutilisation dans le listing qu'on est en train d’éditer .... c'est toujours utile d'avoir un second éditeur sous la main :)

ou bien on peut aussi l'utiliser comme un véritable debugger ...
en lui demandant d'afficher un truc sur une ligne précise !!
mais avant ça , il faut installer la librairie se trouvant dans le dossier "librairie_debugger"
dans le dossier des librairies utilisateurs de Purebasic

ensuite ..
il suffit d’écrire dans notre code ceci

Code : Tout sélectionner

	debog (8,"ceci est la valeur de 'i'= "+Str(i)) 
pour afficher ligne numero 8 "ceci est la valeur de 'i'= 1..2...33"

contrairement au debugger de Purebasic, les lignes ne vont pas s’écrire a la suite les une des autres
dans ce cas, se sera la ligne 8 qui sera concerné et rien qu'elle :)

exemple : Image



ps: lorsque vous mettez a jour EPB, il vaut mieux tout remplacer par le contenu de la nouvelle archive :)
sinon des problèmes d'incompatibilités peuvent arriver ...


voila , je ne pense plus toucher a EPB , je pense avoir fait un prg utilisable comme ça :)
(a moins d'une idée de genie qui me viendrai... :lol:, ou gros bug eventuel )
Merci a vous pour vos sympathiques retours ...
Image
Image
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Avatar de l’utilisateur
MLD
Messages : 1097
Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne

Re: Epb PHOENIX 2.68

Message par MLD »

Bon Boulot Zobro. :lol:
A+
Répondre