问题标签 [shakespeare-text]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
haskell - 如何有效地阅读 Yesod 错误信息?
(新手提醒)
鉴于以下错误消息,找到错误源的最快方法是什么:
我正在使用一个简单的脚手架站点(没有 DB),并且故意弄乱了homepage.julius
. 在这个特定的例子中,我确切地知道错误是什么,但是仅仅通过查看错误消息怎么能知道呢?
haskell - 如何在 defaultLayout 引用的 Widget/Hamlet 中进行 IO?
我是 Yesod 的新手,似乎完全迷失了小部件、处理程序、Hamlets、WHamlets 以及你有什么!这是我正在尝试做的事情:
- 我网站上的每个页面都需要有一个导航栏,这让我相信实现它的正确位置应该是
defaultLayout
- 现在,这个导航栏需要显示一些从 IO 操作中获得的信息(更具体地说,它是一个提供这些数据的 RPC 调用)。
Foundation.hs
因此,我尝试在(代码布局是基本的yesod-sqlite
脚手架模板)中编写以下函数:
如下template/navbar.hamlet
所示:
如下default-layout-wrapper.hamlet
所示:
如下defaultLayout
所示:
但是,代码拒绝编译一个又一个类型错误。我尝试了很多 , , ,的组合hametFile
,甚至将 nav 功能放在里面,但似乎没有任何效果。根据我的说法,我当前的代码应该可以编译,但我显然不明白 Yesod-Core 类型是如何工作的。whamletFile
handerToWidget
liftIO
defaultLayout
我怎样才能让它工作?更重要的是,我误解了什么概念?
编辑1:
已尝试将nav
功能修改为以下内容:
但是,它会导致以下类型不defaultLayout
匹配withUrlRenderer
:
编辑2:
尝试将类型签名更改nav
为:
但它会在同一行中导致新的类型不匹配:
编辑3:
这是来自的相关片段-ddump-splices
:
(pageHead pc)
和的类型(pageBody pc)
是HtmlUrl (Route App)
haskell - 莎士比亚拼接在哪里寻找他们的文件
我正在尝试启动并运行莎士比亚模板;特别是 Text.Hamlet。我有$(shamletFile "HTML/index.hamlet")
(见注释),当我编译文件时,我收到一个错误,告诉我文件不存在。因此,我尝试了各种文件路径组合,试图猜测拼接器正在使用哪个工作目录,但没有成功。
莎士比亚拼接在哪里寻找他们的文件?这是在某处记录的吗?
笔记
- 此路径相对于使用模板的源文件。
- 我没有使用完整的 Yesod 框架,只是模板引擎。
haskell - Lucius mixins 导致“输入意外结束”,找不到块的结尾
我正在尝试在 Yesod 的 Lucius 中使用 mixins,但遇到了问题。目前,我的“中心”mixin 是唯一一个似乎有效的 mixin,它也恰好是唯一没有变量插值的 mixin,尽管我不确定这与问题有关。
卢修斯:
混合:
错误:
我遇到的问题:
- 添加尾随分号 -> 无效
- 删除除 'center' 之外的所有 mixins -> 编译
- 删除除 'box_sizing' 之外的所有 mixins 并设为静态(无插值)-> 无效果
我很可能遗漏了一些明显的东西,而且我不想成为那个人,但是对于这些类型的东西,文档的方式并不多。也许这可以帮助处于类似位置的其他人。
无论如何,任何和所有的帮助表示赞赏。
编辑:
事实证明,在合并了一些单独的 lucius 文件后,'unlink' mixin 也可以毫无错误地编译。由于它在结构上与其他 mixin(例如“box_sizing”)基本相同,因此我现在知道插值不是罪魁祸首,也不是函数的格式(Guards vs. Equation)。
我越来越怀疑 Lucius 文件中的格式,因为 Haskell 代码似乎微不足道。我开始觉得问题可能只是基本的 css 语法错误,无论出于何种原因,我都对此视而不见。
编辑 2:
我已经为我的导航栏合并了 Lucius 代码,这表明以前无法编译的 mixin 在某些(尽管未知)情况下可以成功。
相关代码:(
注意 'font_size' mixin 在此代码中成功编译)
haskell - 您可以在 yesod 的 hamlet 文件中加载带有参数的小部件吗?
如果您循环遍历数据集,从小部件加载 html 的最佳方法是什么?
即在一个小村庄文件中
haskell - Hamlet 模板中的紧凑 if-then-else
我试图理解 Yesod 的 Hamlet 中的变量插值,特别是实现 if-then-else-like 逻辑。假设我想根据整数的值添加 CSS 样式x
。x
来自模板中的 for 循环,即我无法从 Haskell 代码中访问它。
期望的结果:
尝试内联if
:
尝试使用$with
:
两者都不起作用;两者都导致
显然,#{...}
解析器中没有实现 Haskell 语法的一部分。有没有一种干净的方法可以做到这一点?我目前只能看到一种出路,而且非常丑陋:
haskell - Haskell 使用没有 Yesod 小部件的莎士比亚调用 HTML
像Yesod一样,如此深入。有一个问题:使用 Yesod 我可以打电话给例如。App
带有Warp
( warp 3000 App
) 的数据类型。如何提供使用莎士比亚模板创建的 HTML(如下所示)。从迈克尔斯诺伊曼的书中得到这个。
haskell - “.hamlet”文件中的^{...}是什么意思
在这个“.hamlet”代码中,我想知道^{copyright}
line的含义是什么
c - 如何在 C 中的 Makefile 中使用参数
我正在用 C 做一个作业,我需要从包含莎士比亚作品的文本文件中读取字符。我的教授希望我做以下事情:“编写一个可以编译和运行你编写的 C 程序的 make 文件。具体来说,当我键入
您的程序应该分析CompleteShakespeare.txt
. 我真的不知道该怎么做。是在这里CompleteShakespeare.txt
输入的argv[1]
吗?任何帮助将不胜感激,谢谢!