And*_*eOn 5 github jekyll github-pages
很长一段时间我没有访问我的页面http://andeon.github.io/askey/apps/gimp/所以,昨天我检查了翻译对键盘页面不起作用,github-pages 上有更新吗?
存储库结构:github.com/andeon/askey/tree/gh-pages
- |-- _includes/ # Html rendered
- |-- _layouts/ # Templates of the website
- |-- dic/ # keyboards translation
- |-- index.html # Default html file (EN)
- |-- pt # Portuguese Language files
- |-- (...)
- |-- _config.yml # Jekyll configuration file
Run Code Online (Sandbox Code Playgroud)
文件“_includes/gimp_keyboard.html”使用变量page.t[page.lang].($variable)来链接“dic/gimp_en.md”或“dic/gimp_pt.md”等中的翻译,这就是翻译键和弹出窗口的工具提示。
Gimp_en.yml 的结构:
layout: main_gimp
t:
en:
tooltip_esc: "Close Dialogs"
tooltip_f1: "Help"
Run Code Online (Sandbox Code Playgroud)
例如:gimp_keyboard.html Esc 键工具提示:
<a href="#popup_esc" class="key c27 fn" data-tooltip="{{ page.t[page.lang].tooltip_esc }}"><span>esc</span>
和弹出键 w
<div id="popup_w" class="overlay">
<div class="popup">
<h2>{{ site.t.l_popupt[page.lang] }}</h2>
<a class="close" href="#" onclick="history.back(); return false;">×</a>
<div class="content">
<table class="tftable" border="1">
{{ site.t.l_thc[page.lang] }}
{{ page.t[page.lang].key_w }}
* _config.yml 中绑定的变量“site.t.(...)[page.lang]”的全局翻译正在工作。
我不知道如何解决它。也许用“字典文件”的技巧来制作多语言并不是一种聪明的方法(但这里的原因https://github.com/andeon/askey/wiki我需要变量来创建一种更简单的翻译方法) .
有没有人有任何想法修复或其他建议?
我使用这个网站作为参考来创建页面:benoitpatra.com/2014/08/24/organize-a-multilanguage-jekyll-site/
是的,这是 Jekyll 2.x和 Jekyll 3.x之间的变化,现在 github 上正在使用。
您的语言字符串位于布局中。例如:gimp.html有dic/gimp_en作为布局,它本身在其前面的键下有语言字符串t。
在 jekyll 2.x中,布局变量通过页面变量中的模板级联传递。您通过以下方式访问了它page.t
现在,在 jekyll 3.x中,模板变量被传递到布局变量中。您可以通过以下方式访问它layout.t
如果你用 替换所有page.t发生的事情layout.t,魔法就会再次发生。
旁注:您可以将所有语言字符串集中在数据文件中。_data/lang/en/gimp.yml中的英文字符串和_data/lang/pt/gimp.yml中的葡萄牙语字符串并使用site.lang[page.lang].
然后您可以删除中间的dic/gimp_xx 布局。
这将更有利于未来。
| 归档时间: |
|
| 查看次数: |
1859 次 |
| 最近记录: |