Continue Eclipse Freemarker DLTK?

classic Classic list List threaded Threaded
56 messages Options
123
Reply | Threaded
Open this post in threaded view
|

Continue Eclipse Freemarker DLTK?

angelozerr
Hi Daniel,

I have retried my work about Freemarker DLTK with last version of DLTK.
The good news is that the API of DLTK has a changed a litlle. So it was easy to rerun Freemarker DLTK with DLTK 4.0.

I have seen quickly my code and those plugins was based on FM 3.0.0 and I had changed a lot the Debbuger code to manage DBGP protocol (debug protocol supported by DLTK).

I have several questions  : 

1) Are you really  interested with Freemarker DLTK? To be honest with you, I will not really motivated to develop it if nobody test and play with it (and it should be fantastic if I find people who help me).

If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr

But my big problem is time (as a lot of developpers).

2) FM 3.0.0?

Is it a good idea to use FM 3.0.0 based on FreeCC if I have understood?

3) DBGP Debugger

Existing code of Debugger should be modified to support several implementation of Debugger (RMI, DBGP, etc). So I think it's the first step if we decide to develop Freemarker DLTK.

Regards Angelo





------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Greg Amerson
Hey Angelo,

I'm Greg Amerson from Liferay and I'm pleased to meet you online. :)

My team and I at Liferay are very interested in your DLTK based freemarker editor and the improved debugging support via DBGP.  I am the project lead of Liferay IDE (set of OSS eclipse plugins for Liferay-based development) and as you have read Liferay makes heavy use of freemarker, theme development, application display templates, workflow templates, etc, etc.  I have even spent the last few weeks writing a debugger client for freemarker in Liferay IDE to hook into the existing RMI API (which required a few changes to freemarker RMI debugger).  I'm sorry that I didn't stumble upon your DBGP work before as I was have contacted you earlier. :)

So to answer 2 of your questions

1) I am extremely interested in your DLTK debugger.  I am interested to see a new editor that advancing past the capabilities of the existing Freemarker Editor created by Joe Hudson (now hosted at jbosstools).  I can commit my own team's resources to testing, debugging and helping with bug fixes for your new DLTK based editor.

3) DBGP Debugger
I am interested in advancing the features of freemarker debugger that move beyond the current capabilities of RMI debugger to include, stepping, evaluation, change-value.  If going with a brand new DBGP debugger is the best way to go, then I'm willing to pitch in.  But if it would be faster to just enhance/extend the RMI debugger, I'm interested in that as well especially if that would allow us to ship something within a few months.
 
Once again its my pleasure to begin this discussion with you, hope to hear from you soon!  

Greg

On Mon, Jun 10, 2013 at 9:46 PM, Angelo zerr <[hidden email]> wrote:
Hi Daniel,

I have retried my work about Freemarker DLTK with last version of DLTK.
The good news is that the API of DLTK has a changed a litlle. So it was easy to rerun Freemarker DLTK with DLTK 4.0.

I have seen quickly my code and those plugins was based on FM 3.0.0 and I had changed a lot the Debbuger code to manage DBGP protocol (debug protocol supported by DLTK).

I have several questions  : 

1) Are you really  interested with Freemarker DLTK? To be honest with you, I will not really motivated to develop it if nobody test and play with it (and it should be fantastic if I find people who help me).

If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr

But my big problem is time (as a lot of developpers).

2) FM 3.0.0?

Is it a good idea to use FM 3.0.0 based on FreeCC if I have understood?

3) DBGP Debugger

Existing code of Debugger should be modified to support several implementation of Debugger (RMI, DBGP, etc). So I think it's the first step if we decide to develop Freemarker DLTK.

Regards Angelo





------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel




--
Greg Amerson
Liferay Developer Tools
Liferay, Inc. www.liferay.com

------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

angelozerr
Hi Greg,

Please to meet you:)

I'm happy that my very old work could interest people. At first you can read my odt https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/ which shows you features of the DLTK Freemarker (debug, preview, etc). I think it's a first step to have a very powerful Freemarker Plugins but it's very basic for the moment (there are a lot of work to obtain the same features then JBoss Freemarker IDE).

DLTK provides a lot of features like debugger and I think it can manage refactoring (never tested). I'm waiting for the answer of Daniel, but I could create a GitHub project in order to you can test and play with DLTK Freemarker. The big problem is that DBGP Debugger is based on FM 3.0.0, but I think it should be easy to switch to FM 2.x.

Debugger API should be modified.

I will be very glad to work together.

Regards Angelo


2013/6/10 Greg Amerson <[hidden email]>
Hey Angelo,

I'm Greg Amerson from Liferay and I'm pleased to meet you online. :)

My team and I at Liferay are very interested in your DLTK based freemarker editor and the improved debugging support via DBGP.  I am the project lead of Liferay IDE (set of OSS eclipse plugins for Liferay-based development) and as you have read Liferay makes heavy use of freemarker, theme development, application display templates, workflow templates, etc, etc.  I have even spent the last few weeks writing a debugger client for freemarker in Liferay IDE to hook into the existing RMI API (which required a few changes to freemarker RMI debugger).  I'm sorry that I didn't stumble upon your DBGP work before as I was have contacted you earlier. :)

So to answer 2 of your questions

1) I am extremely interested in your DLTK debugger.  I am interested to see a new editor that advancing past the capabilities of the existing Freemarker Editor created by Joe Hudson (now hosted at jbosstools).  I can commit my own team's resources to testing, debugging and helping with bug fixes for your new DLTK based editor.

3) DBGP Debugger
I am interested in advancing the features of freemarker debugger that move beyond the current capabilities of RMI debugger to include, stepping, evaluation, change-value.  If going with a brand new DBGP debugger is the best way to go, then I'm willing to pitch in.  But if it would be faster to just enhance/extend the RMI debugger, I'm interested in that as well especially if that would allow us to ship something within a few months.
 
Once again its my pleasure to begin this discussion with you, hope to hear from you soon!  

Greg

On Mon, Jun 10, 2013 at 9:46 PM, Angelo zerr <[hidden email]> wrote:
Hi Daniel,

I have retried my work about Freemarker DLTK with last version of DLTK.
The good news is that the API of DLTK has a changed a litlle. So it was easy to rerun Freemarker DLTK with DLTK 4.0.

I have seen quickly my code and those plugins was based on FM 3.0.0 and I had changed a lot the Debbuger code to manage DBGP protocol (debug protocol supported by DLTK).

I have several questions  : 

1) Are you really  interested with Freemarker DLTK? To be honest with you, I will not really motivated to develop it if nobody test and play with it (and it should be fantastic if I find people who help me).

If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr

But my big problem is time (as a lot of developpers).

2) FM 3.0.0?

Is it a good idea to use FM 3.0.0 based on FreeCC if I have understood?

3) DBGP Debugger

Existing code of Debugger should be modified to support several implementation of Debugger (RMI, DBGP, etc). So I think it's the first step if we decide to develop Freemarker DLTK.

Regards Angelo





------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel




--
Greg Amerson
Liferay Developer Tools
Liferay, Inc. www.liferay.com

------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel



------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Greg Amerson
Hey Angelo,

Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.  Then I can install DLTK dependencies in my environment and try to import them in. 

Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3? 

G




On Mon, Jun 10, 2013 at 10:39 PM, Angelo zerr <[hidden email]> wrote:
Hi Greg,

Please to meet you:)

I'm happy that my very old work could interest people. At first you can read my odt https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/ which shows you features of the DLTK Freemarker (debug, preview, etc). I think it's a first step to have a very powerful Freemarker Plugins but it's very basic for the moment (there are a lot of work to obtain the same features then JBoss Freemarker IDE).

DLTK provides a lot of features like debugger and I think it can manage refactoring (never tested). I'm waiting for the answer of Daniel, but I could create a GitHub project in order to you can test and play with DLTK Freemarker. The big problem is that DBGP Debugger is based on FM 3.0.0, but I think it should be easy to switch to FM 2.x.

Debugger API should be modified.

I will be very glad to work together.

Regards Angelo


2013/6/10 Greg Amerson <[hidden email]>
Hey Angelo,

I'm Greg Amerson from Liferay and I'm pleased to meet you online. :)

My team and I at Liferay are very interested in your DLTK based freemarker editor and the improved debugging support via DBGP.  I am the project lead of Liferay IDE (set of OSS eclipse plugins for Liferay-based development) and as you have read Liferay makes heavy use of freemarker, theme development, application display templates, workflow templates, etc, etc.  I have even spent the last few weeks writing a debugger client for freemarker in Liferay IDE to hook into the existing RMI API (which required a few changes to freemarker RMI debugger).  I'm sorry that I didn't stumble upon your DBGP work before as I was have contacted you earlier. :)

So to answer 2 of your questions

1) I am extremely interested in your DLTK debugger.  I am interested to see a new editor that advancing past the capabilities of the existing Freemarker Editor created by Joe Hudson (now hosted at jbosstools).  I can commit my own team's resources to testing, debugging and helping with bug fixes for your new DLTK based editor.

3) DBGP Debugger
I am interested in advancing the features of freemarker debugger that move beyond the current capabilities of RMI debugger to include, stepping, evaluation, change-value.  If going with a brand new DBGP debugger is the best way to go, then I'm willing to pitch in.  But if it would be faster to just enhance/extend the RMI debugger, I'm interested in that as well especially if that would allow us to ship something within a few months.
 
Once again its my pleasure to begin this discussion with you, hope to hear from you soon!  

Greg

On Mon, Jun 10, 2013 at 9:46 PM, Angelo zerr <[hidden email]> wrote:
Hi Daniel,

I have retried my work about Freemarker DLTK with last version of DLTK.
The good news is that the API of DLTK has a changed a litlle. So it was easy to rerun Freemarker DLTK with DLTK 4.0.

I have seen quickly my code and those plugins was based on FM 3.0.0 and I had changed a lot the Debbuger code to manage DBGP protocol (debug protocol supported by DLTK).

I have several questions  : 

1) Are you really  interested with Freemarker DLTK? To be honest with you, I will not really motivated to develop it if nobody test and play with it (and it should be fantastic if I find people who help me).

If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr

But my big problem is time (as a lot of developpers).

2) FM 3.0.0?

Is it a good idea to use FM 3.0.0 based on FreeCC if I have understood?

3) DBGP Debugger

Existing code of Debugger should be modified to support several implementation of Debugger (RMI, DBGP, etc). So I think it's the first step if we decide to develop Freemarker DLTK.

Regards Angelo





------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel




--
Greg Amerson
Liferay Developer Tools
Liferay, Inc. www.liferay.com

------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel



------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel




--
Greg Amerson
Liferay Developer Tools
Liferay, Inc. www.liferay.com

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Daniel Dekany
In reply to this post by angelozerr
Monday, June 10, 2013, 3:46:39 PM, Angelo zerr wrote:

> Hi Daniel,
>
> I have retried my work about Freemarker DLTK with last version of DLTK.
> The good news is that the API of DLTK has a changed a litlle. So it
> was easy to rerun Freemarker DLTK with DLTK 4.0.
>
> I have seen quickly my code and those plugins was based on FM 3.0.0
> and I had changed a lot the Debbuger code to manage DBGP protocol
> (debug protocol supported by DLTK).
>
> I have several questions  :
>
> 1) Are you really  interested with Freemarker DLTK? To be honest
> with you, I will not really motivated to develop it if nobody test
> and play with it (and it should be fantastic if I find people who help me).

Of course, I will test it. But most of the work that I will have to do
is with improving the living branch (GitHub, 2.3-gae ATM) so that it
will be good for the plugin.

> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr

That's good, I prefer that over sf.net SVN.

> But my big problem is time (as a lot of developpers).
>
> 2) FM 3.0.0?
>
> Is it a good idea to use FM 3.0.0 based on FreeCC if I have understood?

The FM 3 branch you are talking about (the sf.net SVN trunk) is
"officially" dead for a long time, and it wont ever yield a release.
So in theory, you had to build on what's on GitHub (use the "2.3-gae"
branch now). Of course, 2.3 has virtually no public AST API, so you
can't use that either. (And I guess some other things will be missing
too. Can you tell me what?) So for now you will have to work against
FM 3.

As of what will it work on then when it's released... The AST stuff
changes will break BC too much for a 2.3 (I guess), so it will have to
be FM 2.4. But if it's 2.4.0, then of course I will want to put in
some other minor not-strictly-BC changes too (not to mention new
features that somehow justifies in the eyes of the average uses the
2nd version increase). I will be careful not to be too ambitious with
it, as I don't want to impede the release of the plugin, or undermine
the trust on the release of the new 2.4 branch. So as you see, there
are some difficulties, but if you are going to work on the plugin, I
will try very hard to clear its way.

> 3) DBGP Debugger
>
> Existing code of Debugger should be modified to support several
> implementation of Debugger (RMI, DBGP, etc). So I think it's the
> first step if we decide to develop Freemarker DLTK.

(I see the discussion about that with Greg Amerson has been started .)

> Regards Angelo

--
Thanks,
 Daniel Dekany


------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

angelozerr
Hi Greg, Daniel,

> Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.  
Sure!

I have pushed Freemarker DLTK on GitHub https://github.com/angelozerr/Freemarker-Eclipse-DLTK
It works with last version of DLTK 4.0 (current is 5.0).

I have written a short dev-guide https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide which explains how to launch it.

I add you as colaborator in my GitHub project. So I think you can push it. 
@Daniel, if you are interested, I can add you too.

> Then I can install DLTK dependencies in my environment and try to import them in.  
No needs to install DLTK with classic mean. Just set the Target Platform (see explanation at  https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide)
I like this idea about using Target Platform, because you can switch to another version of DLTK without installing it in your Eclipse.

> Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3?  
My work doesn't work with FM 2.3 because FM3.0 changes package name for instance. But I think it will be easy to switch to 2.3
the only thing is to create some patches because debugger should be improved.

> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr

That's good, I prefer that over sf.net SVN.

 

The FM 3 branch you are talking about (the sf.net SVN trunk) is
"officially" dead for a long time, and it wont ever yield a release.
So in theory, you had to build on what's on GitHub (use the "2.3-gae"
branch now). Of course, 2.3 has virtually no public AST API, so you
can't use that either. (And I guess some other things will be missing
too. Can you tell me what?) So for now you will have to work against
FM 3.

As of what will it work on then when it's released... The AST stuff
changes will break BC too much for a 2.3 (I guess), so it will have to
be FM 2.4. But if it's 2.4.0, then of course I will want to put in
some other minor not-strictly-BC changes too (not to mention new
features that somehow justifies in the eyes of the average uses the
2nd version increase). I will be careful not to be too ambitious with
it, as I don't want to impede the release of the plugin, or undermine
the trust on the release of the new 2.4 branch. So as you see, there
are some difficulties, but if you are going to work on the plugin, I
will try very hard to clear its way.

I will try to migrate to 2.3 to see if they are a lot of modification to do. 

> 3) DBGP Debugger
>
> Existing code of Debugger should be modified to support several
> implementation of Debugger (RMI, DBGP, etc). So I think it's the
> first step if we decide to develop Freemarker DLTK.

(I see the discussion about that with Greg Amerson has been started .)

> Regards Angelo
Regards Angelo 

--
Thanks,
 Daniel Dekany



------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Daniel Dekany
Hi,

Anything with this since then? Last time we were there that it should
be checked if what changes are needed in the current branch of
FreeMarker for it become usable with the DLTK plugin. I know, I could
check that too... it's that I have too much on my plate regarding
FreeMarker already. Lot of core stuff, and I don't think that anybody
can solve them in the foreseeable future but me. OTOH there are
several other critical things for FreeMarker that's much easier to
jump into, and they also need some specific experience that I happen
not to posses (much...):

- Better Eclipse IDE. (I have used the JBoss Tools stuff nowadays, and
  it's not in a good shape at all.)

- Spring integration should be checked by someone. Framework authors
  often just throw in FM, together with Velocity, because it's the
  standard checklist thing to support template engines, and end of
  story. So from the viewpoint of the user it will simply mean that
  FreeMarker sucks.

- Struts integration too.

- Better JSP support. The biggest issue with the current one is that it's
  part of the FreemarkerServlet. People often want to call FreeMarker
  by other means. FreemarkerServlet is rather limiting and ugly anyway...

Anyway... my current priorities are (in the order I plan to do them):

- Fixing overloaded method selection and numerical conversions on method
  calls. This is in progress.

- Allow more configurability with the String-based settings API (as
  this is what most frameworks use in their own configuration XML-s).
  Without this the overloaded method fixes can't be activated...

- Adding stepping to the debug API

- Adding #p and some other advancement in formatting.

But meanwhile if something blocks the DLTK plugin development, I will
try to act quickly.

--
Thanks,
 Daniel Dekany


Tuesday, June 11, 2013, 2:11:41 PM, Angelo zerr wrote:

> Hi Greg, Daniel,
>
>> Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.  
> Sure!
>
> I have pushed Freemarker DLTK on GitHub
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK
> It works with last version of DLTK 4.0 (current is 5.0).
>
> I have written a short dev-guide
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide which explains how to launch it.
> For the features, please read for the moment
> https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/
>
> I add you as colaborator in my GitHub project. So I think you can push it.
> @Daniel, if you are interested, I can add you too.
>
>> Then I can install DLTK dependencies in my environment and try to import them in.  
> No needs to install DLTK with classic mean. Just set the Target
> Platform (see explanation at
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide)
> I like this idea about using Target Platform, because you can
> switch to another version of DLTK without installing it in your Eclipse.
>
>> Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3?  
> My work doesn't work with FM 2.3 because FM3.0 changes package name
> for instance. But I think it will be easy to switch to 2.3
> the only thing is to create some patches because debugger should be improved.
>
>> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr
>
> That's good, I prefer that over sf.net SVN.
>
> Ok, it's done.  https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>  
>
> The FM 3 branch you are talking about (the sf.net SVN trunk) is
> "officially" dead for a long time, and it wont ever yield a release.
> So in theory, you had to build on what's on GitHub (use the "2.3-gae"
> branch now). Of course, 2.3 has virtually no public AST API, so you
> can't use that either. (And I guess some other things will be missing
> too. Can you tell me what?) So for now you will have to work against
> FM 3.
>
> As of what will it work on then when it's released... The AST stuff
> changes will break BC too much for a 2.3 (I guess), so it will have to
> be FM 2.4. But if it's 2.4.0, then of course I will want to put in
> some other minor not-strictly-BC changes too (not to mention new
> features that somehow justifies in the eyes of the average uses the
> 2nd version increase). I will be careful not to be too ambitious with
> it, as I don't want to impede the release of the plugin, or undermine
> the trust on the release of the new 2.4 branch. So as you see, there
> are some difficulties, but if you are going to work on the plugin, I
> will try very hard to clear its way.
>
> I will try to migrate to 2.3 to see if they are a lot of modification to do.
>
>> 3) DBGP Debugger
>>
>> Existing code of Debugger should be modified to support several
>> implementation of Debugger (RMI, DBGP, etc). So I think it's the
>> first step if we decide to develop Freemarker DLTK.
>
> (I see the discussion about that with Greg Amerson has been started .)
>
>> Regards Angelo
> Regards Angelo
>
> --
> Thanks,
>  Daniel Dekany


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

angelozerr
Hi Daniel,

I"m waiting for Greg answer if he likes DLTK plugins and if he wishes to contribute it.
I don't want to develop this plugin alone (it's a big task and I know if we are several, our motivation will be kept).

If Greg is motivated, the first step is to switch to the FM 2.3 (today dltk plugin uses FM 3 based on freecc).
I have created https://github.com/angelozerr/Freemarker-Eclipse-DLTK/tree/master/freemarker.provisionnal which contains java classes usefull for debugger and ide with FM.
It should be cool if FM contains thoses classes (once dltk plugin will switch to FM 2.3)

Regards Angelo


2013/7/13 Daniel Dekany <[hidden email]>
Hi,

Anything with this since then? Last time we were there that it should
be checked if what changes are needed in the current branch of
FreeMarker for it become usable with the DLTK plugin. I know, I could
check that too... it's that I have too much on my plate regarding
FreeMarker already. Lot of core stuff, and I don't think that anybody
can solve them in the foreseeable future but me. OTOH there are
several other critical things for FreeMarker that's much easier to
jump into, and they also need some specific experience that I happen
not to posses (much...):

- Better Eclipse IDE. (I have used the JBoss Tools stuff nowadays, and
  it's not in a good shape at all.)

- Spring integration should be checked by someone. Framework authors
  often just throw in FM, together with Velocity, because it's the
  standard checklist thing to support template engines, and end of
  story. So from the viewpoint of the user it will simply mean that
  FreeMarker sucks.

- Struts integration too.

- Better JSP support. The biggest issue with the current one is that it's
  part of the FreemarkerServlet. People often want to call FreeMarker
  by other means. FreemarkerServlet is rather limiting and ugly anyway...

Anyway... my current priorities are (in the order I plan to do them):

- Fixing overloaded method selection and numerical conversions on method
  calls. This is in progress.

- Allow more configurability with the String-based settings API (as
  this is what most frameworks use in their own configuration XML-s).
  Without this the overloaded method fixes can't be activated...

- Adding stepping to the debug API

- Adding #p and some other advancement in formatting.

But meanwhile if something blocks the DLTK plugin development, I will
try to act quickly.

--
Thanks,
 Daniel Dekany


Tuesday, June 11, 2013, 2:11:41 PM, Angelo zerr wrote:

> Hi Greg, Daniel,
>
>> Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.
> Sure!
>
> I have pushed Freemarker DLTK on GitHub
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK
> It works with last version of DLTK 4.0 (current is 5.0).
>
> I have written a short dev-guide
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide which explains how to launch it.
> For the features, please read for the moment
> https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/
>
> I add you as colaborator in my GitHub project. So I think you can push it.
> @Daniel, if you are interested, I can add you too.
>
>> Then I can install DLTK dependencies in my environment and try to import them in.
> No needs to install DLTK with classic mean. Just set the Target
> Platform (see explanation at
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide)
> I like this idea about using Target Platform, because you can
> switch to another version of DLTK without installing it in your Eclipse.
>
>> Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3?
> My work doesn't work with FM 2.3 because FM3.0 changes package name
> for instance. But I think it will be easy to switch to 2.3
> the only thing is to create some patches because debugger should be improved.
>
>> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr
>
> That's good, I prefer that over sf.net SVN.
>
> Ok, it's done.  https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>
>
> The FM 3 branch you are talking about (the sf.net SVN trunk) is
> "officially" dead for a long time, and it wont ever yield a release.
> So in theory, you had to build on what's on GitHub (use the "2.3-gae"
> branch now). Of course, 2.3 has virtually no public AST API, so you
> can't use that either. (And I guess some other things will be missing
> too. Can you tell me what?) So for now you will have to work against
> FM 3.
>
> As of what will it work on then when it's released... The AST stuff
> changes will break BC too much for a 2.3 (I guess), so it will have to
> be FM 2.4. But if it's 2.4.0, then of course I will want to put in
> some other minor not-strictly-BC changes too (not to mention new
> features that somehow justifies in the eyes of the average uses the
> 2nd version increase). I will be careful not to be too ambitious with
> it, as I don't want to impede the release of the plugin, or undermine
> the trust on the release of the new 2.4 branch. So as you see, there
> are some difficulties, but if you are going to work on the plugin, I
> will try very hard to clear its way.
>
> I will try to migrate to 2.3 to see if they are a lot of modification to do.
>
>> 3) DBGP Debugger
>>
>> Existing code of Debugger should be modified to support several
>> implementation of Debugger (RMI, DBGP, etc). So I think it's the
>> first step if we decide to develop Freemarker DLTK.
>
> (I see the discussion about that with Greg Amerson has been started .)
>
>> Regards Angelo
> Regards Angelo
>
> --
> Thanks,
>  Daniel Dekany


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Daniel Dekany
Sunday, July 21, 2013, 2:41:55 PM, Angelo zerr wrote:

> Hi Daniel,
>
> I"m waiting for Greg answer if he likes DLTK plugins and if he wishes to contribute it.
> I don't want to develop this plugin alone (it's a big task and I
> know if we are several, our motivation will be kept).
>
> If Greg is motivated, the first step is to switch to the FM 2.3
> (today dltk plugin uses FM 3 based on freecc).
> I have created
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/tree/master/freemarker.provisionnal
> which contains java classes usefull for debugger and ide with FM.
> It should be cool if FM contains thoses classes (once dltk plugin will switch to FM 2.3)

Sure, when I get to the stepping stuff I will check out what the
debugging part there does.

As of the others, I have some "philosophical" problems with exposing
the AST directly. I understand DLTK needs a tree that describes the
template, but obviously, that need not be the real AST, which is an
implementation detail. Surely for some advanced IDE functionality the
plugin needs to "understand" the template, and so maybe you need to
able to access some gory details. But then it would be better if that
functionality itself has a public API instead. For example, you want
to show an outline view, and there you want only to show the #macro-s,
#function-s, and top-level #assign-s that use ?new (I suppose...). So
then the plugin has to be aware of the meaning of "macro" and
"function", etc. Now if I add, say, #set, or #java_macro, or
#macro_and_function later, suddenly the outline will be broken. OTOH
if FreeMarker has an API for getting an outline, you only have to
update the dependency version, and it will keep working with the new
language constructs. My logic here is that the language changes always
happen in freemarker.jar, so the higher-level functionality that
depends on the little details of the language should belong to
FreeMarker, rather then to the plugin. This is also crucial if there
are multiple plugins (DTLK, JBoss, IntellyJ). OTOH bloating
freemarker.jar even more is surely not good, but this functionality
could be part of a freemarker-tooling.jar or something, which is
released together with freemarker.jar. So, I think, it would be useful
to figure out what *higher-lever* interfaces you need for the DLTK
plugin, by keeping in mind, that other plugins could use them too.

--
Thanks,
 Daniel Dekany


> Regards Angelo

> 2013/7/13 Daniel Dekany <[hidden email]>
> Hi,
>
> Anything with this since then? Last time we were there that it should
> be checked if what changes are needed in the current branch of
> FreeMarker for it become usable with the DLTK plugin. I know, I could
> check that too... it's that I have too much on my plate regarding
> FreeMarker already. Lot of core stuff, and I don't think that anybody
> can solve them in the foreseeable future but me. OTOH there are
> several other critical things for FreeMarker that's much easier to
> jump into, and they also need some specific experience that I happen
> not to posses (much...):
>
> - Better Eclipse IDE. (I have used the JBoss Tools stuff nowadays, and
>   it's not in a good shape at all.)
>
> - Spring integration should be checked by someone. Framework authors
>   often just throw in FM, together with Velocity, because it's the
>   standard checklist thing to support template engines, and end of
>   story. So from the viewpoint of the user it will simply mean that
>   FreeMarker sucks.
>
> - Struts integration too.
>
> - Better JSP support. The biggest issue with the current one is that it's
>   part of the FreemarkerServlet. People often want to call FreeMarker
>   by other means. FreemarkerServlet is rather limiting and ugly anyway...
>
> Anyway... my current priorities are (in the order I plan to do them):
>
> - Fixing overloaded method selection and numerical conversions on method
>   calls. This is in progress.
>
> - Allow more configurability with the String-based settings API (as
>   this is what most frameworks use in their own configuration XML-s).
>   Without this the overloaded method fixes can't be activated...
>
> - Adding stepping to the debug API
>
> - Adding #p and some other advancement in formatting.
>
> But meanwhile if something blocks the DLTK plugin development, I will
> try to act quickly.
>
> --
> Thanks,
>  Daniel Dekany
>
>
> Tuesday, June 11, 2013, 2:11:41 PM, Angelo zerr wrote:
>
>> Hi Greg, Daniel,
>>
>>> Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.
>> Sure!
>>
>> I have pushed Freemarker DLTK on GitHub
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>> It works with last version of DLTK 4.0 (current is 5.0).
>>
>> I have written a short dev-guide
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide which explains how to launch it.
>> For the features, please read for the moment
>> https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/
>>
>> I add you as colaborator in my GitHub project. So I think you can push it.
>> @Daniel, if you are interested, I can add you too.
>>
>>> Then I can install DLTK dependencies in my environment and try to import them in.
>> No needs to install DLTK with classic mean. Just set the Target
>> Platform (see explanation at
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide)
>> I like this idea about using Target Platform, because you can
>> switch to another version of DLTK without installing it in your Eclipse.
>>
>>> Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3?
>> My work doesn't work with FM 2.3 because FM3.0 changes package name
>> for instance. But I think it will be easy to switch to 2.3
>> the only thing is to create some patches because debugger should be improved.
>>
>>> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr
>>
>> That's good, I prefer that over sf.net SVN.
>>
>> Ok, it's done.  https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>>
>>
>> The FM 3 branch you are talking about (the sf.net SVN trunk) is
>> "officially" dead for a long time, and it wont ever yield a release.
>> So in theory, you had to build on what's on GitHub (use the "2.3-gae"
>> branch now). Of course, 2.3 has virtually no public AST API, so you
>> can't use that either. (And I guess some other things will be missing
>> too. Can you tell me what?) So for now you will have to work against
>> FM 3.
>>
>> As of what will it work on then when it's released... The AST stuff
>> changes will break BC too much for a 2.3 (I guess), so it will have to
>> be FM 2.4. But if it's 2.4.0, then of course I will want to put in
>> some other minor not-strictly-BC changes too (not to mention new
>> features that somehow justifies in the eyes of the average uses the
>> 2nd version increase). I will be careful not to be too ambitious with
>> it, as I don't want to impede the release of the plugin, or undermine
>> the trust on the release of the new 2.4 branch. So as you see, there
>> are some difficulties, but if you are going to work on the plugin, I
>> will try very hard to clear its way.
>>
>> I will try to migrate to 2.3 to see if they are a lot of modification to do.
>>
>>> 3) DBGP Debugger
>>>
>>> Existing code of Debugger should be modified to support several
>>> implementation of Debugger (RMI, DBGP, etc). So I think it's the
>>> first step if we decide to develop Freemarker DLTK.
>>
>> (I see the discussion about that with Greg Amerson has been started .)
>>
>>> Regards Angelo
>> Regards Angelo
>>
>> --
>> Thanks,
>>  Daniel Dekany
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> FreeMarker-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/freemarker-devel
>


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Greg Amerson
In reply to this post by angelozerr
Hey guys,

I hope to be able to take a look at Angelo's DLTK based plugins this week and then we can start discussing our next steps of our collaboration on them.  


On Sun, Jul 21, 2013 at 8:41 PM, Angelo zerr <[hidden email]> wrote:
Hi Daniel,

I"m waiting for Greg answer if he likes DLTK plugins and if he wishes to contribute it.
I don't want to develop this plugin alone (it's a big task and I know if we are several, our motivation will be kept).

If Greg is motivated, the first step is to switch to the FM 2.3 (today dltk plugin uses FM 3 based on freecc).
I have created https://github.com/angelozerr/Freemarker-Eclipse-DLTK/tree/master/freemarker.provisionnal which contains java classes usefull for debugger and ide with FM.
It should be cool if FM contains thoses classes (once dltk plugin will switch to FM 2.3)

Regards Angelo


2013/7/13 Daniel Dekany <[hidden email]>
Hi,

Anything with this since then? Last time we were there that it should
be checked if what changes are needed in the current branch of
FreeMarker for it become usable with the DLTK plugin. I know, I could
check that too... it's that I have too much on my plate regarding
FreeMarker already. Lot of core stuff, and I don't think that anybody
can solve them in the foreseeable future but me. OTOH there are
several other critical things for FreeMarker that's much easier to
jump into, and they also need some specific experience that I happen
not to posses (much...):

- Better Eclipse IDE. (I have used the JBoss Tools stuff nowadays, and
  it's not in a good shape at all.)

- Spring integration should be checked by someone. Framework authors
  often just throw in FM, together with Velocity, because it's the
  standard checklist thing to support template engines, and end of
  story. So from the viewpoint of the user it will simply mean that
  FreeMarker sucks.

- Struts integration too.

- Better JSP support. The biggest issue with the current one is that it's
  part of the FreemarkerServlet. People often want to call FreeMarker
  by other means. FreemarkerServlet is rather limiting and ugly anyway...

Anyway... my current priorities are (in the order I plan to do them):

- Fixing overloaded method selection and numerical conversions on method
  calls. This is in progress.

- Allow more configurability with the String-based settings API (as
  this is what most frameworks use in their own configuration XML-s).
  Without this the overloaded method fixes can't be activated...

- Adding stepping to the debug API

- Adding #p and some other advancement in formatting.

But meanwhile if something blocks the DLTK plugin development, I will
try to act quickly.

--
Thanks,
 Daniel Dekany


Tuesday, June 11, 2013, 2:11:41 PM, Angelo zerr wrote:

> Hi Greg, Daniel,
>
>> Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.
> Sure!
>
> I have pushed Freemarker DLTK on GitHub
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK
> It works with last version of DLTK 4.0 (current is 5.0).
>
> I have written a short dev-guide
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide which explains how to launch it.
> For the features, please read for the moment
> https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/
>
> I add you as colaborator in my GitHub project. So I think you can push it.
> @Daniel, if you are interested, I can add you too.
>
>> Then I can install DLTK dependencies in my environment and try to import them in.
> No needs to install DLTK with classic mean. Just set the Target
> Platform (see explanation at
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide)
> I like this idea about using Target Platform, because you can
> switch to another version of DLTK without installing it in your Eclipse.
>
>> Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3?
> My work doesn't work with FM 2.3 because FM3.0 changes package name
> for instance. But I think it will be easy to switch to 2.3
> the only thing is to create some patches because debugger should be improved.
>
>> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr
>
> That's good, I prefer that over sf.net SVN.
>
> Ok, it's done.  https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>
>
> The FM 3 branch you are talking about (the sf.net SVN trunk) is
> "officially" dead for a long time, and it wont ever yield a release.
> So in theory, you had to build on what's on GitHub (use the "2.3-gae"
> branch now). Of course, 2.3 has virtually no public AST API, so you
> can't use that either. (And I guess some other things will be missing
> too. Can you tell me what?) So for now you will have to work against
> FM 3.
>
> As of what will it work on then when it's released... The AST stuff
> changes will break BC too much for a 2.3 (I guess), so it will have to
> be FM 2.4. But if it's 2.4.0, then of course I will want to put in
> some other minor not-strictly-BC changes too (not to mention new
> features that somehow justifies in the eyes of the average uses the
> 2nd version increase). I will be careful not to be too ambitious with
> it, as I don't want to impede the release of the plugin, or undermine
> the trust on the release of the new 2.4 branch. So as you see, there
> are some difficulties, but if you are going to work on the plugin, I
> will try very hard to clear its way.
>
> I will try to migrate to 2.3 to see if they are a lot of modification to do.
>
>> 3) DBGP Debugger
>>
>> Existing code of Debugger should be modified to support several
>> implementation of Debugger (RMI, DBGP, etc). So I think it's the
>> first step if we decide to develop Freemarker DLTK.
>
> (I see the discussion about that with Greg Amerson has been started .)
>
>> Regards Angelo
> Regards Angelo
>
> --
> Thanks,
>  Daniel Dekany


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk

_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel




--
Greg Amerson
Liferay Developer Tools
Liferay, Inc. www.liferay.com

------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

angelozerr
Hi Daniel, Greg,

@Daniel : perhaps a visitor pattern could be a clean mean to avoid exposing the Template AST?
@Greg : I'm waiting for your study about Freemarker DLTK to restart it (switch to the FM 2.3)

Regards Angelo


2013/7/22 Greg Amerson <[hidden email]>
Hey guys,

I hope to be able to take a look at Angelo's DLTK based plugins this week and then we can start discussing our next steps of our collaboration on them.  


On Sun, Jul 21, 2013 at 8:41 PM, Angelo zerr <[hidden email]> wrote:
Hi Daniel,

I"m waiting for Greg answer if he likes DLTK plugins and if he wishes to contribute it.
I don't want to develop this plugin alone (it's a big task and I know if we are several, our motivation will be kept).

If Greg is motivated, the first step is to switch to the FM 2.3 (today dltk plugin uses FM 3 based on freecc).
I have created https://github.com/angelozerr/Freemarker-Eclipse-DLTK/tree/master/freemarker.provisionnal which contains java classes usefull for debugger and ide with FM.
It should be cool if FM contains thoses classes (once dltk plugin will switch to FM 2.3)

Regards Angelo


2013/7/13 Daniel Dekany <[hidden email]>
Hi,

Anything with this since then? Last time we were there that it should
be checked if what changes are needed in the current branch of
FreeMarker for it become usable with the DLTK plugin. I know, I could
check that too... it's that I have too much on my plate regarding
FreeMarker already. Lot of core stuff, and I don't think that anybody
can solve them in the foreseeable future but me. OTOH there are
several other critical things for FreeMarker that's much easier to
jump into, and they also need some specific experience that I happen
not to posses (much...):

- Better Eclipse IDE. (I have used the JBoss Tools stuff nowadays, and
  it's not in a good shape at all.)

- Spring integration should be checked by someone. Framework authors
  often just throw in FM, together with Velocity, because it's the
  standard checklist thing to support template engines, and end of
  story. So from the viewpoint of the user it will simply mean that
  FreeMarker sucks.

- Struts integration too.

- Better JSP support. The biggest issue with the current one is that it's
  part of the FreemarkerServlet. People often want to call FreeMarker
  by other means. FreemarkerServlet is rather limiting and ugly anyway...

Anyway... my current priorities are (in the order I plan to do them):

- Fixing overloaded method selection and numerical conversions on method
  calls. This is in progress.

- Allow more configurability with the String-based settings API (as
  this is what most frameworks use in their own configuration XML-s).
  Without this the overloaded method fixes can't be activated...

- Adding stepping to the debug API

- Adding #p and some other advancement in formatting.

But meanwhile if something blocks the DLTK plugin development, I will
try to act quickly.

--
Thanks,
 Daniel Dekany


Tuesday, June 11, 2013, 2:11:41 PM, Angelo zerr wrote:

> Hi Greg, Daniel,
>
>> Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.
> Sure!
>
> I have pushed Freemarker DLTK on GitHub
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK
> It works with last version of DLTK 4.0 (current is 5.0).
>
> I have written a short dev-guide
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide which explains how to launch it.
> For the features, please read for the moment
> https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/
>
> I add you as colaborator in my GitHub project. So I think you can push it.
> @Daniel, if you are interested, I can add you too.
>
>> Then I can install DLTK dependencies in my environment and try to import them in.
> No needs to install DLTK with classic mean. Just set the Target
> Platform (see explanation at
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide)
> I like this idea about using Target Platform, because you can
> switch to another version of DLTK without installing it in your Eclipse.
>
>> Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3?
> My work doesn't work with FM 2.3 because FM3.0 changes package name
> for instance. But I think it will be easy to switch to 2.3
> the only thing is to create some patches because debugger should be improved.
>
>> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr
>
> That's good, I prefer that over sf.net SVN.
>
> Ok, it's done.  https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>
>
> The FM 3 branch you are talking about (the sf.net SVN trunk) is
> "officially" dead for a long time, and it wont ever yield a release.
> So in theory, you had to build on what's on GitHub (use the "2.3-gae"
> branch now). Of course, 2.3 has virtually no public AST API, so you
> can't use that either. (And I guess some other things will be missing
> too. Can you tell me what?) So for now you will have to work against
> FM 3.
>
> As of what will it work on then when it's released... The AST stuff
> changes will break BC too much for a 2.3 (I guess), so it will have to
> be FM 2.4. But if it's 2.4.0, then of course I will want to put in
> some other minor not-strictly-BC changes too (not to mention new
> features that somehow justifies in the eyes of the average uses the
> 2nd version increase). I will be careful not to be too ambitious with
> it, as I don't want to impede the release of the plugin, or undermine
> the trust on the release of the new 2.4 branch. So as you see, there
> are some difficulties, but if you are going to work on the plugin, I
> will try very hard to clear its way.
>
> I will try to migrate to 2.3 to see if they are a lot of modification to do.
>
>> 3) DBGP Debugger
>>
>> Existing code of Debugger should be modified to support several
>> implementation of Debugger (RMI, DBGP, etc). So I think it's the
>> first step if we decide to develop Freemarker DLTK.
>
> (I see the discussion about that with Greg Amerson has been started .)
>
>> Regards Angelo
> Regards Angelo
>
> --
> Thanks,
>  Daniel Dekany


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk

_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel




--
Greg Amerson
Liferay Developer Tools
Liferay, Inc. www.liferay.com

------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel



------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Daniel Dekany
Tuesday, July 23, 2013, 11:59:55 AM, Angelo zerr wrote:

> Hi Daniel, Greg,
>
> @Daniel : perhaps a visitor pattern could be a clean mean to avoid exposing the Template AST?

Maybe, but I think the important question is if what information
should be exposed (with visitor pattern or otherwise). Since you have
experience with developing IDE-s and editors, maybe you already know
that. Consider that some information (like, what variables are used in
a template or in a block of a template) should be exposes through an
API rather than left for the IDE to extract. Or at least, that's what
I think would be the best (see last mail). So, what information is
enough for the tree stuff? Are statements (TemplateElement-s) enough,
or do we need the expression nodes too? What information is needed
about the statements?

--
Thanks,
 Daniel Dekany

> @Greg : I'm waiting for your study about Freemarker DLTK to restart it (switch to the FM 2.3)
>
> Regards Angelo
>
>
> 2013/7/22 Greg Amerson <[hidden email]>
> Hey guys,
>
> I hope to be able to take a look at Angelo's DLTK based plugins
> this week and then we can start discussing our next steps of our collaboration on them.
>
>
> On Sun, Jul 21, 2013 at 8:41 PM, Angelo zerr <[hidden email]> wrote:
> Hi Daniel,
>
> I"m waiting for Greg answer if he likes DLTK plugins and if he wishes to contribute it.
> I don't want to develop this plugin alone (it's a big task and I
> know if we are several, our motivation will be kept).
>
> If Greg is motivated, the first step is to switch to the FM 2.3
> (today dltk plugin uses FM 3 based on freecc).
> I have created
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/tree/master/freemarker.provisionnal
> which contains java classes usefull for debugger and ide with FM.
> It should be cool if FM contains thoses classes (once dltk plugin will switch to FM 2.3)
>
> Regards Angelo
>
>
> 2013/7/13 Daniel Dekany <[hidden email]>
> Hi,
>
> Anything with this since then? Last time we were there that it should
> be checked if what changes are needed in the current branch of
> FreeMarker for it become usable with the DLTK plugin. I know, I could
> check that too... it's that I have too much on my plate regarding
> FreeMarker already. Lot of core stuff, and I don't think that anybody
> can solve them in the foreseeable future but me. OTOH there are
> several other critical things for FreeMarker that's much easier to
> jump into, and they also need some specific experience that I happen
> not to posses (much...):
>
> - Better Eclipse IDE. (I have used the JBoss Tools stuff nowadays, and
>   it's not in a good shape at all.)
>
> - Spring integration should be checked by someone. Framework authors
>   often just throw in FM, together with Velocity, because it's the
>   standard checklist thing to support template engines, and end of
>   story. So from the viewpoint of the user it will simply mean that
>   FreeMarker sucks.
>
> - Struts integration too.
>
> - Better JSP support. The biggest issue with the current one is that it's
>   part of the FreemarkerServlet. People often want to call FreeMarker
>   by other means. FreemarkerServlet is rather limiting and ugly anyway...
>
> Anyway... my current priorities are (in the order I plan to do them):
>
> - Fixing overloaded method selection and numerical conversions on method
>   calls. This is in progress.
>
> - Allow more configurability with the String-based settings API (as
>   this is what most frameworks use in their own configuration XML-s).
>   Without this the overloaded method fixes can't be activated...
>
> - Adding stepping to the debug API
>
> - Adding #p and some other advancement in formatting.
>
> But meanwhile if something blocks the DLTK plugin development, I will
> try to act quickly.
>
> --
> Thanks,
>  Daniel Dekany
>
>
> Tuesday, June 11, 2013, 2:11:41 PM, Angelo zerr wrote:
>
>> Hi Greg, Daniel,
>>
>>> Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.
>> Sure!
>>
>> I have pushed Freemarker DLTK on GitHub
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>> It works with last version of DLTK 4.0 (current is 5.0).
>>
>> I have written a short dev-guide
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide which explains how to launch it.
>> For the features, please read for the moment
>> https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/
>>
>> I add you as colaborator in my GitHub project. So I think you can push it.
>> @Daniel, if you are interested, I can add you too.
>>
>>> Then I can install DLTK dependencies in my environment and try to import them in.
>> No needs to install DLTK with classic mean. Just set the Target
>> Platform (see explanation at
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide)
>> I like this idea about using Target Platform, because you can
>> switch to another version of DLTK without installing it in your Eclipse.
>>
>>> Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3?
>> My work doesn't work with FM 2.3 because FM3.0 changes package name
>> for instance. But I think it will be easy to switch to 2.3
>> the only thing is to create some patches because debugger should be improved.
>>
>>> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr
>>
>> That's good, I prefer that over sf.net SVN.
>>
>> Ok, it's done.  https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>>
>>
>> The FM 3 branch you are talking about (the sf.net SVN trunk) is
>> "officially" dead for a long time, and it wont ever yield a release.
>> So in theory, you had to build on what's on GitHub (use the "2.3-gae"
>> branch now). Of course, 2.3 has virtually no public AST API, so you
>> can't use that either. (And I guess some other things will be missing
>> too. Can you tell me what?) So for now you will have to work against
>> FM 3.
>>
>> As of what will it work on then when it's released... The AST stuff
>> changes will break BC too much for a 2.3 (I guess), so it will have to
>> be FM 2.4. But if it's 2.4.0, then of course I will want to put in
>> some other minor not-strictly-BC changes too (not to mention new
>> features that somehow justifies in the eyes of the average uses the
>> 2nd version increase). I will be careful not to be too ambitious with
>> it, as I don't want to impede the release of the plugin, or undermine
>> the trust on the release of the new 2.4 branch. So as you see, there
>> are some difficulties, but if you are going to work on the plugin, I
>> will try very hard to clear its way.
>>
>> I will try to migrate to 2.3 to see if they are a lot of modification to do.
>>
>>> 3) DBGP Debugger
>>>
>>> Existing code of Debugger should be modified to support several
>>> implementation of Debugger (RMI, DBGP, etc). So I think it's the
>>> first step if we decide to develop Freemarker DLTK.
>>
>> (I see the discussion about that with Greg Amerson has been started .)
>>
>>> Regards Angelo
>> Regards Angelo
>>
>> --
>> Thanks,
>>  Daniel Dekany
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
>
> _______________________________________________
> FreeMarker-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/freemarker-devel
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> FreeMarker-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/freemarker-devel
>
>
>
>


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

angelozerr
Hi Daniel,

It's a little difficult for me to give you a good answer because it was long time that I have developped DLTK Freemarker. 
DLTK provides an ASTNode interface that you must implement. The goal is to build a DLTK ASTNode from a FM content.



To build a DLTK ASTNode we have 2 choices : 

1) Load the FM Template and loop for each structure to build the DLTK AST Node (it was the solution that I used with FM 3.0 ASTVistor). But it seems you don't want expose the AST structure of FM (why?)
2) Create a DLTK AST directly by the Javacc.

The 2) is more faster than 1) (because it avoids to create a FM structure before). My idea is to change the FTL.jj to use a factory which creates template element. So instead to do that in the FMParser : 

-------------------------------------------------------
BlockAssignment ba = new BlockAssignment(block, varName, scope, nsExp);
-------------------------------------------------------

Use a factory :

-------------------------------------------------------
IBlockAssignment ba = factory.newBlockAssignment(block, varName, scope, nsExp);
-------------------------------------------------------

IBlockAssignment is an interface. By using a factory gives you the capability to use our own structure. For Freemarker, teh factory will create IIBlockAssignment with existing IBlockAssignment
For DLTK, factory will create IIBlockAssignment with DLTKIBlockAssignment which will implement DLTK ASTNode.

What do you think about that?

Regards Angelo


2013/7/23 Daniel Dekany <[hidden email]>
Tuesday, July 23, 2013, 11:59:55 AM, Angelo zerr wrote:

> Hi Daniel, Greg,
>
> @Daniel : perhaps a visitor pattern could be a clean mean to avoid exposing the Template AST?

Maybe, but I think the important question is if what information
should be exposed (with visitor pattern or otherwise). Since you have
experience with developing IDE-s and editors, maybe you already know
that. Consider that some information (like, what variables are used in
a template or in a block of a template) should be exposes through an
API rather than left for the IDE to extract. Or at least, that's what
I think would be the best (see last mail). So, what information is
enough for the tree stuff? Are statements (TemplateElement-s) enough,
or do we need the expression nodes too? What information is needed
about the statements?

--
Thanks,
 Daniel Dekany

> @Greg : I'm waiting for your study about Freemarker DLTK to restart it (switch to the FM 2.3)
>
> Regards Angelo
>
>
> 2013/7/22 Greg Amerson <[hidden email]>
> Hey guys,
>
> I hope to be able to take a look at Angelo's DLTK based plugins
> this week and then we can start discussing our next steps of our collaboration on them.
>
>
> On Sun, Jul 21, 2013 at 8:41 PM, Angelo zerr <[hidden email]> wrote:
> Hi Daniel,
>
> I"m waiting for Greg answer if he likes DLTK plugins and if he wishes to contribute it.
> I don't want to develop this plugin alone (it's a big task and I
> know if we are several, our motivation will be kept).
>
> If Greg is motivated, the first step is to switch to the FM 2.3
> (today dltk plugin uses FM 3 based on freecc).
> I have created
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/tree/master/freemarker.provisionnal
> which contains java classes usefull for debugger and ide with FM.
> It should be cool if FM contains thoses classes (once dltk plugin will switch to FM 2.3)
>
> Regards Angelo
>
>
> 2013/7/13 Daniel Dekany <[hidden email]>
> Hi,
>
> Anything with this since then? Last time we were there that it should
> be checked if what changes are needed in the current branch of
> FreeMarker for it become usable with the DLTK plugin. I know, I could
> check that too... it's that I have too much on my plate regarding
> FreeMarker already. Lot of core stuff, and I don't think that anybody
> can solve them in the foreseeable future but me. OTOH there are
> several other critical things for FreeMarker that's much easier to
> jump into, and they also need some specific experience that I happen
> not to posses (much...):
>
> - Better Eclipse IDE. (I have used the JBoss Tools stuff nowadays, and
>   it's not in a good shape at all.)
>
> - Spring integration should be checked by someone. Framework authors
>   often just throw in FM, together with Velocity, because it's the
>   standard checklist thing to support template engines, and end of
>   story. So from the viewpoint of the user it will simply mean that
>   FreeMarker sucks.
>
> - Struts integration too.
>
> - Better JSP support. The biggest issue with the current one is that it's
>   part of the FreemarkerServlet. People often want to call FreeMarker
>   by other means. FreemarkerServlet is rather limiting and ugly anyway...
>
> Anyway... my current priorities are (in the order I plan to do them):
>
> - Fixing overloaded method selection and numerical conversions on method
>   calls. This is in progress.
>
> - Allow more configurability with the String-based settings API (as
>   this is what most frameworks use in their own configuration XML-s).
>   Without this the overloaded method fixes can't be activated...
>
> - Adding stepping to the debug API
>
> - Adding #p and some other advancement in formatting.
>
> But meanwhile if something blocks the DLTK plugin development, I will
> try to act quickly.
>
> --
> Thanks,
>  Daniel Dekany
>
>
> Tuesday, June 11, 2013, 2:11:41 PM, Angelo zerr wrote:
>
>> Hi Greg, Daniel,
>>
>>> Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.
>> Sure!
>>
>> I have pushed Freemarker DLTK on GitHub
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>> It works with last version of DLTK 4.0 (current is 5.0).
>>
>> I have written a short dev-guide
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide which explains how to launch it.
>> For the features, please read for the moment
>> https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/
>>
>> I add you as colaborator in my GitHub project. So I think you can push it.
>> @Daniel, if you are interested, I can add you too.
>>
>>> Then I can install DLTK dependencies in my environment and try to import them in.
>> No needs to install DLTK with classic mean. Just set the Target
>> Platform (see explanation at
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide)
>> I like this idea about using Target Platform, because you can
>> switch to another version of DLTK without installing it in your Eclipse.
>>
>>> Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3?
>> My work doesn't work with FM 2.3 because FM3.0 changes package name
>> for instance. But I think it will be easy to switch to 2.3
>> the only thing is to create some patches because debugger should be improved.
>>
>>> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr
>>
>> That's good, I prefer that over sf.net SVN.
>>
>> Ok, it's done.  https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>>
>>
>> The FM 3 branch you are talking about (the sf.net SVN trunk) is
>> "officially" dead for a long time, and it wont ever yield a release.
>> So in theory, you had to build on what's on GitHub (use the "2.3-gae"
>> branch now). Of course, 2.3 has virtually no public AST API, so you
>> can't use that either. (And I guess some other things will be missing
>> too. Can you tell me what?) So for now you will have to work against
>> FM 3.
>>
>> As of what will it work on then when it's released... The AST stuff
>> changes will break BC too much for a 2.3 (I guess), so it will have to
>> be FM 2.4. But if it's 2.4.0, then of course I will want to put in
>> some other minor not-strictly-BC changes too (not to mention new
>> features that somehow justifies in the eyes of the average uses the
>> 2nd version increase). I will be careful not to be too ambitious with
>> it, as I don't want to impede the release of the plugin, or undermine
>> the trust on the release of the new 2.4 branch. So as you see, there
>> are some difficulties, but if you are going to work on the plugin, I
>> will try very hard to clear its way.
>>
>> I will try to migrate to 2.3 to see if they are a lot of modification to do.
>>
>>> 3) DBGP Debugger
>>>
>>> Existing code of Debugger should be modified to support several
>>> implementation of Debugger (RMI, DBGP, etc). So I think it's the
>>> first step if we decide to develop Freemarker DLTK.
>>
>> (I see the discussion about that with Greg Amerson has been started .)
>>
>>> Regards Angelo
>> Regards Angelo
>>
>> --
>> Thanks,
>>  Daniel Dekany
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
>
> _______________________________________________
> FreeMarker-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/freemarker-devel
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> FreeMarker-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/freemarker-devel
>
>
>
>



------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Daniel Dekany
Wednesday, July 24, 2013, 11:21:58 AM, Angelo zerr wrote:

> Hi Daniel,
>
> It's a little difficult for me to give you a good answer because it
> was long time that I have developped DLTK Freemarker.
> DLTK provides an ASTNode interface that you must implement. The
> goal is to build a DLTK ASTNode from a FM content.
>
> FM 3.0 provided an ASTVistor that I have implemented to build a
> DLTK AST . See
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/blob/master/org.eclipse.dltk.freemarker.core/src/org/eclipse/dltk/freemarker/internal/core/parser/visitors/DLTKFreemarkerASTVisitor.java

(In terms of information it's the same as if you just walk the AST.)

> I had managed only if block (see
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/blob/master/org.eclipse.dltk.freemarker.core/src/org/eclipse/dltk/freemarker/internal/core/parser/visitors/DLTKIfBlock.java)
> and assign directives (see
> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/blob/master/org.eclipse.dltk.freemarker.core/src/org/eclipse/dltk/freemarker/internal/core/parser/ast/expressions/Assignment.java).

So DTLK gets its AST, but it's almost empty, if I see it well. Why
DLTK requires that AST, what can it do with it if what information I
provide? So that's what we should figure out. I don't necessarily mean
right now, I guess as the development goes on, it will turn out. And
then I hope it will be a good representation of what's needed in the
FreeMarker Tools API in general.

> To build a DLTK ASTNode we have 2 choices :
>
> 1) Load the FM Template and loop for each structure to build the
> DLTK AST Node (it was the solution that I used with FM 3.0
> ASTVistor). But it seems you don't want expose the AST structure of FM (why?)

Basically, because the AST is a too low-level stuff.

1) I don't want to promise backward compatibility on AST-level... it's
an internal implementation detail. FM already has a quite quirky API
regarding (randomly...) exposing internals as public API-s, which
binds my hands if I want to fix things. (Luckily people aren't looking
at the API much, they mostly just write templates.) (The AST isn't
particularly intuitive either, if you consider #if VS #if-#else, or
the way #attempt-#recover is represented. Or even assignments.)

2) Also, as I said, I think if a 3rd party app digs the AST to extract
something useful out of it... it will probably show that they don't
know FTL much.

3) Then, if FTL improves (and if it doesn't, it's dead so then the
whole thing doesn't mater, so let's assume it will), those tools will
often break. It's like putting even more backward compatibility burden
on FM. Like if you add a new directive that can write variables,
that's backward compatible now, but if people try find out what
variables are assigned where, or pretty much anything for that you
need a detailed AST, then it's not BC anymore. Surely it "only" breaks
tools, not apps, still if it can done better... If they want to know
what variables assigned, etc., they should ask the FreeMarker Tools
API, not digging the AST. It will tell that with the positions. They
don't have to deal with details like multiple assignments per #assign
VS multiple #assign-s with single assigments, out-variables of
directive calls, argument variable declarations VS #local assignments,
etc.

> 2) Create a DLTK AST directly by the Javacc.
>
> The 2) is more faster than 1) (because it avoids to create a FM
> structure before).

(If we want to improve speed, I think right now the most important
thing would be to rewrite the lexter. I don't believe it has to be
that slow as it's now, and that would be also important for
`?interpret` (or `?eval` maybe). The performance loss on creating two
AST-s is certainly nothing compared to that.)


--
Thanks,
 Daniel Dekany


> My idea is to change the FTL.jj
>
> to use a factory which creates template element. So instead to do
> that in the FMParser :
>
> -------------------------------------------------------
> BlockAssignment ba = new BlockAssignment(block, varName, scope, nsExp);
> -------------------------------------------------------
>
> Use a factory :
>
> -------------------------------------------------------
> IBlockAssignment ba = factory.newBlockAssignment(block, varName, scope, nsExp);
> -------------------------------------------------------
>
> IBlockAssignment is an interface. By using a factory gives you the
> capability to use our own structure. For Freemarker, teh factory
> will create IIBlockAssignment with existing IBlockAssignment
> For DLTK, factory will create IIBlockAssignment with
> DLTKIBlockAssignment which will implement DLTK ASTNode.
>
> What do you think about that?

If we will need a such detailed AST then that's probably the good
approach. But as I have written earlier, that's something that should
be avoided, if it can be. I'm not 100% sure it can be avoided, but I
hope it can be.

FM has a quite detailed *internal* AST traversal API since 2.3.20.
It's a nasty one, tries to minimize runtime impact etc., but it's not
for the public so I thought it's OK. So if we could explore what
information is *actually* needed for the DTLK plugin, then I could
implement an API that gives you just that information through a nicer
public API. Maybe in the form of a tree, through the visitor pattern,
for some queries. I don't want to pass in AST nodes, only the
information needed. As you move along, and you realize new things are
needed, the capabilities of this tools API would be extended, and the
point is, it will belong to the FreeMarker project, not to the DLTK
project. So if I add a new feature, it's my responsibility to bring it
up to date. What do you think about this approach?

> Regards Angelo
>
>
> 2013/7/23 Daniel Dekany <[hidden email]>
> Tuesday, July 23, 2013, 11:59:55 AM, Angelo zerr wrote:
>
>> Hi Daniel, Greg,
>>
>> @Daniel : perhaps a visitor pattern could be a clean mean to avoid exposing the Template AST?
>
> Maybe, but I think the important question is if what information
> should be exposed (with visitor pattern or otherwise). Since you have
> experience with developing IDE-s and editors, maybe you already know
> that. Consider that some information (like, what variables are used in
> a template or in a block of a template) should be exposes through an
> API rather than left for the IDE to extract. Or at least, that's what
> I think would be the best (see last mail). So, what information is
> enough for the tree stuff? Are statements (TemplateElement-s) enough,
> or do we need the expression nodes too? What information is needed
> about the statements?
>
> --
> Thanks,
>  Daniel Dekany
>
>> @Greg : I'm waiting for your study about Freemarker DLTK to restart it (switch to the FM 2.3)
>>
>> Regards Angelo
>>
>>
>> 2013/7/22 Greg Amerson <[hidden email]>
>> Hey guys,
>>
>> I hope to be able to take a look at Angelo's DLTK based plugins
>> this week and then we can start discussing our next steps of our collaboration on them.
>>
>>
>> On Sun, Jul 21, 2013 at 8:41 PM, Angelo zerr <[hidden email]> wrote:
>> Hi Daniel,
>>
>> I"m waiting for Greg answer if he likes DLTK plugins and if he wishes to contribute it.
>> I don't want to develop this plugin alone (it's a big task and I
>> know if we are several, our motivation will be kept).
>>
>> If Greg is motivated, the first step is to switch to the FM 2.3
>> (today dltk plugin uses FM 3 based on freecc).
>> I have created
>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/tree/master/freemarker.provisionnal
>> which contains java classes usefull for debugger and ide with FM.
>> It should be cool if FM contains thoses classes (once dltk plugin will switch to FM 2.3)
>>
>> Regards Angelo
>>
>>
>> 2013/7/13 Daniel Dekany <[hidden email]>
>> Hi,
>>
>> Anything with this since then? Last time we were there that it should
>> be checked if what changes are needed in the current branch of
>> FreeMarker for it become usable with the DLTK plugin. I know, I could
>> check that too... it's that I have too much on my plate regarding
>> FreeMarker already. Lot of core stuff, and I don't think that anybody
>> can solve them in the foreseeable future but me. OTOH there are
>> several other critical things for FreeMarker that's much easier to
>> jump into, and they also need some specific experience that I happen
>> not to posses (much...):
>>
>> - Better Eclipse IDE. (I have used the JBoss Tools stuff nowadays, and
>>   it's not in a good shape at all.)
>>
>> - Spring integration should be checked by someone. Framework authors
>>   often just throw in FM, together with Velocity, because it's the
>>   standard checklist thing to support template engines, and end of
>>   story. So from the viewpoint of the user it will simply mean that
>>   FreeMarker sucks.
>>
>> - Struts integration too.
>>
>> - Better JSP support. The biggest issue with the current one is that it's
>>   part of the FreemarkerServlet. People often want to call FreeMarker
>>   by other means. FreemarkerServlet is rather limiting and ugly anyway...
>>
>> Anyway... my current priorities are (in the order I plan to do them):
>>
>> - Fixing overloaded method selection and numerical conversions on method
>>   calls. This is in progress.
>>
>> - Allow more configurability with the String-based settings API (as
>>   this is what most frameworks use in their own configuration XML-s).
>>   Without this the overloaded method fixes can't be activated...
>>
>> - Adding stepping to the debug API
>>
>> - Adding #p and some other advancement in formatting.
>>
>> But meanwhile if something blocks the DLTK plugin development, I will
>> try to act quickly.
>>
>> --
>> Thanks,
>>  Daniel Dekany
>>
>>
>> Tuesday, June 11, 2013, 2:11:41 PM, Angelo zerr wrote:
>>
>>> Hi Greg, Daniel,
>>>
>>>> Do you think you could rehost your DLTK plugins onto github?  That will make it easier to collaborate.
>>> Sure!
>>>
>>> I have pushed Freemarker DLTK on GitHub
>>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>>> It works with last version of DLTK 4.0 (current is 5.0).
>>>
>>> I have written a short dev-guide
>>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide which explains how to launch it.
>>> For the features, please read for the moment
>>> https://freemarker.svn.sourceforge.net/svnroot/freemarker/sandbox/org.eclipse.dltk.freemarker/docs/
>>>
>>> I add you as colaborator in my GitHub project. So I think you can push it.
>>> @Daniel, if you are interested, I can add you too.
>>>
>>>> Then I can install DLTK dependencies in my environment and try to import them in.
>>> No needs to install DLTK with classic mean. Just set the Target
>>> Platform (see explanation at
>>> https://github.com/angelozerr/Freemarker-Eclipse-DLTK/wiki/Developer-Guide)
>>> I like this idea about using Target Platform, because you can
>>> switch to another version of DLTK without installing it in your Eclipse.
>>>
>>>> Which part of the features of the current DLTK editor require FM3.0 and which can work on 2.3?
>>> My work doesn't work with FM 2.3 because FM3.0 changes package name
>>> for instance. But I think it will be easy to switch to 2.3
>>> the only thing is to create some patches because debugger should be improved.
>>>
>>>> If you are interested I could create a GitHub project in my GitHub https://github.com/angelozerr
>>>
>>> That's good, I prefer that over sf.net SVN.
>>>
>>> Ok, it's done.  https://github.com/angelozerr/Freemarker-Eclipse-DLTK
>>>
>>>
>>> The FM 3 branch you are talking about (the sf.net SVN trunk) is
>>> "officially" dead for a long time, and it wont ever yield a release.
>>> So in theory, you had to build on what's on GitHub (use the "2.3-gae"
>>> branch now). Of course, 2.3 has virtually no public AST API, so you
>>> can't use that either. (And I guess some other things will be missing
>>> too. Can you tell me what?) So for now you will have to work against
>>> FM 3.
>>>
>>> As of what will it work on then when it's released... The AST stuff
>>> changes will break BC too much for a 2.3 (I guess), so it will have to
>>> be FM 2.4. But if it's 2.4.0, then of course I will want to put in
>>> some other minor not-strictly-BC changes too (not to mention new
>>> features that somehow justifies in the eyes of the average uses the
>>> 2nd version increase). I will be careful not to be too ambitious with
>>> it, as I don't want to impede the release of the plugin, or undermine
>>> the trust on the release of the new 2.4 branch. So as you see, there
>>> are some difficulties, but if you are going to work on the plugin, I
>>> will try very hard to clear its way.
>>>
>>> I will try to migrate to 2.3 to see if they are a lot of modification to do.
>>>
>>>> 3) DBGP Debugger
>>>>
>>>> Existing code of Debugger should be modified to support several
>>>> implementation of Debugger (RMI, DBGP, etc). So I think it's the
>>>> first step if we decide to develop Freemarker DLTK.
>>>
>>> (I see the discussion about that with Greg Amerson has been started .)
>>>
>>>> Regards Angelo
>>> Regards Angelo
>>>
>>> --
>>> Thanks,
>>>  Daniel Dekany


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Daniel Dekany
Continuing my last answer... (sorry I have inserted a closing sign in
the middle somehow...)


Wednesday, July 24, 2013, 11:21:58 AM, Angelo zerr wrote:

> My idea is to change the FTL.jj
>
> to use a factory which creates template element. So instead to do
> that in the FMParser :
>
> -------------------------------------------------------
> BlockAssignment ba = new BlockAssignment(block, varName, scope, nsExp);
> -------------------------------------------------------
>
> Use a factory :
>
> -------------------------------------------------------
> IBlockAssignment ba = factory.newBlockAssignment(block, varName, scope, nsExp);
> -------------------------------------------------------
>
> IBlockAssignment is an interface. By using a factory gives you the
> capability to use our own structure. For Freemarker, teh factory
> will create IIBlockAssignment with existing IBlockAssignment
> For DLTK, factory will create IIBlockAssignment with
> DLTKIBlockAssignment which will implement DLTK ASTNode.
>
> What do you think about that?

If we will need a such detailed AST then that's probably the good
approach. But as I have written earlier, that's something that should
be avoided, if it can be. I'm not 100% sure it can be avoided, but I
hope it can be.

FM has a quite detailed *internal* AST traversal API since 2.3.20.
It's a nasty one, tries to minimize runtime impact etc., but it's not
for the public so I thought it's OK. So if we could explore what
information is *actually* needed for the DTLK plugin, then I could
implement an API that gives you just that information through a nicer
public API. Maybe in the form of a tree, through the visitor pattern,
for some queries. I don't want to pass in AST nodes, only the
information needed. As you move along, and you realize new things are
needed, the capabilities of this tools API would be extended, and the
point is, it will belong to the FreeMarker project, not to the DLTK
project. So if I add a new feature, it's my responsibility to bring it
up to date. What do you think about this approach?

> Regards Angelo
>


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

angelozerr
Hi Daniel,

OK I understand why you don't want expose the AST API. Thank's for your information.

The DLTK ASTNode is used for several features like folding, refactoring, search, codeassist. You can read info about ASTNode at http://wiki.eclipse.org/DLTK_Core_Architecture
It's difficult for me to tell you now which info are required  to build a DLTK ASTNode. I will try to switch to 2.3 and I will see what we need. 

My work about AST was very simply (I have just managed #assign in the AST to display the variable name of assign in the Outline View).
But perhaps for Freemarker, the Outline View should display more info like JBoss IDE and your idea about freemaker-tool.jar is perhaps a good idea.

I have not experimented a lot the capability of the DLTK ASTNode but at the end of the http://wiki.eclipse.org/DLTK_Core_Architecture it says "Use of the DLTK AST is not mandatory, but some DLTK features like folding may rely on it and it can greatly simplify implementation."

For the completion (interpolation) I don't use the ASTNode but I think I should to use it (so I need a more complex AST).

So I must switch to 2.3, my first idea is to try to remove the use of DLTK ASTNode an dmanage other features like syntax errors and debug.

Regards Angelo



2013/7/24 Daniel Dekany <[hidden email]>
Continuing my last answer... (sorry I have inserted a closing sign in
the middle somehow...)


Wednesday, July 24, 2013, 11:21:58 AM, Angelo zerr wrote:

> My idea is to change the FTL.jj
>
> to use a factory which creates template element. So instead to do
> that in the FMParser :
>
> -------------------------------------------------------
> BlockAssignment ba = new BlockAssignment(block, varName, scope, nsExp);
> -------------------------------------------------------
>
> Use a factory :
>
> -------------------------------------------------------
> IBlockAssignment ba = factory.newBlockAssignment(block, varName, scope, nsExp);
> -------------------------------------------------------
>
> IBlockAssignment is an interface. By using a factory gives you the
> capability to use our own structure. For Freemarker, teh factory
> will create IIBlockAssignment with existing IBlockAssignment
> For DLTK, factory will create IIBlockAssignment with
> DLTKIBlockAssignment which will implement DLTK ASTNode.
>
> What do you think about that?

If we will need a such detailed AST then that's probably the good
approach. But as I have written earlier, that's something that should
be avoided, if it can be. I'm not 100% sure it can be avoided, but I
hope it can be.

FM has a quite detailed *internal* AST traversal API since 2.3.20.
It's a nasty one, tries to minimize runtime impact etc., but it's not
for the public so I thought it's OK. So if we could explore what
information is *actually* needed for the DTLK plugin, then I could
implement an API that gives you just that information through a nicer
public API. Maybe in the form of a tree, through the visitor pattern,
for some queries. I don't want to pass in AST nodes, only the
information needed. As you move along, and you realize new things are
needed, the capabilities of this tools API would be extended, and the
point is, it will belong to the FreeMarker project, not to the DLTK
project. So if I add a new feature, it's my responsibility to bring it
up to date. What do you think about this approach?

> Regards Angelo
>



------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Daniel Dekany
Thursday, July 25, 2013, 4:40:28 PM, Angelo zerr wrote:

> Hi Daniel,
>
> OK I understand why you don't want expose the AST API. Thank's for your information.
>
> The DLTK ASTNode is used for several features like folding,
> refactoring, search, codeassist.
>
> You can read info about ASTNode at
> http://wiki.eclipse.org/DLTK_Core_Architecture
> It's difficult for me to tell you now which info are required  to
> build a DLTK ASTNode.

Then, to start somewhere... I think, org.freemarker:tooling will give
you an abstract FTLVisitor class, which however will only have two
kind of visit-s for now: visit(ElementInfo) and visit(ExpressionInfo).
(That's so that the plugin or other tools won't assume that they know
all the directives and expression types.) (Note that the 3.0 API
didn't visit expressions at all, only elements.) And then I start
adding properties to these XxxInfo-s as the need arises. Like,
isFoldable(), isOutlineNode and getOutlineNodeLabel for starters. The
initial "accept" method of the tools API could have a Query object (a
JavaBean again) as parameter, in which you can specify what are you
interested in (like, folding and/or outline nodes and/or variables
used, etc). So as you move ahead, we will see if it's appropriate at
all. And of course I'm open for suggestions.

> I will try to switch to 2.3 and I will see what we need.
>
> My work about AST was very simply (I have just managed #assign in
> the AST to display the variable name of assign in the Outline View).
> But perhaps for Freemarker, the Outline View should display more
> info like JBoss IDE

JBoss IDE's outline is useless IMAO. It shows far too much. After all,
the goal of an outline view is to show you a summary that's good for
navigation (among others). Although I'm not entirely sure how the
outlook should look. It has to show #macro and #function, and that's
already useful, but what else?

> and your idea about freemaker-tool.jar is perhaps a good idea.

(I wonder what's the proper term is. "tooling" or "tools"? Like
"FreeMarker Tooling API" or "FreeMarker Tools API"... or even
"tool-helpers"...)

> I have not experimented a lot the capability of the DLTK ASTNode
> but at the end of the http://wiki.eclipse.org/DLTK_Core_Architecture
> it says "Use of the DLTK AST is not mandatory, but some DLTK
> features like folding may rely on it and it can greatly simplify implementation."
>
> For the completion (interpolation) I don't use the ASTNode but I
> think I should to use it (so I need a more complex AST).

For that you need the variable names used, in a hierarchy. Like, on
the top-level you have "user" and "department", but after "user." the
possibilities are different, like "user.name" etc. If DLTK can extract
such info from the AST, we might as well add that in ExpressionInfo.
Also there's the case where some of the data-model variables has a
known class (that's not a FreeMarker feature).

> So I must switch to 2.3, my first idea is to try to remove the use
> of DLTK ASTNode an dmanage other features like syntax errors and debug.
>
> Regards Angelo

--
Thanks,
 Daniel Dekany


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

angelozerr
I agree with your suggestion.

My first step is to swith to 2.3. I think the Outline is not really important for the moment and AST is not important for the moment.
If you are OK, I would like to manage with 2.3 the 2 features (which already works with 3.0) : 

 * syntax errors
 * dbgp debugger 

Are you OK with that? 

Regards Angelo


2013/7/25 Daniel Dekany <[hidden email]>
Thursday, July 25, 2013, 4:40:28 PM, Angelo zerr wrote:

> Hi Daniel,
>
> OK I understand why you don't want expose the AST API. Thank's for your information.
>
> The DLTK ASTNode is used for several features like folding,
> refactoring, search, codeassist.
>
> You can read info about ASTNode at
> http://wiki.eclipse.org/DLTK_Core_Architecture
> It's difficult for me to tell you now which info are required  to
> build a DLTK ASTNode.

Then, to start somewhere... I think, org.freemarker:tooling will give
you an abstract FTLVisitor class, which however will only have two
kind of visit-s for now: visit(ElementInfo) and visit(ExpressionInfo).
(That's so that the plugin or other tools won't assume that they know
all the directives and expression types.) (Note that the 3.0 API
didn't visit expressions at all, only elements.) And then I start
adding properties to these XxxInfo-s as the need arises. Like,
isFoldable(), isOutlineNode and getOutlineNodeLabel for starters. The
initial "accept" method of the tools API could have a Query object (a
JavaBean again) as parameter, in which you can specify what are you
interested in (like, folding and/or outline nodes and/or variables
used, etc). So as you move ahead, we will see if it's appropriate at
all. And of course I'm open for suggestions.

> I will try to switch to 2.3 and I will see what we need.
>
> My work about AST was very simply (I have just managed #assign in
> the AST to display the variable name of assign in the Outline View).
> But perhaps for Freemarker, the Outline View should display more
> info like JBoss IDE

JBoss IDE's outline is useless IMAO. It shows far too much. After all,
the goal of an outline view is to show you a summary that's good for
navigation (among others). Although I'm not entirely sure how the
outlook should look. It has to show #macro and #function, and that's
already useful, but what else?

> and your idea about freemaker-tool.jar is perhaps a good idea.

(I wonder what's the proper term is. "tooling" or "tools"? Like
"FreeMarker Tooling API" or "FreeMarker Tools API"... or even
"tool-helpers"...)

> I have not experimented a lot the capability of the DLTK ASTNode
> but at the end of the http://wiki.eclipse.org/DLTK_Core_Architecture
> it says "Use of the DLTK AST is not mandatory, but some DLTK
> features like folding may rely on it and it can greatly simplify implementation."
>
> For the completion (interpolation) I don't use the ASTNode but I
> think I should to use it (so I need a more complex AST).

For that you need the variable names used, in a hierarchy. Like, on
the top-level you have "user" and "department", but after "user." the
possibilities are different, like "user.name" etc. If DLTK can extract
such info from the AST, we might as well add that in ExpressionInfo.
Also there's the case where some of the data-model variables has a
known class (that's not a FreeMarker feature).

> So I must switch to 2.3, my first idea is to try to remove the use
> of DLTK ASTNode an dmanage other features like syntax errors and debug.
>
> Regards Angelo

--
Thanks,
 Daniel Dekany


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

Daniel Dekany
Thursday, July 25, 2013, 5:43:30 PM, Angelo zerr wrote:

> I agree with your suggestion.
>
> My first step is to swith to 2.3. I think the Outline is not really
> important for the moment and AST is not important for the moment.
> If you are OK, I would like to manage with 2.3 the 2 features (which already works with 3.0) :
>
>  * syntax errors
>  * dbgp debugger
>
> Are you OK with that?

What do you mean by "manage with 2.3"? You want to modify FM, or it's
plugin development only? I'm OK with both, except that you will have
to send a signed Contributor License Agreement for modifying FM
itself.

--
Thanks,
 Daniel Dekany


> Regards Angelo
>
>
> 2013/7/25 Daniel Dekany <[hidden email]>
> Thursday, July 25, 2013, 4:40:28 PM, Angelo zerr wrote:
>
>> Hi Daniel,
>>
>> OK I understand why you don't want expose the AST API. Thank's for your information.
>>
>> The DLTK ASTNode is used for several features like folding,
>> refactoring, search, codeassist.
>>
>> You can read info about ASTNode at
>> http://wiki.eclipse.org/DLTK_Core_Architecture
>> It's difficult for me to tell you now which info are required  to
>> build a DLTK ASTNode.
>
> Then, to start somewhere... I think, org.freemarker:tooling will give
> you an abstract FTLVisitor class, which however will only have two
> kind of visit-s for now: visit(ElementInfo) and visit(ExpressionInfo).
> (That's so that the plugin or other tools won't assume that they know
> all the directives and expression types.) (Note that the 3.0 API
> didn't visit expressions at all, only elements.) And then I start
> adding properties to these XxxInfo-s as the need arises. Like,
> isFoldable(), isOutlineNode and getOutlineNodeLabel for starters. The
> initial "accept" method of the tools API could have a Query object (a
> JavaBean again) as parameter, in which you can specify what are you
> interested in (like, folding and/or outline nodes and/or variables
> used, etc). So as you move ahead, we will see if it's appropriate at
> all. And of course I'm open for suggestions.
>
>> I will try to switch to 2.3 and I will see what we need.
>>
>> My work about AST was very simply (I have just managed #assign in
>> the AST to display the variable name of assign in the Outline View).
>> But perhaps for Freemarker, the Outline View should display more
>> info like JBoss IDE
>
> JBoss IDE's outline is useless IMAO. It shows far too much. After all,
> the goal of an outline view is to show you a summary that's good for
> navigation (among others). Although I'm not entirely sure how the
> outlook should look. It has to show #macro and #function, and that's
> already useful, but what else?
>
>> and your idea about freemaker-tool.jar is perhaps a good idea.
>
> (I wonder what's the proper term is. "tooling" or "tools"? Like
> "FreeMarker Tooling API" or "FreeMarker Tools API"... or even
> "tool-helpers"...)
>
>> I have not experimented a lot the capability of the DLTK ASTNode
>> but at the end of the http://wiki.eclipse.org/DLTK_Core_Architecture
>> it says "Use of the DLTK AST is not mandatory, but some DLTK
>> features like folding may rely on it and it can greatly simplify implementation."
>>
>> For the completion (interpolation) I don't use the ASTNode but I
>> think I should to use it (so I need a more complex AST).
>
> For that you need the variable names used, in a hierarchy. Like, on
> the top-level you have "user" and "department", but after "user." the
> possibilities are different, like "user.name" etc. If DLTK can extract
> such info from the AST, we might as well add that in ExpressionInfo.
> Also there's the case where some of the data-model variables has a
> known class (that's not a FreeMarker feature).
>
>> So I must switch to 2.3, my first idea is to try to remove the use
>> of DLTK ASTNode an dmanage other features like syntax errors and debug.
>>
>> Regards Angelo
>
> --
> Thanks,
>  Daniel Dekany
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> FreeMarker-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/freemarker-devel
>


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
Reply | Threaded
Open this post in threaded view
|

Re: Continue Eclipse Freemarker DLTK?

angelozerr


What do you mean by "manage with 2.3"?

I mean that DLTK Freemarker will use FM 2.3 and not 3.0
 
You want to modify FM, or it's
plugin development only?

My first step is just modify or comments code of DLTK Freemarker.
 
After I would like contribute with my code https://github.com/angelozerr/Freemarker-Eclipse-DLTK/tree/master/freemarker.provisionnal/src/freemarker/provisionnal to FM to improve debugger and contribute to FM tools.

I'm OK with both, except that you will have
to send a signed Contributor License Agreement for modifying FM
itself.

In last past I had send a CLA to Atila (to commit in the svn FM), is not enough?

Regards Angelo 

--
Thanks,
 Daniel Dekany


> Regards Angelo
>
>
> 2013/7/25 Daniel Dekany <[hidden email]>
> Thursday, July 25, 2013, 4:40:28 PM, Angelo zerr wrote:
>
>> Hi Daniel,
>>
>> OK I understand why you don't want expose the AST API. Thank's for your information.
>>
>> The DLTK ASTNode is used for several features like folding,
>> refactoring, search, codeassist.
>>
>> You can read info about ASTNode at
>> http://wiki.eclipse.org/DLTK_Core_Architecture
>> It's difficult for me to tell you now which info are required  to
>> build a DLTK ASTNode.
>
> Then, to start somewhere... I think, org.freemarker:tooling will give
> you an abstract FTLVisitor class, which however will only have two
> kind of visit-s for now: visit(ElementInfo) and visit(ExpressionInfo).
> (That's so that the plugin or other tools won't assume that they know
> all the directives and expression types.) (Note that the 3.0 API
> didn't visit expressions at all, only elements.) And then I start
> adding properties to these XxxInfo-s as the need arises. Like,
> isFoldable(), isOutlineNode and getOutlineNodeLabel for starters. The
> initial "accept" method of the tools API could have a Query object (a
> JavaBean again) as parameter, in which you can specify what are you
> interested in (like, folding and/or outline nodes and/or variables
> used, etc). So as you move ahead, we will see if it's appropriate at
> all. And of course I'm open for suggestions.
>
>> I will try to switch to 2.3 and I will see what we need.
>>
>> My work about AST was very simply (I have just managed #assign in
>> the AST to display the variable name of assign in the Outline View).
>> But perhaps for Freemarker, the Outline View should display more
>> info like JBoss IDE
>
> JBoss IDE's outline is useless IMAO. It shows far too much. After all,
> the goal of an outline view is to show you a summary that's good for
> navigation (among others). Although I'm not entirely sure how the
> outlook should look. It has to show #macro and #function, and that's
> already useful, but what else?
>
>> and your idea about freemaker-tool.jar is perhaps a good idea.
>
> (I wonder what's the proper term is. "tooling" or "tools"? Like
> "FreeMarker Tooling API" or "FreeMarker Tools API"... or even
> "tool-helpers"...)
>
>> I have not experimented a lot the capability of the DLTK ASTNode
>> but at the end of the http://wiki.eclipse.org/DLTK_Core_Architecture
>> it says "Use of the DLTK AST is not mandatory, but some DLTK
>> features like folding may rely on it and it can greatly simplify implementation."
>>
>> For the completion (interpolation) I don't use the ASTNode but I
>> think I should to use it (so I need a more complex AST).
>
> For that you need the variable names used, in a hierarchy. Like, on
> the top-level you have "user" and "department", but after "user." the
> possibilities are different, like "user.name" etc. If DLTK can extract
> such info from the AST, we might as well add that in ExpressionInfo.
> Also there's the case where some of the data-model variables has a
> known class (that's not a FreeMarker feature).
>
>> So I must switch to 2.3, my first idea is to try to remove the use
>> of DLTK ASTNode an dmanage other features like syntax errors and debug.
>>
>> Regards Angelo
>
> --
> Thanks,
>  Daniel Dekany
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> FreeMarker-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/freemarker-devel
>



------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
FreeMarker-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freemarker-devel
123