Linux中國

用於聯繫人管理的三個開源工具

去年,我在 19 天里給你介紹了 19 個新(對你而言)的生產力工具。今年,我換了一種方式:使用你在使用或者還沒使用的工具,構建一個使你可以在新一年更加高效的環境。

用於聯繫人管理的開源工具

在本系列之前的文章中,我解釋了如何在本地同步你的郵件日曆。希望這些加速了你訪問郵件和日曆。現在,我將討論聯繫人同步,你可以給他們發送郵件和日曆邀請。

![abook](/data/attachment/album/202001/30/194844jso288zo8j8z82jx.png "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](/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> 可以搜索特定條目。如果要添加或編輯條目,addedit 命令將使用相同的基本模板打開配置的編輯器,唯一的區別是 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

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國