2010-02-11 4 views
19

에서 TODO 표시등이 나는 소스 코드이맥스 : 일부 의견</p> <p>// TODO : 왼쪽

#TODO에이 곳 라인의 왼쪽에 indiacator의 종류가 할 몇 가지 덧글

인디케이터는 표시 일 수 있으며 이미 이맥스에 표시된 줄 번호를 사용할 수 있습니다.

답변

20

이 명령을 사용하면 원하는 작업을 수행 할 수 있습니다.

(defun annotate-todo() 
    "put fringe marker on TODO: lines in the curent buffer" 
    (interactive) 
    (save-excursion 
    (goto-char (point-min)) 
    (while (re-search-forward "TODO:" nil t) 
     (let ((overlay (make-overlay (- (point) 5) (point)))) 
     (overlay-put overlay 'before-string (propertize "A" 
                 'display '(left-fringe right-triangle))))))) 

원하는 경우 customize the bitmap하실 수 있습니다. 당신은 단지 특정 모드에 대해, 당신이 그 모드 후크에 추가 할 수 원하는 경우

것은이 모든 파일에 적용 할 얻으려면, 그것은 'find-file-hooks

(add-hook 'find-file-hooks 'annotate-todo) 

에 추가 할 수있다.

Fringes, The 'display' Property, Overlays 및 가장 중요한 것은 before-string 속성을 참조하십시오.

참고 : 코드는 현재 텍스트에 텍스트 속성을 직접 추가하는 대신 오버레이를 사용하도록 27/02/2010 업데이트되었습니다.

+0

이 작품 훌륭한. 불행히도 줄 번호를 표시하도록 설정했습니다. 그래서 줄 번호가 TODO : 표시보다 우선합니다. 둘 다 나타나는 방법은 –

+0

@ 트라이 잭슨. 그것은 위대한 지금 작동합니다. 다음 줄 번호 표시기 옆에 추가했습니다. 고마워요 –

+0

쿨! 하지만 ..... :) 더 유용한 것은 프린지에 빨간색 막대를 표시하고 문서의 길이에 맞게 조정하는 것입니다. 즉, 문서의 75 % 지점에 TODO가 표시되면 스크롤 상태와 시간에 TODO가 창에 표시되었는지 여부에 관계없이 표시기가 프린지 바에 75 %로 표시됩니다. 일부 diff 도구가이를 수행합니다. 이러한 종류의 표시기를 사용하면 현재 화면에 표시되어 있는지 여부에 관계없이 프린지에 표시된 TODO 항목의 존재를 볼 수 있습니다. – Cheeso

6

필자는 emacs-fu에서 this post에 설명 된 접근 방식을 좋아하는데, TODO/FIXME/...을 필요한 모드의 글꼴 잠금 설정에 추가합니다. Trey의 접근 방식과 달리 입력 할 때 단어를 강조해야하지만 접근 방식은 파일을 열 때만 강조 표시해야합니다 (또는 잘못 입력 했습니까?).

어쨌든 그것까지입니다. http://www.google.com/search?q=emacs+highlight+todo

업데이트 : 좋은 구글에서 검색하면 아마 더 많은 아이디어를 제공 귀하의 질문은 이미 답했습니다 Emacs, highlight all occurences of a word