diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8c05a649a6..fd30fa960d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -75,6 +75,8 @@
 
 ## Themes
 
+- Patched/improved themes for better Manpage syntax highlighting support, see #2994 (@keith-hall).
+
 ## `bat` as a library
 
 - Changes to `syntax_mapping::SyntaxMapping` #2755 (@cyqsimon)
diff --git a/assets/patches/1337.tmTheme.patch b/assets/patches/1337.tmTheme.patch
new file mode 100644
index 0000000000..b927a74f41
--- /dev/null
+++ b/assets/patches/1337.tmTheme.patch
@@ -0,0 +1,22 @@
+diff --git themes/1337-Scheme/1337.tmTheme themes/1337-Scheme/1337.tmTheme
+index fdff5bf..8cfc888 100644
+--- themes/1337-Scheme/1337.tmTheme
++++ themes/1337-Scheme/1337.tmTheme
+@@ -280,7 +280,7 @@ SOFTWARE.
+ 			<key>name</key>
+ 			<string>PHP Namespaces</string>
+ 			<key>scope</key>
+-			<string>support.other.namespace, entity.name.type.namespace</string>
++			<string>support.other.namespace, entity.name.type.namespace, entity.name</string>
+ 			<key>settings</key>
+ 			<dict>
+ 				<key>foreground</key>
+@@ -561,7 +561,7 @@ SOFTWARE.
+ 		    <key>name</key>
+ 		    <string>diff.header</string>
+ 		    <key>scope</key>
+-		    <string>meta.diff, meta.diff.header</string>
++		    <string>meta.diff, meta.diff.header, markup.heading</string>
+ 		    <key>settings</key>
+ 		    <dict>
+ 			<key>foreground</key>
diff --git a/assets/patches/OneHalfDark.tmTheme.patch b/assets/patches/OneHalfDark.tmTheme.patch
new file mode 100644
index 0000000000..1ac3e5e8d4
--- /dev/null
+++ b/assets/patches/OneHalfDark.tmTheme.patch
@@ -0,0 +1,47 @@
+diff --git themes/onehalf/sublimetext/OneHalfDark.tmTheme themes/onehalf/sublimetext/OneHalfDark.tmTheme
+index b16050c..b021071 100644
+--- themes/onehalf/sublimetext/OneHalfDark.tmTheme
++++ themes/onehalf/sublimetext/OneHalfDark.tmTheme
+@@ -28,7 +28,7 @@
+ <plist version="1.0">
+ <dict>
+ 	<key>name</key>
+-	<string>OneHalfLight</string>
++	<string>OneHalfDark</string>
+ 	<key>semanticClass</key>
+ 	<string>theme.dark.one_half_dark</string>
+ 	<key>uuid</key>
+@@ -155,7 +155,7 @@
+ 			<key>name</key>
+ 			<string>Classes</string>
+ 			<key>scope</key>
+-			<string>support.class, entity.name.class, entity.name.type.class</string>
++			<string>support.class, entity.name.class, entity.name.type.class, entity.name</string>
+ 			<key>settings</key>
+ 			<dict>
+ 				<key>foreground</key>
+@@ -188,7 +188,7 @@
+ 			<key>name</key>
+ 			<string>Storage</string>
+ 			<key>scope</key>
+-			<string>storage</string>
++			<string>storage, meta.mapping.key string</string>
+ 			<key>settings</key>
+ 			<dict>
+ 				<key>foreground</key>
+@@ -309,7 +309,7 @@
+ 			<key>name</key>
+ 			<string>Markdown: Headings</string>
+ 			<key>scope</key>
+-			<string>markup.heading punctuation.definition.heading, entity.name.section</string>
++			<string>markup.heading punctuation.definition.heading, entity.name.section, markup.heading - text.html.markdown</string>
+ 			<key>settings</key>
+ 			<dict>
+ 				<key>fontStyle</key>
+@@ -660,4 +660,4 @@
+ 		</dict>
+ 	</array>
+ </dict>
+-</plist>
+\ No newline at end of file
++</plist>
diff --git a/assets/patches/TwoDark.tmTheme.patch b/assets/patches/TwoDark.tmTheme.patch
index 05f1fc6990..b6570fbc7f 100644
--- a/assets/patches/TwoDark.tmTheme.patch
+++ b/assets/patches/TwoDark.tmTheme.patch
@@ -2,6 +2,24 @@ diff --git themes/TwoDark/TwoDark.tmTheme themes/TwoDark/TwoDark.tmTheme
 index 87fd358..56376d3 100644
 --- themes/TwoDark/TwoDark.tmTheme
 +++ themes/TwoDark/TwoDark.tmTheme
+@@ -125,7 +125,7 @@
+ 			<key>name</key>
+ 			<string>Classes</string>
+ 			<key>scope</key>
+-			<string>support.class, entity.name.class, entity.name.type.class</string>
++			<string>support.class, entity.name.class, entity.name.type.class, entity.name</string>
+ 			<key>settings</key>
+ 			<dict>
+ 				<key>foreground</key>
+@@ -290,7 +290,7 @@
+ 			<key>name</key>
+ 			<string>Headings</string>
+ 			<key>scope</key>
+-			<string>markup.heading punctuation.definition.heading, entity.name.section</string>
++			<string>markup.heading punctuation.definition.heading, entity.name.section, markup.heading - text.html.markdown</string>
+ 			<key>settings</key>
+ 			<dict>
+ 				<key>fontStyle</key>
 @@ -533,7 +533,7 @@
  			<key>name</key>
  			<string>Json key</string>
diff --git a/assets/themes/ansi.tmTheme b/assets/themes/ansi.tmTheme
index 957f42bba6..f103b418de 100644
--- a/assets/themes/ansi.tmTheme
+++ b/assets/themes/ansi.tmTheme
@@ -69,7 +69,7 @@
                 <key>name</key>
                 <string>Labels</string>
                 <key>scope</key>
-                <string>entity.name.label</string>
+                <string>entity.name.label, variable.parameter</string>
                 <key>settings</key>
                 <dict>
                     <key>foreground</key>
@@ -80,7 +80,7 @@
                 <key>name</key>
                 <string>Classes</string>
                 <key>scope</key>
-                <string>support.class, entity.name.class, entity.name.type.class</string>
+                <string>support.class, entity.name.class, entity.name.type.class, entity.name</string>
                 <key>settings</key>
                 <dict>
                     <key>foreground</key>
@@ -234,7 +234,7 @@
                 <key>name</key>
                 <string>Headings</string>
                 <key>scope</key>
-                <string>markup.heading punctuation.definition.heading, entity.name.section</string>
+                <string>markup.heading punctuation.definition.heading, entity.name.section, markup.heading - text.html.markdown</string>
                 <key>settings</key>
                 <dict>
                     <key>fontStyle</key>
diff --git a/assets/themes/base16-256.tmTheme b/assets/themes/base16-256.tmTheme
index a4547e564d..b64b444e93 100644
--- a/assets/themes/base16-256.tmTheme
+++ b/assets/themes/base16-256.tmTheme
@@ -257,7 +257,7 @@
                 <key>name</key>
                 <string>Tags</string>
                 <key>scope</key>
-                <string>entity.name.tag</string>
+                <string>entity.name.tag, entity.name</string>
                 <key>settings</key>
                 <dict>
                     <key>foreground</key>
@@ -312,7 +312,7 @@
                 <key>name</key>
                 <string>Headings</string>
                 <key>scope</key>
-                <string>markup.heading punctuation.definition.heading, entity.name.section</string>
+                <string>markup.heading punctuation.definition.heading, entity.name.section, markup.heading - text.html.markdown</string>
                 <key>settings</key>
                 <dict>
                     <key>fontStyle</key>
diff --git a/assets/themes/base16.tmTheme b/assets/themes/base16.tmTheme
index 7b030068ed..b49f81175d 100644
--- a/assets/themes/base16.tmTheme
+++ b/assets/themes/base16.tmTheme
@@ -256,7 +256,7 @@
                 <key>name</key>
                 <string>Tags</string>
                 <key>scope</key>
-                <string>entity.name.tag</string>
+                <string>entity.name.tag, entity.name</string>
                 <key>settings</key>
                 <dict>
                     <key>foreground</key>
@@ -311,7 +311,7 @@
                 <key>name</key>
                 <string>Headings</string>
                 <key>scope</key>
-                <string>markup.heading punctuation.definition.heading, entity.name.section</string>
+                <string>markup.heading punctuation.definition.heading, entity.name.section, markup.heading - text.html.markdown</string>
                 <key>settings</key>
                 <dict>
                     <key>fontStyle</key>