Git Product home page Git Product logo

Comments (5)

eproxus avatar eproxus commented on June 2, 2024 1

Thanks a lot!

from bbmustache.

soranoba avatar soranoba commented on June 2, 2024

It can be implemented.
However, the behaviour is against the specification of mustache (mustache is specified as complementing with empty string if key does not exist).

So, I'm not positive about that it will included in bbmustache.

Do you need it for debugging purposes?
For example, I think that worth considering that it will print logs when compile option enabled.

from bbmustache.

eproxus avatar eproxus commented on June 2, 2024

The manual says:

By default a variable "miss" returns an empty string. This can usually be configured in your Mustache library. The Ruby version of Mustache supports raising an exception in this situation, for instance.

I think it is a useful feature. We're building a dynamic set of keys from options, so it would be another manual step to double check all keys used in templates before rendering. It could also be a source of bugs in case the template is changed and someone adds a key but forgets to add a check for it.

from bbmustache.

soranoba avatar soranoba commented on June 2, 2024

Ok, let's implement the same function as raise_on_context_miss of mustache for ruby.
Wait for a few days.


specifications

  • It does NOT throw exceptions at parse.
  • If raise_on_context_miss enabled, it throw exceptions on missing keys of all tags (e.g. #, >, ^, &)
  • However, it does NOT throw exceptions on skipped keys. (e.g. {{#parent}}{{child}}{{/parent}}, parent is false and child is not exist)

from bbmustache.

soranoba avatar soranoba commented on June 2, 2024

This feature was added in v1.5.0.
Please refer to https://github.com/soranoba/bbmustache/releases/tag/v1.5.0

from bbmustache.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.