15 个版本
使用旧的 Rust 2015
0.10.1 | 2020 年 2 月 29 日 |
---|---|
0.10.0 | 2019 年 12 月 24 日 |
0.9.3 | 2019 年 5 月 23 日 |
0.9.1 | 2019 年 2 月 17 日 |
0.4.0 | 2017 年 9 月 24 日 |
#348 in 数据库实现
用于 imag
195KB
3.5K SLoC
imag - imag-pim.org
imag
是一个命令行个人信息管理套件。
此应用程序处于早期开发阶段。有些功能是可行的,但我们目前不认为任何内容是稳定的或可用的。无论如何,请随意尝试。
使命宣言
我们的(长期)目标是
创建一个快速、可脚本化、以命令行为首、仅使用纯文本的工具套件,以涵盖个人信息管理的各个方面。
是的,imag 是一个相当雄心勃勃的项目,因为它试图重新实现几个“个人信息管理方面”的功能。我们尽可能地使用标准,如 vcard、icalendar 等。
有关更多内容,请参阅 文档。
构建/运行
以下是如何尝试 imag
的方法。
imag
是一个 套件/集合 工具(例如 git),您可以单独构建每个“模块”。
构建
使用 cargo build --all
命令构建所有包,通过指定 cargo 的 --manifest-path
标志来构建单个包。./bin 目录中的包是实际的命令行工具,./bin/core 包含 imag 的核心命令集(在 git 中称为“管道”)和 ./bin/domain 包含特定领域的 imag 命令,例如待办事项工具或书签工具。
运行
构建您想要尝试的模块后,您可以通过使用 --help
标志调用二进制文件本身,以获取有关模块能做什么的帮助。
如果您已安装该模块,您可以通过调用imag-<modulename>
(如果安装目录在您的$PATH
中),或者将imag
二进制文件安装到系统中来调用imag <modulename>
(如果所有内容都在您的$PATH
中)。通过调用imag --help
来查看找到并可以使用的模块。通过调用imag --versions
来打印所有模块的版本。
示例用法
由于imag是一个庞大而复杂的项目,我们无法在此展示套件中的所有工具。但为了给您一些想法,这里有一个示例
# Lets initialize imag
imag init
# Recursively import vcf files
imag contact import /home/user/contacts
# Create a contact (vcf) in the private collection
imag contact create --file /home/user/contacts/private
# Add a diary entry
imag diary -p private create
# Uh, I forgot something in a diary entry, select one (or multiple) and edit it
# use the `fzf` tool here (not a part of imag) to select from the IDs
imag diary -p private list | fzf -m | imag edit
# Link a contact to the diary entry
imag link diary/private/2018/01/01/00:00:00 contact/bc222298-casf-40a4-bda1-50aa980a68c9
# Annotate a contact with some notes
imag annotate add contact/bc222298-casf-40a4-bda1-50aa980a68c9 contact-notes
# Write down some notes named "pineapple"
imag notes create "pineapple"
# Where was that contact again?
imag grep Eva # also possible with `imag contact find Eva`
# Okay, we need to add some imag-internal notes to that contact
imag grep Eva -l | imag edit
# Now save our work
imag git add . # "imag-git" simply calls git in the imag store
imag git commit -m 'Commit message'
保持最新
我们有一个<%= html %>imag的官方网站,我在那里发布<%= html %>发行说明和大约每月的更新,这些更新发生在源代码树中(<%= html %>RSS链接)。
我们还有一个<%= html %>邮件列表,我在那里发布更新,并鼓励讨论和提问。
文档
我们在./doc子目录中提供了一些文档,可以使用pandoc编译为PDF或网站。不过,可能不是最新的。最新版本的开发文档可在docs.rs上找到。
请贡献力量!
我们正在寻找贡献者!请自由地打开问题(通过向邮件列表发送邮件),提出问题、建议功能或其他事情!
还可以查看CONTRIBUTING.md文件!
联系方式
请自由加入我们的新IRC频道:freenode: #imag 或我们的邮件列表。
许可证
我们选择在GNU LGPLv2.1的条款下分发此软件。
依赖关系
~13–26MB
~399K SLoC