用於聯繫人管理的三個開源工具
去年,我在 19 天里給你介紹了 19 個新(對你而言)的生產力工具。今年,我換了一種方式:使用你在使用或者還沒使用的工具,構建一個使你可以在新一年更加高效的環境。
用於聯繫人管理的開源工具
在本系列之前的文章中,我解釋了如何在本地同步你的郵件和日曆。希望這些加速了你訪問郵件和日曆。現在,我將討論聯繫人同步,你可以給他們發送郵件和日曆邀請。
![abook](/data/attachment/album/202001/30/194844jso288zo8j8z82jx.png "abook")
我目前收集了很多郵件地址。管理這些數據可能有點麻煩。有基於 Web 的服務,但它們不如本地副本快。
幾天前,我談到了用於管理日曆的 vdirsyncer。vdirsyncer 還使用 CardDAV 協議處理聯繫人。vdirsyncer 除了可以使用文件系統存儲日曆外,還支持通過 google_contacts 和 carddav 進行聯繫人同步,但 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
將它們複製到我的本地計算機。但同樣,這隻進行到一半。現在我想查看和使用聯繫人。需要 khard 和 abook。
![khard search](/data/attachment/album/202001/30/194846fm0yrml3qzwrdl0d.png "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 <some@email.adr>
可以搜索特定條目。如果要添加或編輯條目,add
和 edit
命令將使用相同的基本模板打開配置的編輯器,唯一的區別是 add
命令的模板將為空。
![editing in khard](/data/attachment/album/202001/30/194851u7tia7jjo7a6c86c.png "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
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive