+1 Thanks, Marius
On Fri, Oct 7, 2011 at 1:13 PM, Vincent Massol <[email protected]> wrote: > Hi guys, > > Ok here's second version taking into account Denis and Marius comments: > > * Have a {{display}} macro which is equivalent to context=new and > resolve=source (ie links resolved on the reference being displayed) > * Have a compatibility mode for the {{include}} macro with the following > behavior: > ** {{include}} in non-compatiiblity mode is equivalent to context=current and > resolve=current (ie links resolve on the including document) > ** {{include}} in compatiiblity mode is equivalent to context=current and > resolve=source (the default we have now and which we need to not break people) > * We would have a rendering.macro.include.compatibility configuration property > * We would set that property to true by default for 3.3 to give some time for > people to adjust > * We would set that property to false by default for 3.4 > * Deprecate "document" parameter for the include macro and add a new > "reference" parameter + a new "type" parameter (I forgot that one in my first > email). The "type" parameter represents the Entity Reference Type. > * Also add a "type" parameter for the display macro (I forgot that one in my > first email) > * Have the "type" parameter default to "document". > > Some additional notes: > * The person writing a page is not necessarily the same as the person writing > an include. > * With the new sheet mechanism there are a lot less use cases for the include > in compatibility mode. > > Please vote again. > > Here's my +1 > > Thanks > -Vincent > > On Oct 6, 2011, at 2:58 PM, Vincent Massol wrote: > >> Hi devs, >> >> As you know in XE 3.0 we've changed the behavior for resolving local >> links/attachments when they're included using the {{include}} macro (they're >> now resolved against the included document instead of the including >> document). >> >> Now there might be some use cases (pretty rare IMO but they exist) where >> you'd want the links to be resolved against the including document. Here's a >> use case: you have a sheet document that references an image called >> image.png and you want that the including document provides it (like an >> Abstract in Java! ;)). >> >> So we've brainstormed with Thomas and here's our proposal: >> >> * Introduce a new {{display reference="…"/}} macro. This macro will >> *execute* the passed reference in its own context (it'll do what {{include >> context="new"…}} was doing before). It'll be located in the new display >> module. >> * Deprecate the "context" parameter of the {{include}} macro. The reason is >> that calling with context=new is not an include, it's a display. >> * Add a new "resolve" parameter for the {{include}} macro with possible >> values = "current" | "source", with a default value of "source". >> resolve=source means that the links/attachments are resolved against the >> source (ie the document being included). Using resolve=current means that >> you want the links/attachments resolved against the including document. >> >> Pros: >> * Clearly separate the 2 use cases: display and include >> * Make the include macro simple (a single "resolve" parameter) >> * Use the new display module as it should be and start the direction of >> having displayer macros for displaying all types of entities >> >> Note: In the future we'll also want to deprecate the "document" parameter of >> the include macro in favor of a more generic "reference" parameter, which >> will allow the macro to include other types of entities (such as an object >> property for ex). >> >> WDYT? >> >> Here's my +1 >> >> Thanks >> -Vincent >> > > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs > _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

