用于联系人管理的三个开源工具
创始人
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

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...