-
Notifications
You must be signed in to change notification settings - Fork 17
/
Copy pathmakefile.jsf
97 lines (78 loc) · 1.65 KB
/
makefile.jsf
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# JOE syntax highlight file for Makefile
=Idle
=Comment green
=CommentLabel bold green
=Constant cyan
=Escape bold cyan
=Bad bold red
=RecipeCont bold cyan
=TargetPhony yellow
=TargetOther fg_310 # brown
=TargetRest
:line_start Idle
* idle noeat
"#" line_comment recolor=-1
"a-zA-Z0-9._" maybe_target mark buffer
"\t" recipe
:idle Idle
* idle
"$" maybe_substitute
"\n" line_start
:maybe_substitute Idle
* idle noeat
"(" substitute recolor=-2
:substitute Constant
* substitute
")" idle
:recipe Idle
* recipe
"$" maybe_r_substitute
"\\" recipe_cont recolor=-1
"\n" line_start
:recipe_cont RecipeCont
* recipe noeat
"\n" recipe
:maybe_r_substitute Idle
* recipe noeat
"(" r_substitute recolor=-2
:r_substitute Constant
* r_substitute
")" recipe
:line_comment Comment
* line_comment
# might be TODO label
"BFHNTX" line_comment noeat call=.comment_todo()
"\n" line_start
:maybe_target Idle
* idle noeat
":" target_other noeat recolormark strings
".PHONY" target_phony
done
"a-zA-Z0-9._-" maybe_target
:target_phony TargetPhony
* target_rest noeat
:target_other TargetOther
* target_rest noeat
:target_rest TargetRest
* target_rest
"\n" line_start
.subr comment_todo
# initial state
:comment_todo_init Comment
* comment_todo_guess buffer
# highlight common TODO labels
:comment_todo_guess Comment
* comment_todo_unknown noeat strings
"BUG" comment_todo
"FIXME" comment_todo
"HACK" comment_todo
"NOTE" comment_todo
"TODO" comment_todo
"XXX" comment_todo
done
"A-Z" comment_todo_guess
:comment_todo_unknown Comment
* NULL noeat return
:comment_todo CommentLabel
* NULL noeat return
.end