Cách liên kết khóa với một lệnh / danh sách chương trình cụ thể trong chế độ org


15

Tôi đã thêm một khóa tùy chỉnh cho chương trình nghị sự org để hiển thị tất cả các mục TODO không được lên lịch sau Sacha Chua:

(defun sacha/org-agenda-skip-scheduled ()
  (org-agenda-skip-entry-if 'scheduled 'deadline 'regexp "\n]+>"))

(setq org-agenda-custom-commands
   '(("u" "Unscheduled tasks" alltodo ""
      ((org-agenda-skip-function 'sacha/org-agenda-skip-scheduled)
       (org-agenda-overriding-header "Unscheduled TODO entries: ")))))

Tôi có thể hiển thị danh sách này C-c a u, nhưng tôi chỉ muốn liên kết nó với một khóa duy nhất. Hiện tại tôi có đơn giản:

(global-set-key (kbd "<f8>") 'org-todo-list)

nhưng tôi muốn điều này để sử dụng lệnh tùy chỉnh ở trên. Tôi đã có một hướng dẫn thông qua hướng dẫn nhưng tôi không thể thấy làm thế nào để làm điều đó.

Câu trả lời:


12

Bạn có thể làm điều này bằng cách gói một lệnh gọi org-agendavào một lệnh tùy chỉnh và ràng buộc nó với một phím:

(defun org-agenda-show-unscheduled (&optional arg)
  (interactive "P")
  (org-agenda arg "u"))

(define-key org-mode-map (kbd "<f8>") 'org-agenda-show-unscheduled)

1

Tôi không thích tạo một chức năng rõ ràng vì vậy tôi đã cuộn bản đồ của mình trong lambda:

(define-key org-mode-map (kbd "<f8>") '(lambda (&optional arg) (interactive "P")(org-agenda arg "u")))
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.