 			},{
 				# Set character height or slant
 				name: "meta.set-character-property.ditroff"
-				match: "\\G([HS]\\S*)(?:\\s+(-?\\d+)|\\s+(-23)\\s+(-?[\\d.]+))?\\s*?(?=$|#)"
-				captures:
-					1: name: "keyword.device.control.ditroff"
-					2: name: "constant.numeric.integer.ditroff"
-					3: name: "constant.numeric.ignored.ditroff"
-					4: name: "constant.numeric.float.ditroff"
+				match: "\\G([HS]\\S*)\\s+(?:(-23)\\s+(-?[\\d.]+)|(-?\\d+))?\\s*?(?=$|#)"
+				captures:
+					1: name: "keyword.device.control.ditroff"
+					2: name: "constant.numeric.ignored.ditroff"
+					3: name: "constant.numeric.float.ditroff"
+					4: name: "constant.numeric.integer.ditroff"
 			},{
 				# Unrecognised device control command
 				name: "meta.unknown-command.ditroff"

		},{
			# Print literal characters
			name: "meta.print-character.ditroff"
			match: "(c)\\s*(\\S)|(C)\\s*(\\S+)"
			captures:
				1: name: "entity.name.function.ditroff"
				2: name: "constant.character.ditroff"
				3: name: "entity.name.function.ditroff"
				4: name: "string.unquoted.ditroff"
		},{
			# Print sequence of named glyphs (GNU extension)
			name: "meta.print-text.gnu.ditroff"

		},{
			# Everything else
			name: "meta.graphics.ditroff"
			begin: "^\\s*(D)\\s*([lceafptPR~])"
			end:   "(?=$|#)"
			patterns: [include: "text.roff#number"]
			beginCaptures:
