benjaminezequiel/keep-the-rhythm

GitHub: benjaminezequiel/keep-the-rhythm

一个 Obsidian 插件,用于通过热力图追踪每日字数和设定写作目标,帮助用户保持写作习惯。

Stars: 98 | Forks: 19

# 保持节奏 "保持节奏" 是一款 Obsidian 插件,通过追踪每日字数、设定写作目标以及通过热力图和可自定义代码块可视化数据,帮助您保持稳定的写作习惯。 ![image](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/f448905bce142740.png) ## 功能特性 - **写作统计**:自动追踪您在 Obsidian 中每日撰写的单词/字符数 - **目标与连续记录**:设定每日写作目标,并追踪您连续达成目标的天数 - **热力图**:查看随时间变化的写作活动(有助于保持一致性与动力) - **自定义插槽**:展示各种写作统计数据(今日撰写、本周撰写、今年平均等) - **按日查看条目**:轻松查看并导航至您今天处理过的文件 - **嵌入式组件**:使用自定义代码块将热力图、插槽和条目小组件插入任意笔记 - **高级筛选**:使用查询语法筛选特定文件夹或文件模式的写作统计数据 - **多设备同步**:跨不同设备同步并合并统计数据 ## 安装方法 #### **推荐!** #### 手动安装 从此仓库的"Releases"部分下载最新版本文件 在 `/.obsidian/plugins/` 路径下创建名为 `keep-the-rhythm` 的文件夹 重新加载 Obsidian 前往设置 > 社区插件,启用"Keep the Rhythm" ## 使用说明 ### 基本用法 安装并启用后,"保持节奏"将自动开始追踪您的写作活动。要查看统计数据: 1. 点击左侧边栏中的"保持节奏"图标,或使用命令 `Open sidebar view` 2. 插件面板将显示您的热力图、当前统计数据及今日条目 3. 通过悬停并点击各个插槽来设置您偏好的单位和数据点 4. 悬停在任意单元格上可查看该日的确切字数 ### 写作目标 设定并追踪您的每日写作目标: 1. 在插件设置中定义每日目标字数 2. "保持节奏"将追踪您连续达成目标的天数 3. 在侧边栏或通过嵌入式插槽查看当前连续记录 ### 热力图自定义 通过各种选项自定义热力图外观: - 着色模式: - `gradual`:平滑的颜色渐变 - `solid`:单一颜色强度 - `stops`:具有阈值的离散颜色层级 - `liquid`:颜色从底部向上填充单元格 - 单元格形状:选择 **圆角**(默认)或 **方角** 单元格 - 交互式导航:点击单元格可跳转至对应日期的笔记(使用 Obsidian 核心插件 _Daily Notes_) ### 数据插槽 使用可自定义插槽展示各种写作统计数据: - 当前范围:`CURRENT_FILE`, `CURRENT_DAY`, `CURRENT_WEEK`, `CURRENT_MONTH`, `CURRENT_YEAR` - 这些是根据天/周/年的起点计算的动态范围 - 历史统计:`LAST_DAY`, `LAST_WEEK`, `LAST_MONTH`, `LAST_YEAR` - 这些是根据离散时间范围(24小时、7天、30天、365天)计算的 - 目标追踪:`CURRENT_STREAK` - 库总览:`WHOLE_VAULT` ### 代码块 "保持节奏"提供三种可嵌入的代码块。 #### 热力图 (`ktr-heatmap`) 嵌入带有筛选和显示选项的可自定义热力图: ``` filePath starts_with "journal" OPTIONS // must always start with the OPTIONS header HIDE month_labels, weekday_labels // allows to hide the labels COLORING_MODE liquid // toggles the coloring mode (liquid, stops, solid or gradual) STOPS 100, 500, 1000 // changes the keypoints used for calculating the color of the cells SQUARED_CELLS // changes the cell styling for a more squared look ROUNDED_CELLS // changes the cell styling for a rounded look WEEKS 24 // changes how many weeks are displayed (can affect performance) ``` 查询语法: - 按文件路径筛选:`filePath starts_with "folder_name"` - 组合查询:`(filePath starts_with "journal") OR (filePath starts_with "worldbuilding")` 可用选项: - `HIDE month_labels, weekday_labels`:隐藏特定标签 - `COLORING_MODE`:设置为 `liquid`, `stops`, `solid` 或 `gradual` - `STOPS`:定义阈值(例如 `100, 500, 1000`) - `SQUARED_CELLS` 或 `ROUNDED_CELLS`:控制单元格外观 #### 数据插槽 (`ktr-slots`) 使用可自定义指标显示内联统计数据: ``` CURRENT_WEEK, WORDS CURRENT_DAY, CHARS CURRENT_STREAK WHOLE_VAULT CURRENT_MONTH, WORDS, AVG CURRENT_YEAR ``` 可用插槽: - `CURRENT_FILE`:显示当前文件的字数 - `CURRENT_STREAK`:显示连续完成写作目标的天数 - `CURRENT_DAY`:显示从今天开始到现在撰写的字数 - `CURRENT_WEEK`:显示从本周开始撰写的字数(目前定义为星期一,稍后将添加设置) - `CURRENT_MONTH`:显示从本月开始撰写的字数 - `CURRENT_YEAR`:显示从今年开始撰写的字数 - `LAST_DAY`:过去24小时内撰写的字数 - `LAST_WEEK`:过去7天内撰写的字数 - `LAST_MONTH`:过去30天内撰写的字数 - `LAST_YEAR`:过去365天内撰写的字数 - `WHOLE_VAULT`:库中所有 Markdown 文件的总撰写字数 **选项**: - 指定 `WORDS` 或 `CHARS` 作为计数单位 - 添加 `AVG` 用于适用场景的平均值计算 #### 每日条目 (`ktr-entries`) 显示特定日期的写作活动: ``` 2024-03-15 ``` 显示指定日期(`YYYY-MM-DD` 格式)的活动。如果未提供日期,则显示当前日期的活动。 ## 设置与自定义 通过插件设置访问全面的自定义选项: - 设定每日写作目标并追踪连续记录 - 配置热力图外观(着色、单元格形状、标签) - 切换不同插件组件的可见性 ## 数据与隐私 "保持节奏"**将所有数据本地存储**在您的 Obsidian 库中。不会向外部服务器发送任何数据。您的写作统计数据保存在插件数据目录中的一个 JSON 文件里。 ## 常见问题 #### 为什么不使用 Better Word Count? 我在发现 Better Word Count 虽然有用,但在 Obsidian Sync 上存在问题——切换设备时统计数据会被覆盖后,构建了这个插件。 "保持节奏"通过正确保存和跨设备合并数据解决了这个问题,确保您的写作进度始终被准确追踪!
标签:Obsidian插件, 个人效率, 写作习惯, 写作工具, 写作目标管理, 写作辅助, 多模态安全, 多设备同步, 字数统计, 字数追踪器, 数据可视化, 数据同步, 日常记录, 热力图, 热力图可视化, 生产力工具, 目标设定, 笔记软件, 自动化攻击, 自定义代码块, 连续天数跟踪, 高级过滤