2011-07-17 46 views
2

我目前使用doxymacs以語法高亮的doxygen在C++文件中的註釋和關鍵字對我工作的一個合作項目。語法高亮的HTML標籤

然而,在該項目中,有「計劃」文件,這基本上是有很多待辦事項,臭蟲等,爲組織和演示都使用HTML標籤很長的Doxygen註釋。

目前doxymacs既突出瞭如「待辦事項」和「錯誤」等關鍵字,我怎樣才能使它也語法高亮doxygen的註釋中的HTML標記?

我可以通過切換到「html模式」,但然後我失去標準doxymacs突出顯示「待辦事項」等。只是能夠使用這兩種模式在一起或結合他們將是有益的。

因此,舉例來說,如果我有:

/*! 
    \todo Test todo 
    <ul> 
    <li> Some text. </li> 
    <li> Some more text. </li> 
    </ul> 

*/ 

我想要<ul>標籤等進行着色不同的顏色在/*! */評論中的普通文本。

回答

1

這將FONT-鎖定<>什麼作爲關鍵字在C-衍生模式註釋:

(defun my-c-font-lock-doxy-html (limit) 
    (while (re-search-forward "<.+?>" limit 'move) 
    (let ((beg (match-beginning 0)) 
      (end (match-end 0))) 
     (if (nth 4 (syntax-ppss beg)) 
      (when (nth 4 (syntax-ppss end)) 
      (c-put-font-lock-face beg end 'font-lock-keyword-face)) 
     (goto-char end)))) 
    nil) 

(defun my-c-mode-common-hook() 
    (font-lock-add-keywords nil '((my-c-font-lock-doxy-html)))) 

(add-hook 'c-mode-common-hook 'my-c-mode-common-hook) 
+0

這是否只是強調像C/C++註釋HTML註釋?如果是這樣,那不是我要找的。我希望出現在C++註釋中的HTML代碼被突出顯示爲HTML而不是註釋顏色。 – MGwynne

+0

它不會做全面的HTML突出,但任何''​​型標籤將(僅在評論)突出顯示爲關鍵字。試試:) – scottfrazer

+0

啊哈!很酷,我會放手一搏!謝謝! – MGwynne