pivot-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sandro Martini (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PIVOT-960) Implement simple macro system in JSONSerializer
Date Wed, 29 Oct 2014 09:35:33 GMT

    [ https://issues.apache.org/jira/browse/PIVOT-960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14188174#comment-14188174
] 

Sandro Martini commented on PIVOT-960:
--------------------------------------

Hi Roger, to me the patch looks good ... only some questions:
- without variables inside json files, macros will be triggered the same ?
- in case something goes wrong during reading variables/processing it, how exceptions are
handled ?
- variable referencing, will it be possible to use a litle simplified form, like $TWO_HUNDRED
instead of $(TWO_HUNDRED) ? Many others does something similar, for example:
http://groovy.codehaus.org/Strings+and+GString
http://docs.scala-lang.org/overviews/core/string-interpolation.html
So the rule here (as in Scala) could be: $variablename in standard cases, and ${variablename
etc} for more complex cases (not handled here, at least not for now), but I understand that
{} chars are not the best inside a json file ...

Anyway, go with the commit (and the little change if it's ok for you :-) ) ...


> Implement simple macro system in JSONSerializer
> -----------------------------------------------
>
>                 Key: PIVOT-960
>                 URL: https://issues.apache.org/jira/browse/PIVOT-960
>             Project: Pivot
>          Issue Type: Improvement
>          Components: core-json
>    Affects Versions: 2.0.4
>         Environment: All
>            Reporter: Roger Whitcomb
>            Assignee: Roger Whitcomb
>            Priority: Minor
>             Fix For: 2.1
>
>         Attachments: 960.patch
>
>
> It occurred to me since we are using JSON style sheets to style our application, and
it is getting quite big, that a macro system (maybe similar to C/C++ with #define or something
similar) would be useful, especially for repeated colors, and other constants (like padding
values, fonts, etc.)  This would enable using custom values consistently while avoiding inconsistencies
due to typos or changes introduced one place and not others.
> I was thinking of a simple
> #define NAME value
> as in C/C++, and then using $(NAME) as the substitution token.  This is easily implemented
in JSONSerializer.
> I'm open to suggestions for the syntax, but I believe the feature will be very useful,
especially for the JSON stylesheet.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message