Page 1 of 1

Create cTags file with UESTUDIO

Posted: Thu Feb 01, 2007 9:24 am
by Maurizio
I am testing UESTUDIO editor and it is very good .

I am problem to create the cTags file (with Exuberant Ctags) .

There is a way to create the cTags with another programm ?

Regards Maurizio

Posted: Fri Feb 02, 2007 10:39 am
by Antonio Linares
Maurizio,

We don't know it, we have never tried it

Posted: Thu Feb 08, 2007 2:45 pm
by Ken Wantz
Maurizio,

Have you tried to send an email to the makers of UESTUDIO at idm@idmcomp.com? They respond quickly with either an answer or a fix.

I have been working with IDM recently to create an improved config file used to build apps using xHarbour, FiveWin using the Borland compiler. I am not certain if the latest config file has been released yet but my testing so far looks good.

As added info, some time ago there was also posted a message regarding the Custom Control. I could find no problem with my copy of UEStudio but reported it anyway to insure that the current version was indeed fixed.
Regards,

Ken

Posted: Thu Feb 08, 2007 4:33 pm
by Antonio Linares
Ken,

>
I have been working with IDM recently to create an improved config file used to build apps using xHarbour, FiveWin using the Borland compiler.
>

Will you mind to share them with us ? thanks,

Posted: Mon Feb 12, 2007 3:15 pm
by Ken Wantz
Please refer to my new UEStudio Configuration File post at
http://fivetechsoft.com/forums/viewtopic.php?t=6470

Ken

Posted: Sun Feb 18, 2007 12:52 pm
by Andrés González
Sorry Kent Will you mind to share the other files too, config and project and the wordfile.txt.

Thanks.

Posted: Sun Feb 18, 2007 7:29 pm
by Ken Wantz
Andrés

If you refer to the last entry in http://fivetechsoft.com/forums/viewtopi ... t=uestudio you will find a link Antonio posted to download a zip of the Project, Config and Wordfile.txt files.

Note that the Config file in the zip is different from the config I posted here. Mine was created by the IDM developers which I tested to insure it worked correctly.

Regards,

Ken

Posted: Mon Feb 19, 2007 10:57 am
by Andrés González
Correct, Kent Thanks....

My UESTUDIO is working now....

Posted: Tue Jun 26, 2007 3:03 pm
by Maurizio
Ken is possible to have the recent config file for xHarbur .

Regards Maurizio

Posted: Tue Jun 26, 2007 3:25 pm
by Maurizio
This is a sample programm for create the cTags file , so is it possible find any function in a disk or in folder .

Code: Select all

#include "FiveWin.ch"
static oMeter2 

//-----------------------------------------------------------------------------------------
function Main()
LOcal bAction := { | oMeter, oText, oDlg, lEnd |  CreaTag( oMeter, oText, oDlg, @lEnd ) }
   
  MyMsgMeter( bAction,,"Wait" ) 

return nil

Static function CreaTag(oMeter, oText, oDlg, lEnd)
   Local aDir := {}
   Local aFile := {}
   Local cSubDir := ""
   Local cFile := ""
   Local cString := ""
   Local nX ,nY := 1
   local nT := 1
   Local aDAti := {}
   Local lOk := .F.
   Local cFileExt := ""
   Local cRiga := ""
   Local cText := + ;
						   '!_TAG_FILE_FORMAT	1	/extended format; --format=1 will not append ; to lines/' + CRLF + ;
   						'!_TAG_FILE_SORTED	1	/0=unsorted, 1=sorted, 2=foldcase/' + CRLF + ;
   						'!_TAG_PROGRAM_AUTHOR	Darren Hiebert	/dhiebert@users.sourceforge.net/'+ CRLF + ;
   						'!_TAG_PROGRAM_NAME	Exuberant Ctags	//'+ CRLF + ;
   						'!_TAG_PROGRAM_URL	http://ctags.sourceforge.net	/official site/'+ CRLF + ;
   						'!_TAG_PROGRAM_VERSION	5.6	//' + CRLF
   Local cDati := cText

   Local cFileDat :=  "c:\temp\list.tag"
   Local cDir := "c:\fwh\"

   
   Local nOutFile := 0
   Local nTot := 0    
   
   MsgGet("", "Name file cTags ", @cFileDat ) 
   
   MsgGet("", "Folder _ (include subdirectoris) ", @cDir ) 
      
   aDir :=  DIRECTORY(cDir,"D")
   nOutfile := FCREATE(cFileDat, 0)

   FWRITE(nOutfile, cText, len(cText))
   
   FOR nX := 1 to len(aDir)
       IF aDir[nX,5] == "D"
	       cSubDir := cDir + aDir[nX,1] + "\"    
	       aFile := DIRECTORY(cSubdir)
	       FOR nY := 1 to len(aFile)
	           cFile :=  aFile[nY,1]
	          IF cFileExt(cFile) == "PRG"
		          nTot++	
	          ENDIF	
	       NEXT   
	    ENDIF
   NEXT
   oMeter2:nTotal:= nTot   
   nTot := 1
  	   
   For nX := 1 to len(aDir)
       IF aDir[nX,5] == "D"
	       cSubDir := cDir + aDir[nX,1] + "\"    
	       aFile := DIRECTORY(cSubdir)
	       for nY := 1 to len(aFile)
	          
	       	 cFile :=  aFile[nY,1]
	          IF cFileExt(cFile) == "PRG"
	          	oMeter:cText :=  cSubDir + "\" + cFile + "   " + str(nX)  +   str(len(aDir))
               cDati :=  ScriviFile(cSubdir + cFile,oMeter)
               FWRITE(nOutfile, cDati, len(cDati))
               nTot++
               oMeter2:Set(nTot )
 	   		   oMeter2:cText := str(nTot)+ "/" + str(oMeter2:nTotal)
              endif    
           	  IF lEnd
           	  	  return nil
           	  endIF
           NEXT
     	   endif		      
	   
	NEXT
	
	
  FCLOSE(nOutfile)

	
return .t.
//---------------------------------------------------------------------------------------------
Static function ScriviFile(cFileExt,oMeter)
Local cFile := ""
Local nX := 0
Local nT := 1
Local cString := ""
Local lOk := .F.
Local cDati := ""   
   cString := MEMOREAD(cFileExt)
   nT :=  MLCOUNT(cString,254)
   oMeter:nTotal := nT

   for nX := 1 TO nT
   	 lOk := .F.
       cFile :=  UPPER(memoline(cString,254,nX))
      
       IF at("FUNCTION",cFile) > 0 
       	 cFile := STRTRAN(cFile, "FUNCTION", "")
          cFile := STRTRAN(cFile, "STATIC", "")
          lOk := .T.    
       ENDIF	
       if Lok ==.f.
       	
       	IF at("METHOD",cFile) > 0 
       	   IF at("CLASS",cFile) > 0 
               cFile := STRTRAN(cFile, "METHOD", "")
               lOk := .T.    
               
            endIF   
       	ENDIF	
       ENDIF
       IF lOk 
       	 cFile := STRTRAN(cFile, " ", "")
          cFile := SUBSTR(cFile,1,AT("(",cFile)-1)
          cFile += chr(9) +  cFileExt     + chr(9) + alltrim(str(nX))
          cDati += cFile + CRLF 	
     	 endif
       oMeter:Set(nX )
    next

Return cDati
//======================================================================================================
function MyMsgMeter( bAction, cMsg, cTitle )

   local oDlg, oMeter, oText, oBtn, oFont
   local lEnd := .f., lCancel := .f.
   local nVal,nVal2 := 0

   DEFAULT bAction := { || nil },;
           cMsg := "Processing...", cTitle := "Please, wait"

   DEFINE FONT oFont NAME GetSysFont() SIZE 0, -8

   DEFINE DIALOG oDlg FROM 5, 5 TO 13, 45 TITLE cTitle FONT oFont

   @ 0.2, 0.5  SAY oText VAR cMsg SIZE 130, 10 OF oDlg

   @ 1,   0.5  METER oMeter  VAR nVal TOTAL 10 SIZE 150, 10 OF oDlg
   
   @ 2,   0.5  METER oMeter2 VAR nVal2 TOTAL 10 SIZE 150, 10 OF oDlg
   
   

   @  2.2,  10.4  BUTTON oBtn PROMPT "&Cancel" OF oDlg ;
      ACTION ( lEnd:= .t., lCancel:= .t. ) SIZE 32, 11

   oDlg:bStart = { || Eval( bAction, oMeter, oText, oDlg, @lEnd, oBtn ),;
                      lEnd := .t., oDlg:End() }

   ACTIVATE DIALOG oDlg CENTERED ;
      VALID lEnd

   oFont:End()

return lCancel

Posted: Tue Jun 26, 2007 5:43 pm
by Antonio Linares
Maurizio,

Thanks! :-)

Posted: Wed Jun 27, 2007 6:34 am
by Maurizio
Antonio
is it possible to have the recent config file (Application) for xHarbur .

Regards Maurizio

Posted: Wed Jun 27, 2007 7:01 am
by Antonio Linares
Maurizio,

UEStudio provides it though we find it too complex and messy, so we built one for Harbour, simpler, that can be easily modified for xharbour