:language mode
:feature 'string
`((string_literal) @font-lock-string-face
- (system_lib_string) @font-lock-string-face)
+ (system_lib_string) @font-lock-string-face
+ ,@(when (eq mode 'cpp)
+ '((raw_string_literal) @font-lock-string-face)))
:language mode
:feature 'literal
((node-is "]") parent-bol 0)
((and (parent-is "comment") comment-end) comment-start -1)
((parent-is "comment") comment-start-skip 0)
+ ((parent-is "text_block") no-indent)
((parent-is "class_body") parent-bol java-ts-mode-indent-offset)
((parent-is "interface_body") parent-bol java-ts-mode-indent-offset)
((parent-is "constructor_body") parent-bol java-ts-mode-indent-offset)
:language 'java
:override t
:feature 'string
- `((string_literal) @font-lock-string-face)
+ `((string_literal) @font-lock-string-face
+ (text_block) @font-lock-string-face)
:language 'java
:override t
:feature 'literal
;; Indent.
(setq-local treesit-simple-indent-rules js--treesit-indent-rules)
;; Navigation.
+ (setq-local treesit-defun-prefer-top-level t)
(setq-local treesit-defun-type-regexp
(rx (or "class_declaration"
"method_definition"
(defvar json-ts-mode--font-lock-settings
(treesit-font-lock-rules
+ :language 'json
+ :feature 'comment
+ '((comment) @font-lock-comment-face)
:language 'json
:feature 'bracket
'((["[" "]" "{" "}"]) @font-lock-bracket-face)
;; Font-lock.
(setq-local treesit-font-lock-settings json-ts-mode--font-lock-settings)
(setq-local treesit-font-lock-feature-list
- '((constant number pair string)
+ '((comment constant number pair string)
(escape-sequence)
(bracket delimiter error)))
(group (or (syntax comment-end)
(seq (+ "*") "/")))))
+ (setq-local treesit-defun-prefer-top-level t)
+
;; Electric
(setq-local electric-indent-chars
(append "{}():;," electric-indent-chars))