diff --git a/vscode-extension/package.json b/vscode-extension/package.json index a0081910..6e53ea94 100644 --- a/vscode-extension/package.json +++ b/vscode-extension/package.json @@ -684,6 +684,35 @@ } } } + ], + "languages": [ + { + "id": "ilspy-code-cs", + "aliases": [ + "ILSpy (C#)" + ], + "icon": { + "light": "resources/il-spy-modern-icon.svg", + "dark": "resources/il-spy-modern-icon-dark.svg" + } + }, + { + "id": "ilspy-code-il", + "aliases": [ + "ILSpy (IL)" + ], + "icon": { + "light": "resources/il-spy-modern-icon.svg", + "dark": "resources/il-spy-modern-icon-dark.svg" + } + } + ], + "grammars": [ + { + "language": "ilspy-code-cs", + "scopeName": "source.ilspy-code-cs", + "path": "resources/ilspy-code-cs.tmLanguage.json" + } ] }, "scripts": { diff --git a/vscode-extension/resources/il-spy-modern-icon-dark.svg b/vscode-extension/resources/il-spy-modern-icon-dark.svg new file mode 100644 index 00000000..99a06359 --- /dev/null +++ b/vscode-extension/resources/il-spy-modern-icon-dark.svg @@ -0,0 +1,104 @@ + + + + + + \ No newline at end of file diff --git a/vscode-extension/resources/ilspy-code-cs.tmLanguage.json b/vscode-extension/resources/ilspy-code-cs.tmLanguage.json new file mode 100644 index 00000000..b4883dd6 --- /dev/null +++ b/vscode-extension/resources/ilspy-code-cs.tmLanguage.json @@ -0,0 +1,8 @@ +{ + "scopeName": "source.ilspy-code-cs", + "patterns": [ + { + "include": "source.cs" + } + ] +} \ No newline at end of file diff --git a/vscode-extension/src/decompiler/languageInfos.ts b/vscode-extension/src/decompiler/languageInfos.ts index c5ef7998..a29bda8c 100644 --- a/vscode-extension/src/decompiler/languageInfos.ts +++ b/vscode-extension/src/decompiler/languageInfos.ts @@ -1,5 +1,8 @@ import { LanguageName } from "../protocol/LanguageName"; +const ILSPY_CODE_CS_LANG = "ilspy-code-cs"; +const ILSPY_CODE_IL_LANG = "ilspy-code-il"; + export interface LanguageInfo { name: LanguageName; displayName: string; @@ -7,91 +10,95 @@ export interface LanguageInfo { } export const languageInfos = createLanguageMap([ - { name: LanguageName.IL, displayName: "IL", vsLanguageMode: "il" }, + { + name: LanguageName.IL, + displayName: "IL", + vsLanguageMode: ILSPY_CODE_IL_LANG, + }, { name: LanguageName.CSharp_1, displayName: "C# 1.0 / VS .NET", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_2, displayName: "C# 2.0 / VS 2005", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_3, displayName: "C# 3.0 / VS 2008", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_4, displayName: "C# 4.0 / VS 2010", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_5, displayName: "C# 5.0 / VS 2012", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_6, displayName: "C# 6.0 / VS 2015", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_7, displayName: "C# 7.0 / VS 2017", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_7_1, displayName: "C# 7.1 / VS 2017.3", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_7_2, displayName: "C# 7.2 / VS 2017.4", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_7_3, displayName: "C# 7.3 / VS 2017.7", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_8, displayName: "C# 8.0 / VS 2019", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_9, displayName: "C# 9.0 / VS 2019.8", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_10, displayName: "C# 10.0 / VS 2022", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_11, displayName: "C# 11.0 / VS 2022.4", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_12, displayName: "C# 12.0 / VS 2022.8", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_13, displayName: "C# 13.0 / VS 2022.12", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, { name: LanguageName.CSharp_14, displayName: "C# 14.0 / VS 2026", - vsLanguageMode: "csharp", + vsLanguageMode: ILSPY_CODE_CS_LANG, }, ]);