fluidd

Форк
0
/
klipper-config.tmLanguage.json 
229 строк · 8.9 Кб
1
{
2
	"$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
3
	"name": "Klipper Config",
4
	"patterns": [
5
		{
6
			"include": "#single_line_comment"
7
		},
8
		{
9
			"include": "#config_block"
10
		},
11
		{
12
			"include": "#config_line"
13
		},
14
		{
15
			"include": "#number"
16
		},
17
		{
18
			"include": "#gcode_line"
19
		}
20
	],
21
	"repository": {
22
		"single_line_comment": {
23
			"patterns": [
24
				{
25
					"name": "comment.line.number-sign",
26
					"match": "#(.+)$"
27
				},
28
				{
29
					"name": "comment.line.gcode",
30
					"match": ";(.+)$"
31
				}
32
			]
33
		},
34
		"number": {
35
			"patterns": [
36
				{
37
					"name": "constant.numeric",
38
					"match": "\\-?\\d+([\\.,]\\d+)?\\b"
39
				},
40
				{
41
					"name": "constant.numeric",
42
					"match": "\\-?[\\.,]\\d+?\\b"
43
				}
44
			]
45
		},
46
		"boolean": {
47
			"name": "constant.language",
48
			"match": "(?i)\\b(true|false)\\b"
49
		},
50
		"config_block": {
51
			"contentName": "keyword.control",
52
			"begin": "^\\[",
53
			"end": "\\]",
54
			"patterns": [
55
					{
56
							"include": "#known_config_block_name"
57
					},
58
					{
59
							"include": "#known_driver_type"
60
					},
61
					{
62
							"include": "#single_line_comment"
63
					}
64
			]
65
		},
66
		"known_config_block_name": {
67
			"name": "storage.type",
68
			"match": "(?i)\\b(ad5206|adc_scaled|adc_temperature|adxl345|angle|bed_mesh|bed_screws|bed_tilt|bltouch|board_pins|controller_fan|delayed_gcode|delta_calibrate|display|display_data|display_glyph|display_status|display_template|dotstar|dual_carriage|duplicate_pin_override|endstop_phase|extruder_stepper|extruder[1-9]{0,1}|fan|fan_generic|filament_motion_sensor|filament_switch_sensor|firmware_retraction|force_move|gcode_arcs|gcode_button|gcode_macro|hall_filament_width_sensor|heater_bed|heater_fan|heater_generic|homing_heaters|homing_override|idle_timeout|include|input_shaper|led|manual_probe|manual_stepper|mcp4018|mcp4451|mcp4728|mcu|menu|multi_pin|neopixel|output_pin|palette2|pause_resume|pca9533|pca9632|printer|probe|quad_gantry_level|replicape|resonance_tester|respond|safe_z_home|samd_sercom|save_variables|screws_tilt_adjust|sdcard_loop|servo|skew_correction|smart_effector|static_digital_output|stepper_(bed|arm|[abcdxy]|z[1-9]{0,1})|sx1509|temperature_fan|temperature_sensor|thermistor|tsl1401cl_filament_width_sensor|verify_heater|virtual_sdcard|z_tilt)\\b"
69
		},
70
		"known_driver_type": {
71
			"name": "support.type",
72
			"match": "(?i)\\btmc(2130|2208|2209|2240|2660|5160)\\b"
73
		},
74
		"known_thermistor_type": {
75
			"name": "support.type",
76
			"match": "(?i)\\b(EPCOS 100K B57560G104F|ATC Semitec 104GT-2|ATC Semitec 104NT-4-R025H42G|Generic 3950|NTC 100K beta 3950|Honeywell 100K 135-104LAG-J01|NTC 100K MGB18-104F39050L32|SliceEngineering 450|TDK NTCG104LH104JT1)\\b"
77
		},
78
		"known_extruder_sensor_type": {
79
			"name": "support.type",
80
			"match": "(?i)\\b(MAX6675|MAX31855|MAX31856|MAX31865|PT100 INA826|AD595|AD597|AD8494|AD8495|AD8496|AD8497|AHT10|PT1000|BMP280|BME280|BME680|HTU21D|SHT3X|SI7013|SI7020|SI7021|SHT21|LM75|temperature_mcu|temperature_host|DS18B20)\\b"
81
		},
82
		"known_control_type": {
83
			"name": "support.type",
84
			"match": "(?i)\\b(watermark|pid)\\b"
85
		},
86
		"known_display_type": {
87
			"name": "support.type",
88
			"match": "(?i)\\b(hd44780|st7920|uc1701|ssd1306|sh1106)\\b"
89
		},
90
		"serial": {
91
			"name": "support.type",
92
			"match": "\\/dev\\/serial\\/by-(id|path)\\/[\\d\\w\\/\\-:\\.]+"
93
		},
94
		"pin": {
95
			"patterns": [
96
				{
97
					"name": "support.type",
98
					"match": "(?i)[\\^~!]*(ar|analog)\\d{1,2}"
99
				},
100
				{
101
					"name": "support.type",
102
					"match": "(?i)[\\^~!]*(z:)?[a-z]{1,2}\\d{1,2}(\\.\\d{1,2})?"
103
				}
104
			]
105
		},
106
		"config_line": {
107
			"begin": "^(\\w+)\\s*[:=]\\s*",
108
			"beginCaptures": {
109
				"1": {
110
					"name": "variable.name"
111
				}
112
			},
113
			"end": "$",
114
			"patterns": [
115
				{
116
					"include": "#known_thermistor_type"
117
				},
118
				{
119
					"include": "#known_extruder_sensor_type"
120
				},
121
				{
122
					"include": "#known_control_type"
123
				},
124
				{
125
					"include": "#known_display_type"
126
				},
127
				{
128
					"include": "#pin"
129
				},
130
				{
131
					"include": "#serial"
132
				},
133
				{
134
					"include": "#number"
135
				},
136
				{
137
					"include": "#boolean"
138
				},
139
				{
140
					"include": "#single_line_comment"
141
				}
142
			]
143
		},
144
		"gcode_line": {
145
			"patterns": [
146
				{
147
					"include": "#gcode_command"
148
				},
149
				{
150
					"include": "#gcode_extended_command"
151
				},
152
				{
153
					"include": "#gcode_parameter"
154
				},
155
				{
156
					"include": "#gcode_extended_parameter"
157
				},
158
				{
159
					"include": "#gcode_macro_block"
160
				}
161
			]
162
		},
163
		"gcode_command": {
164
			"begin": "(?ix)^\\s* ([GMTD]) (?![a-z])",
165
			"beginCaptures": {
166
				"1": {
167
					"name": "keyword.operator"
168
				}
169
			},
170
			"end": "\\s",
171
			"patterns": [
172
				{
173
					"include": "#number"
174
				},
175
				{
176
					"include": "#gcode_macro_block"
177
				}
178
			]
179
		},
180
		"gcode_parameter": {
181
			"begin": "(?ix)\\b ([a-z]) (?![a-z])",
182
			"beginCaptures": {
183
				"1": {
184
					"name": "variable.parameter"
185
				}
186
			},
187
			"end": "\\s",
188
			"patterns": [
189
				{
190
					"include": "#number"
191
				},
192
				{
193
					"include": "#gcode_macro_block"
194
				}
195
			]
196
		},
197
		"gcode_extended_command": {
198
			"name": "keyword.operator",
199
			"match": "(?i)^\\s*(ABORT|ACCELEROMETER_DEBUG_READ|ACCELEROMETER_DEBUG_WRITE|ACCELEROMETER_MEASURE|ACCELEROMETER_QUERY|ACCEPT|ACTIVATE_EXTRUDER|ANGLE_CALIBRATE|ANGLE_DEBUG_READ|ANGLE_DEBUG_WRITE|AXIS_TWIST_COMPENSATION_CALIBRATE|BED_MESH_CALIBRATE|BED_MESH_CLEAR|BED_MESH_MAP|BED_MESH_OFFSET|BED_MESH_OUTPUT|BED_MESH_PROFILE|BED_SCREWS_ADJUST|BED_TILT_CALIBRATE|BLTOUCH_DEBUG|BLTOUCH_STORE|CALC_MEASURED_SKEW|CANCEL_PRINT|CLEAR_PAUSE|DELTA_ANALYZE|DELTA_CALIBRATE|DISABLE_FILAMENT_WIDTH_LOG|DISABLE_FILAMENT_WIDTH_SENSOR|DUMP_TMC|ENABLE_FILAMENT_WIDTH_LOG|ENABLE_FILAMENT_WIDTH_SENSOR|ENDSTOP_PHASE_CALIBRATE|EXCLUDE_OBJECT|EXCLUDE_OBJECT_DEFINE|EXCLUDE_OBJECT_END|EXCLUDE_OBJECT_START|FIRMWARE_RESTART|FORCE_MOVE|GET_CURRENT_SKEW|GET_POSITION|GET_RETRACTION|HELP|INIT_TMC|MANUAL_PROBE|MANUAL_STEPPER|MEASURE_AXES_NOISE|PALETTE_CLEAR|PALETTE_CONNECT|PALETTE_CUT|PALETTE_DISCONNECT|PALETTE_SMART_LOAD|PAUSE|PID_CALIBRATE|PROBE|PROBE_ACCURACY|PROBE_CALIBRATE|QUERY_ADC|QUAD_GANTRY_LEVEL|QUERY_ADC|QUERY_ENDSTOPS|QUERY_FILAMENT_SENSOR|QUERY_FILAMENT_WIDTH|QUERY_PROBE|QUERY_RAW_FILAMENT_WIDTH|RESET_FILAMENT_WIDTH_SENSOR|RESET_SMART_EFFECTOR|RESPOND|RESTART|RESTORE_DUAL_CARRIAGE_STATE|RESTORE_GCODE_STATE|RESUME|SAVE_CONFIG|SAVE_DUAL_CARRIAGE_STATE|SAVE_GCODE_STATE|SAVE_VARIABLE|SCREWS_TILT_CALCULATE|SDCARD_LOOP_BEGIN|SDCARD_LOOP_DESIST|SDCARD_LOOP_END|SDCARD_PRINT_FILE|SDCARD_RESET_FILE|SET_DIGIPOT|SET_DISPLAY_GROUP|SET_DUAL_CARRIAGE|SET_EXTRUDER_ROTATION_DISTANCE|SET_EXTRUDER_STEP_DISTANCE|SET_FAN_SPEED|SET_FILAMENT_SENSOR|SET_GCODE_OFFSET|SET_GCODE_VARIABLE|SET_HEATER_TEMPERATURE|SET_IDLE_TIMEOUT|SET_INPUT_SHAPER|SET_KINEMATIC_POSITION|SET_LED|SET_LED_TEMPLATE|SET_PIN|SET_PRESSURE_ADVANCE|SET_PRINT_STATS_INFO|SET_RETRACTION|SET_SERVO|SET_SKEW|SET_SMART_EFFECTOR|SET_STEPPER_ENABLE|SET_TEMPERATURE_FAN_TARGET|SET_TMC_CURRENT|SET_TMC_FIELD|SET_VELOCITY_LIMIT|SET_Z_THERMAL_ADJUST|SHAPER_CALIBRATE|SKEW_PROFILE|STATUS|STEPPER_BUZZ|SYNC_EXTRUDER_MOTION|SYNC_STEPPER_TO_EXTRUDER|TEMPERATURE_WAIT|TEST_RESONANCES|TESTZ|TUNING_TOWER|TURN_OFF_HEATERS|UPDATE_DELAYED_GCODE|Z_ENDSTOP_CALIBRATE|Z_OFFSET_APPLY_ENDSTOP|Z_OFFSET_APPLY_PROBE|Z_TILT_ADJUST)\\s"
200
		},
201
		"gcode_extended_parameter": {
202
			"begin": "(?i)\\b(AC|ACCEL|ACCEL_TO_DECEL|AD|ADAPTIVE|ADAPTIVE_MARGIN|ADVANCE|ANGLE|AXIS|BAND|BD|BLUE|CARRIAGE|CENTER|CHIP|CHIPS|CLEAR|COMMAND|COUNT|CURRENT|CURRENT_LAYER|CYCLE_TIME|DAMPING_RATIO_X|DAMPING_RATIO_Y|DIGIPOT|DIRECTION|DISPLAY|DISTANCE|DURATION|E|ENABLE|ERROR|EXTRUDER|F|FACTOR|FAN|FIELD|FILENAME|FREQ_END|FREQ_START|GREEN|GROUP|HEATER|HOLDCURRENT|HORIZONTAL_MOVE_Z|HZ_PER_SEC|ID|INDEX|INPUT_SHAPING|JSON|LED|LIFT_SPEED|LOAD|MACRO|MAX_DEVIATION|MAX_SMOOTHING|MAX_SPEED|MAXIMUM|METHOD|MIN_SPEED|MINIMUM|MINIMUM_CRUISE_RATIO|MODE|MOTION_QUEUE|MOVE|MOVE_SPEED|MSG|NAME|OUTPUT|P|PARAMETER|PGP|PIN|POINT|POLYGON|PREFIX|PROBE_SPEED|PROFILE|PULLUP|RATE|RECOVERY_TIME|RED|REF_TEMP|REG|REGISTER|REMOVE|RESET|RETRACT_LENGTH|RETRACT_SPEED|S|SAMPLE_COUNT|SAMPLE_RETRACT_DIST|SAMPLES|SAMPLES_RESULT|SAMPLES_TOLERANCE|SAMPLES_TOLERANCE_RETRIES|SAVE|SENSITIVITY|SENSOR|SERVO|SET_POSITION|SHAPER_FREQ_X|SHAPER_FREQ_Y|SHAPER_TYPE|SHAPER_TYPE_X|SHAPER_TYPE_Y|SKIP|SMOOTH_TIME|SPEED|SQUARE_CORNER_VELOCITY|START|STEP_DELTA|STEP_HEIGHT|STEPPER|STOP_ON_ENDSTOP|SYNC|T|TARGET|TEMP_COEFF|TEMPERATURE_FAN|TEMPLATE|TIMEOUT|TOTAL_LAYER|TRANSMIT|TYPE|UNRETRACT_EXTRA_LENGTH|UNRETRACT_SPEED|VAL|VALUE|VARIABLE|VELOCITY|WHITE|WIDTH|WIPER|WRITE_FILE|X|X_ADJUST|XY|XZ|Y|Y_ADJUST|YZ|Z|Z_ADJUST|ZFADE)=",
203
			"beginCaptures": {
204
				"1": {
205
					"name": "variable.parameter"
206
				}
207
			},
208
			"end": "\\s",
209
			"patterns": [
210
				{
211
					"name": "constant.language",
212
					"match": "(?i)(5V|average|ccw|command|copy|cw|echo|error|manual|median|mirror|OD|output_mode_store|pin_down|pin_up|primary|reset|self_test|set_5V_output_mode|set_OD_output_mode|touch_mode)"
213
				},
214
				{
215
					"include": "#number"
216
				},
217
				{
218
					"include": "#gcode_macro_block"
219
				}
220
			]
221
		},
222
		"gcode_macro_block": {
223
			"name": "string.unquoted",
224
			"begin": "{",
225
			"end": "}"
226
		}
227
	},
228
	"scopeName": "source.klipper-config"
229
}
230

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.