How can I show the Org-mode agenda on Emacs start-

2019-03-09 20:15发布

I would like the Org-mode agenda to automatically show what I have to do today when I open Emacs. The org-agenda command is interactive, so it doesn't seem to work well for this purpose.

Is there a way to show the Org-mode agenda on Emacs start-up?

Thanks,

Conor

5条回答
对你真心纯属浪费
2楼-- · 2019-03-09 20:18

You can use after-init-hook to run a piece of code after initialization has finished. To run (org-agenda-list) after init, use:

(add-hook 'after-init-hook 'org-agenda-list)
查看更多
三岁会撩人
3楼-- · 2019-03-09 20:19

This works for me (in .emacs):

(setq inhibit-splash-screen t)
(org-agenda-list)
(delete-other-windows)

Without the first line, the splash screen "covered" the agenda; without the third one, the scratch buffer remained visible.

查看更多
▲ chillily
4楼-- · 2019-03-09 20:23

I have a bash alias to start emacs with the Agenda open:

alias org='/usr/bin/emacs --funcall org-agenda-list &'

Enjoy.

查看更多
小情绪 Triste *
5楼-- · 2019-03-09 20:28

Try (org-agenda-list). If you just want today, (org-agenda-list 1).

And of course, apropos is your friend. C-h C-a org-agenda (or whatever command) will show you useful info on that command.

查看更多
霸刀☆藐视天下
6楼-- · 2019-03-09 20:32

One alternative to the hook is to set the initial-buffer-choice variable. This is particularly useful if there are multiple buffers or a number of functions on the hook. The function on this variable needs to return a buffer. Naively this might be:

(setq initial-buffer-choice (lambda ()
    (org-agenda-list 1)
    (get-buffer "*Org Agenda*")))    
查看更多
登录 后发表回答