Details

    • Type: Sub-task Sub-task
    • Status: Resolved Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: Sprint 8, 2.3.1.RELEASE
    • Component/s: None
    • Labels:
      None

      Description

      A GSP editor should be able to (in order of priority):

      • Support Groovy code inside scriptlets/expressions
      • Complete GSP tags
      • Complete JSP tags (since they are supported inside GSP)

        Activity

        Hide
        Graeme Rocher added a comment -

        Hi Andrew,

        1. Yeah the templates don't need the <%@ page %> directive at the top, otherwise they're ok
        2. Nope looks ok
        3. Default location should be grails-app/views but I would say you should make this more intelligent since you have conventions. So for example if you have "TestController" open then the location should be grails-app/views/test and so on

        It would be nice to get rid of the "Unknown tag" warnings all over the place when Grails' default tags are found too

        Show
        Graeme Rocher added a comment - Hi Andrew, 1. Yeah the templates don't need the <%@ page %> directive at the top, otherwise they're ok 2. Nope looks ok 3. Default location should be grails-app/views but I would say you should make this more intelligent since you have conventions. So for example if you have "TestController" open then the location should be grails-app/views/test and so on It would be nice to get rid of the "Unknown tag" warnings all over the place when Grails' default tags are found too
        Hide
        Andrew Eisenberg (c) added a comment -

        I have support for the very basic tags (eg- if, each, etc). So, now they will not appear as unknown and they will appear in content assist.

        Show
        Andrew Eisenberg (c) added a comment - I have support for the very basic tags (eg- if, each, etc). So, now they will not appear as unknown and they will appear in content assist.
        Hide
        Andrew Eisenberg (c) added a comment -

        Content assist inside $

        {...}

        is now groovy-aware with full inferencing, etc happening.

        This feature and the previous are now available in the latest nightly build of grails tooling.

        Show
        Andrew Eisenberg (c) added a comment - Content assist inside $ {...} is now groovy-aware with full inferencing, etc happening. This feature and the previous are now available in the latest nightly build of grails tooling.
        Hide
        Andrew Eisenberg (c) added a comment -

        Content assist outside of $

        {...}

        tags now has all default, builtin, plugin, and user-defined tags. I do some parsing of the tag body to look for supported attributes, but this is far from complete. The builtin tags (eg- if, else, while...) are fully documented and required attributes are automatically added.

        This is not committed yet, but it is working locally. I'll probably commit sometime in early January. At that point, once we are sure that everything is working, I'll close this issue since the editor is mostly feature complete.

        However, there is a big piece that is not yet implemented. Once a gsp editor is opened, the tags that it knows about are fixed. So, even if tag libs are changed, plugins added, etc, this will not be reflected in the editor.

        Show
        Andrew Eisenberg (c) added a comment - Content assist outside of $ {...} tags now has all default, builtin, plugin, and user-defined tags. I do some parsing of the tag body to look for supported attributes, but this is far from complete. The builtin tags (eg- if, else, while...) are fully documented and required attributes are automatically added. This is not committed yet, but it is working locally. I'll probably commit sometime in early January. At that point, once we are sure that everything is working, I'll close this issue since the editor is mostly feature complete. However, there is a big piece that is not yet implemented. Once a gsp editor is opened, the tags that it knows about are fixed. So, even if tag libs are changed, plugins added, etc, this will not be reflected in the editor.
        Hide
        Andrew Eisenberg (c) added a comment -

        Done. I have now implemented a per-project cache of tag libs that are shared between open gsp editors. This cache is refreshed whenever there is a relevant change to the project's taglibs.

        This is committed and regression tests are included. I am now closing this bug since the gsp editor is feature complete. However, there are still areas that need some work, such as making content assist for grails tags have more complete information.

        Show
        Andrew Eisenberg (c) added a comment - Done. I have now implemented a per-project cache of tag libs that are shared between open gsp editors. This cache is refreshed whenever there is a relevant change to the project's taglibs. This is committed and regression tests are included. I am now closing this bug since the gsp editor is feature complete. However, there are still areas that need some work, such as making content assist for grails tags have more complete information.

          People

          • Assignee:
            Andrew Eisenberg (c)
            Reporter:
            Graeme Rocher
          • Votes:
            37 Vote for this issue
            Watchers:
            25 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:
              First Response Date: