Salut amis Lazarussiens...
Cela fait un bout de temps que je travaille sur un pseudo langage de programmation orienté objet.
Je vous présente LeeWee, il a été développé avec Lazarus sous licence Art Libre.
C'est un petit langage sans prétention. La syntaxe est en français; il permet de créer des petites interfaces en deux ou trois clics.
Il est disponible pour Linux et Windows; bien entendu, la source est dispo.
LeeWee Simple Syntaxe
Qu'est devenu LeeWee depuis plus d'un an :
Mise à jour 1
mise à jour 2
...
mise à jour 50
....etc
bref vous aurez compris que des mise à jour pour arriver au final à une syntaxe complètement remaniée et un code source intégralement retapé.
Mais je reste fidèle à ceux qui me le rendent dans le bon sens et Lazarus fait partie de cette catégorie d'applications qui m'a presque tout le temps donné satisfaction, oui des fois en trouvant des subterfuges aux bugs initiaux, mais il y a toujours moyen de passer au travers.
Donc un LeeWee remanié, recodé mais toujours avec les même outils. On va pouvoir commencer :
Au début un trip de curieux ayant soif d'apprendre, ensuite l'envie de partager (dans le vent mais bon rien est acquis même le partage ahahah!!!)
et pour finir l'envie de développer quelque chose de ludique et utilisable à 100%.
Le principal objectif de de LeeWee :
- GUI
- Internationalisation
- communiquant avec le SHELL
- communiquant avec le PYTHON
A terme, j'ai même l'intention de faire une variante de Lazarus style ('LazaShell').
Avant tout je vais vous donner quelques liens qui peuvent servir :
- La documentation et la petite histoire de LeeWee en 3 chapitres
- La source
- Installateur Debian/Ubuntu (Version alpha omega tango charlie bientôt dispo)
- Installateur Windows (pas prévus au programme (une âme charitable s'en occupera à ma place peu être))
- Installateur Mac (ahahah!!! vus la politique actuelle, les utilisateurs vont bientôt plus pouvoir développer)
- Peut-être un peu moins de sarcasmes
Pour vous donner une idée d'interprétation du langage LeeWee :
extrait de la documentation en cours
Pseudo code
Extrait d'un code LeeWee
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SI à gauche du premier espace de la ligne actuelle = au mot 'fenêtre' ALORS Nom_de_la_fenetre = à droite du premier espace Création de la fenêtre Nom_de_la_fenetre SINON SI à gauche du premier espace de la ligne actuelle = au mot 'bouton' ALORS Nom_du_composant = entre le premier espace et le mot 'dans' Nom_de_la_fenetre = à droite du mot 'dans' Création du bouton dans la fenêtre Nom_de_la_fenetre
Exemple de code de création d'une fenêtre avec des composants avec gestion du support de langues.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Fenêtre fen01 Bouton btn01 dans fen01
Exemple de code utilisant un fichier LFM (je suppose Lazarus ForM)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 #! /bin/bash ./leewee $0 exit 0 lang fr fenêtre f1 titre fenêtre.f1 (Fenêtre 1) dimension fenêtre.f1 (170,30) zone z1 dans f1 dimension zone.z1 (170,30) alignement zone.z1 (haut) édition edt1 dans z1 dimension édition.edt1 (100,15) titre édition.edt1 (Tape un truc:) alignement étiquette.edt1 (plein) bouton b0 dans z1 dimension bouton.b0 (50,15) titre bouton.b0 (ok) alignement bouton.b0 (droite) zone z2 dans f1 dimension zone.z2 (170,35) alignement zone.z2 (plein) visible zone.z2 (oui) lang en button b1 in z2 dimension button.b1 (170,35) title button.b1 (Close) alignment button.b1 (bottom) display f1 wait PROCEDURE click b0: message("press $edt1.change") dimension window.f1 (170,65) visible zone.z2 (yes) wait PROCEDURE click b1: quit
Fichier LFM générer par Lazarus
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #! /bin/bash ./leewee $0 exit 0 gui ./gui.lfm display fenetre wait procedure click btn1: quit procedure close fenetre: quit
J'espère que cela vous donnera le maximum d'information et surtout vous aura donné envie de participer à un projet long, par moment rébarbatif, à ses frais, fatigant, mais au final tellement cool. On apprend, on conceptualise on CRÉE quoi (yop là je m'enflamme).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 object fenetre: Tfenetre Left = 548 Height = 120 Top = 390 Width = 344 Caption = 'LeeWee Name' ClientHeight = 120 ClientWidth = 344 Constraints.MinHeight = 120 Constraints.MinWidth = 344 Visible = True object btn1: TBitBtn Height = 30 Caption = 'Quitter' Parent = fenetre align = albottom end object lbl1: tlabel Caption = 'Votre Nom:' Alignment = tacenter Parent = fenetre autosize = false; align = altop end object Edit1: TEdit Left = 10 Height = 27 Top = 25 Width = 324 Anchors = [akTop, akLeft, akRight] TabOrder = 0 Text = 'Edit1' end end
Pour toute autre info je suis dispo sur jabber ckdevelop@jabber.org et sur identi.ca http://identi.ca/ckdevelop
++CKDevelop
Partager