用于联系人管理的三个开源工具
创始人
2024-03-02 04:26:07
0

通过将联系人同步到本地从而更快访问它。在我们的 20 个使用开源提升生产力的系列的第六篇文章中了解该如何做。

去年,我在 19 天里给你介绍了 19 个新(对你而言)的生产力工具。今年,我换了一种方式:使用你在使用或者还没使用的工具,构建一个使你可以在新一年更加高效的环境。

用于联系人管理的开源工具

在本系列之前的文章中,我解释了如何在本地同步你的邮件日历。希望这些加速了你访问邮件和日历。现在,我将讨论联系人同步,你可以给他们发送邮件和日历邀请。

abook

我目前收集了很多邮件地址。管理这些数据可能有点麻烦。有基于 Web 的服务,但它们不如本地副本快。

几天前,我谈到了用于管理日历的 vdirsyncer。vdirsyncer 还使用 CardDAV 协议处理联系人。vdirsyncer 除了可以使用文件系统存储日历外,还支持通过 google_contactscarddav 进行联系人同步,但 fileext 设置会被更改,因此你无法在日历文件中存储联系人。

我在配置文件添加了一块配置,并从 Google 镜像了我的联系人。设置它需要额外的步骤。从 Google 镜像完成后,配置非常简单:

[pair address_sync]
a = "googlecard"
b = "localcard"
collections = ["from a", "from b"]
conflict_resolution = "a wins"

[storage googlecard]
type = "google_contacts"
token_file = "~/.vdirsyncer/google_token"
client_id = "my_client_id"
client_secret = "my_client_secret"

[storage localcard]
type = "filesystem"
path = "~/.calendars/Addresses/"
fileext = ".vcf"

现在,当我运行 vdirsyncer discover 时,它会找到我的 Google 联系人,并且 vdirsyncer sync 将它们复制到我的本地计算机。但同样,这只进行到一半。现在我想查看和使用联系人。需要 khardabook

khard search

为什么选择两个应用?因为每个都有它自己的使用场景,在这里,越多越好。khard 用于管理地址,类似于 khal 用于管理日历条目。如果你的发行版附带了旧版本,你可能需要通过 pip 安装最新版本。安装 khard 后,你需要创建 ~/.config/khard/khard.conf,因为 khard 没有与 khal 那样漂亮的配置向导。我的看起来像这样:

[addressbooks]
[[addresses]]
path = ~/.calendars/Addresses/default/

[general]
debug = no
default_action = list
editor = vim, -i, NONE
merge_editor = vimdiff

[contact table]
display = first_name
group_by_addressbook = no
reverse = no
show_nicknames = yes
show_uids = no
sort = last_name
localize_dates = yes

[vcard]
preferred_version = 3.0
search_in_source_files = yes
skip_unparsable = no

这会定义源通讯簿(并给它一个友好的名称)、显示内容和联系人编辑程序。运行 khard list 将列出所有条目,khard list 可以搜索特定条目。如果要添加或编辑条目,addedit 命令将使用相同的基本模板打开配置的编辑器,唯一的区别是 add 命令的模板将为空。

editing in khard

abook 需要你导入和导出 VCF 文件,但它为查找提供了一些不错的功能。要将文件转换为 abook 格式,请先安装 abook 并创建 ~/.abook 默认目录。然后让 abook 解析所有文件,并将它们放入 ~/.abook/addresses 文件中:

apt install abook
ls ~/.calendars/Addresses/default/* | xargs cat | abook --convert --informat vcard --outformat abook > ~/.abook/addresses

现在运行 abook,你将有一个非常漂亮的 UI 来浏览、搜索和编辑条目。将它们导出到单个文件有点痛苦,所以我用 khard 进行大部分编辑,并有一个 cron 任务将它们导入到 abook 中。

abook 还可在命令行中搜索,并有大量有关将其与邮件客户端集成的文档。例如,你可以在 .config/alot/config 文件中添加一些信息,从而在 Nmuch 的邮件客户端 alot 中使用 abook 查询联系人:

[accounts]
  [[Personal]]
     realname = Kevin Sonney
     address = kevin@sonney.com
     alias_regexp = kevin\+.+@sonney.com
     gpg_key = 7BB612C9
     sendmail_command = msmtp --account=Personal -t
     # ~ expansion works
     sent_box = maildir://~/Maildir/Sent
     draft_box = maildir://~/Maildir/Drafts
    [[[abook]]]
        type = abook

这样你就可以在邮件和日历中快速查找联系人了!


via: https://opensource.com/article/20/1/sync-contacts-locally

作者:Kevin Sonney 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

比较Firebase数据库...
比较Firebase数据库和手机联系人列表的解决方法可以分为以下几...
2024-12-13 15:30:21
保存联系人到设备
要保存联系人到设备,你可以使用Android的联系人提供程序(Co...
2024-11-22 14:01:59
保存联系人所需的时间太长。
问题描述:保存联系人所需的时间太长。解决方法:为了解决保存联系人所...
2024-11-22 14:01:37
AWS SESv2 CLI...
要使用AWS SESv2 CLI向订阅主题的联系人发送电子邮件,可...
2024-11-18 06:31:39
AWS SESV2:向取消...
以下是使用AWS SESV2向取消订阅所有主题的联系人发送重要邮件...
2024-11-18 06:31:01
AWS SESv2: 使用...
要使用联系人属性作为模板数据,在AWS SESv2中,您可以通过以...
2024-11-18 06:30:46

热门资讯

PHP最佳实践(译) 简介PHP是一门复杂的语言,经过多年折腾,使其不同版本之间高度不一致,有时还有些bug。 每个版本都...
值得收藏的 27 个机器学习的... 机器学习 ( Machine Learning ) 有很多方面,当我开始研究学习它时,我发现了各种各...
为什么计量 IT 的生产力如此... 在某些行业里,人们可以根据一些测量标准判定一个人的生产力。比如,如果你是一个零件制造商,可以通过一个...
8个有趣的Linux提示与技巧... 我们时不时给你带来关于Linux的提示与技巧。和这个系列保持一致,这里有8个我们从读者收到最有趣的提...
8 个提升你的隐私防护的开源密... 使用一些顶级开源密码管理器,确保你的登录凭证安全无虞。密码管理器是一项非常有用的实用程序。在你想寻找...
硬核观察 #885 苹果 AR... 苹果 AR 眼镜被无限期推迟据报道,由于技术上的挑战,苹果公司已经无限期推迟了其轻型增强现实(AR)...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
2020 年的 GitHub ... 距离 2020 年结束只剩下区区 24 天,我们即将结束魔幻的 2020 ,迎来新的一年,新的一年或...
开源新闻速递:openSUSE... 今日关注openSUSE 项目组的 Dominique Leuenberger 在他的周报中说:“这...
KDE4.11 Beta1 正...   KDE 项目工作组刚刚发布了 KDE Software Compilation 4.11 Bet...