展示HN:Gote – 一款用于纯Markdown的命令行笔记管理工具
仓库:<a href="https://github.com/banorton/gote" rel="nofollow">https://github.com/banorton/gote</a>
<p>我开发了一个笔记管理工具,用于工作中的快速记笔记和搜索。它的设计非常简约。另一个重点是提供大量快捷键,并将操作保持在主键行附近,以提高人机工程学和速度。</p>
<p>笔记实际上是您指定目录中的 markdown 文件。它唯一在其他地方保存的内容是一个位于 ~/.gote 的索引。如果您停止使用它,所有笔记仍然保留。</p>
<p>标签放在笔记的第一行,用句点分隔,例如 .project.urgent.work。没有前置信息。</p>
<p>搜索功能内置于二进制文件中,使用 BM25 算法并支持词干提取,因此不需要设置 ripgrep 或 fzf。gote s meeting 会搜索标题和内容,gote s -t .work 会按标签过滤,gote s -w 2412 会调出 2024 年 12 月的笔记。</p>
<p>大多数命令都有两个字母的简写版本,将列表和操作结合在一起。ro 是最近 + 打开,sv 是搜索 + 查看,tp 是标签 + 固定。当结果出现时,您可以用主键行的键选择,而不是使用箭头或数字。</p>
<p>适用于 mac/linux/windows 的二进制文件可以在发布页面找到,或者如果您有 Go,可以通过 go install github.com/banorton/gote@latest 安装。</p>
<p>这个项目的目标不是学习新东西或构建令人印象深刻的东西。我只是有一个需求,并用一种简单的编码解决方案来满足它。我已经使用它大约一年了,它基本上完全符合我的需求。因此,我想分享这个项目,以便其他人有兴趣使用、贡献或将其作为自己解决方案的参考。</p>
查看原文
Repo: <a href="https://github.com/banorton/gote" rel="nofollow">https://github.com/banorton/gote</a><p>I built a note taking management tool to use at work for quick note taking and searching. It is intended to be quite minimal. Another focus was to have lots of shortcuts and to keep things close to the homerow for ergonomics and speed.<p>Notes are just markdown files in whatever directory you point it at. The only thing it keeps elsewhere is an index in ~/.gote. If you stop using it you still have all your notes.<p>Tags go on the first line of the note, separated by periods, like .project.urgent.work. No frontmatter.<p>Search is built into the binary, BM25 with stemming, so there's no ripgrep or fzf to set up. gote s meeting searches titles and content, gote s -t .work filters by tag, gote s -w 2412 pulls up notes from December 2024.<p>Most commands have a two letter version that combines a list with an action. ro is recent + open, sv is search + view, tp is tag + pin. When results come up you pick one with a home row key instead of arrows or numbers.<p>Binaries for mac/linux/windows are on the releases page, or go install github.com/banorton/gote@latest if you have Go.<p>The goal of this project was not to learn something new or build something impressive. I simply had a need and filled it with a vibe-coded solution. I have been using it for about a year now and it does more or less exactly what I wanted. So I thought I'd share in case others are interested in using it, contributing to it, or want to use it as a reference for their own solution.