FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» PANORAMIC V 1
BAS to HTML Emptypar jjn4 Hier à 17:49

» select intégrés [résolu]
BAS to HTML Emptypar jjn4 Hier à 17:00

» number_mouse_up
BAS to HTML Emptypar jjn4 Hier à 11:59

» Aide de PANORAMIC
BAS to HTML Emptypar jjn4 Hier à 11:16

» trop de fichiers en cours
BAS to HTML Emptypar lepetitmarocain Hier à 10:43

» Je teste PANORAMIC V 1 beta 1
BAS to HTML Emptypar papydall Hier à 4:17

» bouton dans autre form que 0
BAS to HTML Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
BAS to HTML Emptypar Klaus Lun 6 Mai 2024 - 11:41

» Gestion d'un système client-serveur.
BAS to HTML Emptypar Klaus Lun 6 Mai 2024 - 10:23

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
BAS to HTML Emptypar Froggy One Jeu 2 Mai 2024 - 11:16

» @Jack
BAS to HTML Emptypar Jack Mar 30 Avr 2024 - 20:40

» Une calculatrice en une ligne de programme
BAS to HTML Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
BAS to HTML Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
BAS to HTML Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Les maths du crocodile
BAS to HTML Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le Deal du moment :
Cdiscount : -30€ dès 300€ ...
Voir le deal

 

 BAS to HTML

Aller en bas 
3 participants
AuteurMessage
Yannick




Nombre de messages : 8610
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

BAS to HTML Empty
MessageSujet: BAS to HTML   BAS to HTML EmptyJeu 17 Déc 2015 - 2:20

Comme je suis dans ma période Html, voilà un petit outils
que je me suis fais. 
Il nécessite un fichier *.css pour le style et un fichier *.inf avec les mots clés Panoramic ( sans parenthèses )

Code:
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
'                            BAS TO HTML VS 0.1
'                                    PAR
'                                 YGERONIMI
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

hide 0
Variables()
Labels()
Gui()
show 0

end

' ------------------------------------------------------------------------------

SUB Variables()
   dim Path$ : Path$=dir_current$
               if right$(Path$,1)="\" : Path$=left$(Path$,len(Path$)-1) : end_if
               Path$=Path$+"\"

   dim no%
   dim MM% : no%=no%+1 : MM%=no%
   dim SM1%: no%=no%+1 : SM1%=no%
   dim SRC%: no%=no%+1 : SRC%=no%
   dim ODG%: no%=no%+1 : ODG%=no%
   dim Kword% : no%=no%+1 : Kword%=no%
  
   dim F_FileInfo% : no%=no%+1 : F_FileInfo%=no%
   dim Alp_TIT%    : no%=no%+1 : Alp_TIT%   =no%
   dim Alp_AUT%    : no%=no%+1 : Alp_AUT%   =no%
   dim Alp_VER%    : no%=no%+1 : Alp_VER%   =no%
   dim Edi_TIT%    : no%=no%+1 : Edi_TIT%   =no%
   dim Edi_AUT%    : no%=no%+1 : Edi_AUT%   =no%
   dim Edi_VER%    : no%=no%+1 : Edi_VER%   =no%
   dim But1%       : no%=no%+1 : But1%      =no%
  
   dim F_KeyWords% : no%=no%+1 : F_KeyWords%=no%
  
   dim FOW%        : no%=no%+1 : FOW%       =no%
   dim MES%
  
   dim Change%
  
   dim KWliste$    : KWliste$ = Path$+"Panoramic.inf"
   dim FileSrc$
   dim FileHref$
  
   dim Title$
   dim Author$
   dim Version$
END_SUB

' ------------------------------------------------------------------------------

SUB Labels()
   LABEL Open
   LABEL SaveInfo
   LABEL Change
   LABEL CloseInfo
END_SUB

' ------------------------------------------------------------------------------

SUB Gui()
   Height 0,700
   width 0,1200
   top 0,(screen_y-height(0))/2
   left 0,(screen_x-width(0))/2

   MAIN_MENU MM%
   SUB_MENU SM1% : parent SM1%,MM% : caption SM1%,"Open"    : on_click SM1%,Open

   LIST SRC%
   full_space SRC%
   font_name SRC%,"Courier New"
   font_size SRC%,10
  
   dlist Kword%
   if file_exists(KWliste$)=1
      file_load Kword%,KWliste$
   else
      MES%=message_warning_ok("Fichier des mots clés introuvable !")
   end_if
END_SUB

' ------------------------------------------------------------------------------

Open:
   OPEN_DIALOG ODG%
   dir_dialog ODG%,":\"
   filter ODG%,"*.bas|*.bas"
   FileSrc$ = file_name$(ODG%)
   if fileSrc$<>"_"
      file_load SRC%,FileSrc$
      FormFileInfo()
   end_if
   delete ODG%
return

' ------------------------------------------------------------------------------

Param:
   if number_click = SM3%
      FormKeyWords()
      return
   end_if
   if number_click = SM4%
  
      return
   end_if
return

' ------------------------------------------------------------------------------

SUB FormFileInfo()
   if object_exists(F_FileInfo%)=1
      show F_FileInfo%
   else
      FORM F_FileInfo%
      height F_FileInfo%,220
      width F_FileInfo%,400
      top F_FileInfo%,(screen_y-height(F_FileInfo%))/2
      left F_FileInfo%,(screen_x-width(F_FileInfo%))/2
      caption F_FileInfo%,"INFOS FICHIER SOURCE"
      on_close F_FileInfo%,CloseInfo
      
      font_name F_FileInfo%,"Arial"
      font_size F_FileInfo%,8
      
      alpha Alp_TIT%
      parent Alp_TIT%,F_FileInfo%
      top Alp_TIT%,10
      left Alp_TIT%,10
      caption Alp_TIT%,"Nom du programme :"
      
      edit Edi_TIT%
      parent Edi_TIT%,F_FileInfo%
      top Edi_TIT%,25
      left Edi_TIT%,10
      width Edi_TIT%,width(F_FileInfo%)-36
      on_change Edi_TIT%,Change

      alpha Alp_AUT%
      parent Alp_AUT%,F_FileInfo%
      top Alp_AUT%,50
      left Alp_AUT%,10
      caption Alp_AUT%,"Auteur :"
      
      edit Edi_AUT%
      parent Edi_AUT%,F_FileInfo%
      top Edi_AUT%,65
      left Edi_AUT%,10
      width Edi_AUT%,width(F_FileInfo%)-36
      on_change Edi_AUT%,Change
      
      alpha Alp_VER%
      parent Alp_VER%,F_FileInfo%
      top Alp_VER%,90
      left Alp_VER%,10
      caption Alp_VER%,"Version :"
      
      edit Edi_VER%
      parent Edi_VER%,F_FileInfo%
      top Edi_VER%,105
      left Edi_VER%,10
      width Edi_VER%,120
      
      button But1%
      parent But1%,F_FileInfo%
      top But1%,height(F_FileInfo%)-68
      left But1%,width(F_FileInfo%)-(width(But1%)+21)
      caption But1%,"Save"
      cursor_point But1%
      on_click But1%,SaveInfo
   end_if
  
   text Edi_TIT%,""
   text Edi_AUT%,""
   text Edi_VER%,""
END_SUB

' ------------------------------------------------------------------------------

SaveInfo:
   if len(text$(Edi_TIT%))=0 or len(text$(Edi_AUT%))=0 or len(text$(Edi_VER%))=0
      MES%=message_warning_Ok("Tous les champs doivent être renseignés !...")
      return
   end_if
   Title$  = text$(Edi_TIT%)
   Author$ = text$(Edi_AUT%)
   Version$= text$(Edi_VER%)
   FileHref$ = Path$+Title$+".html"
   Hide F_FileInfo%
   TranslateBasToHtml()
return

' ------------------------------------------------------------------------------

Change:
   if variable("cp%")=0 then dim cp%
   change% = number_change
   if change% = Edi_TIT% or change% = Edi_AUT%
      off_change change%
         cp%=caret_position(change%)
         text change%,upper$(text$(change%))
         caret_position change%,cp%
      on_change change%,Change
      return
   end_if
return

' ------------------------------------------------------------------------------

CloseInfo:
   Clear SRC%
return

' ------------------------------------------------------------------------------

SUB TranslateBasToHtml()
   dim_local i%,l$,x%,car$,vcar%,l2$,sep%,sep2%,a$,b$,c$,d$,k$
  
   for i%=1 to count(SRC%)
      l$=item_read$(SRC%,i%)
      l$=l$+chr$(32)
      item_delete SRC%,i%
      item_insert SRC%,i%,l$
   next i%
  
   file_open_write FOW%,FileHref$
   file_writeln FOW%,"<!DOCTYPE HTML>"
   file_writeln FOW%,"<HTML>"
   file_writeln FOW%,chr$(9)+"<HEAD>"
   file_writeln FOW%,string$(2,chr$(9))+"<TITLE>"+Title$+"</TITLE>"
   file_writeln FOW%,string$(2,chr$(9))+"<META http-equiv="+chr$(34)+"Content-Type"+chr$(34)+" content="+chr$(34)+"text/html; charset=UTF-8"+chr$(34)+"/>"
   file_writeln FOW%,string$(2,chr$(9))+"<META name="+chr$(34)+"author"+chr$(34)+" content="+chr$(34)+Author$+chr$(34)+"/>"
   file_writeln FOW%,string$(2,chr$(9))+"<META name="+chr$(34)+"description"+chr$(34)+" content="+chr$(34)+"Version "+Version$+chr$(34)+">"
   file_writeln FOW%,string$(2,chr$(9))+"<LINK href="+chr$(34)+"Panoramic.css"+chr$(34)+" rel="+chr$(34)+"stylesheet"+chr$(34)+" type="+chr$(34)+"text/css"+chr$(34)+">"
   file_writeln FOW%,chr$(9)+"</HEAD>"
   file_writeln FOW%,chr$(9)+"<BODY>"
   file_writeln FOW%,string$(2,chr$(9))+"<Div id="+chr$(34)+"titre"+chr$(34)+">"
   file_writeln FOW%,string$(2,chr$(9))+title$
   file_writeln FOW%,string$(2,chr$(9))+"</Div>"
   file_writeln FOW%,string$(2,chr$(9))+"<Div id="+chr$(34)+"version"+chr$(34)+">"
   file_writeln FOW%,string$(2,chr$(9))+"Version : "+Version$
   file_writeln FOW%,string$(2,chr$(9))+"</Div>"
   file_writeln FOW%,string$(2,chr$(9))+"<Div id="+chr$(34)+"auteur"+chr$(34)+">"
   file_writeln FOW%,string$(2,chr$(9))+"Auteur : "+Author$
   file_writeln FOW%,string$(2,chr$(9))+"</Div>"
   file_writeln FOW%,string$(2,chr$(9))+"<Div id="+chr$(34)+"description"+chr$(34)+">"
   file_writeln FOW%,string$(2,chr$(9))+"</Div>"
   file_writeln FOW%,string$(2,chr$(9))+"<Div id="+chr$(34)+"source"+chr$(34)+">"
   file_writeln FOW%,string$(3,chr$(9))+"<Code>"
  


   for i%=1 to count(SRC%)
      caption 0,str$(i%)+" / "+str$(count(SRC%))
      l$=item_read$(SRC%,i%)

'     traitement des caractères accentués
      for x%=1 to len(l$)
         car$  = mid$(l$,x%,1)
         vcar% = asc(car$)
         if vcar% = 233 or vcar% = 232 or vcar% = 234 or vcar% = 235 : vcar% = 101 : end_if
         if vcar% = 224 : vcar% = 97 : end_if
         if vcar% = 249 : vcar% = 117 : end_if
         l2$= l2$+ chr$(vcar%)
      next x%
      
'     traitement des textes
      sep% = instr(l2$,chr$(34))
      if sep% > 0
         a$=left$(l2$,sep%-1)
         a$=a$+"<span1>"+chr$(34)
         b$=right$(l2$,len(l2$)-sep%)
         sep2% = instr(b$,chr$(34))
         if sep2% > 0
            c$=left$(b$,sep2%)
            c$=c$+"</span1>"
            d$=right$(b$,len(b$)-sep2%)
         end_if
         l2$=a$+c$+d$
      end_if
      
'     traitement des commentaires
      sep% = instr(l2$,"rem ")
      if sep% > 0
         sep% = sep%+2
         a$ = left$(l2$,sep%)
         b$ = right$(l2$,len(l2$)-sep%)
         l2$= a$+"<span2>"+b$+"</span2>"
      end_if
      sep% = instr(l2$,"REM ")
      if sep% > 0
         sep% = sep%+2
         a$ = left$(l2$,sep%)
         b$ = right$(l2$,len(l2$)-sep%)
         l2$= a$+"<span2>"+b$+"</span2>"
      end_if
      sep% = instr(l2$,"Rem ")
      if sep% > 0
         sep% = sep%+2
         a$ = left$(l2$,sep%)
         b$ = right$(l2$,len(l2$)-sep%)
         l2$= a$+"<span2>"+b$+"</span2>"
      end_if
      sep% = instr(l2$,chr$(39)+chr$(32))
      if sep% > 0
         a$ = left$(l2$,sep%-1)
         b$ = right$(l2$,len(l2$)-sep%-1)
         l2$= a$+"<span2>"+"' "+b$+"</span2>"
      end_if
      
'     traitement des mots clés
      if instr(l2$,"<span2>")=0
      for x% = 1 to count(Kword%)
         K$=item_read$(Kword%,x%)
         sep%=instr(l2$,k$)
         if sep% > 0
            if mid$(l2$,sep%+len(k$),1)=chr$(32) or mid$(l2$,sep%+len(k$),1)="("
               sep%=sep%-1
               a$=left$(l2$,sep%)
               a$=a$+"<span>"
               sep%=sep%+len(k$)
               b$= right$(l2$,len(l2$)-sep%)
               l2$=a$+k$+"</span>"+b$
            end_if
         else
            sep%=instr(l2$,lower$(k$))
            if sep% > 0
               if mid$(l2$,sep%+len(k$),1)=chr$(32) or mid$(l2$,sep%+len(k$),1)="("
                  sep%=sep%-1
                  a$=left$(l2$,sep%)
                  a$=a$+"<span>"
                  sep%=sep%+len(k$)
                  b$= right$(l2$,len(l2$)-sep%)
                  l2$=a$+k$+"</span>"+b$
               end_if
            end_if
         end_if
      next x%
      end_if
      
      file_writeln FOW%,string$(4,chr$(9))+l2$+"<br>"
      l2$=""
   next i%
  
   file_writeln FOW%,string$(3,chr$(9))+"</Code>"
   file_writeln FOW%,string$(2,chr$(9))+"</Div>"
   file_writeln FOW%,chr$(9)+"</BODY>"
   file_writeln FOW%,"</HTML>"
   file_close FOW%
END_SUB

Fichier *.css:

Fichier *.inf:
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7006
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

BAS to HTML Empty
MessageSujet: Re: BAS to HTML   BAS to HTML EmptyJeu 17 Déc 2015 - 3:20

Very good, but …
Eh oui, il y a un mais !
Ligne 51
Code:

dim Version$

Erreur :   Name already defined. Line : 51

En effet, la version actuelle (V 0.9.27i5) définit elle-même la variable système VERSION$ qui   retourne la version de PANORAMIC.

J’ai modifié partout dans le code version$ par version1$ et ça a marché comme sur des roulettes.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

BAS to HTML Empty
MessageSujet: Re: BAS to HTML   BAS to HTML EmptyJeu 17 Déc 2015 - 7:21

En sachant que les traitements de textes gèrent le HTML, ça permetera d'avoir de beaux programmes dans les articles aussi Wink
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

BAS to HTML Empty
MessageSujet: re   BAS to HTML EmptyJeu 17 Déc 2015 - 18:35

@ Jicehel,

Cet "Utilitaire" est en prévision pour le mag mais pas pour la rubrique "Articles"... Evil or Very Mad
Je pensais plutôt à une rubrique "Tutos"... Twisted Evil

@ Papydall,

Je vais corriger chez moi et je remettrai en ligne avec une petite évolution dans quelques temps.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

BAS to HTML Empty
MessageSujet: re   BAS to HTML EmptyJeu 17 Déc 2015 - 20:59

Voilà une version ou l' on peut ajouter une description du programme avant le code source.

*.bas:

le css qui pourrait servir dans Le Mag
*.css:
Revenir en haut Aller en bas
Contenu sponsorisé





BAS to HTML Empty
MessageSujet: Re: BAS to HTML   BAS to HTML Empty

Revenir en haut Aller en bas
 
BAS to HTML
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Sub de conversion Html -> Texte
» Un petit éditeur html
» Fichiers HTML
» Couleurs HTML
» Créer un fichier Html

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: