emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/d-mode 781a94d 068/346: Add doc-comment style that recogni


From: ELPA Syncer
Subject: [nongnu] elpa/d-mode 781a94d 068/346: Add doc-comment style that recognizes doxygen and D doc-comments.
Date: Sun, 29 Aug 2021 11:00:05 -0400 (EDT)

branch: elpa/d-mode
commit 781a94d6146efd1c8e087a81d2bfa76c6876e5c5
Author: Dmitri Makarov <dmakarov@alumni.stanford.edu>
Commit: Dmitri Makarov <dmakarov@alumni.stanford.edu>

    Add doc-comment style that recognizes doxygen and D doc-comments.
---
 d-mode.el | 25 +++++++++++++++++++------
 1 file changed, 19 insertions(+), 6 deletions(-)

diff --git a/d-mode.el b/d-mode.el
index bf96ae8..2dabd7a 100644
--- a/d-mode.el
+++ b/d-mode.el
@@ -137,16 +137,29 @@ operators."
 (c-lang-defconst c-literal-start-regexp
   ;; Regexp to match the start of comments and string literals.
   d "/[*+/]\\|\"\\|`")
-;;(c-lang-defconst c-comment-prefix-regexp d "//+\\|\\**")
-
-(c-lang-defconst c-doc-comment-start-regexp
- ;; doc comments for D use "///",  "/**" or doxygen's "/*!" "//!"
- d "/\\*[*!]\\|//[/!]")
 
 (c-lang-defconst c-block-prefix-disallowed-chars
   ;; Allow ':' for inherit list starters.
   d (set-difference (c-lang-const c-block-prefix-disallowed-chars)
-                                '(?:)))
+                    '(?:)))
+
+(defconst doxygen-font-lock-doc-comments
+  (let ((symbol "[a-zA-Z0-9_]+")
+       (header "^ \\* "))
+    `((,(concat header "\\("     symbol "\\):[ \t]*$")
+       1 ,c-doc-markup-face-name prepend nil)
+      (,(concat                  symbol     "()")
+       0 ,c-doc-markup-face-name prepend nil)
+      (,(concat header "\\(" "@" symbol "\\):")
+       1 ,c-doc-markup-face-name prepend nil)
+      (,(concat "[#%@]" symbol)
+       0 ,c-doc-markup-face-name prepend nil))
+    ))
+
+(defconst doxygen-font-lock-keywords
+  `((,(lambda (limit)
+       (c-font-lock-doc-comments "/\\+[+!]\\|/\\*[*!]\\|//[/!]" limit
+         doxygen-font-lock-doc-comments)))))
 
 ;;----------------------------------------------------------------------------
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]