3 个版本
0.1.2 | 2023年10月12日 |
---|---|
0.1.1 | 2023年10月9日 |
0.1.0 | 2023年10月9日 |
#603 in 文本处理
360KB
883 行
jmemo
jmemo (memo) 是一个简单的CUI工具,用于创建和管理笔记。
- 支持纯文本和HTML笔记。
- 支持笔记分类的标签。
- 智能笔记搜索。
- 通过标签搜索笔记。
- 支持使用逻辑运算符如 "or (+)"、"not (-)"、"and (*)" 搜索多个关键字。
- 忽略大小写等
依赖项
目前,jmemo使用 w3m 显示笔记,并使用 vim 创建/编辑笔记。
使用方法
创建新笔记
$ memo -a
jmemo 将启动 vim 创建新笔记。第一行是笔记的标题,将在笔记视图中显示。标签是标题中的单词,用 "[]" 包围,如 [jmemo]。您可以在标题中创建多个标签。
通过指定 "-A" 而不是 "-a",可以创建 HTML 笔记,您可以在笔记中使用 HTML 标签。
$ memo -A
笔记
- 如果您删除所有内容并退出,则不会保存笔记。您也可以使用这种方法删除笔记。
- 创建的笔记将保存为 ${HOME}/.memo/memo/ 下的纯文本/HTML 文件。
搜索和显示笔记
按标签搜索
使用 "-t TAG" 指定一个标签以搜索所有标记了该标签的笔记。搜索结果将通过 w3m 显示。您可以使用 w3m 浏览它们。
$ memo -t <jmemo> [-WI]
笔记
- 默认情况下,标签可以进行部分匹配。例如,您可以指定 "j" 以匹配所有包含 "j" 的标签。如果您想匹配完整的标签名称,请添加 "-W" 选项。
- 默认情况下,标签是区分大小写的,您可以使用 "-I" 忽略大小写。
按关键字搜索
可以通过指定关键字而不带选项进行全文搜索。以下示例搜索包含 "example" 的所有笔记。
$ memo example
您可以使用逻辑运算符过滤搜索结果。以下命令使用 "And (*)" 运算符搜索同时包含 "example" 和 "memo" 关键字的搜索结果。
$ memo 'example * memo'
笔记
- 请使用单引号('')确保逻辑运算符不被 shell 传输。
- 以下逻辑运算符受支持
- And (*)
'example * memo' 表示包含 "example" 和 "memo" 关键字。 - Or (+) 'example + memo' 表示包含 "example" 或 "memo" 关键字。
- “非(-) '示例 + 备忘'”表示包含“示例”,但不包含“备忘”关键词。
- And (*)
- 可以使用多个逻辑运算符。所有运算符都从左到右应用,没有优先级。
- 默认情况下,关键词是部分匹配的。如果您想匹配完整关键词,请添加“-W”选项。
- 默认情况下,关键词是区分大小写的,您可以使用“-I”来忽略大小写。
- 您可以将标签和关键词搜索结合起来使用,在这种情况下,搜索结果将限于指定标签的笔记。
- 如果既未指定标签也未指定关键词,则将显示所有笔记。
删除笔记
您可以使用“-d”选项与搜索结合来选择要删除的笔记。
$ memo 'jdemo + jmemo * note' -d
上面的示例将删除No1、No2和No4笔记。如果您输入“y”、“yes”、“Y”或“Yes”,则将删除列出的所有笔记。其他键将忽略删除操作。
依赖关系
~6.5–9MB
~145K SLoC