diff --git a/tabby-local/src/icons/vs.svg b/tabby-local/src/icons/vs.svg
deleted file mode 100644
index e7ae716d..00000000
--- a/tabby-local/src/icons/vs.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/tabby-local/src/icons/vs2017.svg b/tabby-local/src/icons/vs2017.svg
new file mode 100644
index 00000000..421fe0ff
--- /dev/null
+++ b/tabby-local/src/icons/vs2017.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/tabby-local/src/icons/vs2019.svg b/tabby-local/src/icons/vs2019.svg
new file mode 100644
index 00000000..3fd566d0
--- /dev/null
+++ b/tabby-local/src/icons/vs2019.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/tabby-local/src/icons/vs2022.svg b/tabby-local/src/icons/vs2022.svg
new file mode 100644
index 00000000..699f27bb
--- /dev/null
+++ b/tabby-local/src/icons/vs2022.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/tabby-local/src/shells/vs.ts b/tabby-local/src/shells/vs.ts
index 78f3b874..addf52d9 100644
--- a/tabby-local/src/shells/vs.ts
+++ b/tabby-local/src/shells/vs.ts
@@ -5,6 +5,14 @@ import { HostAppService, Platform } from 'tabby-core'
import { ShellProvider, Shell } from '../api'
+/* eslint-disable quote-props */
+const vsIconMap: Record = {
+ '2017': require('../icons/vs2017.svg'),
+ '2019': require('../icons/vs2019.svg'),
+ '2022': require('../icons/vs2022.svg'),
+}
+/* eslint-enable quote-props */
+
/** @hidden */
@Injectable()
export class VSDevToolsProvider extends ShellProvider {
@@ -40,7 +48,7 @@ export class VSDevToolsProvider extends ShellProvider {
name: `Developer Prompt for VS ${version}`,
command: 'cmd.exe',
args: ['/k', bat],
- icon: require('../icons/vs.svg'),
+ icon: vsIconMap[version],
env: {},
})
}