windows - 使用左侧的 org 文件和右侧的议程启动 Emacs

标签 windows emacs startup org-mode agenda

我想全屏打开 Emacs,两个窗口垂直拆分。我希望我的 todo.org 文件在左侧打开,我的议程 View 在右侧打开。

类似的内容出现在本网站的其他几个问题中,但它们并不完全相同和/或我无法使用/理解他们的答案来完全解决我的挑战。

我已经非常接近我的 custom-init.el 文件中的以下内容:

;; Windows layout setup
(add-to-list 'default-frame-alist '(fullscreen . maximized))
(split-window-right)
(setq initial-buffer-choice "~/emacs/Org/todo.org")
(setq org-agenda-window-setup 'current-window)
(add-hook 'after-init-hook (lambda () (org-agenda nil "u")))
(add-hook 'after-init-hook (lambda () (org-agenda-list 1)))

这会正确格式化屏幕,显示我想要的窗口位置和大小。它还会打开我的待办事项文件并将其放在我想要的左侧,但是我在右侧打开了暂存缓冲区。议程已正确创建和格式化,是缓冲区列表中的第三项(scratch、todo.org、议程,然后是我在启动时打开的所有其他 org 文件。)

如此接近,但经过几天的思考和尝试不同的事情,我就是没有到达那里。

最佳答案

添加 Hook 到 window-setup-hook应该得到预期的效果 - 考虑到您的框架自定义。

(add-to-list 'default-frame-alist '(fullscreen . maximized))
(setq initial-buffer-choice "~/emacs/org/todo.org")

(defun my-init-hook ()
  (split-window-right)
  (let ((org-agenda-window-setup 'other-window))
    (org-agenda nil "a")))

(add-hook 'window-setup-hook #'my-init-hook)

关于windows - 使用左侧的 org 文件和右侧的议程启动 Emacs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58573346/

相关文章:

php - 在 Emacs 中编辑 PHP 的好的设置是什么?

tomcat - 有没有办法在 J2EE 服务器启动时做一些事情?我正在使用汤姆猫

c - 从注册表启动程序与从启动文件夹启动的区别

c# - 如果多个应用程序实例正在运行,如何获取应用程序的事件/前台实例?

c# - 如何使用 C# 删除 Windows 用户帐户文件夹?

windows - 如果 OpenProcess() 因 ACCESS_DENIED 失败,如何从 pid 获取进程文件名?

regex - emacs函数在正则表达式中按字面意义重新搜索\(\)组字符

emacs - Paredit:删除不需要的键绑定(bind)

c++ - 比 boost::file_mapping 更快的读取文件的方法?

windows - 将应用程序置于启动状态