2011-12-18 24 views
5

Chế độ gốc mà tôi cần để móc để làm nổi bật TODO bằng ngôn ngữ Ruby, Lisp và C-like. Tôi cố gắng điều sau đây, nhưng nó không làm nổi bật TODO trong Ruby hay Lisp:Làm nổi bật TODO ở tất cả các chế độ lập trình

(defun highlight-todos (font-lock-add-keywords nil 
      '(("\\<\\(FIXME\\|TODO\\|BUG\\):" 1 font-lock-warning-face t)))) 
(add-hook 'text-mode-hook 'highlight-todos) 
+1

Vấn đề khả năng với mã này được rằng các TODO nằm trong vùng nhận xét và các nhận xét thường được xác định và được phân loại bằng cách sử dụng các bảng cú pháp cho chế độ hoạt động; từ khóa khóa phông chữ của bạn không có cơ hội được áp dụng, bởi vì khu vực đã được đánh dấu là nhận xét. – sanityinc

+2

có thể trùng lặp của [Emacs: làm nổi bật TODO * chỉ * trong nhận xét] (http://stackoverflow.com/questions/2367611/emacs-highlighting-todo-only-in-comments) – sanityinc

Trả lời

5

Tôi nghĩ rằng để làm cho nó tất cả các chế độ lập trình để làm việc sử dụng prog-mode-hook

(add-hook 'prog-mode-hook 'highlight-todos)