forked from colonelpanic/dotfiles
add socks proxy, finish helm-org-agenda-files-headings
This commit is contained in:
parent
d4c4a1094b
commit
90ef5dfd2b
8
init.el
8
init.el
@ -818,7 +818,8 @@ The current directory is assumed to be the project's root otherwise."
|
|||||||
:bind (("M-y" . helm-show-kill-ring)
|
:bind (("M-y" . helm-show-kill-ring)
|
||||||
("M-x" . helm-M-x)
|
("M-x" . helm-M-x)
|
||||||
("C-x C-i" . helm-imenu)
|
("C-x C-i" . helm-imenu)
|
||||||
("C-h a" . helm-apropos))
|
("C-h a" . helm-apropos)
|
||||||
|
("C-c C-h" . helm-org-agenda-files-headings))
|
||||||
:init
|
:init
|
||||||
(progn
|
(progn
|
||||||
(require 'helm)
|
(require 'helm)
|
||||||
@ -1240,9 +1241,8 @@ The current directory is assumed to be the project's root otherwise."
|
|||||||
(if (eq appropriate-theme current-theme)
|
(if (eq appropriate-theme current-theme)
|
||||||
nil
|
nil
|
||||||
(progn
|
(progn
|
||||||
(disable-all-themes)
|
(disable-and-load-theme appropriate-theme t)
|
||||||
(load-theme appropriate-theme t)
|
(setq current-theme appropriate-theme)))))
|
||||||
(setq current-theme appropriate-theme)))))
|
|
||||||
|
|
||||||
(defun disable-all-themes ()
|
(defun disable-all-themes ()
|
||||||
(interactive)
|
(interactive)
|
||||||
|
@ -1,27 +1,37 @@
|
|||||||
(defun helm-org-agenda-files-headlines (&optional min-depth max-depth)
|
(defun helm-org-agenda-files-headings (&optional min-depth max-depth)
|
||||||
(interactive)
|
(interactive)
|
||||||
(helm :sources (helm-source-org-headlines-for-files org-agenda-files)))
|
(helm :sources (helm-source-org-headings-for-files org-agenda-files min-depth max-depth)))
|
||||||
|
|
||||||
(defun helm-org-goto-marker (marker)
|
(defun helm-org-goto-marker (marker)
|
||||||
(switch-to-buffer (marker-buffer marker))
|
(switch-to-buffer (marker-buffer marker))
|
||||||
(goto-char (marker-position marker))
|
(goto-char (marker-position marker))
|
||||||
(org-show-entry))
|
(org-show-entry))
|
||||||
|
|
||||||
|
(defun helm-source-org-headings-for-files (filenames &optional min-depth max-depth)
|
||||||
(defun helm-source-org-headlines-for-files (filenames &optional min-depth max-depth)
|
|
||||||
(unless min-depth (setq min-depth 1))
|
(unless min-depth (setq min-depth 1))
|
||||||
(unless max-depth (setq max-depth 8))
|
(unless max-depth (setq max-depth 8))
|
||||||
(helm-build-sync-source "Org Headlines"
|
(helm-build-sync-source "Org Headings"
|
||||||
:candidates (helm-org-get-candidates filenames min-depth max-depth)
|
:candidates (helm-org-get-candidates filenames min-depth max-depth)
|
||||||
:action 'helm-org-goto-marker
|
:action 'helm-org-goto-marker
|
||||||
:action-transformer
|
:action-transformer
|
||||||
(lambda (actions candidate)
|
(lambda (actions candidate)
|
||||||
'(("Go to line" . helm-org-goto-marker)
|
'(("Go to line" . helm-org-goto-marker)
|
||||||
("Refile to this headline" . helm-org-headline-refile)
|
("Refile to this heading" . helm-org-heading-refile)
|
||||||
("Insert link to this headline"
|
("Insert link to this heading"
|
||||||
. helm-org-headline-insert-link-to-headline)))))
|
. helm-org-insert-link-to-heading-at-marker)))))
|
||||||
|
|
||||||
(defun helm-org-headline-refile (marker)
|
(defun helm-org-insert-link-to-heading-at-marker (marker)
|
||||||
|
(with-current-buffer (marker-buffer marker)
|
||||||
|
(goto-char (marker-position marker))
|
||||||
|
(let ((heading-name (nth 4 (org-heading-components)))
|
||||||
|
(file-name buffer-file-name))
|
||||||
|
(message heading-name)
|
||||||
|
(message file-name)
|
||||||
|
(with-helm-current-buffer
|
||||||
|
(org-insert-link
|
||||||
|
file-name (concat "file:" file-name "::*"heading-name))))))
|
||||||
|
|
||||||
|
(defun helm-org-heading-refile (marker)
|
||||||
(with-helm-current-buffer
|
(with-helm-current-buffer
|
||||||
(org-cut-subtree))
|
(org-cut-subtree))
|
||||||
(let ((target-level (with-current-buffer (marker-buffer marker)
|
(let ((target-level (with-current-buffer (marker-buffer marker)
|
||||||
|
Loading…
Reference in New Issue
Block a user