 			# Directives with arguments
 			{
 				name: "meta.other.directive.restructuredtext"
-				match: "^\\s*(\\.\\.)\\s+([A-z][-A-z0-9_]+)(::)\\s+(.+?)\\s*$"
+				match: "^\\s*(\\.\\.)\\s+([A-z][-A-z0-9_]+)(::)\\s+(.+?)(?=\\s*$)"
 				captures:
 					1: name: "punctuation.definition.directive.restructuredtext"
 					2: name: "support.directive.restructuredtext"

				name: "meta.table.grid-table.restructuredtext"
				contentName: "markup.other.table.restructuredtext"
				begin: "(?=((\\+-[+-]+))|((\\+=[+=]+))\\s*$)"
				end:   "^\\s*$"
				patterns: [
					{include: "#table-borders"}
					{include: "#inlines"}

			{
				contentName: "source.embedded.java"
				patterns: [include: "source.java"]
				begin: "^([ \\t]*)(\\.\\.)\\s+(code(?:-block)?)(::)\\s+(java)(?=\\s*$)"
				end:   "^(?!\\s*$|\\1[ \\t]+\\S)"
				beginCaptures:
					2: name: "punctuation.definition.directive.restructuredtext"
