@Hydrangea 早上好!不知道问题有没有得到解决……我参考了南狐的方法,大致是这样:
{{ div ($scratch.Get "total") 1000 }}
意思是把总字数除以一千,之后在“字”前面手动加上k就好了
@injellyfish 哇谢谢!
不好意思地说我其实还没有开始解决,昨天只是写了个to-do 嘟嘟,因为感觉不是太难,准备今晚从“研究这个函数的名字叫什么”学起……
@Hydrangea @injellyfish
这里 Div(ides) 是除法的意思
好像确实没有保留几位小数的选项,所以可能要更麻烦一下了,
{{$var := $scratch.Get "total"}}
{{$var = div $var 100.0}}
先除到百位,然后再用附带的向上(或下)取整函数,
{{$var = math.Ceil $var}}
然后再除多一位
{{$var = div $var 10.0}}
这样就是保留一位小数的数字了。
当然更偷懒的方法就是循环里换成
{{$scratch.Add "total" .FuzzyWordCount}}
这个函数,文章多 1 个字也会当作 100 个字,这样就抹掉了零头,保证能除尽。当然每篇文章这样算,每篇文章都会多算一百字了。
@SouthFox @Hydrangea @injellyfish 不好意思打扰了,保留小数点的方法是 lang.FormatNumber:
共嘟嘟了{{ div ($scratch.Get "total") 1000.0 | lang.FormatNumber 2 }}k字.
https://gohugo.io/functions/lang/#langformatnumber
它之所以把这个功能放到 lang 下面,是因为比如说中法双语的博客,切换到法语后小数点自动改成逗号:123.45 → 123,45
@injellyfish @zero 原来还有这种方法!!感谢wwwww