sva*_*lek 4 haskell internationalization yesod
Yesod的内置i18n消息文件非常好,但我注意到两个问题:
谢谢你的任何建议!
#.如果他们不熟悉HTML标签,强制翻译人员处理HTML标签可能不是一个好主意.另外,如果您想稍后更改某些实现细节,比如决定要替换它<span class="foo">foo</span>,该<em>foo</em>怎么办?
相反,我建议使用一些类似Markdown的语法Something that needs to be *emphasized*..然后,您可以使用Hackage上的各种Markdown库对字符串进行后处理.
如果您避免使用mkMessageTemplateHaskell函数生成消息,而是RenderMessage使用Markdown语法处理器创建自己的类实现,则这很容易自动执行.在保持mkMessage调用时我没有看到这样做的方法,但是我知道Yesod的创建者@ michael-snoyman可能在某个地方隐藏了一个钩子,允许这种情况发生,他通常会读这些问题在SO上.