[
https://issues.apache.org/jira/browse/NETBEANS-1456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17173000#comment-17173000
]
Pete Whelpton commented on NETBEANS-1456:
-----------------------------------------
I got somewhat stuck with this, as I can't figure out how to recursive grammar
for the calc(). The CSS specification states that implementers should handle
20 levels of depth (e.g. nested parenthesis), I tried to handle three without
using recursion, and performance STINKS.
It's not so noticeable on small .css files, but bootstrap.css (my go-to
performance benchmark) crawls.
I noticed that GrammarParser doesn't have any kind of caching, so it will try
and re-parse css psuedo-properties it has already parsed... I got a noticeable
performance against bootstrap.css by adding a "poor mans cache" of a hashmap to
the GrammarParser class.
However, looking at the profiler, it still seems like there are WAY too many
hashmap entries, and also GrammerParserTree$Entries and ResolvedProperties
objects and that probably needs to be sorted out.
I just don't think the css properties parser in NB was designed for multiple
properties sharing the same psuedo properties, and now our css properties
grammars are getting quite large/intertwined we see performance problems if we
add too much more complexity.
I've pushed where I am at here:
[https://github.com/peedeeboy/incubator-netbeans/tree/NETBEANS-1456] in case
anybody want to take a look from there, but I'm pretty stumped now on how to
take this further...
> Unsupported calc() function in CSS stylesheets
> ----------------------------------------------
>
> Key: NETBEANS-1456
> URL: https://issues.apache.org/jira/browse/NETBEANS-1456
> Project: NetBeans
> Issue Type: Bug
> Components: web - CSS Editor
> Affects Versions: 9.0
> Environment: Windows 10
> Reporter: Artur Stępień
> Priority: Minor
> Labels: css, easy
>
> The following code in CSS Editor shows as a warning:
> {code:java}
> .modal-dialog-centered {
> min-height: calc(100% - (0.5rem * 2));
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists