2013-06-12 1 views
5

여러 개의 .org 파일이 있습니다. personal.org 및 work.org.파일 별 색상 코드 일정보기

일정을 볼 때 각 파일의 이벤트에 색을 다르게하고 싶습니다. 예를 들어

,

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

이미 의제에 약간의 색상이 있지만이 두 라인은 모두 흰색입니다. 개인에서 한 색으로 줄을 설정하고 작업에서 다른 줄로 줄을 설정하는 방법은 무엇입니까? 적어도 파일을 통해 조직이 할 수있는 쉬운 방법이 없다면 personal:work: 텍스트를 기반으로하는 색 구성표를 정의하는 방법이 있어야한다고 생각합니다.

감사합니다.

답변

4

당신이 묻는 것에 대한 해결책으로 내가 찾은 유일한 것, 의제보기가 준비된 후 얼굴을 바꾸는 후크 기능을 사용해야합니다. 다음 코드는 테스트되지 않은,하지만 당신은 가야한다 : OVERLAY : 존 Wiegley 한 번와 그가 그렇게 그 쓴 패치, 전송

(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)))))) 
+0

고마워요! '얼굴을 굵은 글씨 '를'얼굴 (전경 그린)'로 바꾸는 것은 내가 원했던 것과 똑같이했다. – Josh

1

속성을 모든 작업 항목은 동일한 배경 색상을 가지고있다. 그리고 개인용의 다른 값을 사용하면 해당 항목의 색이 다릅니다.

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

+1

나는 그 일을 할 수없는 것 같아': OVERLAY : (얼굴 (: 전경 "녹색"))'라고 그는 덧붙였다. 그러나 의제에 영향을 미치지는 않는 것으로 보인다. 아이디어? – Josh

+1

@Josh 그 스레드는 아마 당신이 적용하지 않은 패치를 포함하고 있습니다. –