基于dataviewjs的字数统计功能

这是我从别人分享的模版库中拆下来的一个小功能,自己稍微魔改优化了下。

  1. 去除了导出esv和删除文件功能(前者还需要额外插件,后者对我没啥用处直接注释了没测试)
  2. 增加了选择所要统计文件夹的功能
  3. 修复了原本统计是会计算换行符的bug。
  4. 修复了选择标签功能无法使用的bug
  5. 修改了限制最大统计数量的判断逻辑(原逻辑会优先限制数量,会导致明明文件夹内文本数量小于最大统计数量限制,却会出现文本统计不到)
  6. 将字数统计由最下层改成最上层(多文件可以第一时间就看到总字数)
来源:
模板库:https://github.com/PKM-er/Blue-topaz-example
dataview与js代码的原作者的库失效

使用

一.文件属性

书写dataviewjs用以统计字数的文档抬头属性需要加上一下变量以供js读取调用

---
//匹配类型,如果是按tags匹配日期无效,而按日期匹配其他则无效
searchType: tags
//匹配日期
searchDate: 
//不知道有啥用
cusfield: 
//模糊匹配文件名
searchText: ""
//匹配的tag
searchTerm: 
//过滤的tag
excludeTag: ""
//要统计的文件夹
folder:
//过滤的文件夹
exFolder: 
//允许统计的最大数量
limit: ""
---

dataviewjs 通过下拉框筛选检索条件代码

效果图:
图片

二.下拉框修改文件属性

下拉框功能需要MetaEdit插件,懒得装可以自己在抬头的文件属性里手打
蓝奏云地址:https://wwz.lanzn.com/iSgzr1u1oh1a

注:这下拉框代码的原作者,我实在不得不吐槽,从别人模板仓库拆下来,增加功能的时候就修复了一堆bug.
我将其转成js文件的时候排除,结果又出现bug,这两天全在处理这个功能代码上的问题。
虽然很重要的原因是我js与databiewjs的语言不熟,导致效率很低.
但前脚弄完后脚又发现bug实在令人崩溃。
结果现在这添加字段功能还是有bug无法正常使用,不过我也懒得去对照统计js去修复了。
目前功能也就满足我自己所需了

效果图:

三.文字统计

js文件的代码我就不贴了,直接放网盘,省的复制代码出些奇奇怪怪的问题
蓝奏云地址:https://wwz.lanzn.com/iCe3C1twnaja

四.js导入

示例
```dataviewjs
dv.view("00-MO/4.脚本/字数统计", '')

最后个人的求助

请问论坛内大佬们,请问obsidian有没有能统计启动时间、文字录入数量等数据并且记录到制定md文件的插件,我想精准的了解自己的每天数据。

虽然现在我想办法实现了当天字数的统计,但每天手动将字数写到日记里总感觉有些麻烦,而且目前这功能也不够细致。

启动时间可以开启第三方插件启动时间粗略计算

这种其实我也想到了办法,tempater插件的模板功能有启动时运行的功能,可以设置启动时就读取时间,最后记日记时再减一下。
但我想知道的是当前聚焦在obsidian的活动时间,以及实时显示文字录入,比如在一个标签页里打了十个字,另一个标签页打了90个字,最后自动计算并汇总这种:joy: