2016-06-22 81 views
3

很長一段時間我沒有訪問我的頁面http://andeon.github.io/askey/apps/gimp/因此,昨天我檢查了翻譯不適用於鍵盤頁面,github頁面上有更新?Github上的多語言頁面

庫結構: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 

文件 「_includes/gimp_keyboard.html」 使用變量page.t [page.lang](。 $變量)鏈接在「dic/gimp_en.md」或「dic/gimp_pt.md」等翻譯,這就是翻譯鍵和彈出窗口的工具提示。 Gimp_en.yml的

結構:

layout: main_gimp 
t: 
en: 
    tooltip_esc: "Close Dialogs" 
    tooltip_f1: "Help" 

例如: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/

回答

2

是它的化身2之間的變化。 x Jekyll 3.x現在github正在使用它。

您的語言字符串在佈局中。例如:gimp.html已將dic/gimp_en作爲佈局,其本身在t密鑰下的前端具有語言字符串。

隨着傑奇2.X,佈局變量是通過在頁面變量模板級聯通過。你有page.t

與傑奇 3.X

現在訪問它,模板變量在佈局變量傳遞。你可以使用layout.t

如果你用layout.t替換你所有的page.t,魔法會再次發生。

備註:您可以集中所有語言字符串在數據文件中。英文字符串_data/lang/en/gimp.yml和Portuges _data/lang/pt/gimp.yml並使用site.lang[page.lang]訪問它們。

然後您可以刪除中介dic/gimp_xx佈局

這將是更有前途的證明。