symbol-string))))))
(defun context-coloring-elisp-colorize-expression-prefix ()
- (let (start
- end
- char)
- (setq char (char-after))
+ (let ((char (char-after))
+ (start (point))
+ (end (progn (forward-sexp)
+ (point))))
(cond
((or (= char context-coloring-APOSTROPHE-CHAR)
(= char context-coloring-OCTOTHORPE-CHAR))
- (forward-sexp))
+ (context-coloring-elisp-colorize-comments-and-strings-in-region start end))
((= char context-coloring-BACKTICK-CHAR)
- (setq start (point))
- (forward-sexp)
- (setq end (point))
(goto-char start)
(while (> end (progn (forward-char)
(point)))
start
(point))))
+(defun context-coloring-elisp-colorize-comments-and-strings-in-region (start end)
+ (let (syntax-code)
+ (goto-char start)
+ (while (> end (progn (skip-syntax-forward "^<\"" end)
+ (point)))
+ (setq syntax-code (context-coloring-get-syntax-code))
+ (cond
+ ((= syntax-code context-coloring-COMMENT-START-CODE)
+ (context-coloring-elisp-colorize-comment))
+ ((= syntax-code context-coloring-STRING-QUOTE-CODE)
+ (context-coloring-elisp-colorize-string))
+ (t
+ (forward-char))))))
+
(defun context-coloring-elisp-colorize-region (start end)
(let (syntax-code)
(goto-char start)
(xxxxx x (x)
(xx (xx x 111
111111 1 111 111
- 111111 1 1111111111 11 111 1 111 1 00001 10000 11 00001 1 100001111")))
+ 111111 1 1111111111 11 111 1 111 1 00001 10000 11 00001 1 100001111
+
+(xxxxxx '(sss cc
+ sss cc
+ ))")))
(context-coloring-test-deftest-emacs-lisp comment
(lambda ()