包含非英语(UTF-8)文件名文件时,液体模板出错

时间:2016-05-05 08:08:11

标签: jekyll shopify liquid liquid-layout

我有一个非英语语言的html文件(മലയാളം.html)。如果我尝试使用以下代码包含此html文件,则会出现以下显示的错误。

UTC<br/>
<div id="divUTC"></div><br/>
  Your Local Time with respect to above UTC time<br/>
<div id="divLocal">
</div>

$(function(){
     setInterval(function(){
         var divUtc = $('#divUTC');
         var divLocal = $('#divLocal');  
         //put UTC time into divUTC  
         divUtc.text(moment.utc().format('YYYY-MM-DD HH:mm:ss'));      

         //get text from divUTC and conver to local timezone  
         var localTime  = moment.utc(divUtc.text()).toDate();
         localTime = moment(localTime).format('YYYY-MM-DD HH:mm:ss');
         divLocal.text(localTime);        
     },1000);
});

顺便说一句,我正在使用杰基尔。但我相信错误来自Liquid

  

重新生成:1个文件已更改2016-05-05 09:49:14 Liquid   例外:包含标记的语法无效。文件包含无效   字符或序列:blog_comments /മലയാളം.html有效语法:{%   包括file.ext param =&#39; value&#39;参数2 =&#39;值&#39; %} in   _includes / post_comments.html,包含在_layouts / post.html

有谁知道如何获取包含的文件?.html?

1 个答案:

答案 0 :(得分:2)

如果您阅读jekyll/tags/include.rb code,您可以看到文件名是根据正则表达式验证的,主要部分是:

/^[a-zA-Z0-9_\/\.-]+$/

这意味着包含名称除了欧洲字母(大写或小写),数字或/,_, - 和

之外,不能包含其他内容。

您必须将其重命名为blog_comments/Malayalam.html; - )

注意:您可以拥有名称包含മലയാളം的页面或收藏项目(包括帖子)