Introducing FiveTech's fivedit

Re: Introducing FiveTech's fivedit

Postby Antonio Linares » Wed Jan 28, 2015 6:05 am

New Fivedit version:

* support for Braces match ( [ { ... } ] )

* A previous Fivedit running instance is detected and shown.
If a filename is supplied to the new instance, such filename is passed to the first instance.

https://bitbucket.org/fivetech/fivewin-contributions/downloads/fivedit.zip

Full source code provided. Important: In order to build Fivedit FWH 15.02 is required
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Introducing FiveTech's fivedit

Postby James Bott » Wed Jan 28, 2015 2:23 pm

Antonio,

* support for Braces match ( [ { ... } ] )


Either this is not working or I don't understand how it works.

In my current editor if you type:

msgInfo(

It automatically adds the trailing parenthesis, so it looks like this:

msgInfo()

And the cursor is between the parentheses.

I do not see this in the new version of Fivedit.

Maybe it works differently?
User avatar
James Bott
 
Posts: 4840
Joined: Fri Nov 18, 2005 4:52 pm
Location: San Diego, California, USA

Re: Introducing FiveTech's fivedit

Postby James Bott » Wed Jan 28, 2015 2:29 pm

Ok, I see that it does highlight the matching brace when one is highlighted with the cursor. That is useful too.

My current editor does both--automatically add the trailing brace, and highlight the matching one.

The more you think about editors, the more you realize how incredibly complex they are.
User avatar
James Bott
 
Posts: 4840
Joined: Fri Nov 18, 2005 4:52 pm
Location: San Diego, California, USA

Re: Introducing FiveTech's fivedit

Postby James Bott » Wed Jan 28, 2015 3:03 pm

I notice that there is no error description reporting other than:

Fatal: Unable to open file 'NONAME.OBJ'

My current editor reports the error description and line number, then jumps to the line containing the error. I am just using a modified xbuild.bat. Perhaps there is a compiler flag that needs to be set (I am just using the default flags in Fivedit)?

ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ FiveWin for xHarbour 13.04 - Apr. 2013 xHarbour development power ³Ü
³ (c) FiveTech, 1993-2013 for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7/8 ³Û
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
Compiling...

noname.prg(5) Error E0020 Incomplete statement or unbalanced delimiters
xHarbour 1.2.3 Intl. (SimpLex) (Build 20130326)
Copyright 1999-2013, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'noname.prg' and generating preprocessed output to 'noname.ppo'...
...
1 error

No code generated
* Compile errors *

Process completed, Exit Code 0.
Execution time: 00:02.735
User avatar
James Bott
 
Posts: 4840
Joined: Fri Nov 18, 2005 4:52 pm
Location: San Diego, California, USA

Re: Introducing FiveTech's fivedit

Postby Enrico Maria Giordano » Wed Jan 28, 2015 3:19 pm

James,

you should update your xHarbour version. It's too old.

EMG
User avatar
Enrico Maria Giordano
 
Posts: 8715
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia

Re: Introducing FiveTech's fivedit

Postby James Bott » Wed Jan 28, 2015 11:52 pm

Enrico,

Yes, I have an old version on this PC, but the current one on another. This, however, doesn't have anything to do with the missing error message. I am still trying to figure that out.

A batch file shows the error message, but the Fivedit.exe doesn't--even though they are executing the exact same command. I am missing something obvious, I'm sure. So I had to walk away for awhile.

James
User avatar
James Bott
 
Posts: 4840
Joined: Fri Nov 18, 2005 4:52 pm
Location: San Diego, California, USA

Re: Introducing FiveTech's fivedit

Postby Antonio Linares » Thu Jan 29, 2015 1:39 am

James,

Surely it is related to the compiler default error output.

This is the right way to redirect both warnings are errors from harbour.exe:

harbour.exe myapp.prg /n > comp.log 2> warnings.log

Notice the use of ">" and "2> " to redirect both outputs channels: stdout and stderr
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Introducing FiveTech's fivedit

Postby Antonio Linares » Thu Jan 29, 2015 1:42 am

James,

https://github.com/harbour/core/blob/master/src/compiler/hbcomp.c

Please review hb_compOutStd() and hb_compOutErr() source code
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Introducing FiveTech's fivedit

Postby James Bott » Thu Jan 29, 2015 5:25 am

Antonio,

This my test. I just left off a parenthsis from MsgInfo( in the noname.prg example, then compiled.

Code: Select all  Expand view
#include "FiveWin.ch"

function Main()

   MsgInfo( "Hello world!" //)
   
return nil
 


This is the first part of the output I get from Fivedit:

Code: Select all  Expand view
xHarbour 1.2.3 Intl. (SimpLex) (Build 20130326)
Copyright 1999-2013, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'noname.prg' and generating preprocessed output to 'noname.ppo'...

10010010010020030040050060070080090010001100100200100200100200100200300400500600700800900100011001200130014001500160
17001 error

No code generated

 


Now if I use the same line for the xHarbour compiler and execute it directly from the command prompt or from a batch file I get this output:


Code: Select all  Expand view
C:\Users\James\Downloads\fivedit>c:\xharbour\bin\harbour noname /ic:\xharbour\in
clude;c:\fwh\include /n /w /p
xHarbour 1.2.3 Intl. (SimpLex) (Build 20130326)
Copyright 1999-2013, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'noname.prg' and generating preprocessed output to 'noname.ppo'...
noname.prg(5) Error E0020  Incomplete statement or unbalanced delimiters
1 error

No code generated
 


Note that Fivedit's output is not showing the error code or the description, yet the compile command shows the error code and description when not run from Fivedit.

I guess this has to do with the Harbour functions you mentioned and I looked at them, but I don't know C so it is beyond my understanding to figure this out.

Anyone else seeing the same thing as me?
User avatar
James Bott
 
Posts: 4840
Joined: Fri Nov 18, 2005 4:52 pm
Location: San Diego, California, USA

Re: Introducing FiveTech's fivedit

Postby Antonio Linares » Thu Jan 29, 2015 10:05 am

James,

It may be related to this:

viewtopic.php?p=171464#p171464

I am going to check it, thanks
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Introducing FiveTech's fivedit

Postby dbmanfwh » Thu Jan 29, 2015 12:19 pm

Dear Antonio,

METHOD AddHarbourLibs()

CHarbExtraLibs was not added to cLibs actually.
Regards,
Moon
FWH 16.11 | xHarbour | Harbour | BCC72 | DBF | ADS | MySQL | DrLib
dbmanfwh
 
Posts: 38
Joined: Tue Mar 04, 2008 3:44 pm
Location: Korea

Re: Introducing FiveTech's fivedit

Postby James Bott » Thu Jan 29, 2015 5:15 pm

Moon,

CHarbExtraLibs was not added to cLibs actually.


Did you mean that there is a file named "charbextralibs.lib" that was not added? If so, I do not see that file in the xharbour\libs directory. Is it elsewhere?

Or, did you mean something else?
User avatar
James Bott
 
Posts: 4840
Joined: Fri Nov 18, 2005 4:52 pm
Location: San Diego, California, USA

Re: Introducing FiveTech's fivedit

Postby dbmanfwh » Fri Jan 30, 2015 1:28 am

James,

Explanation is sorry because is insufficient.
cHarbExtraLibs variable was not included to cLibs variable.
Code: Select all  Expand view

METHOD AddHarbourLibs() CLASS TFivedit

   local lHarbour := AllTrim( ::cHarbComp ) == "Harbour"
   local cLibs, cFWHExtraLibs := "", cHarbExtraLibs := ""

   if ! Empty( ::cFWHExtraLibs )
      AEval( hb_aTokens( StrTran( AllTrim( ::cFWHExtraLibs ), ",", "" ) ),;
             { | cLib | cFWHExtraLibs += AllTrim( ::cFWHPath ) + "\lib\" + ;
                        cLib + "
" } )
   endif                    

   if ! Empty( ::cHarbExtraLibs )
      AEval( hb_aTokens( StrTran( AllTrim( ::cHarbExtraLibs ), "
,", "" ) ),;
             { | cLib | cHarbExtraLibs += AllTrim( ::cHarbPath ) + "
\lib\" + ;
                        cLib + "
" } )
   endif                    

   cLibs = AllTrim( ::cFWHPath ) + "
\lib\" + ;
           If( lHarbour, "
fiveh.lib ", "fivehx.lib " ) + ;
           AllTrim( ::cFWHPath ) + "
\lib\" + "fivehc.lib " + ;
           cFWHExtraLibs + ;
           If( lHarbour, AllTrim( ::cHarbPath ) + "
\lib\" + "hbwin.lib ", "" ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + "gtgui.lib " + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbrtl.lib ", "rtl.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbvm.lib ", "vm.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hblang.lib ", "lang.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbmacro.lib ", "macro.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbrdd.lib ", "rdd.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
rddntx.lib ", "dbfntx.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
rddcdx.lib ", "dbfcdx.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
rddfpt.lib ", "dbffpt.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + "hbsix.lib " + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbdebug.lib ", "debug.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbcommon.lib ", "common.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbpp.lib ", "pp.lib " ) + ;
           If( lHarbour, AllTrim( ::cHarbPath ) + "
\lib\" + ;
           "
hbcpage.lib ", "" ) + ;
           If( lHarbour, AllTrim( ::cHarbPath ) + "
\lib\" + ;
           "
hbcplr.lib ", "" ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbct.lib ", "ct.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbpcre.lib ", "pcrepos.lib " ) + ;
           If( lHarbour, AllTrim( ::cHarbPath ) + "
\lib\" + ;
           "
xhb.lib ", "" ) + ;
           If( lHarbour, AllTrim( ::cHarbPath ) + "
\lib\" + ;
           "
hbziparc.lib ", "" ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbmzip.lib ", "hbzip.lib " ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + ;
           If( lHarbour, "
hbzlib.lib ", "zlib.lib " ) + ;
           If( lHarbour, AllTrim( ::cHarbPath ) + "
\lib\" + ;
           "
minizip.lib ", "" ) + ;
           AllTrim( ::cHarbPath ) + "
\lib\" + "png.lib " + ;
           If( lHarbour, AllTrim( ::cHarbPath ) + "
\lib\" + "hbcurl.lib ", "" ) + ;
           If( lHarbour, AllTrim( ::cHarbPath ) + "
\lib\" + "hbusrrdd.lib ", "" )

return cLibs

Regards,
Moon
FWH 16.11 | xHarbour | Harbour | BCC72 | DBF | ADS | MySQL | DrLib
dbmanfwh
 
Posts: 38
Joined: Tue Mar 04, 2008 3:44 pm
Location: Korea

Re: Introducing FiveTech's fivedit

Postby Antonio Linares » Fri Jan 30, 2015 4:49 am

regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Introducing FiveTech's fivedit

Postby James Bott » Fri Jan 30, 2015 4:10 pm

Antonio,

If that last change was supposed to fix the compiler output--it did not. The output is exactly the same as it was before; no error description.

James
User avatar
James Bott
 
Posts: 4840
Joined: Fri Nov 18, 2005 4:52 pm
Location: San Diego, California, USA

PreviousNext

Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 32 guests