From 8be8281c2de14f2815078ad331e2b6c8b6742e21 Mon Sep 17 00:00:00 2001 From: Allen Date: Fri, 11 Mar 2022 11:36:57 +0800 Subject: [PATCH] Added support for Visual Studio 2022 --- .editorconfig | 182 ++++++++++++++++++ TODOHighlighter.sln | 15 +- TODOHighlighter/Classifier.cs | 17 +- TODOHighlighter/Consts.cs | 14 ++ TODOHighlighter/Default.cs | 18 -- TODOHighlighter/Definitions.cs | 13 +- TODOHighlighter/Package.cs | 9 +- TODOHighlighter/PrefixManager.cs | 10 +- TODOHighlighter/Properties/AssemblyInfo.cs | 12 +- TODOHighlighter/Provider.cs | 13 +- TODOHighlighter/Style.cs | 17 +- TODOHighlighter/TODOHighlighter.csproj | 14 +- TODOHighlighter/Utils.cs | 44 ++--- TODOHighlighter/source.extension.vsixmanifest | 9 +- 14 files changed, 272 insertions(+), 115 deletions(-) create mode 100644 .editorconfig create mode 100644 TODOHighlighter/Consts.cs delete mode 100644 TODOHighlighter/Default.cs diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..6024ba9 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,182 @@ +# Rules in this file were initially inferred by Visual Studio IntelliCode from the D:\repo\github\VSExtensions\TODOHighlighter codebase based on best match to current usage at 2022/3/11 +# You can modify the rules from these initially generated values to suit your own policies +# You can learn more about editorconfig here: https://docs.microsoft.com/en-us/visualstudio/ide/editorconfig-code-style-settings-reference +[*.cs] + + +#Core editorconfig formatting - indentation + +#use soft tabs (spaces) for indentation +indent_style = space + +#Formatting - indentation options + +#labels are placed at the same indent as the current context +csharp_indent_labels = no_change + +#Formatting - new line options + +#require finally statements to be on a new line after the closing brace +csharp_new_line_before_finally = true +#require members of object initializers to be on the same line +csharp_new_line_before_members_in_object_initializers = false +#require braces to be on a new line for methods, control_blocks, and types (also known as "Allman" style) +csharp_new_line_before_open_brace = methods, control_blocks, types +#require elements of query expression clauses to be on separate lines +csharp_new_line_between_query_expression_clauses = true + +#Formatting - organize using options + +#do not place System.* using directives before other using directives +dotnet_sort_system_directives_first = false + +#Formatting - spacing options + +#require a space before the colon for bases or interfaces in a type declaration +csharp_space_after_colon_in_inheritance_clause = true +#require a space after a keyword in a control flow statement such as a for loop +csharp_space_after_keywords_in_control_flow_statements = true +#require a space before the colon for bases or interfaces in a type declaration +csharp_space_before_colon_in_inheritance_clause = true +#remove space within empty argument list parentheses +csharp_space_between_method_call_empty_parameter_list_parentheses = false +#remove space between method call name and opening parenthesis +csharp_space_between_method_call_name_and_opening_parenthesis = false +#do not place space characters after the opening parenthesis and before the closing parenthesis of a method call +csharp_space_between_method_call_parameter_list_parentheses = false +#remove space within empty parameter list parentheses for a method declaration +csharp_space_between_method_declaration_empty_parameter_list_parentheses = false +#place a space character after the opening parenthesis and before the closing parenthesis of a method declaration parameter list. +csharp_space_between_method_declaration_parameter_list_parentheses = false + +#Formatting - wrapping options + +#leave statements and member declarations on the same line +csharp_preserve_single_line_statements = true + +#Style - Code block preferences + +#prefer no curly braces if allowed +csharp_prefer_braces = false:suggestion + +#Style - expression bodied member options + +#prefer block bodies for constructors +csharp_style_expression_bodied_constructors = false:suggestion +#prefer block bodies for methods +csharp_style_expression_bodied_methods = false:suggestion +#prefer expression-bodied members for properties +csharp_style_expression_bodied_properties = true:suggestion + +#Style - implicit and explicit types + +#prefer var over explicit type in all cases, unless overridden by another code style rule +csharp_style_var_elsewhere = true:suggestion +#prefer var is used to declare variables with built-in system types such as int +csharp_style_var_for_built_in_types = true:suggestion +#prefer var when the type is already mentioned on the right-hand side of a declaration expression +csharp_style_var_when_type_is_apparent = true:suggestion + +#Style - language keyword and framework type options + +#prefer the language keyword for local variables, method parameters, and class members, instead of the type name, for types that have a keyword to represent them +dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion + +#Style - modifier options + +#prefer accessibility modifiers to be declared except for public interface members. This will currently not differ from always and will act as future proofing for if C# adds default interface methods. +dotnet_style_require_accessibility_modifiers = for_non_interface_members:suggestion + +#Style - Modifier preferences + +#when this rule is set to a list of modifiers, prefer the specified ordering. +csharp_preferred_modifier_order = internal,public,private,protected,static,readonly,sealed,override,async:suggestion + +#Style - qualification options + +#prefer fields not to be prefaced with this. or Me. in Visual Basic +dotnet_style_qualification_for_field = false:suggestion +#prefer methods not to be prefaced with this. or Me. in Visual Basic +dotnet_style_qualification_for_method = false:suggestion +csharp_using_directive_placement = outside_namespace:silent +csharp_prefer_simple_using_statement = true:suggestion +csharp_style_namespace_declarations = block_scoped:silent +csharp_style_expression_bodied_operators = false:silent +csharp_style_expression_bodied_indexers = true:silent +csharp_style_expression_bodied_accessors = true:silent +csharp_style_expression_bodied_lambdas = true:silent +csharp_style_expression_bodied_local_functions = false:silent +csharp_style_implicit_object_creation_when_type_is_apparent = true:suggestion +csharp_style_inlined_variable_declaration = true:suggestion +csharp_style_deconstructed_variable_declaration = true:suggestion +csharp_style_allow_embedded_statements_on_same_line_experimental = true:silent +csharp_style_allow_blank_lines_between_consecutive_braces_experimental = true:silent +csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental = true:silent + +[*.{cs,vb}] +dotnet_style_operator_placement_when_wrapping = beginning_of_line +tab_width = 4 +indent_size = 4 +end_of_line = crlf +dotnet_style_coalesce_expression = true:suggestion +dotnet_style_null_propagation = true:suggestion +dotnet_style_prefer_is_null_check_over_reference_equality_method = true:suggestion +[*.{cs,vb}] +#### Naming styles #### + +# Naming rules + +dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion +dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface +dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i + +dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion +dotnet_naming_rule.types_should_be_pascal_case.symbols = types +dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case + +dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion +dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members +dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case + +# Symbol specifications + +dotnet_naming_symbols.interface.applicable_kinds = interface +dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.interface.required_modifiers = + +dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum +dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.types.required_modifiers = + +dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method +dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.non_field_members.required_modifiers = + +# Naming styles + +dotnet_naming_style.begins_with_i.required_prefix = I +dotnet_naming_style.begins_with_i.required_suffix = +dotnet_naming_style.begins_with_i.word_separator = +dotnet_naming_style.begins_with_i.capitalization = pascal_case + +dotnet_naming_style.pascal_case.required_prefix = +dotnet_naming_style.pascal_case.required_suffix = +dotnet_naming_style.pascal_case.word_separator = +dotnet_naming_style.pascal_case.capitalization = pascal_case + +dotnet_naming_style.pascal_case.required_prefix = +dotnet_naming_style.pascal_case.required_suffix = +dotnet_naming_style.pascal_case.word_separator = +dotnet_naming_style.pascal_case.capitalization = pascal_case +dotnet_style_object_initializer = true:suggestion +dotnet_style_prefer_simplified_boolean_expressions = true:suggestion +dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion +dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion +dotnet_style_predefined_type_for_member_access = true:silent +dotnet_style_require_accessibility_modifiers = for_non_interface_members:suggestion +dotnet_style_allow_multiple_blank_lines_experimental = true:silent +dotnet_style_allow_statement_immediately_after_block_experimental = true:silent +dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:silent +dotnet_style_qualification_for_field = false:suggestion +dotnet_style_qualification_for_method = false:suggestion +indent_style = tab diff --git a/TODOHighlighter.sln b/TODOHighlighter.sln index 28f726f..eb43a61 100644 --- a/TODOHighlighter.sln +++ b/TODOHighlighter.sln @@ -1,20 +1,31 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.29503.13 +# Visual Studio Version 17 +VisualStudioVersion = 17.1.32228.430 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TODOHighlighter", "TODOHighlighter\TODOHighlighter.csproj", "{97ECCC7F-8DFC-4ED2-853D-0C2BCF2AE79E}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{F7F55935-3FAB-48FA-A3DD-7F6016980FC5}" + ProjectSection(SolutionItems) = preProject + .editorconfig = .editorconfig + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU + Debug|x86 = Debug|x86 Release|Any CPU = Release|Any CPU + Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {97ECCC7F-8DFC-4ED2-853D-0C2BCF2AE79E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {97ECCC7F-8DFC-4ED2-853D-0C2BCF2AE79E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {97ECCC7F-8DFC-4ED2-853D-0C2BCF2AE79E}.Debug|x86.ActiveCfg = Debug|x86 + {97ECCC7F-8DFC-4ED2-853D-0C2BCF2AE79E}.Debug|x86.Build.0 = Debug|x86 {97ECCC7F-8DFC-4ED2-853D-0C2BCF2AE79E}.Release|Any CPU.ActiveCfg = Release|Any CPU {97ECCC7F-8DFC-4ED2-853D-0C2BCF2AE79E}.Release|Any CPU.Build.0 = Release|Any CPU + {97ECCC7F-8DFC-4ED2-853D-0C2BCF2AE79E}.Release|x86.ActiveCfg = Release|x86 + {97ECCC7F-8DFC-4ED2-853D-0C2BCF2AE79E}.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/TODOHighlighter/Classifier.cs b/TODOHighlighter/Classifier.cs index e7ee6ff..df949f5 100644 --- a/TODOHighlighter/Classifier.cs +++ b/TODOHighlighter/Classifier.cs @@ -3,14 +3,10 @@ using Microsoft.VisualStudio.Text.Classification; using System; using System.Collections.Generic; -using System.Linq; -using System.Text; using System.Text.RegularExpressions; -using System.Threading.Tasks; namespace TODOHighlighter { - internal class Classifier : IClassifier { public event EventHandler ClassificationChanged; @@ -25,7 +21,7 @@ internal Classifier(IClassificationTypeRegistryService registry, IClassifier cla _isClassificationRunning = false; _classifier = classifier; - Comment_Todo = registry.GetClassificationType("Comment.Todo"); + Comment_Todo = registry.GetClassificationType(Consts.ClassificationTypName); } public IList GetClassificationSpans(SnapshotSpan span) @@ -76,7 +72,7 @@ private IList Classify(SnapshotSpan span) goto SkipComment; // Prevent recursive matching fragment of comment as another comment. - if (Utils.IsClassifiedAs(Classifications, new[] { "Comment.Default" }))//, "Comment.Triple" })) + if (Utils.IsClassifiedAs(Classifications, new[] { "Comment.Default" })) //, "Comment.Triple" })) goto SkipComment; } @@ -96,7 +92,7 @@ private IList Classify(SnapshotSpan span) var commentText = match.Groups["Comment"].Value; int commentStart = span.Start + offset + match.Groups["Comment"].Index; - + var skipInlineMatching = false; for (int i = 0; i < PrefixManager.Count; i++) @@ -110,7 +106,6 @@ private IList Classify(SnapshotSpan span) ( SlashesStart, commentText.Length + SlashesLength - ) ), Comment_Todo)); @@ -129,9 +124,9 @@ private IList Classify(SnapshotSpan span) SkipComment: currentOffset = - match.Groups["Slashes"].Index + match.Groups["Slashes"].Index + match.Groups["Slashes"].Length - ; + ; text = text.Substring(currentOffset); offset += currentOffset; @@ -141,4 +136,4 @@ private IList Classify(SnapshotSpan span) return spans; } } -} +} \ No newline at end of file diff --git a/TODOHighlighter/Consts.cs b/TODOHighlighter/Consts.cs new file mode 100644 index 0000000..a8bb2fd --- /dev/null +++ b/TODOHighlighter/Consts.cs @@ -0,0 +1,14 @@ +using Color = System.Windows.Media.Color; + +namespace TODOHighlighter +{ + internal static class Consts + { + internal const string ClassificationTypName = "Comment.Todo"; + + internal static class Colors + { + internal static readonly Color Todo = Color.FromRgb(255, 0, 255); + } + } +} \ No newline at end of file diff --git a/TODOHighlighter/Default.cs b/TODOHighlighter/Default.cs deleted file mode 100644 index e4bc6e4..0000000 --- a/TODOHighlighter/Default.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace TODOHighlighter -{ - using Color = System.Windows.Media.Color; - - internal static class Default - { - internal static class Colors - { - internal static readonly Color Todo = Color.FromRgb(255, 0, 255); - } - } -} diff --git a/TODOHighlighter/Definitions.cs b/TODOHighlighter/Definitions.cs index 1e7a040..2430600 100644 --- a/TODOHighlighter/Definitions.cs +++ b/TODOHighlighter/Definitions.cs @@ -1,19 +1,12 @@ using Microsoft.VisualStudio.Text.Classification; using Microsoft.VisualStudio.Utilities; -using System; -using System.Collections.Generic; using System.ComponentModel.Composition; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace TODOHighlighter { internal static class Definitions { - [Export(typeof(ClassificationTypeDefinition))] - [Name("Comment.Todo")] - private static readonly ClassificationTypeDefinition - Definition_Comment_Todo; + [Export(typeof(ClassificationTypeDefinition))] [Name(Consts.ClassificationTypName)] + private static readonly ClassificationTypeDefinition Definition_Comment_Todo; } -} +} \ No newline at end of file diff --git a/TODOHighlighter/Package.cs b/TODOHighlighter/Package.cs index fe6b8bd..4edc3fc 100644 --- a/TODOHighlighter/Package.cs +++ b/TODOHighlighter/Package.cs @@ -9,9 +9,14 @@ namespace TODOHighlighter { [PackageRegistration(UseManagedResourcesOnly = true, AllowsBackgroundLoading = true)] [ProvideAutoLoad(VSConstants.UICONTEXT.ShellInitialized_string, PackageAutoLoadFlags.BackgroundLoad)] - [Guid("f3bd3bea-d1a9-4140-ad18-adc750d25b06")] + [Guid(Package.PackageGuidString)] public sealed class Package : AsyncPackage { + /// + /// TODOHighlighter GUID string. + /// + public const string PackageGuidString = "f3bd3bea-d1a9-4140-ad18-adc750d25b06"; + protected override async Task InitializeAsync(CancellationToken token, IProgress progress) { Project.Package = this; @@ -25,4 +30,4 @@ internal static class Project { internal static Package Package; } -} +} \ No newline at end of file diff --git a/TODOHighlighter/PrefixManager.cs b/TODOHighlighter/PrefixManager.cs index 5c7e238..d28b1af 100644 --- a/TODOHighlighter/PrefixManager.cs +++ b/TODOHighlighter/PrefixManager.cs @@ -1,8 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using System.Collections.Generic; namespace TODOHighlighter { @@ -46,7 +42,7 @@ public static string GetPrefix(int index) private static void InitDefaults() { - PrefixManager.Add("todo", "temp", "tmp", "fixme"); + Add("todo", "temp", "tmp", "fixme"); } } -} +} \ No newline at end of file diff --git a/TODOHighlighter/Properties/AssemblyInfo.cs b/TODOHighlighter/Properties/AssemblyInfo.cs index a8308e7..28f1ba6 100644 --- a/TODOHighlighter/Properties/AssemblyInfo.cs +++ b/TODOHighlighter/Properties/AssemblyInfo.cs @@ -1,5 +1,4 @@ using System.Reflection; -using System.Runtime.CompilerServices; using System.Runtime.InteropServices; // General Information about an assembly is controlled through the following @@ -7,12 +6,17 @@ // associated with an assembly. [assembly: AssemblyTitle("TODOHighlighter")] [assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] +#if DEBUG +[assembly: AssemblyConfiguration("Debug")] +#else +[assembly: AssemblyConfiguration("Release")] +#endif [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("TODOHighlighter")] [assembly: AssemblyCopyright("")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] +[assembly: AssemblyMetadata("RepositoryUrl", "https://github.com/HumanGamer/TODOHighlighter")] // Setting ComVisible to false makes the types in this assembly not visible // to COM components. If you need to access a type in this assembly from @@ -29,5 +33,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] +[assembly: AssemblyVersion("2.0.0.0")] +[assembly: AssemblyFileVersion("2.0.0.0")] \ No newline at end of file diff --git a/TODOHighlighter/Provider.cs b/TODOHighlighter/Provider.cs index 59baae5..57ae4c5 100644 --- a/TODOHighlighter/Provider.cs +++ b/TODOHighlighter/Provider.cs @@ -1,23 +1,16 @@ using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Classification; using Microsoft.VisualStudio.Utilities; -using System; -using System.Collections.Generic; using System.ComponentModel.Composition; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace TODOHighlighter { [Export(typeof(IClassifierProvider)), ContentType("C/C++"), ContentType("CSharp"), ContentType("JavaScript"), ContentType("TypeScript")] internal sealed class Provider : IClassifierProvider { - [Import] - private readonly IClassificationTypeRegistryService ClassificationTypeRegistryService; + [Import] private readonly IClassificationTypeRegistryService ClassificationTypeRegistryService; - [Import] - private readonly IClassifierAggregatorService ClassifierAggregatorService; + [Import] private readonly IClassifierAggregatorService ClassifierAggregatorService; private static bool _ignoreRequest; @@ -45,4 +38,4 @@ public IClassifier GetClassifier(ITextBuffer textBuffer) } } } -} +} \ No newline at end of file diff --git a/TODOHighlighter/Style.cs b/TODOHighlighter/Style.cs index 4996747..151913c 100644 --- a/TODOHighlighter/Style.cs +++ b/TODOHighlighter/Style.cs @@ -1,33 +1,26 @@ using Microsoft.VisualStudio.Language.StandardClassification; using Microsoft.VisualStudio.Text.Classification; using Microsoft.VisualStudio.Utilities; -using System; -using System.Collections.Generic; using System.ComponentModel.Composition; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace TODOHighlighter { [Export(typeof(EditorFormatDefinition))] - [ClassificationType(ClassificationTypeNames = "Comment.Todo")] - [Name("Comment.Todo")] + [ClassificationType(ClassificationTypeNames = Consts.ClassificationTypName)] + [Name(Consts.ClassificationTypName)] [BaseDefinition(PredefinedClassificationTypeNames.Comment)] [UserVisible(true)] [Order(After = PredefinedClassificationTypeNames.Comment)] [Order(After = "XML Doc Comment")] - internal sealed class Format_Comment_Todo - : - ClassificationFormatDefinition + internal sealed class Format_Comment_Todo : ClassificationFormatDefinition { public Format_Comment_Todo() { DisplayName = "Todo Comment"; BackgroundCustomizable = false; - ForegroundColor = Default.Colors.Todo; + ForegroundColor = Consts.Colors.Todo; IsBold = true; } } -} +} \ No newline at end of file diff --git a/TODOHighlighter/TODOHighlighter.csproj b/TODOHighlighter/TODOHighlighter.csproj index 99e4aa9..ece34f5 100644 --- a/TODOHighlighter/TODOHighlighter.csproj +++ b/TODOHighlighter/TODOHighlighter.csproj @@ -1,15 +1,12 @@  - 16.0 + 17.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - Logo.ico + Logo.ico Debug AnyCPU 2.0 @@ -50,7 +47,7 @@ - + @@ -67,10 +64,11 @@ + - - + + diff --git a/TODOHighlighter/Utils.cs b/TODOHighlighter/Utils.cs index 0b25b7b..0a9634f 100644 --- a/TODOHighlighter/Utils.cs +++ b/TODOHighlighter/Utils.cs @@ -1,42 +1,30 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using System.Linq; namespace TODOHighlighter { internal static class Utils { // Check if $Source classifications contains any classification from $Search. - internal static bool IsClassifiedAs - ( - string[] Source, - string[] Search - ) + internal static bool IsClassifiedAs(string[] source, string[] search) { return ( - Source.Length > 0 - && Search.Length > 0 + source.Length > 0 + && search.Length > 0 && ( - from SourceClassification in Source - from SearchClassification in Search - - let SourceEntry = SourceClassification.ToLower() - let SearchEntry = SearchClassification.ToLower() - - where - ( - SourceEntry == SearchEntry - || SourceEntry.StartsWith(SearchEntry + ".") - ) - - select SourceEntry + from SourceClassification in source + from SearchClassification in search + let SourceEntry = SourceClassification.ToLower() + let SearchEntry = SearchClassification.ToLower() + where + ( + SourceEntry == SearchEntry + || SourceEntry.StartsWith(SearchEntry + '.') ) - - .Any() + select SourceEntry + ) + .Any() ); } } -} +} \ No newline at end of file diff --git a/TODOHighlighter/source.extension.vsixmanifest b/TODOHighlighter/source.extension.vsixmanifest index 0e9d6c9..3af297d 100644 --- a/TODOHighlighter/source.extension.vsixmanifest +++ b/TODOHighlighter/source.extension.vsixmanifest @@ -1,22 +1,25 @@ - + TODO Highlighter Highlights TODO:, FIXME:, TEMP:, and TMP: prefixed comments in C/C++, Javascript and C# Credit to: https://github.com/Benio101/Color.Comment for some of the code. + https://github.com/HumanGamer/TODOHighlighter License.txt Logo.ico C, C++, C#, CSharp, CS, JavaScript, Comment, TODO, FIXME, TEMP, TMP, Highlight, Hightlighter - + + amd64 + - +