24

我希望 Org 模式议程能够在我打开 Emacs 时自动显示我今天必须做的事情。org-agenda 命令是交互式的,因此它似乎不能很好地用于此目的。

有没有办法在 Emacs 启动时显示 Org-mode 议程?

谢谢,

康纳

4

6 回答 6

26

您可以after-init-hook在初始化完成后运行一段代码。要(org-agenda-list)在 init 之后运行,请使用:

(add-hook 'after-init-hook 'org-agenda-list)
于 2010-01-06T04:28:45.843 回答
10

这对我有用(在.emacs):

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

没有第一行,启动画面“覆盖”了议程;没有第三个,暂存缓冲区仍然可见。

于 2012-09-28T16:38:35.680 回答
4

钩子的一种替代方法是设置initial-buffer-choice变量。如果挂钩上有多个缓冲区或许多函数,这将特别有用。此变量上的函数需要返回一个缓冲区。天真地这可能是:

(setq initial-buffer-choice (lambda ()
    (org-agenda-list 1)
    (get-buffer "*Org Agenda*")))    
于 2015-09-08T21:27:31.820 回答
3

试试(org-agenda-list)。如果你只想今天,(org-agenda-list 1).

当然,apropos 是您的朋友。C-h C-a org-agenda(或任何命令)将向您显示有关该命令的有用信息。

于 2010-01-06T02:44:08.940 回答
1

我有一个 bash 别名,可以在议程打开的情况下启动 emacs:

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

享受。

于 2010-01-08T20:45:50.943 回答
1

它不完全是在启动时,但我让 Emacs 保持运行,所以我需要一种不同的方法

(require 'midnight)
(midnight-delay-set 'midnight-delay "7:30am")
(add-hook 'midnight-hook 'org-agenda-list)

归功于https://stackoverflow.com/a/14947354/217408

于 2020-05-06T14:56:57.830 回答