[org] Revise org-contacts support
This commit is contained in:
parent
3a02c12ca7
commit
2341448531
|
@ -172,12 +172,10 @@ visited with the keyboard shortcut ~SPC a o C f~.
|
|||
#+BEGIN_SRC emacs-lisp
|
||||
(setq-default dotspacemacs-configuration-layers
|
||||
'((org :variables org-enable-org-contacts-support t
|
||||
org=contact-file '("file1.org" "file2.org")
|
||||
("c" "Contacts" entry (file "~/Org/contacts.org")
|
||||
"* %(org-contacts-template-name)
|
||||
:PROPERTIES:
|
||||
:EMAIL: %(org-contacts-template-email)
|
||||
:END:"))))
|
||||
org=contact-file '("file1.org" "file2.org")
|
||||
("c" "Contacts" entry (file "~/Org/contacts.org")
|
||||
"* %(org-contacts-template-name) :PROPERTIES:
|
||||
:EMAIL: %(org-contacts-template-email) :END:"))))
|
||||
#+END_SRC
|
||||
A more elaborate capture template can be found in the =org-contacts.el= file.
|
||||
|
||||
|
@ -185,10 +183,10 @@ Contacts can include the :BIRTHDAY: keyword. To include the birthdays in your
|
|||
org-agenda add ~%%(org-contacts-anniversaries)~ to one of your contacts files.
|
||||
It is important that this is inserted after a heading an that it has no
|
||||
preceding whitespace. So probably the best way is to add
|
||||
#+begin_src emacs-lisp
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
* Birthdays
|
||||
%%(org-contacts-anniversaries)
|
||||
#+end_src
|
||||
#+END_SRC
|
||||
to the beginning or the end of one of your contacts files.
|
||||
|
||||
*** V-Card import/export
|
||||
|
|
|
@ -18,8 +18,9 @@
|
|||
"clocks"))
|
||||
|
||||
(defun org-contacts-find-file ()
|
||||
"Open first contact file"
|
||||
(interactive)
|
||||
(if org-contacts-files
|
||||
(if (bound-and-true-p org-contacts-files)
|
||||
(find-file (car org-contacts-files))
|
||||
(message "No specific org-contacts-files defined. Org-contacts uses all org files.")))
|
||||
|
||||
|
|
|
@ -9,49 +9,48 @@
|
|||
;;
|
||||
;;; License: GPLv3
|
||||
|
||||
(setq org-packages
|
||||
'(
|
||||
company
|
||||
company-emoji
|
||||
emoji-cheat-sheet-plus
|
||||
evil-org
|
||||
evil-surround
|
||||
gnuplot
|
||||
(helm-org-rifle :toggle (configuration-layer/layer-used-p 'helm))
|
||||
htmlize
|
||||
;; ob, org, org-agenda and org-contacts are installed by `org-plus-contrib'
|
||||
(ob :location built-in)
|
||||
(org :location built-in)
|
||||
(org-agenda :location built-in)
|
||||
(org-contacts :location built-in
|
||||
:toggle org-enable-org-contacts-support)
|
||||
(org-vcard)
|
||||
(org-brain :toggle (version<= "25" emacs-version))
|
||||
(org-expiry :location built-in)
|
||||
(org-journal :toggle org-enable-org-journal-support)
|
||||
org-download
|
||||
(org-jira :toggle org-enable-jira-support)
|
||||
org-mime
|
||||
org-pomodoro
|
||||
org-present
|
||||
org-cliplink
|
||||
org-rich-yank
|
||||
(org-projectile :requires projectile)
|
||||
(ox-epub :toggle org-enable-epub-support)
|
||||
(ox-twbs :toggle org-enable-bootstrap-support)
|
||||
;; use a for of ox-gfm to fix index generation
|
||||
(ox-gfm :location (recipe :fetcher github :repo "syl20bnr/ox-gfm")
|
||||
:toggle org-enable-github-support)
|
||||
(org-re-reveal :toggle org-enable-reveal-js-support)
|
||||
persp-mode
|
||||
(ox-hugo :toggle org-enable-hugo-support)
|
||||
(ox-jira :toggle org-enable-jira-support)
|
||||
(org-trello :toggle org-enable-trello-support)
|
||||
(org-sticky-header :toggle org-enable-sticky-header)
|
||||
(verb :toggle org-enable-verb-support)
|
||||
(org-roam :toggle org-enable-roam-support)
|
||||
(valign :toggle org-enable-valign)
|
||||
))
|
||||
(defconst org-packages
|
||||
'(
|
||||
company
|
||||
company-emoji
|
||||
emoji-cheat-sheet-plus
|
||||
evil-org
|
||||
evil-surround
|
||||
gnuplot
|
||||
(helm-org-rifle :toggle (configuration-layer/layer-used-p 'helm))
|
||||
htmlize
|
||||
;; ob, org, org-agenda and org-contacts are installed by `org-plus-contrib'
|
||||
(ob :location built-in)
|
||||
(org :location built-in)
|
||||
(org-agenda :location built-in)
|
||||
(org-contacts :location built-in
|
||||
:toggle org-enable-org-contacts-support)
|
||||
(org-vcard :toggle org-enable-org-contacts-support)
|
||||
(org-brain :toggle (version<= "25" emacs-version))
|
||||
(org-expiry :location built-in)
|
||||
(org-journal :toggle org-enable-org-journal-support)
|
||||
org-download
|
||||
(org-jira :toggle org-enable-jira-support)
|
||||
org-mime
|
||||
org-pomodoro
|
||||
org-present
|
||||
org-cliplink
|
||||
org-rich-yank
|
||||
(org-projectile :requires projectile)
|
||||
(ox-epub :toggle org-enable-epub-support)
|
||||
(ox-twbs :toggle org-enable-bootstrap-support)
|
||||
;; use a for of ox-gfm to fix index generation
|
||||
(ox-gfm :location (recipe :fetcher github :repo "syl20bnr/ox-gfm")
|
||||
:toggle org-enable-github-support)
|
||||
(org-re-reveal :toggle org-enable-reveal-js-support)
|
||||
persp-mode
|
||||
(ox-hugo :toggle org-enable-hugo-support)
|
||||
(ox-jira :toggle org-enable-jira-support)
|
||||
(org-trello :toggle org-enable-trello-support)
|
||||
(org-sticky-header :toggle org-enable-sticky-header)
|
||||
(verb :toggle org-enable-verb-support)
|
||||
(org-roam :toggle org-enable-roam-support)
|
||||
(valign :toggle org-enable-valign)))
|
||||
|
||||
(defun org/post-init-company ()
|
||||
(spacemacs|add-company-backends :backends company-capf :modes org-mode))
|
||||
|
@ -186,24 +185,24 @@ Will work on both org-mode and any mode that accepts plain html."
|
|||
(insert (format tag ""))
|
||||
(forward-char -8))))
|
||||
|
||||
(dolist (prefix `(
|
||||
("mb" . "babel")
|
||||
("mC" . ,(org-clocks-prefix))
|
||||
("md" . "dates")
|
||||
("me" . "export")
|
||||
("mf" . "feeds")
|
||||
("mi" . "insert")
|
||||
("miD" . "download")
|
||||
("mm" . "more")
|
||||
("ms" . "trees/subtrees")
|
||||
("mT" . "toggles")
|
||||
("mt" . "tables")
|
||||
("mtd" . "delete")
|
||||
("mti" . "insert")
|
||||
("mtt" . "toggle")
|
||||
("mx" . "text")
|
||||
))
|
||||
(spacemacs/declare-prefix-for-mode 'org-mode (car prefix) (cdr prefix)))
|
||||
(dolist (prefix `(
|
||||
("mb" . "babel")
|
||||
("mC" . ,(org-clocks-prefix))
|
||||
("md" . "dates")
|
||||
("me" . "export")
|
||||
("mf" . "feeds")
|
||||
("mi" . "insert")
|
||||
("miD" . "download")
|
||||
("mm" . "more")
|
||||
("ms" . "trees/subtrees")
|
||||
("mT" . "toggles")
|
||||
("mt" . "tables")
|
||||
("mtd" . "delete")
|
||||
("mti" . "insert")
|
||||
("mtt" . "toggle")
|
||||
("mx" . "text")
|
||||
))
|
||||
(spacemacs/declare-prefix-for-mode 'org-mode (car prefix) (cdr prefix)))
|
||||
(spacemacs/set-leader-keys-for-major-mode 'org-mode
|
||||
"'" 'org-edit-special
|
||||
"c" 'org-capture
|
||||
|
@ -213,7 +212,6 @@ Will work on both org-mode and any mode that accepts plain html."
|
|||
"Cc" 'org-clock-cancel
|
||||
"Cd" 'org-clock-display
|
||||
"Ce" 'org-evaluate-time-range
|
||||
"Cf" 'org-contacts-find-file
|
||||
"Cg" 'org-clock-goto
|
||||
"Ci" 'org-clock-in
|
||||
"CI" 'org-clock-in-last
|
||||
|
@ -378,7 +376,6 @@ Will work on both org-mode and any mode that accepts plain html."
|
|||
;; Clock
|
||||
;; These keybindings should match those under the "mC" prefix (above)
|
||||
"aoCc" 'org-clock-cancel
|
||||
"aoCf" 'org-contacts-find-file
|
||||
"aoCg" 'org-clock-goto
|
||||
"aoCi" 'org-clock-in
|
||||
"aoCI" 'org-clock-in-last
|
||||
|
@ -461,12 +458,12 @@ Will work on both org-mode and any mode that accepts plain html."
|
|||
:init
|
||||
(progn
|
||||
(setq org-agenda-restore-windows-after-quit t)
|
||||
(dolist (prefix `(("mC" . ,(org-clocks-prefix))
|
||||
("md" . "dates")
|
||||
("mi" . "insert")
|
||||
("ms" . "trees/subtrees")))
|
||||
(spacemacs/declare-prefix-for-mode 'org-agenda-mode
|
||||
(car prefix) (cdr prefix)))
|
||||
(dolist (prefix `(("mC" . ,(org-clocks-prefix))
|
||||
("md" . "dates")
|
||||
("mi" . "insert")
|
||||
("ms" . "trees/subtrees")))
|
||||
(spacemacs/declare-prefix-for-mode 'org-agenda-mode
|
||||
(car prefix) (cdr prefix)))
|
||||
(spacemacs/set-leader-keys-for-major-mode 'org-agenda-mode
|
||||
(or dotspacemacs-major-mode-leader-key ",") 'org-agenda-ctrl-c-ctrl-c
|
||||
"a" 'org-agenda
|
||||
|
@ -475,7 +472,6 @@ Will work on both org-mode and any mode that accepts plain html."
|
|||
"Ci" 'org-agenda-clock-in
|
||||
"Co" 'org-agenda-clock-out
|
||||
"Cj" 'org-agenda-clock-goto
|
||||
"Cf" 'org-contacts-find-file
|
||||
"dd" 'org-agenda-deadline
|
||||
"ds" 'org-agenda-schedule
|
||||
"ie" 'org-agenda-set-effort
|
||||
|
@ -570,8 +566,6 @@ Headline^^ Visit entry^^ Filter^^ Da
|
|||
("." org-agenda-goto-today)
|
||||
("gd" org-agenda-goto-date)))
|
||||
:config
|
||||
(when org-enable-org-contacts-support
|
||||
(use-package org-contacts))
|
||||
(evilified-state-evilify-map org-agenda-mode-map
|
||||
:mode org-agenda-mode
|
||||
:bindings
|
||||
|
@ -805,16 +799,25 @@ Headline^^ Visit entry^^ Filter^^ Da
|
|||
(if agenda-files
|
||||
(progn (find-file (if org-persp-startup-org-file org-persp-startup-org-file (first agenda-files)))
|
||||
(if org-persp-startup-with-agenda (org-agenda nil org-persp-startup-with-agenda)
|
||||
))
|
||||
))
|
||||
(user-error "Error: No agenda files configured, nothing to display.")))))
|
||||
|
||||
(defun org/pre-init-org-contacts ()
|
||||
(spacemacs|use-package-add-hook org-agenda :post-config (require 'org-contacts)))
|
||||
(defun org/init-org-contacts ()
|
||||
(use-package org-contacts
|
||||
:defer t))
|
||||
:defer t
|
||||
:init
|
||||
(progn
|
||||
(spacemacs/set-leader-keys-for-major-mode 'org-agenda-mode
|
||||
"Cf" 'org-contacts-find-file)
|
||||
(spacemacs/set-leader-keys-for-major-mode 'org-mode
|
||||
"Cf" 'org-contacts-find-file)
|
||||
(spacemacs/set-leader-keys
|
||||
"aoCf" 'org-contacts-find-file))))
|
||||
|
||||
(defun org/init-org-vcard ()
|
||||
(use-package org-vcard
|
||||
:after org-contacts
|
||||
:defer t))
|
||||
|
||||
(defun org/init-org-journal ()
|
||||
|
@ -968,4 +971,3 @@ Headline^^ Visit entry^^ Filter^^ Da
|
|||
(valign-remove-advice)))))
|
||||
:config
|
||||
(spacemacs|diminish valign-mode " ㊣" " E")))
|
||||
|
||||
|
|
Loading…
Reference in New Issue