aboutsummaryrefslogtreecommitdiff
path: root/src-qt5/desktop-utils/lumina-textedit/syntax_rules/sh.syntax
blob: 6ca832e93f5a5e0dbdf1a344e8c6a81b19665bf9 (plain)
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
# Syntax support file for the Lumina Text Editor
# ===================================
#  Bourne Shell language support rules
#  Written by Ken Moore <ken@ixsystems.com>
#  Released under the 2-clause BSD license
# ===================================

{
	"meta": {
		"name": "Shell",
		"file_suffix": ["sh"],
		"first_line_match":["#!/bin/sh", "#!/bin/bash","#!/bin/env bash","#!/sbin/openrc-run"]
	},
	"format": {
		"line_wrap": false,
		"highlight_whitespace_eol": false
	},
	"rules": [{
			"name": "preprocessor",
			"regex": "^#![^\n]*",
			"foreground": "colors/preprocessor"
		},
		{
			"name": "single-line comment",
			"regex": "#[^\n]*",
			"foreground": "colors/comment"
		},
		{
			"name": "keywords",
			"words": ["alias" , "alloc" , "bg" , "bind" , " bindkey" , "break" , "breaksw","builtins","case","cd","chdir","command","complete","continue","default" ,"dirs","do","done","echo","echotc","elif","else","end","endif","endsw","esac","eval" ,"exec","exit","export","false","fc","fg","filetest","fi","for","foreach","getopts" ,"glob","goto","hash","hashstat","history","hup","if","in","jobid","jobs","kill","limit" ,"local","log","login","logout","ls-F","nice","nohup","notify","onintr","popd" ,"printenv","printf","pushd","pwd","read","readonly","rehash","repeat","return" ,"sched","set","setenv","settc","setty","setvar","shift","source","stop","suspend" ,"switch","telltc","test","then","time","times","trap","true","type","ulimit","umask" ,"unalias","uncomplete","unhash","unlimit","unset","unsetenv","until","wait" ,"where","which","while"],
			"foreground": "colors/keyword",
			"font_weight": "bold"
		},
		{
			"name": "class names",
			"regex": "\\b[A-Za-z0-9_-\\.]+(?=::)\\b",
			"foreground": "colors/class",
			"font_weight": "bold"
		},
		{
			"name": "variable expansions",
			"regex": "\\$[A-Za-z0-9_-\\.]+\\b",
			"foreground": "colors/altkeyword",
			"font_weight": "bold"
		},
		{
			"name": "variable expansions",
			"regex": "\\$\\{[A-Za-z0-9_-\\.]+\\}",
			"foreground": "colors/altkeyword",
			"font_weight": "bold"
		},
		{
			"name": "function names",
			"regex": "\\b[A-Za-z0-9_]+(?=\\()",
			"foreground": "colors/function"
		},
		{
			"name": "text",
			"regex": "\"[^\"\\\\]*(\\\\(.|\\n)[^\"\\\\]*)*\"|'[^'\\\\]*(\\\\(.|\\n)[^'\\\\]*)*'",
			"foreground": "colors/text"
		}
	]
}
bgstack15