cp-org-agenda: Add

This commit is contained in:
Eric Danan 2018-07-17 23:20:31 +02:00
parent 7751773cb2
commit 390fe57b04
2 changed files with 33 additions and 5 deletions

View file

@ -945,6 +945,25 @@ capture."
(with-current-buffer (or from-buffer (current-buffer))
(counsel-org-capture))))
;;;; counsel-projectile-org-agenda
;;;###autoload
(defun counsel-projectile-org-agenda (&optional arg org-keys restriction)
"Open project agenda.
This command simply calls `org-agenda' after filtering out all
agenda files that do not belong to the current project.
Optional arguments ARG, ORG-KEYS, and RESTRICTION are as in
`org-agenda'."
(interactive "P")
(let* ((root (projectile-project-root))
(org-agenda-files
(cl-remove-if-not (lambda (file)
(string-prefix-p root file))
(org-agenda-files t 'ifmode))))
(org-agenda arg org-keys restriction)))
;;;; counsel-projectile-switch-project
(defcustom counsel-projectile-sort-projects nil
@ -1002,8 +1021,10 @@ candidates list of `counsel-projectile-switch-project'."
"invoke eshell from project root")
("xt" counsel-projectile-switch-project-action-run-term
"invoke term from project root")
("O" counsel-projectile-switch-project-action-org-capture
"org-capture into project"))
("Oc" counsel-projectile-switch-project-action-org-capture
"capture into project")
("Oa" counsel-projectile-switch-project-action-org-capture
"open project agenda"))
'counsel-projectile)
(defun counsel-projectile-switch-project-by-name (project)
@ -1318,7 +1339,8 @@ If not inside a project, call `counsel-projectile-switch-project'."
(let ((map (make-sparse-keymap)))
(set-keymap-parent map projectile-command-map)
(define-key map (kbd "s r") 'counsel-projectile-rg)
(define-key map (kbd "O") 'counsel-projectile-org-capture)
(define-key map (kbd "O c") 'counsel-projectile-org-capture)
(define-key map (kbd "O a") 'counsel-projectile-org-agenda)
(define-key map (kbd "SPC") 'counsel-projectile)
map)
"Keymap for Counesl-Projectile commands after `projectile-keymap-prefix'.")