6

我有几个.org 文件,例如personal.org 和work.org。

查看议程时,我希望每个文件中的事件颜色不同。

例如,

Wednesday  12 June 2013
  personal:   11:00am........ Personal Meeting
  work:       2:00pm- 3:00pm  Work Meeting

议程中已经有一些颜色,但这两条线都是白色的。如何将来自个人的线路设置为一种颜色,将来自工作的线路设置为另一种颜色?我认为至少必须有一种方法来定义基于personal:和的配色方案work:我认为,如果没有简单的方法让 org 通过文件执行此操作,那么

谢谢!

4

2 回答 2

5

我发现的唯一解决方案是您必须使用钩子函数,在议程视图准备好后换脸。以下代码未经测试,但应该可以帮助您:

(add-hook 'org-finalize-agenda-hook
    (lambda ()
      (save-excursion
        (goto-char (point-min))
        (while (re-search-forward "personal:" nil t) 
          (add-text-properties (match-beginning 0) (point-at-eol)
             '(face secondary-selection)))
        (goto-char (point-min))
        (while (re-search-forward "work:" nil t) 
          (add-text-properties (match-beginning 0) (point-at-eol)
             '(face bold))))))
于 2013-06-12T13:45:39.427 回答
3

John Wiegley 发送了一次他编写的补丁,以便通过 :OVERLAY: 属性,所有工作项都具有相同的背景颜色。对于 Personal 的另一个值,这些项目具有不同的颜色。

http://comments.gmane.org/gmane.emacs.orgmode/54342

于 2013-06-13T11:54:29.610 回答