zhangyu836 / xltpl

A python module to generate xls/x files from a xls/x template.
MIT License
71 stars 17 forks source link

fix illegal full-width characters issue #12

Closed kalavt closed 1 year ago

kalavt commented 2 years ago

fix illegal full-width characters issue

kalavt commented 2 years ago

@zhangyu836 full-width characters will lead to a crash, Syntax Error in Cell H3 error message: **unexpected char '‘' at 686** line 27 Cell H3 : {{bug.fields.ImpactAnalysis |d(‘’)| html2text}}{% if bug.fields.System_State ==’Removed’ %}{{bug.fields.System_Reason}}{%endif%}

kalavt commented 2 years ago

@zhangyu836 would you please merge my request? it will be helpful to handle full-width characters cases.

zhangyu836 commented 2 years ago

这样处理会导致所有字符都被替换,包括正常文本内的字符。 合理的做法可能是不在jinja2语句内使用jinja2不支持的字符。

kalavt commented 2 years ago

这样处理会导致所有字符都被替换,包括正常文本内的字符。 合理的做法可能是不在jinja2语句内使用jinja2不支持的字符。

是的, 这会造成模板中的中文标点被替换成半角的, 但考虑到很多非英文系统的用户, 默认输入都是全角字符, 对于这样的模板, 直接拿去生成会报错. 我刚接触这个库, 在这一步上卡了很久, 另外半角全角字符不易区分, 很难排查模板中的问题,

相对于造成的问题, 平衡一下我会选择将全角字符替换为半角字符. 如果更进一步, 可以再文档中说明这一点(如果有的话) 您觉得呢?