Comments (6)
widgetFile works as designed. You need to override the implementation, not sure if there is documentation for that.
The error you get is from the shakespeareRuntime code path (I believe not finding your routes in scope). I would guess that it has nothing to do with coffeescript.
from shakespeare.
Exactly the same code works fine with other JavaScript template language and if overriding widgetFile to support coffee script means something completely different from overriding it for julius (other than providing different extension name and parsing functions - it is broken. Especially is there is no documentation explaining you why coffee script is that different from Julius from yesod's point of view.
As far as I understand whole idea of scaffold is in having some sane set of defaults that you can use as is without having to write this code yourself, unless you want something strange (like using head or tail functions from Prelude, heh :) ).
from shakespeare.
http://comments.gmane.org/gmane.comp.lang.haskell.yesod/2700
from shakespeare.
This has been addressed in yesod devel
, but as Greg mentioned, there's no built-in support for Coffeescript in widgetFile
. If we include Coffeescript with the same level of control as Julius is supported, this problem will be resolved.
from shakespeare.
Is there documentation somewhere on how to override widgetFile?
widgetFile :: String -> Q Exp
widgetFile = (if development then widgetFileReload else widgetFileNoReload )
widgetFileSettings
where
widgetFileSettings = def { wfsLanguages = λhset → defaultTemplateLanguages hset ⧺
[
TemplateLanguage True "coffee" Text.Coffee.coffeeFile Text.Coffee.coffeeFileReload
] }
from shakespeare.
I copied that information to https://github.com/yesodweb/yesod/wiki/Overriding-widgetFile, and I'll link to that Wiki page from the scaffolding. Should we close this issue?
from shakespeare.
Related Issues (20)
- Lucius and Cassius `&` not documented
- Lucius Cassius Comment syntax not documented HOT 5
- CSS Math HOT 1
- Hamlet puts <title> to <body> HOT 5
- Julius: async function cannot be parsed HOT 6
- shakespeare escape bug in #\" HOT 2
- [lucius] @supports mixing problem? HOT 4
- Test failure with GHC 9 HOT 6
- Build error with aeson-2 HOT 1
- `$maybe` and `$forall` unsupported in `Text.Shakespeare.Text` HOT 2
- fails to build with aeson-2.0 HOT 5
- Mixins should respect rule order HOT 1
- I18N, allow multiline messages in translation files
- Support lens operators in templates
- Julius arrow function with curly brace body is compiled to expression even if it's not an expression HOT 2
- Surprising behaviour of Scientific arithmetic inside a template HOT 1
- Cannot have two messages with the same parameter name of different types HOT 3
- Inconsistency between `textfile` and `stextfile` HOT 2
- Upgrading to the `LTS-20.26` implies ~100x performance regression for functions using dynamic templates.
- Add "$foreach" statement.
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 shakespeare.