Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 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 | | Calendrier |
|
|
| compresseur de code | |
| | Auteur | Message |
---|
jimx78
Nombre de messages : 241 Age : 33 Localisation : Yvelines Date d'inscription : 24/05/2010
| Sujet: compresseur de code Mar 12 Juil 2011 - 16:23 | |
| Bonjour,Voici un code qui permet de réduire la hauteur de son code de façon très significative. A la base j'utilise les includes. mais la c'est pour mettre toute les ligne dans le même code sur une seul ligne. A vous de trouver une utilité! si vous avez des questions, allez y ps le prog s'arrete dès qu'i y a une ligne vide ainsi, Ecrivez: dim a b c d avec un espacement de " , " (guillemet non comprit) et vous obtiendrai cela dans le presse papier: dim a , b , c , d - Code:
-
label coller , compresser dim ligne , resultat$ , stopb left 0,screen_x/10 : top 0,screen_y/10 : caption 0,"Compresseur" memo 1 : width 1,width(0)-16 : height 1,height(0)-85 : font_size 1,12 : font_name 1,"consolas" : bar_both 1 alpha 2 : caption 2,"Espacement:" : top 2,height(1)+10 : left 2,150 : font_size 2,12 : font_name 2,"consolas" button 3 : caption 3,"Coller" : top 3,height(1)+10 : left 3,30 : font_size 3,12 : font_name 3,"consolas" edit 4 : top 4,height(1)+10 : left 4,250 : width 4,100 : font_size 4,12 : font_name 4,"consolas" button 5 : caption 5,"Compresser et copier" : width 5,200 : top 5,height(1)+10 : left 5,370 : font_size 5,12 : font_name 5,"consolas" on_click 3,coller on_click 5,compresser end
coller: clear 1 item_add 1,clipboard_string_paste$ return compresser: ligne=1 resultat$="" stopb=0 resultat$=item_read$(1,ligne) ligne=2 while stopb=0 if item_read$(1,ligne)<>"" then resultat$=resultat$+text$(4)+item_read$(1,ligne) if item_read$(1,ligne)="" then stopb=1 ligne=ligne+1 end_while clipboard_string_copy resultat$ message "Compresser="+resultat$ return | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: compresseur de code Mar 12 Juil 2011 - 17:44 | |
| Tentative peut-être intéressante, mais dont je ne vois pas trop l'utilité, le résultat obtenu étant assez illisible. Si on l'applique à ton propre code, on obtient: - Code:
-
label coller , compresserdim ligne , resultat$ , stopbleft 0,screen_x/10 : top 0,screen_y/10 : caption 0,"Compresseur"memo 1 : width 1,width(0)-16 : height 1,height(0)-85 : font_size 1,12 : font_name 1,"consolas" : bar_both 1alpha 2 : caption 2,"Espacement:" : top 2,height(1)+10 : left 2,150 : font_size 2,12 : font_name 2,"consolas"button 3 : caption 3,"Coller" : top 3,height(1)+10 : left 3,30 : font_size 3,12 : font_name 3,"consolas"edit 4 : top 4,height(1)+10 : left 4,250 : width 4,100 : font_size 4,12 : font_name 4,"consolas"button 5 : caption 5,"Compresser et copier" : width 5,200 : top 5,height(1)+10 : left 5,370 : font_size 5,12 : font_name 5,"consolas"on_click 3,colleron_click 5,compresserend (en fait tout est sur une seule ligne, les retour chariot sont introduits par le forum) Il manque les ':' de séparation entre les lignes concaténées, par exemple à la fin '..compresserend' Ligne 24 il faut mettre: - Code:
-
if item_read$(1,ligne)<>"" then resultat$=resultat$+": "+text$(4)+item_read$(1,ligne) et si on recolle le résultat obtenu dans l'éditeur Panoramic, alors là on ne voit plus rien ! qu'un petit bout de la ligne. | |
| | | jimx78
Nombre de messages : 241 Age : 33 Localisation : Yvelines Date d'inscription : 24/05/2010
| Sujet: Re: compresseur de code Mar 12 Juil 2011 - 19:32 | |
| Lol en faite j'ai déjà changer d'avis! Voici mon problème:Pour faire un gros programme, je dois avoir des paragraphe de code déjà fait. C'est un peu comme une bibliothèque en faite. Quand je luis demande juste "gosub cree_skybox" alors il me crée un skybox par exemple. le problème c'est que include ne peut pas avoir de variable. Donc étant donnez que j'ai des tonne de paragraphe que je ne change pas , je me suis dit que le mieux était de raccourcir les paragraphes. Au final, ma décision est d'utiliser comme même les includes la ou j'en est besoin dans mon programme. Merci a toi JL35 - Citation :
- if item_read$(1,ligne)<>"" then resultat$=resultat$+": "+text$(4)+item_read$(1,ligne)
En faite il y a un EDIT dans mon programme qui sert justement a choisir ce que l'on va mettre entre chaque ligne. Pour ton exemple, il suffi d’écrire " : " dans l'edit pour obtenir le resultat que tu me dit | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: compresseur de code Mar 12 Juil 2011 - 19:48 | |
| Bonsoir, l'idée était intéressante, même si personnellement je n'en ai pas l'utilité, c'est toujours un bel exercice de code . Idéalement, il faudrait pouvoir "replier" les blocs dans l'éditeur Par exemple: [-] Sous-Programme: == Clic sur le [-] ==> [+] Sous-Programme: bla bla bla bla return | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: compresseur de code Mar 12 Juil 2011 - 21:45 | |
| @jimx78 Je comprends mieux ta motivation, et on a tous plus ou moins le même problème, qui a déjà été soulevé ici à plusieurs reprises: Pouvoir disposer d'une bibliothèque (personnelle ou non) de sous-programmes, et les réutiliser à la demande dans les nouveaux programmes. C'était facile en Basic pur, quand on ne déclarait pas les variables, en Panoramic ce n'est pas possible de manière simple; Il y a bien le INCLUDE, mais il y a toujours ce problème de déclaration de variables à résoudre. Des solutions ont été proposées (par Klaus notamment), mais rien de très satisfaisant. L'idéal serait de pouvoir utiliser des variables locales aux sous-programmes, mais ce n'est pas possible actuellement. | |
| | | Contenu sponsorisé
| Sujet: Re: compresseur de code | |
| |
| | | | compresseur de code | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |