Skip to content

v0.4.0

Latest

Choose a tag to compare

@github-actions github-actions released this 20 Oct 12:21
c031cbb
  • Ctrl+Click / Cmd+Click on the controller or action value inside href="${ createLink(controller: "bill", action: "list") }" opens that target; a Groovy string that uses the same quote as the HTML attribute was ending the attribute early and underlining ${ createLink as a file, and that prefix is no longer a link
  • Go to Definition (Ctrl+Click / Cmd+Click) on the controller, action or view of Grails links and renders — createLink, link, redirect, chain, forward, render(view:) and respond(view:) in Groovy and inside GSP ${...}, and <g:link>, <g:form>, <g:uploadForm>, <g:paginate> and other link tags in GSP — opens the controller class, the action method (including actions inherited from a base controller) or the view (/folder/view from views/, a relative name from the current controller's folder); without a controller it uses the current controller (the controller file, or the views/<controller>/ folder of a GSP), prefers a controller in the same module when several share a name, and does not navigate when the value is dynamic or the target does not exist; inside an HTML attribute such as <a href="${createLink(...)}"> or <form action="${createLink(...)}">, the controller and action values become links to their targets, replacing the HTML link that tried to open the whole value as a file
  • Go to Definition (Ctrl+Click / Cmd+Click) on a property read such as invoice.receiptCode or invoice?.overdue opens the getReceiptCode() or isOverdue() getter when the class has no field with that name and the receiver type is known (declared type, property chain, this or class name)
  • Go to Definition on a getter declaration and Find All References also list its property reads, scoped to the declaring class and its subclasses; reads are searched in the files that mention the class, so a read reached only through a chain of other classes is not listed