Skip to content

Instantly share code, notes, and snippets.

@smdn
Created February 4, 2024 08:20
Show Gist options
  • Save smdn/18add4af1c3ca8cb24283208d1779bcf to your computer and use it in GitHub Desktop.
Save smdn/18add4af1c3ca8cb24283208d1779bcf to your computer and use it in GitHub Desktop.
Smdn.LibHighlightSharp 1.2.0 Release Notes
diff --git a/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-net6.0.apilist.cs b/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-net6.0.apilist.cs
index e974185..2e9e46c 100644
--- a/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-net6.0.apilist.cs
+++ b/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-net6.0.apilist.cs
@@ -1,222 +1,222 @@
-// Smdn.LibHighlightSharp.dll (Smdn.LibHighlightSharp-1.1.4)
+// Smdn.LibHighlightSharp.dll (Smdn.LibHighlightSharp-1.2.0)
// Name: Smdn.LibHighlightSharp
-// AssemblyVersion: 1.1.4.0
-// InformationalVersion: 1.1.4+19b7f885037f82899edcb6587b19df469f5a0322
+// AssemblyVersion: 1.2.0.0
+// InformationalVersion: 1.2.0+a8211defa9884dc158cae8b9627dad69379698bb
// TargetFramework: .NETCoreApp,Version=v6.0
// Configuration: Release
// Referenced assemblies:
// Microsoft.CSharp, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// Smdn.LibHighlightSharp.Bindings, Version=3.36.0.0, Culture=neutral
// System.Collections, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Linq, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Linq.Expressions, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Runtime.InteropServices.RuntimeInformation, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Threading, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Xml.ReaderWriter, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Xml.XDocument, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// Embedded resources:
// null.lang (450 bytes, Embedded, ContainedInManifestFile)
// null.theme (774 bytes, Embedded, ContainedInManifestFile)
#nullable enable annotations
using System;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
using System.Xml.Linq;
using Smdn.LibHighlightSharp;
using Smdn.LibHighlightSharp.Bindings;
namespace Smdn.LibHighlightSharp {
public enum GeneratorOutputType : int {
BBCode = 8,
EscapeSequencesAnsi = 5,
EscapeSequencesTrueColor = 11,
EscapeSequencesXterm256 = 6,
Html = 0,
LaTeX = 3,
Odt = 10,
Pango = 9,
Rtf = 4,
Svg = 7,
TeX = 2,
Xhtml = 1,
}
public enum HighlightElementType : int {
Default = 1,
ErrorMessage = 20,
EscapedCharacter = 6,
HoverText = 18,
KeywordA = 12,
KeywordB = 13,
KeywordC = 14,
KeywordD = 15,
KeywordE = 16,
KeywordF = 17,
LineNumber = 9,
MultiLineComment = 5,
Number = 3,
Operator = 10,
Other = 0,
Preprocessor = 7,
PreprocessorString = 8,
SingleLineComment = 4,
StringInterpolation = 11,
Strings = 2,
SyntaxError = 19,
}
public class Highlight : IDisposable {
public static readonly Version MinimumVersionSupportingBase16Themes; // = "3.44"
public static readonly Version MinimumVersionSupportingGuessFileType; // = "3.51"
public static readonly Version MinimumVersionSupportingLoadFileTypesConfig; // = "3.51"
public static string? GeneratorInformationalVersion { get; }
public static DataDir? CreateDefaultDataDir() {}
public Highlight(DataDir dataDir, GeneratorOutputType outputType = GeneratorOutputType.Html, bool shouldDisposeDataDir = false) {}
public Highlight(DataDir dataDirForSyntaxes, DataDir dataDirForThemes, GeneratorOutputType outputType = GeneratorOutputType.Html, bool shouldDisposeDataDir = false) {}
public Highlight(GeneratorOutputType outputType = GeneratorOutputType.Html) {}
public Highlight(string dataDir, GeneratorOutputType outputType = GeneratorOutputType.Html) {}
public Highlight(string dataDirForSyntaxes, string dataDirForThemes, GeneratorOutputType outputType = GeneratorOutputType.Html) {}
public char? AdditionalEndOfFileChar { get; set; }
public string BaseFont { get; set; }
public string BaseFontSize { get; set; }
public bool Fragment { get; set; }
[Obsolete("Use GeneratorInformationalVersion instead.")]
public string? GeneratorVersionString { get; }
public bool IncrementWrappedLineNumber { get; set; }
public bool IsolateTags { get; set; }
public bool KeepInjections { get; set; }
public string? LastSyntaxError { get; }
public int LineNumberWidth { get; set; }
public bool LineNumberZeroPadding { get; set; }
public bool OmitVersionComment { get; set; }
public GeneratorOutputType OutputType { get; }
public bool PrintLineNumbers { get; set; }
public string StyleInputPath { get; set; }
public string StyleName { get; }
public string StyleOutputPath { get; set; }
public string? SyntaxCategoryDescription { get; }
public string? SyntaxDescription { get; }
public string? SyntaxEncodingHint { get; }
public string? ThemeCategoryDescription { get; }
public string? ThemeDescription { get; }
public string Title { get; set; }
public bool ValidateInput { get; set; }
protected virtual void Dispose(bool disposing) {}
public void Dispose() {}
public IEnumerable<string> EnumerateSyntaxFiles() {}
public IEnumerable<(string Path, string? Description)> EnumerateSyntaxFilesWithDescription() {}
public IEnumerable<string> EnumerateThemeFiles() {}
public IEnumerable<(string Path, string? Description)> EnumerateThemeFilesWithDescription() {}
public string Generate(string input) {}
public void Generate(string inputPath, string outputPath) {}
public string GenerateFromFile(string path) {}
public string GuessFileType(string inputFilePath) {}
public void LoadFileTypesConfig(string fileTypesConfPath) {}
public void SetEncoding(string encodingName) {}
public void SetIncludeStyle(bool trueForInclude) {}
public void SetSyntax(string name) {}
public void SetSyntaxFromFile(string pathToLangFile) {}
public void SetTheme(string name) {}
public void SetThemeBase16(string name) {}
public void SetThemeFromFile(string pathToThemeFile) {}
public bool TryFindSyntaxFile(string name, [NotNullWhen(true)] out string? syntaxFilePath) {}
public bool TryFindThemeBase16File(string name, [NotNullWhen(true)] out string? themeFilePath) {}
public bool TryFindThemeFile(string name, [NotNullWhen(true)] out string? themeFilePath) {}
public bool TryLoadFileTypesConfig() {}
}
public sealed class HighlightHtmlClass :
IEquatable<HighlightHtmlClass>,
IEquatable<string>
{
public static HighlightHtmlClass Default { get; }
public static HighlightHtmlClass DefaultV3 { get; }
public static HighlightHtmlClass DefaultV4 { get; }
public static HighlightHtmlClass ErrorMessage { get; }
public static HighlightHtmlClass EscapedCharacter { get; }
public static HighlightHtmlClass Highlight { get; }
public static HighlightHtmlClass HoverText { get; }
public static HighlightHtmlClass KeywordA { get; }
public static HighlightHtmlClass KeywordB { get; }
public static HighlightHtmlClass KeywordC { get; }
public static HighlightHtmlClass KeywordD { get; }
public static HighlightHtmlClass KeywordE { get; }
public static HighlightHtmlClass KeywordF { get; }
public static HighlightHtmlClass LineNumber { get; }
public static HighlightHtmlClass MultiLineComment { get; }
public static HighlightHtmlClass Number { get; }
public static HighlightHtmlClass Operator { get; }
public static HighlightHtmlClass Preprocessor { get; }
public static HighlightHtmlClass PreprocessorString { get; }
public static HighlightHtmlClass SingleLineComment { get; }
public static HighlightHtmlClass StringInterpolation { get; }
public static HighlightHtmlClass Strings { get; }
public static HighlightHtmlClass StringsV3 { get; }
public static HighlightHtmlClass StringsV4 { get; }
public static HighlightHtmlClass SyntaxError { get; }
public static bool TryParse(string className, [NotNullWhen(true)] out HighlightHtmlClass? @class) {}
public static bool TryParsePrefixed(string prefixedClassName, [NotNullWhen(true)] out HighlightHtmlClass? @class) {}
public string ClassName { get; }
public HighlightElementType ElementType { get; }
public bool Equals(HighlightHtmlClass? other) {}
public bool Equals(string? other) {}
public override bool Equals(object? obj) {}
public override int GetHashCode() {}
public override string ToString() {}
}
public class HighlightParserException : InvalidOperationException {
public HighlightParserException(string message) {}
public HighlightParserException(string message, ParseError reason) {}
public ParseError Reason { get; }
}
public class HighlightSyntaxException : InvalidOperationException {
public HighlightSyntaxException(string langFilePath, LoadResult reason) {}
public HighlightSyntaxException(string message) {}
public string? LangFilePath { get; }
public LoadResult Reason { get; }
}
public class HighlightThemeException : InvalidOperationException {
public HighlightThemeException(string message) {}
public HighlightThemeException(string themeFilePath, string? reason) {}
public string? Reason { get; }
public string? ThemeFilePath { get; }
}
}
namespace Smdn.LibHighlightSharp.Xhtml {
public class XhtmlHighlight : Highlight {
protected static IEnumerable<(XElement HighlightedElement, HighlightHtmlClass HighlightClass)> EnumerateHighlightedElements(XContainer container) {}
public XhtmlHighlight() {}
public XhtmlHighlight(DataDir dataDir, bool shouldDisposeDataDir = false) {}
public XhtmlHighlight(DataDir dataDirForSyntaxes, DataDir dataDirForThemes, bool shouldDisposeDataDir = false) {}
public XhtmlHighlight(string dataDir) {}
public XhtmlHighlight(string dataDirForSyntaxes, string dataDirForThemes) {}
public bool PreserveWhitespace { get; set; }
public XDocument GenerateXhtmlDocument(string input) {}
public XDocument GenerateXhtmlDocumentFromFile(string path) {}
public IEnumerable<XNode> GenerateXhtmlFragment(string input) {}
public IEnumerable<XNode> GenerateXhtmlFragmentFromFile(string path) {}
protected virtual void PostProcessXhtml(XContainer container) {}
}
}
-// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.2.2.0.
+// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.3.2.0.
// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.2.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
diff --git a/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-net8.0.apilist.cs b/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-net8.0.apilist.cs
new file mode 100644
index 0000000..8d948a4
--- /dev/null
+++ b/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-net8.0.apilist.cs
@@ -0,0 +1,221 @@
+// Smdn.LibHighlightSharp.dll (Smdn.LibHighlightSharp-1.2.0)
+// Name: Smdn.LibHighlightSharp
+// AssemblyVersion: 1.2.0.0
+// InformationalVersion: 1.2.0+a8211defa9884dc158cae8b9627dad69379698bb
+// TargetFramework: .NETCoreApp,Version=v8.0
+// Configuration: Release
+// Referenced assemblies:
+// Microsoft.CSharp, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// Smdn.LibHighlightSharp.Bindings, Version=3.36.0.0, Culture=neutral
+// System.Collections, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Linq, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Linq.Expressions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Threading, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Xml.ReaderWriter, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Xml.XDocument, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// Embedded resources:
+// null.lang (450 bytes, Embedded, ContainedInManifestFile)
+// null.theme (774 bytes, Embedded, ContainedInManifestFile)
+#nullable enable annotations
+
+using System;
+using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
+using System.Xml.Linq;
+using Smdn.LibHighlightSharp;
+using Smdn.LibHighlightSharp.Bindings;
+
+namespace Smdn.LibHighlightSharp {
+ public enum GeneratorOutputType : int {
+ BBCode = 8,
+ EscapeSequencesAnsi = 5,
+ EscapeSequencesTrueColor = 11,
+ EscapeSequencesXterm256 = 6,
+ Html = 0,
+ LaTeX = 3,
+ Odt = 10,
+ Pango = 9,
+ Rtf = 4,
+ Svg = 7,
+ TeX = 2,
+ Xhtml = 1,
+ }
+
+ public enum HighlightElementType : int {
+ Default = 1,
+ ErrorMessage = 20,
+ EscapedCharacter = 6,
+ HoverText = 18,
+ KeywordA = 12,
+ KeywordB = 13,
+ KeywordC = 14,
+ KeywordD = 15,
+ KeywordE = 16,
+ KeywordF = 17,
+ LineNumber = 9,
+ MultiLineComment = 5,
+ Number = 3,
+ Operator = 10,
+ Other = 0,
+ Preprocessor = 7,
+ PreprocessorString = 8,
+ SingleLineComment = 4,
+ StringInterpolation = 11,
+ Strings = 2,
+ SyntaxError = 19,
+ }
+
+ public class Highlight : IDisposable {
+ public static readonly Version MinimumVersionSupportingBase16Themes; // = "3.44"
+ public static readonly Version MinimumVersionSupportingGuessFileType; // = "3.51"
+ public static readonly Version MinimumVersionSupportingLoadFileTypesConfig; // = "3.51"
+
+ public static string? GeneratorInformationalVersion { get; }
+
+ public static DataDir? CreateDefaultDataDir() {}
+
+ public Highlight(DataDir dataDir, GeneratorOutputType outputType = GeneratorOutputType.Html, bool shouldDisposeDataDir = false) {}
+ public Highlight(DataDir dataDirForSyntaxes, DataDir dataDirForThemes, GeneratorOutputType outputType = GeneratorOutputType.Html, bool shouldDisposeDataDir = false) {}
+ public Highlight(GeneratorOutputType outputType = GeneratorOutputType.Html) {}
+ public Highlight(string dataDir, GeneratorOutputType outputType = GeneratorOutputType.Html) {}
+ public Highlight(string dataDirForSyntaxes, string dataDirForThemes, GeneratorOutputType outputType = GeneratorOutputType.Html) {}
+
+ public char? AdditionalEndOfFileChar { get; set; }
+ public string BaseFont { get; set; }
+ public string BaseFontSize { get; set; }
+ public bool Fragment { get; set; }
+ [Obsolete("Use GeneratorInformationalVersion instead.")]
+ public string? GeneratorVersionString { get; }
+ public bool IncrementWrappedLineNumber { get; set; }
+ public bool IsolateTags { get; set; }
+ public bool KeepInjections { get; set; }
+ public string? LastSyntaxError { get; }
+ public int LineNumberWidth { get; set; }
+ public bool LineNumberZeroPadding { get; set; }
+ public bool OmitVersionComment { get; set; }
+ public GeneratorOutputType OutputType { get; }
+ public bool PrintLineNumbers { get; set; }
+ public string StyleInputPath { get; set; }
+ public string StyleName { get; }
+ public string StyleOutputPath { get; set; }
+ public string? SyntaxCategoryDescription { get; }
+ public string? SyntaxDescription { get; }
+ public string? SyntaxEncodingHint { get; }
+ public string? ThemeCategoryDescription { get; }
+ public string? ThemeDescription { get; }
+ public string Title { get; set; }
+ public bool ValidateInput { get; set; }
+
+ protected virtual void Dispose(bool disposing) {}
+ public void Dispose() {}
+ public IEnumerable<string> EnumerateSyntaxFiles() {}
+ public IEnumerable<(string Path, string? Description)> EnumerateSyntaxFilesWithDescription() {}
+ public IEnumerable<string> EnumerateThemeFiles() {}
+ public IEnumerable<(string Path, string? Description)> EnumerateThemeFilesWithDescription() {}
+ public string Generate(string input) {}
+ public void Generate(string inputPath, string outputPath) {}
+ public string GenerateFromFile(string path) {}
+ public string GuessFileType(string inputFilePath) {}
+ public void LoadFileTypesConfig(string fileTypesConfPath) {}
+ public void SetEncoding(string encodingName) {}
+ public void SetIncludeStyle(bool trueForInclude) {}
+ public void SetSyntax(string name) {}
+ public void SetSyntaxFromFile(string pathToLangFile) {}
+ public void SetTheme(string name) {}
+ public void SetThemeBase16(string name) {}
+ public void SetThemeFromFile(string pathToThemeFile) {}
+ public bool TryFindSyntaxFile(string name, [NotNullWhen(true)] out string? syntaxFilePath) {}
+ public bool TryFindThemeBase16File(string name, [NotNullWhen(true)] out string? themeFilePath) {}
+ public bool TryFindThemeFile(string name, [NotNullWhen(true)] out string? themeFilePath) {}
+ public bool TryLoadFileTypesConfig() {}
+ }
+
+ public sealed class HighlightHtmlClass :
+ IEquatable<HighlightHtmlClass>,
+ IEquatable<string>
+ {
+ public static HighlightHtmlClass Default { get; }
+ public static HighlightHtmlClass DefaultV3 { get; }
+ public static HighlightHtmlClass DefaultV4 { get; }
+ public static HighlightHtmlClass ErrorMessage { get; }
+ public static HighlightHtmlClass EscapedCharacter { get; }
+ public static HighlightHtmlClass Highlight { get; }
+ public static HighlightHtmlClass HoverText { get; }
+ public static HighlightHtmlClass KeywordA { get; }
+ public static HighlightHtmlClass KeywordB { get; }
+ public static HighlightHtmlClass KeywordC { get; }
+ public static HighlightHtmlClass KeywordD { get; }
+ public static HighlightHtmlClass KeywordE { get; }
+ public static HighlightHtmlClass KeywordF { get; }
+ public static HighlightHtmlClass LineNumber { get; }
+ public static HighlightHtmlClass MultiLineComment { get; }
+ public static HighlightHtmlClass Number { get; }
+ public static HighlightHtmlClass Operator { get; }
+ public static HighlightHtmlClass Preprocessor { get; }
+ public static HighlightHtmlClass PreprocessorString { get; }
+ public static HighlightHtmlClass SingleLineComment { get; }
+ public static HighlightHtmlClass StringInterpolation { get; }
+ public static HighlightHtmlClass Strings { get; }
+ public static HighlightHtmlClass StringsV3 { get; }
+ public static HighlightHtmlClass StringsV4 { get; }
+ public static HighlightHtmlClass SyntaxError { get; }
+
+ public static bool TryParse(string className, [NotNullWhen(true)] out HighlightHtmlClass? @class) {}
+ public static bool TryParsePrefixed(string prefixedClassName, [NotNullWhen(true)] out HighlightHtmlClass? @class) {}
+
+ public string ClassName { get; }
+ public HighlightElementType ElementType { get; }
+
+ public bool Equals(HighlightHtmlClass? other) {}
+ public bool Equals(string? other) {}
+ public override bool Equals(object? obj) {}
+ public override int GetHashCode() {}
+ public override string ToString() {}
+ }
+
+ public class HighlightParserException : InvalidOperationException {
+ public HighlightParserException(string message) {}
+ public HighlightParserException(string message, ParseError reason) {}
+
+ public ParseError Reason { get; }
+ }
+
+ public class HighlightSyntaxException : InvalidOperationException {
+ public HighlightSyntaxException(string langFilePath, LoadResult reason) {}
+ public HighlightSyntaxException(string message) {}
+
+ public string? LangFilePath { get; }
+ public LoadResult Reason { get; }
+ }
+
+ public class HighlightThemeException : InvalidOperationException {
+ public HighlightThemeException(string message) {}
+ public HighlightThemeException(string themeFilePath, string? reason) {}
+
+ public string? Reason { get; }
+ public string? ThemeFilePath { get; }
+ }
+}
+
+namespace Smdn.LibHighlightSharp.Xhtml {
+ public class XhtmlHighlight : Highlight {
+ protected static IEnumerable<(XElement HighlightedElement, HighlightHtmlClass HighlightClass)> EnumerateHighlightedElements(XContainer container) {}
+
+ public XhtmlHighlight() {}
+ public XhtmlHighlight(DataDir dataDir, bool shouldDisposeDataDir = false) {}
+ public XhtmlHighlight(DataDir dataDirForSyntaxes, DataDir dataDirForThemes, bool shouldDisposeDataDir = false) {}
+ public XhtmlHighlight(string dataDir) {}
+ public XhtmlHighlight(string dataDirForSyntaxes, string dataDirForThemes) {}
+
+ public bool PreserveWhitespace { get; set; }
+
+ public XDocument GenerateXhtmlDocument(string input) {}
+ public XDocument GenerateXhtmlDocumentFromFile(string path) {}
+ public IEnumerable<XNode> GenerateXhtmlFragment(string input) {}
+ public IEnumerable<XNode> GenerateXhtmlFragmentFromFile(string path) {}
+ protected virtual void PostProcessXhtml(XContainer container) {}
+ }
+}
+// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.3.2.0.
+// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.2.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
diff --git a/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-netstandard2.0.apilist.cs b/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-netstandard2.0.apilist.cs
index 898bfb4..d38ac18 100644
--- a/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-netstandard2.0.apilist.cs
+++ b/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-netstandard2.0.apilist.cs
@@ -1,214 +1,214 @@
-// Smdn.LibHighlightSharp.dll (Smdn.LibHighlightSharp-1.1.4)
+// Smdn.LibHighlightSharp.dll (Smdn.LibHighlightSharp-1.2.0)
// Name: Smdn.LibHighlightSharp
-// AssemblyVersion: 1.1.4.0
-// InformationalVersion: 1.1.4+19b7f885037f82899edcb6587b19df469f5a0322
+// AssemblyVersion: 1.2.0.0
+// InformationalVersion: 1.2.0+a8211defa9884dc158cae8b9627dad69379698bb
// TargetFramework: .NETStandard,Version=v2.0
// Configuration: Release
// Referenced assemblies:
// Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// Smdn.LibHighlightSharp.Bindings, Version=3.36.0.0, Culture=neutral
// netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
// Embedded resources:
// null.lang (450 bytes, Embedded, ContainedInManifestFile)
// null.theme (774 bytes, Embedded, ContainedInManifestFile)
#nullable enable annotations
using System;
using System.Collections.Generic;
using System.Xml.Linq;
using Smdn.LibHighlightSharp;
using Smdn.LibHighlightSharp.Bindings;
namespace Smdn.LibHighlightSharp {
public enum GeneratorOutputType : int {
BBCode = 8,
EscapeSequencesAnsi = 5,
EscapeSequencesTrueColor = 11,
EscapeSequencesXterm256 = 6,
Html = 0,
LaTeX = 3,
Odt = 10,
Pango = 9,
Rtf = 4,
Svg = 7,
TeX = 2,
Xhtml = 1,
}
public enum HighlightElementType : int {
Default = 1,
ErrorMessage = 20,
EscapedCharacter = 6,
HoverText = 18,
KeywordA = 12,
KeywordB = 13,
KeywordC = 14,
KeywordD = 15,
KeywordE = 16,
KeywordF = 17,
LineNumber = 9,
MultiLineComment = 5,
Number = 3,
Operator = 10,
Other = 0,
Preprocessor = 7,
PreprocessorString = 8,
SingleLineComment = 4,
StringInterpolation = 11,
Strings = 2,
SyntaxError = 19,
}
public class Highlight : IDisposable {
public static readonly Version MinimumVersionSupportingBase16Themes; // = "3.44"
public static readonly Version MinimumVersionSupportingGuessFileType; // = "3.51"
public static readonly Version MinimumVersionSupportingLoadFileTypesConfig; // = "3.51"
public static string? GeneratorInformationalVersion { get; }
public static DataDir? CreateDefaultDataDir() {}
public Highlight(DataDir dataDir, GeneratorOutputType outputType = GeneratorOutputType.Html, bool shouldDisposeDataDir = false) {}
public Highlight(DataDir dataDirForSyntaxes, DataDir dataDirForThemes, GeneratorOutputType outputType = GeneratorOutputType.Html, bool shouldDisposeDataDir = false) {}
public Highlight(GeneratorOutputType outputType = GeneratorOutputType.Html) {}
public Highlight(string dataDir, GeneratorOutputType outputType = GeneratorOutputType.Html) {}
public Highlight(string dataDirForSyntaxes, string dataDirForThemes, GeneratorOutputType outputType = GeneratorOutputType.Html) {}
public char? AdditionalEndOfFileChar { get; set; }
public string BaseFont { get; set; }
public string BaseFontSize { get; set; }
public bool Fragment { get; set; }
[Obsolete("Use GeneratorInformationalVersion instead.")]
public string? GeneratorVersionString { get; }
public bool IncrementWrappedLineNumber { get; set; }
public bool IsolateTags { get; set; }
public bool KeepInjections { get; set; }
public string? LastSyntaxError { get; }
public int LineNumberWidth { get; set; }
public bool LineNumberZeroPadding { get; set; }
public bool OmitVersionComment { get; set; }
public GeneratorOutputType OutputType { get; }
public bool PrintLineNumbers { get; set; }
public string StyleInputPath { get; set; }
public string StyleName { get; }
public string StyleOutputPath { get; set; }
public string? SyntaxCategoryDescription { get; }
public string? SyntaxDescription { get; }
public string? SyntaxEncodingHint { get; }
public string? ThemeCategoryDescription { get; }
public string? ThemeDescription { get; }
public string Title { get; set; }
public bool ValidateInput { get; set; }
protected virtual void Dispose(bool disposing) {}
public void Dispose() {}
public IEnumerable<string> EnumerateSyntaxFiles() {}
public IEnumerable<(string Path, string? Description)> EnumerateSyntaxFilesWithDescription() {}
public IEnumerable<string> EnumerateThemeFiles() {}
public IEnumerable<(string Path, string? Description)> EnumerateThemeFilesWithDescription() {}
public string Generate(string input) {}
public void Generate(string inputPath, string outputPath) {}
public string GenerateFromFile(string path) {}
public string GuessFileType(string inputFilePath) {}
public void LoadFileTypesConfig(string fileTypesConfPath) {}
public void SetEncoding(string encodingName) {}
public void SetIncludeStyle(bool trueForInclude) {}
public void SetSyntax(string name) {}
public void SetSyntaxFromFile(string pathToLangFile) {}
public void SetTheme(string name) {}
public void SetThemeBase16(string name) {}
public void SetThemeFromFile(string pathToThemeFile) {}
public bool TryFindSyntaxFile(string name, out string? syntaxFilePath) {}
public bool TryFindThemeBase16File(string name, out string? themeFilePath) {}
public bool TryFindThemeFile(string name, out string? themeFilePath) {}
public bool TryLoadFileTypesConfig() {}
}
public sealed class HighlightHtmlClass :
IEquatable<HighlightHtmlClass>,
IEquatable<string>
{
public static HighlightHtmlClass Default { get; }
public static HighlightHtmlClass DefaultV3 { get; }
public static HighlightHtmlClass DefaultV4 { get; }
public static HighlightHtmlClass ErrorMessage { get; }
public static HighlightHtmlClass EscapedCharacter { get; }
public static HighlightHtmlClass Highlight { get; }
public static HighlightHtmlClass HoverText { get; }
public static HighlightHtmlClass KeywordA { get; }
public static HighlightHtmlClass KeywordB { get; }
public static HighlightHtmlClass KeywordC { get; }
public static HighlightHtmlClass KeywordD { get; }
public static HighlightHtmlClass KeywordE { get; }
public static HighlightHtmlClass KeywordF { get; }
public static HighlightHtmlClass LineNumber { get; }
public static HighlightHtmlClass MultiLineComment { get; }
public static HighlightHtmlClass Number { get; }
public static HighlightHtmlClass Operator { get; }
public static HighlightHtmlClass Preprocessor { get; }
public static HighlightHtmlClass PreprocessorString { get; }
public static HighlightHtmlClass SingleLineComment { get; }
public static HighlightHtmlClass StringInterpolation { get; }
public static HighlightHtmlClass Strings { get; }
public static HighlightHtmlClass StringsV3 { get; }
public static HighlightHtmlClass StringsV4 { get; }
public static HighlightHtmlClass SyntaxError { get; }
public static bool TryParse(string className, out HighlightHtmlClass? @class) {}
public static bool TryParsePrefixed(string prefixedClassName, out HighlightHtmlClass? @class) {}
public string ClassName { get; }
public HighlightElementType ElementType { get; }
public bool Equals(HighlightHtmlClass? other) {}
public bool Equals(string? other) {}
public override bool Equals(object? obj) {}
public override int GetHashCode() {}
public override string ToString() {}
}
public class HighlightParserException : InvalidOperationException {
public HighlightParserException(string message) {}
public HighlightParserException(string message, ParseError reason) {}
public ParseError Reason { get; }
}
public class HighlightSyntaxException : InvalidOperationException {
public HighlightSyntaxException(string langFilePath, LoadResult reason) {}
public HighlightSyntaxException(string message) {}
public string? LangFilePath { get; }
public LoadResult Reason { get; }
}
public class HighlightThemeException : InvalidOperationException {
public HighlightThemeException(string message) {}
public HighlightThemeException(string themeFilePath, string? reason) {}
public string? Reason { get; }
public string? ThemeFilePath { get; }
}
}
namespace Smdn.LibHighlightSharp.Xhtml {
public class XhtmlHighlight : Highlight {
protected static IEnumerable<(XElement HighlightedElement, HighlightHtmlClass HighlightClass)> EnumerateHighlightedElements(XContainer container) {}
public XhtmlHighlight() {}
public XhtmlHighlight(DataDir dataDir, bool shouldDisposeDataDir = false) {}
public XhtmlHighlight(DataDir dataDirForSyntaxes, DataDir dataDirForThemes, bool shouldDisposeDataDir = false) {}
public XhtmlHighlight(string dataDir) {}
public XhtmlHighlight(string dataDirForSyntaxes, string dataDirForThemes) {}
public bool PreserveWhitespace { get; set; }
public XDocument GenerateXhtmlDocument(string input) {}
public XDocument GenerateXhtmlDocumentFromFile(string path) {}
public IEnumerable<XNode> GenerateXhtmlFragment(string input) {}
public IEnumerable<XNode> GenerateXhtmlFragmentFromFile(string path) {}
protected virtual void PostProcessXhtml(XContainer container) {}
}
}
-// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.2.2.0.
+// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.3.2.0.
// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.2.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
diff --git a/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-netstandard2.1.apilist.cs b/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-netstandard2.1.apilist.cs
index adee944..d78a1c4 100644
--- a/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-netstandard2.1.apilist.cs
+++ b/doc/api-list/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp-netstandard2.1.apilist.cs
@@ -1,215 +1,215 @@
-// Smdn.LibHighlightSharp.dll (Smdn.LibHighlightSharp-1.1.4)
+// Smdn.LibHighlightSharp.dll (Smdn.LibHighlightSharp-1.2.0)
// Name: Smdn.LibHighlightSharp
-// AssemblyVersion: 1.1.4.0
-// InformationalVersion: 1.1.4+19b7f885037f82899edcb6587b19df469f5a0322
+// AssemblyVersion: 1.2.0.0
+// InformationalVersion: 1.2.0+a8211defa9884dc158cae8b9627dad69379698bb
// TargetFramework: .NETStandard,Version=v2.1
// Configuration: Release
// Referenced assemblies:
// Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// Smdn.LibHighlightSharp.Bindings, Version=3.36.0.0, Culture=neutral
// netstandard, Version=2.1.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
// Embedded resources:
// null.lang (450 bytes, Embedded, ContainedInManifestFile)
// null.theme (774 bytes, Embedded, ContainedInManifestFile)
#nullable enable annotations
using System;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
using System.Xml.Linq;
using Smdn.LibHighlightSharp;
using Smdn.LibHighlightSharp.Bindings;
namespace Smdn.LibHighlightSharp {
public enum GeneratorOutputType : int {
BBCode = 8,
EscapeSequencesAnsi = 5,
EscapeSequencesTrueColor = 11,
EscapeSequencesXterm256 = 6,
Html = 0,
LaTeX = 3,
Odt = 10,
Pango = 9,
Rtf = 4,
Svg = 7,
TeX = 2,
Xhtml = 1,
}
public enum HighlightElementType : int {
Default = 1,
ErrorMessage = 20,
EscapedCharacter = 6,
HoverText = 18,
KeywordA = 12,
KeywordB = 13,
KeywordC = 14,
KeywordD = 15,
KeywordE = 16,
KeywordF = 17,
LineNumber = 9,
MultiLineComment = 5,
Number = 3,
Operator = 10,
Other = 0,
Preprocessor = 7,
PreprocessorString = 8,
SingleLineComment = 4,
StringInterpolation = 11,
Strings = 2,
SyntaxError = 19,
}
public class Highlight : IDisposable {
public static readonly Version MinimumVersionSupportingBase16Themes; // = "3.44"
public static readonly Version MinimumVersionSupportingGuessFileType; // = "3.51"
public static readonly Version MinimumVersionSupportingLoadFileTypesConfig; // = "3.51"
public static string? GeneratorInformationalVersion { get; }
public static DataDir? CreateDefaultDataDir() {}
public Highlight(DataDir dataDir, GeneratorOutputType outputType = GeneratorOutputType.Html, bool shouldDisposeDataDir = false) {}
public Highlight(DataDir dataDirForSyntaxes, DataDir dataDirForThemes, GeneratorOutputType outputType = GeneratorOutputType.Html, bool shouldDisposeDataDir = false) {}
public Highlight(GeneratorOutputType outputType = GeneratorOutputType.Html) {}
public Highlight(string dataDir, GeneratorOutputType outputType = GeneratorOutputType.Html) {}
public Highlight(string dataDirForSyntaxes, string dataDirForThemes, GeneratorOutputType outputType = GeneratorOutputType.Html) {}
public char? AdditionalEndOfFileChar { get; set; }
public string BaseFont { get; set; }
public string BaseFontSize { get; set; }
public bool Fragment { get; set; }
[Obsolete("Use GeneratorInformationalVersion instead.")]
public string? GeneratorVersionString { get; }
public bool IncrementWrappedLineNumber { get; set; }
public bool IsolateTags { get; set; }
public bool KeepInjections { get; set; }
public string? LastSyntaxError { get; }
public int LineNumberWidth { get; set; }
public bool LineNumberZeroPadding { get; set; }
public bool OmitVersionComment { get; set; }
public GeneratorOutputType OutputType { get; }
public bool PrintLineNumbers { get; set; }
public string StyleInputPath { get; set; }
public string StyleName { get; }
public string StyleOutputPath { get; set; }
public string? SyntaxCategoryDescription { get; }
public string? SyntaxDescription { get; }
public string? SyntaxEncodingHint { get; }
public string? ThemeCategoryDescription { get; }
public string? ThemeDescription { get; }
public string Title { get; set; }
public bool ValidateInput { get; set; }
protected virtual void Dispose(bool disposing) {}
public void Dispose() {}
public IEnumerable<string> EnumerateSyntaxFiles() {}
public IEnumerable<(string Path, string? Description)> EnumerateSyntaxFilesWithDescription() {}
public IEnumerable<string> EnumerateThemeFiles() {}
public IEnumerable<(string Path, string? Description)> EnumerateThemeFilesWithDescription() {}
public string Generate(string input) {}
public void Generate(string inputPath, string outputPath) {}
public string GenerateFromFile(string path) {}
public string GuessFileType(string inputFilePath) {}
public void LoadFileTypesConfig(string fileTypesConfPath) {}
public void SetEncoding(string encodingName) {}
public void SetIncludeStyle(bool trueForInclude) {}
public void SetSyntax(string name) {}
public void SetSyntaxFromFile(string pathToLangFile) {}
public void SetTheme(string name) {}
public void SetThemeBase16(string name) {}
public void SetThemeFromFile(string pathToThemeFile) {}
public bool TryFindSyntaxFile(string name, [NotNullWhen(true)] out string? syntaxFilePath) {}
public bool TryFindThemeBase16File(string name, [NotNullWhen(true)] out string? themeFilePath) {}
public bool TryFindThemeFile(string name, [NotNullWhen(true)] out string? themeFilePath) {}
public bool TryLoadFileTypesConfig() {}
}
public sealed class HighlightHtmlClass :
IEquatable<HighlightHtmlClass>,
IEquatable<string>
{
public static HighlightHtmlClass Default { get; }
public static HighlightHtmlClass DefaultV3 { get; }
public static HighlightHtmlClass DefaultV4 { get; }
public static HighlightHtmlClass ErrorMessage { get; }
public static HighlightHtmlClass EscapedCharacter { get; }
public static HighlightHtmlClass Highlight { get; }
public static HighlightHtmlClass HoverText { get; }
public static HighlightHtmlClass KeywordA { get; }
public static HighlightHtmlClass KeywordB { get; }
public static HighlightHtmlClass KeywordC { get; }
public static HighlightHtmlClass KeywordD { get; }
public static HighlightHtmlClass KeywordE { get; }
public static HighlightHtmlClass KeywordF { get; }
public static HighlightHtmlClass LineNumber { get; }
public static HighlightHtmlClass MultiLineComment { get; }
public static HighlightHtmlClass Number { get; }
public static HighlightHtmlClass Operator { get; }
public static HighlightHtmlClass Preprocessor { get; }
public static HighlightHtmlClass PreprocessorString { get; }
public static HighlightHtmlClass SingleLineComment { get; }
public static HighlightHtmlClass StringInterpolation { get; }
public static HighlightHtmlClass Strings { get; }
public static HighlightHtmlClass StringsV3 { get; }
public static HighlightHtmlClass StringsV4 { get; }
public static HighlightHtmlClass SyntaxError { get; }
public static bool TryParse(string className, [NotNullWhen(true)] out HighlightHtmlClass? @class) {}
public static bool TryParsePrefixed(string prefixedClassName, [NotNullWhen(true)] out HighlightHtmlClass? @class) {}
public string ClassName { get; }
public HighlightElementType ElementType { get; }
public bool Equals(HighlightHtmlClass? other) {}
public bool Equals(string? other) {}
public override bool Equals(object? obj) {}
public override int GetHashCode() {}
public override string ToString() {}
}
public class HighlightParserException : InvalidOperationException {
public HighlightParserException(string message) {}
public HighlightParserException(string message, ParseError reason) {}
public ParseError Reason { get; }
}
public class HighlightSyntaxException : InvalidOperationException {
public HighlightSyntaxException(string langFilePath, LoadResult reason) {}
public HighlightSyntaxException(string message) {}
public string? LangFilePath { get; }
public LoadResult Reason { get; }
}
public class HighlightThemeException : InvalidOperationException {
public HighlightThemeException(string message) {}
public HighlightThemeException(string themeFilePath, string? reason) {}
public string? Reason { get; }
public string? ThemeFilePath { get; }
}
}
namespace Smdn.LibHighlightSharp.Xhtml {
public class XhtmlHighlight : Highlight {
protected static IEnumerable<(XElement HighlightedElement, HighlightHtmlClass HighlightClass)> EnumerateHighlightedElements(XContainer container) {}
public XhtmlHighlight() {}
public XhtmlHighlight(DataDir dataDir, bool shouldDisposeDataDir = false) {}
public XhtmlHighlight(DataDir dataDirForSyntaxes, DataDir dataDirForThemes, bool shouldDisposeDataDir = false) {}
public XhtmlHighlight(string dataDir) {}
public XhtmlHighlight(string dataDirForSyntaxes, string dataDirForThemes) {}
public bool PreserveWhitespace { get; set; }
public XDocument GenerateXhtmlDocument(string input) {}
public XDocument GenerateXhtmlDocumentFromFile(string path) {}
public IEnumerable<XNode> GenerateXhtmlFragment(string input) {}
public IEnumerable<XNode> GenerateXhtmlFragmentFromFile(string path) {}
protected virtual void PostProcessXhtml(XContainer container) {}
}
}
-// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.2.2.0.
+// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.3.2.0.
// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.2.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
--- Smdn.LibHighlightSharp.latest.nuspec
+++ Smdn.LibHighlightSharp.1.2.0.nuspec
@@ -1,32 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
-<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
+<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>Smdn.LibHighlightSharp</id>
- <version>1.1.4</version>
+ <version>1.2.0</version>
<title>Smdn.LibHighlightSharp</title>
<authors>smdn</authors>
<license type="expression">GPL-3.0-or-later</license>
<licenseUrl>https://licenses.nuget.org/GPL-3.0-or-later</licenseUrl>
<icon>Smdn.LibHighlightSharp.png</icon>
<readme>README.md</readme>
<projectUrl>https://smdn.jp/works/libs/Smdn.LibHighlightSharp/</projectUrl>
- <description>Provides wrapper classes for using various versions of [Andr� Simon's Highlight](http://andre-simon.de/doku/highlight/en/highlight.php) on .NET.</description>
- <releaseNotes>https://github.com/smdn/Smdn.LibHighlightSharp/releases/tag/releases%2FSmdn.LibHighlightSharp-1.1.4</releaseNotes>
- <copyright>Copyright � 2022 smdn</copyright>
+ <description>Provides wrapper classes for using various versions of [André Simon's Highlight](http://andre-simon.de/doku/highlight/en/highlight.php) on .NET.</description>
+ <releaseNotes>https://github.com/smdn/Smdn.LibHighlightSharp/releases/tag/releases%2FSmdn.LibHighlightSharp-1.2.0</releaseNotes>
+ <copyright>Copyright © 2022 smdn</copyright>
<tags>smdn.jp highlighting highlighter syntax-highlighting SyntaxHighlighting wrapper</tags>
- <repository type="git" url="https://github.com/smdn/Smdn.LibHighlightSharp" branch="main" commit="19b7f885037f82899edcb6587b19df469f5a0322" />
+ <repository type="git" url="https://github.com/smdn/Smdn.LibHighlightSharp" commit="a8211defa9884dc158cae8b9627dad69379698bb" />
<dependencies>
<group targetFramework="net6.0">
<dependency id="Smdn.LibHighlightSharp.Bindings" version="[3.36.0, 5.0.0)" exclude="Build,Analyzers" />
</group>
+ <group targetFramework="net8.0">
+ <dependency id="Smdn.LibHighlightSharp.Bindings" version="[3.36.0, 5.0.0)" exclude="Build,Analyzers" />
+ </group>
<group targetFramework=".NETStandard2.0">
<dependency id="Microsoft.CSharp" version="4.7.0" exclude="Build,Analyzers" />
<dependency id="Smdn.LibHighlightSharp.Bindings" version="[3.36.0, 5.0.0)" exclude="Build,Analyzers" />
</group>
<group targetFramework=".NETStandard2.1">
<dependency id="Microsoft.CSharp" version="4.7.0" exclude="Build,Analyzers" />
<dependency id="Smdn.LibHighlightSharp.Bindings" version="[3.36.0, 5.0.0)" exclude="Build,Analyzers" />
</group>
</dependencies>
</metadata>
</package>
\ No newline at end of file
diff --git a/src/Smdn.LibHighlightSharp/CompatibilitySuppressions.xml b/src/Smdn.LibHighlightSharp/CompatibilitySuppressions.xml
new file mode 100644
index 0000000..a7d2b82
--- /dev/null
+++ b/src/Smdn.LibHighlightSharp/CompatibilitySuppressions.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- https://learn.microsoft.com/en-us/dotnet/fundamentals/package-validation/diagnostic-ids -->
+<Suppressions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <!-- 1.0.0(baseline) vs >=1.1.1 -->
+ <Suppression>
+ <DiagnosticId>CP0011</DiagnosticId>
+ <Target>F:Smdn.LibHighlightSharp.HighlightElementType.ErrorMessage</Target>
+ <Left>lib/net6.0/Smdn.LibHighlightSharp.dll</Left>
+ <Right>lib/net6.0/Smdn.LibHighlightSharp.dll</Right>
+ <IsBaselineSuppression>true</IsBaselineSuppression>
+ </Suppression>
+ <Suppression>
+ <DiagnosticId>CP0011</DiagnosticId>
+ <Target>F:Smdn.LibHighlightSharp.HighlightElementType.HoverText</Target>
+ <Left>lib/net6.0/Smdn.LibHighlightSharp.dll</Left>
+ <Right>lib/net6.0/Smdn.LibHighlightSharp.dll</Right>
+ <IsBaselineSuppression>true</IsBaselineSuppression>
+ </Suppression>
+ <Suppression>
+ <DiagnosticId>CP0011</DiagnosticId>
+ <Target>F:Smdn.LibHighlightSharp.HighlightElementType.SyntaxError</Target>
+ <Left>lib/net6.0/Smdn.LibHighlightSharp.dll</Left>
+ <Right>lib/net6.0/Smdn.LibHighlightSharp.dll</Right>
+ <IsBaselineSuppression>true</IsBaselineSuppression>
+ </Suppression>
+ <Suppression>
+ <DiagnosticId>CP0011</DiagnosticId>
+ <Target>F:Smdn.LibHighlightSharp.HighlightElementType.ErrorMessage</Target>
+ <Left>lib/netstandard2.0/Smdn.LibHighlightSharp.dll</Left>
+ <Right>lib/netstandard2.0/Smdn.LibHighlightSharp.dll</Right>
+ <IsBaselineSuppression>true</IsBaselineSuppression>
+ </Suppression>
+ <Suppression>
+ <DiagnosticId>CP0011</DiagnosticId>
+ <Target>F:Smdn.LibHighlightSharp.HighlightElementType.HoverText</Target>
+ <Left>lib/netstandard2.0/Smdn.LibHighlightSharp.dll</Left>
+ <Right>lib/netstandard2.0/Smdn.LibHighlightSharp.dll</Right>
+ <IsBaselineSuppression>true</IsBaselineSuppression>
+ </Suppression>
+ <Suppression>
+ <DiagnosticId>CP0011</DiagnosticId>
+ <Target>F:Smdn.LibHighlightSharp.HighlightElementType.SyntaxError</Target>
+ <Left>lib/netstandard2.0/Smdn.LibHighlightSharp.dll</Left>
+ <Right>lib/netstandard2.0/Smdn.LibHighlightSharp.dll</Right>
+ <IsBaselineSuppression>true</IsBaselineSuppression>
+ </Suppression>
+ <Suppression>
+ <DiagnosticId>CP0011</DiagnosticId>
+ <Target>F:Smdn.LibHighlightSharp.HighlightElementType.ErrorMessage</Target>
+ <Left>lib/netstandard2.1/Smdn.LibHighlightSharp.dll</Left>
+ <Right>lib/netstandard2.1/Smdn.LibHighlightSharp.dll</Right>
+ <IsBaselineSuppression>true</IsBaselineSuppression>
+ </Suppression>
+ <Suppression>
+ <DiagnosticId>CP0011</DiagnosticId>
+ <Target>F:Smdn.LibHighlightSharp.HighlightElementType.HoverText</Target>
+ <Left>lib/netstandard2.1/Smdn.LibHighlightSharp.dll</Left>
+ <Right>lib/netstandard2.1/Smdn.LibHighlightSharp.dll</Right>
+ <IsBaselineSuppression>true</IsBaselineSuppression>
+ </Suppression>
+ <Suppression>
+ <DiagnosticId>CP0011</DiagnosticId>
+ <Target>F:Smdn.LibHighlightSharp.HighlightElementType.SyntaxError</Target>
+ <Left>lib/netstandard2.1/Smdn.LibHighlightSharp.dll</Left>
+ <Right>lib/netstandard2.1/Smdn.LibHighlightSharp.dll</Right>
+ <IsBaselineSuppression>true</IsBaselineSuppression>
+ </Suppression>
+</Suppressions>
diff --git a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp.csproj b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp.csproj
index c11b2fc..54c1a14 100644
--- a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp.csproj
+++ b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp.csproj
@@ -4,9 +4,9 @@ SPDX-License-Identifier: MIT
-->
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
- <TargetFrameworks>net6.0;netstandard2.1;netstandard2.0</TargetFrameworks><!-- System.Runtime.InteropServices.HandleRef is available in .NET Standard 2.0 or over -->
- <RuntimeIdentifiers>$(Highlight_NativeBinariesSupportedRuntimeIdentifiers)</RuntimeIdentifiers>
- <VersionPrefix>1.1.4</VersionPrefix>
+ <TargetFrameworks>net8.0;net6.0;netstandard2.1;netstandard2.0</TargetFrameworks><!-- System.Runtime.InteropServices.HandleRef is available in .NET Standard 2.0 or over -->
+ <RuntimeIdentifiers>$(LibraryProjectRuntimeIdentifiers)</RuntimeIdentifiers>
+ <VersionPrefix>1.2.0</VersionPrefix>
<VersionSuffix></VersionSuffix>
<RootNamespace/> <!-- empty the root namespace so that the namespace is determined only by the directory name, for code style rule IDE0030 -->
<PackageValidationBaselineVersion>1.0.0</PackageValidationBaselineVersion>
@@ -16,6 +16,7 @@ SPDX-License-Identifier: MIT
<BuildInParallel>false</BuildInParallel> <!-- disable parallel builds to avoid running simultaneous native binary build -->
<EnableTrimAnalyzer>false</EnableTrimAnalyzer>
<EnableDefaultEmbeddedResourceItems>false</EnableDefaultEmbeddedResourceItems>
+ <NoWarn>CS1591;$(NoWarn)</NoWarn> <!-- CS1591: Missing XML comment for publicly visible type or member 'Type_or_Member' -->
</PropertyGroup>
<PropertyGroup Label="assembly attributes">
@@ -70,7 +71,7 @@ $(LicenseNoticeMarkdownText_Lua_Notice)
<PackageReference Include="Microsoft.CSharp" />
<PackageReference
Include="Smdn.MSBuild.DefineConstants.NETSdkApi"
- Version="[1.3.11]"
+ Version="[1.4.2]"
PrivateAssets="all"
IncludeAssets="build"
/>
diff --git a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.OutputType.cs b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.OutputType.cs
index 50ab59d..3cd3632 100644
--- a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.OutputType.cs
+++ b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.OutputType.cs
@@ -8,7 +8,8 @@ namespace Smdn.LibHighlightSharp;
#pragma warning disable IDE0040
partial class Highlight {
#pragma warning restore IDE0040
- private static readonly IReadOnlyDictionary<GeneratorOutputType, string> generatorOutputTypeValueToNameMap
+#pragma warning disable CA1859
+ private static readonly IReadOnlyDictionary<GeneratorOutputType, string> GeneratorOutputTypeValueToNameMap
= new Dictionary<GeneratorOutputType, string>() {
[GeneratorOutputType.Html] = "HTML",
[GeneratorOutputType.Xhtml] = "XHTML",
@@ -23,6 +24,7 @@ partial class Highlight {
[GeneratorOutputType.Odt] = "ODTFLAT",
[GeneratorOutputType.EscapeSequencesTrueColor] = "ESC_TRUECOLOR",
};
+#pragma warning restore CA1859
/// <summary>
/// Converts the value of <see cref="GeneratorOutputType"/> to <see cref="Bindings.OutputType"/>.
@@ -34,7 +36,7 @@ partial class Highlight {
internal static Bindings.OutputType TranslateOutputType(GeneratorOutputType outputType)
{
// translate by enum filed name
- if (generatorOutputTypeValueToNameMap.TryGetValue(outputType, out var name)) {
+ if (GeneratorOutputTypeValueToNameMap.TryGetValue(outputType, out var name)) {
#if SYSTEM_ENUM_GETVALUES_OF_TENUM && SYSTEM_ENUM_GETNAME_OF_TENUM
foreach (var value in Enum.GetValues<Bindings.OutputType>()) {
if (string.Equals(name, Enum.GetName(value), StringComparison.Ordinal))
diff --git a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.Version.cs b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.Version.cs
index 6948b19..d7cd995 100644
--- a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.Version.cs
+++ b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.Version.cs
@@ -66,7 +66,7 @@ partial class Highlight {
private static string? GetGeneratorInformationalVersion()
{
- const string versionStringInvalid = "";
+ const string VersionStringInvalid = "";
using var hl = new Highlight(outputType: GeneratorOutputType.Html);
@@ -84,13 +84,13 @@ partial class Highlight {
);
}
catch (HighlightThemeException) {
- return versionStringInvalid;
+ return VersionStringInvalid;
}
catch (IOException) {
- return versionStringInvalid;
+ return VersionStringInvalid;
}
catch (UnauthorizedAccessException) {
- return versionStringInvalid;
+ return VersionStringInvalid;
}
// write out a syntax file to a temporary directory and load it
@@ -102,13 +102,13 @@ partial class Highlight {
);
}
catch (HighlightSyntaxException) {
- return versionStringInvalid;
+ return VersionStringInvalid;
}
catch (IOException) {
- return versionStringInvalid;
+ return VersionStringInvalid;
}
catch (UnauthorizedAccessException) {
- return versionStringInvalid;
+ return VersionStringInvalid;
}
var reader = new StringReader(hl.Generate("//"));
@@ -117,18 +117,18 @@ partial class Highlight {
var line = reader.ReadLine();
if (line == null)
- return versionStringInvalid;
+ return VersionStringInvalid;
- const string prefix = "<!--HTML generated by ";
- const string suffix = "-->";
+ const string Prefix = "<!--HTML generated by ";
+ const string Suffix = "-->";
if (
- line.StartsWith(prefix, StringComparison.Ordinal) &&
- line.EndsWith(suffix, StringComparison.Ordinal)
+ line.StartsWith(Prefix, StringComparison.Ordinal) &&
+ line.EndsWith(Suffix, StringComparison.Ordinal)
) {
- var versionString = line.Substring(prefix.Length); // trim prefix
+ var versionString = line.Substring(Prefix.Length); // trim prefix
- return versionString.Substring(0, versionString.Length - suffix.Length); // trim suffix
+ return versionString.Substring(0, versionString.Length - Suffix.Length); // trim suffix
}
}
}
diff --git a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.cs b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.cs
index 961ce08..9a22199 100644
--- a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.cs
+++ b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/Highlight.cs
@@ -185,10 +185,12 @@ public partial class Highlight : IDisposable {
)
{
this.dataDirForSyntaxes = dataDirForSyntaxes.DataDir ?? throw new ArgumentNullException(nameof(dataDirForSyntaxes));
- this.UserDefinedDataDirPathForSyntaxes = dataDirForSyntaxes.UserDefinedDirPath;
+
+ UserDefinedDataDirPathForSyntaxes = dataDirForSyntaxes.UserDefinedDirPath;
this.dataDirForThemes = dataDirForThemes.DataDir ?? throw new ArgumentNullException(nameof(dataDirForThemes));
- this.UserDefinedDataDirPathForThemes = dataDirForThemes.UserDefinedDirPath;
+
+ UserDefinedDataDirPathForThemes = dataDirForThemes.UserDefinedDirPath;
OutputType = outputType;
diff --git a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/HighlightHtmlClass.cs b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/HighlightHtmlClass.cs
index 6d18d5f..a033368 100644
--- a/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/HighlightHtmlClass.cs
+++ b/src/Smdn.LibHighlightSharp/Smdn.LibHighlightSharp/HighlightHtmlClass.cs
@@ -10,18 +10,18 @@ using System.Reflection;
namespace Smdn.LibHighlightSharp;
public sealed class HighlightHtmlClass : IEquatable<HighlightHtmlClass>, IEquatable<string> {
- private static readonly Version version3x = new(3, 0);
- private static readonly Version version4x = new(4, 0);
- private static readonly Version versionLatest = new(5, 0);
+ private static readonly Version Version3x = new(3, 0);
+ private static readonly Version Version4x = new(4, 0);
+ private static readonly Version VersionLatest = new(5, 0);
// XHTML attribute values are case sensitive
// ref: https://stackoverflow.com/questions/12533926/are-class-names-in-css-selectors-case-sensitive
- private static readonly IEqualityComparer<string> ClassNameEqualityComparer = StringComparer.Ordinal;
+ private static readonly StringComparer ClassNameEqualityComparer = StringComparer.Ordinal;
private static readonly StringComparison ClassNameComparison = StringComparison.Ordinal;
internal const string CommonPrefix = "hl ";
- public static HighlightHtmlClass Highlight { get; } = new("hl", HighlightElementType.Other, version3x, versionLatest);
+ public static HighlightHtmlClass Highlight { get; } = new("hl", HighlightElementType.Other, Version3x, VersionLatest);
// The following style names have changed in version 4.
// - str -> sng
@@ -29,38 +29,40 @@ public sealed class HighlightHtmlClass : IEquatable<HighlightHtmlClass>, IEquata
// ref: https://gitlab.com/saalen/highlight/-/blob/master/README_V4_MIGRATION.adoc
public static HighlightHtmlClass Default => 4 <= VersionInformations.NativeLibraryVersion.Major ? DefaultV4 : DefaultV3;
- public static HighlightHtmlClass DefaultV3 { get; } = new("std", HighlightElementType.Default, version3x, version4x);
- public static HighlightHtmlClass DefaultV4 { get; } = new("def", HighlightElementType.Default, version4x, versionLatest);
+ public static HighlightHtmlClass DefaultV3 { get; } = new("std", HighlightElementType.Default, Version3x, Version4x);
+ public static HighlightHtmlClass DefaultV4 { get; } = new("def", HighlightElementType.Default, Version4x, VersionLatest);
public static HighlightHtmlClass Strings => 4 <= VersionInformations.NativeLibraryVersion.Major ? StringsV4 : StringsV3;
- public static HighlightHtmlClass StringsV3 { get; } = new("str", HighlightElementType.Strings, version3x, version4x);
- public static HighlightHtmlClass StringsV4 { get; } = new("sng", HighlightElementType.Strings, version4x, versionLatest);
-
- public static HighlightHtmlClass Number { get; } = new("num", HighlightElementType.Number, version3x, versionLatest);
- public static HighlightHtmlClass SingleLineComment { get; } = new("slc", HighlightElementType.SingleLineComment, version3x, versionLatest);
- public static HighlightHtmlClass MultiLineComment { get; } = new("com", HighlightElementType.MultiLineComment, version3x, versionLatest);
- public static HighlightHtmlClass EscapedCharacter { get; } = new("esc", HighlightElementType.EscapedCharacter, version3x, versionLatest);
- public static HighlightHtmlClass Preprocessor { get; } = new("ppc", HighlightElementType.Preprocessor, version3x, versionLatest);
- public static HighlightHtmlClass PreprocessorString { get; } = new("pps", HighlightElementType.PreprocessorString, version3x, versionLatest);
- public static HighlightHtmlClass LineNumber { get; } = new("lin", HighlightElementType.LineNumber, version3x, versionLatest);
- public static HighlightHtmlClass Operator { get; } = new("opt", HighlightElementType.Operator, version3x, versionLatest);
- public static HighlightHtmlClass StringInterpolation { get; } = new("ipl", HighlightElementType.StringInterpolation, version3x, versionLatest);
+ public static HighlightHtmlClass StringsV3 { get; } = new("str", HighlightElementType.Strings, Version3x, Version4x);
+ public static HighlightHtmlClass StringsV4 { get; } = new("sng", HighlightElementType.Strings, Version4x, VersionLatest);
+
+ public static HighlightHtmlClass Number { get; } = new("num", HighlightElementType.Number, Version3x, VersionLatest);
+ public static HighlightHtmlClass SingleLineComment { get; } = new("slc", HighlightElementType.SingleLineComment, Version3x, VersionLatest);
+ public static HighlightHtmlClass MultiLineComment { get; } = new("com", HighlightElementType.MultiLineComment, Version3x, VersionLatest);
+ public static HighlightHtmlClass EscapedCharacter { get; } = new("esc", HighlightElementType.EscapedCharacter, Version3x, VersionLatest);
+ public static HighlightHtmlClass Preprocessor { get; } = new("ppc", HighlightElementType.Preprocessor, Version3x, VersionLatest);
+ public static HighlightHtmlClass PreprocessorString { get; } = new("pps", HighlightElementType.PreprocessorString, Version3x, VersionLatest);
+ public static HighlightHtmlClass LineNumber { get; } = new("lin", HighlightElementType.LineNumber, Version3x, VersionLatest);
+ public static HighlightHtmlClass Operator { get; } = new("opt", HighlightElementType.Operator, Version3x, VersionLatest);
+ public static HighlightHtmlClass StringInterpolation { get; } = new("ipl", HighlightElementType.StringInterpolation, Version3x, VersionLatest);
// IDs are defined up to 6 (6 is used in plugins/cpp_qt.lua from v3.x, langDefs/c.lang from v4.0)
- public static HighlightHtmlClass KeywordA { get; } = new("kwa", HighlightElementType.KeywordA, version3x, versionLatest);
- public static HighlightHtmlClass KeywordB { get; } = new("kwb", HighlightElementType.KeywordB, version3x, versionLatest);
- public static HighlightHtmlClass KeywordC { get; } = new("kwc", HighlightElementType.KeywordC, version3x, versionLatest);
- public static HighlightHtmlClass KeywordD { get; } = new("kwd", HighlightElementType.KeywordD, version3x, versionLatest);
- public static HighlightHtmlClass KeywordE { get; } = new("kwe", HighlightElementType.KeywordE, version3x, versionLatest);
- public static HighlightHtmlClass KeywordF { get; } = new("kwf", HighlightElementType.KeywordF, version3x, versionLatest);
+ public static HighlightHtmlClass KeywordA { get; } = new("kwa", HighlightElementType.KeywordA, Version3x, VersionLatest);
+ public static HighlightHtmlClass KeywordB { get; } = new("kwb", HighlightElementType.KeywordB, Version3x, VersionLatest);
+ public static HighlightHtmlClass KeywordC { get; } = new("kwc", HighlightElementType.KeywordC, Version3x, VersionLatest);
+ public static HighlightHtmlClass KeywordD { get; } = new("kwd", HighlightElementType.KeywordD, Version3x, VersionLatest);
+ public static HighlightHtmlClass KeywordE { get; } = new("kwe", HighlightElementType.KeywordE, Version3x, VersionLatest);
+ public static HighlightHtmlClass KeywordF { get; } = new("kwf", HighlightElementType.KeywordF, Version3x, VersionLatest);
- public static HighlightHtmlClass HoverText { get; } = new("hvr", HighlightElementType.HoverText, version4x, versionLatest);
- public static HighlightHtmlClass SyntaxError { get; } = new("err", HighlightElementType.SyntaxError, version4x, versionLatest);
- public static HighlightHtmlClass ErrorMessage { get; } = new("erm", HighlightElementType.ErrorMessage, version4x, versionLatest);
+ public static HighlightHtmlClass HoverText { get; } = new("hvr", HighlightElementType.HoverText, Version4x, VersionLatest);
+ public static HighlightHtmlClass SyntaxError { get; } = new("err", HighlightElementType.SyntaxError, Version4x, VersionLatest);
+ public static HighlightHtmlClass ErrorMessage { get; } = new("erm", HighlightElementType.ErrorMessage, Version4x, VersionLatest);
- private static readonly IReadOnlyDictionary<string, HighlightHtmlClass> classNameMap = InitializeClassNameMap();
+ private static readonly IReadOnlyDictionary<string, HighlightHtmlClass> ClassNameMap = InitializeClassNameMap();
+#pragma warning disable CA1859
private static IReadOnlyDictionary<string, HighlightHtmlClass> InitializeClassNameMap()
+#pragma warning restore CA1859
{
var map = new Dictionary<string, HighlightHtmlClass>(ClassNameEqualityComparer);
var typeOfHighlightHtmlClass = typeof(HighlightHtmlClass);
@@ -122,7 +124,7 @@ public sealed class HighlightHtmlClass : IEquatable<HighlightHtmlClass>, IEquata
if (className is null)
return false;
- return classNameMap.TryGetValue(className, out @class);
+ return ClassNameMap.TryGetValue(className, out @class);
}
public static bool TryParsePrefixed(
@@ -142,7 +144,7 @@ public sealed class HighlightHtmlClass : IEquatable<HighlightHtmlClass>, IEquata
var styleName = prefixedClassName.Substring(CommonPrefix.Length).Trim();
- return classNameMap.TryGetValue(styleName, out @class);
+ return ClassNameMap.TryGetValue(styleName, out @class);
}
/*
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment