aboutsummaryrefslogtreecommitdiffstats
path: root/queries/haskell/injections.scm
blob: 0b231a7a1933f8946767f2bea6fae9fc271924f2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
;; -----------------------------------------------------------------------------
;; General language injection

(quasiquote
 ((quoter) @language)
 ((quasiquote_body) @content)
)

(comment) @comment

;; -----------------------------------------------------------------------------
;; shakespeare library
;; NOTE: doesn't support templating

; TODO: add once CoffeeScript parser is added
; ; CoffeeScript: Text.Coffee
; (quasiquote
;  (quoter) @_name
;  (#eq? @_name "coffee")
;  ((quasiquote_body) @coffeescript)

; CSS: Text.Cassius, Text.Lucius
(quasiquote
 (quoter) @_name
 (#any-of? @_name "cassius" "lucius")
 ((quasiquote_body) @css)
)

; HTML: Text.Hamlet
(quasiquote
 (quoter) @_name
 (#any-of? @_name "shamlet" "xshamlet" "hamlet" "xhamlet" "ihamlet")
 ((quasiquote_body) @html)
)

; JS: Text.Julius
(quasiquote
 (quoter) @_name
 (#any-of? @_name "js" "julius")
 ((quasiquote_body) @javascript)
)

; TS: Text.TypeScript
(quasiquote
 (quoter) @_name
 (#any-of? @_name "tsc" "tscJSX")
 ((quasiquote_body) @typescript)
)


;; -----------------------------------------------------------------------------
;; HSX

(quasiquote
 (quoter) @_name
 (#eq? @_name "hsx")
 ((quasiquote_body) @html)
)