Comments (4)
I've started investigating this issue. Not done yet, but working on it.
Here's what I've found atm:
- https://github.com/Shopify/liquid/wiki/Liquid-for-Designers this doc says they support complex indexing subexpressions like a[0].b["c"]
- Ruby's \w is not like in rust, so ".xxx" is parsed as Identifier(".xxx") while it shouldn't.
I think I can fix this eventually.
from liquid-rust.
That'd be a big help!
I've not been able to set aside time to try to step through the regex based parser. I'd actually love to switch it to nom or some other parser though it does lose the comparison to shopify's but as you pointed it, it can be misleading.
from liquid-rust.
I think I could look into it in future as well, but after fixing this bug.
I'd (personally) prefer using https://github.com/Marwes/combine instead of nom.
from liquid-rust.
I've created #138 to track changing the parser.
I've not explored the parser options, so I'll be deferring to whoever does the work. It would be helpful if you posted to #138 what your recommendation is and why so that if someone comes along and goes "you did X, why not Y" we have a reason.
from liquid-rust.
Related Issues (20)
- Update Readme links & version and liquid (5.0.0) render instead of include HOT 1
- How to use the "Template" class. HOT 33
- Allow accessing renderer state/runtime before rendering HOT 6
- with_time unimplemented HOT 3
- Change `master` branch to `main` HOT 3
- could not compile kstring HOT 1
- Render Tag HOT 3
- EmptyDrop and Object indexing HOT 7
- Make struct InnerError public HOT 1
- Open to the idea of supporting less strict parsing/rendering as an option? HOT 3
- Can't render dates with millisecond precision HOT 1
- No way to return a reference for the values method of trait ObjectView
- Dependency Dashboard
- Question: supporting object literals with unknown keys on custom filters HOT 8
- Thoughts on implementing `From<serde_json::Value> for liquid_core::Value`? HOT 2
- How do you use `{% include x.liquid %}`? HOT 2
- Liquid Tag and Echo Tag
- How would you go about implementing a Drop HOT 3
- Add support for u64 numbers?
- Inline comments are not supported HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from liquid-rust.