diff --git a/src/ScintillaNET/Lexer.cs b/src/ScintillaNET/Lexer.cs
index 0680a22..b1dd250 100644
--- a/src/ScintillaNET/Lexer.cs
+++ b/src/ScintillaNET/Lexer.cs
@@ -36,6 +36,15 @@ public enum Lexer
///
Batch = NativeMethods.SCLEX_BATCH,
+ ///
+ /// The Clarion language
+ ///
+ Clw = NativeMethods.SCLEX_CLW,
+
+ ///
+ /// The Clarion language No Case
+ ///
+ ClwNoCase = NativeMethods.SCLEX_CLWNOCASE,
///
/// The C language family (C++, C, C#, Java, JavaScript, etc...) lexer.
///
diff --git a/src/ScintillaNET/NativeMethods.cs b/src/ScintillaNET/NativeMethods.cs
index 5b3df1f..98f7e28 100644
--- a/src/ScintillaNET/NativeMethods.cs
+++ b/src/ScintillaNET/NativeMethods.cs
@@ -1322,6 +1322,26 @@ internal static class NativeMethods
public const int SCE_C_TASKMARKER = 26;
public const int SCE_C_ESCAPESEQUENCE = 27;
+
+ //CLW
+ public const int SCE_CLW_DEFAULT = 0;
+ public const int SCE_CLW_LABEL = 1;
+ public const int SCE_CLW_COMMENT = 2;
+ public const int SCE_CLW_STRING = 3;
+ public const int SCE_CLW_USER_IDENTIFIER = 4;
+ public const int SCE_CLW_INTEGER_CONSTANT = 5;
+ public const int SCE_CLW_REAL_CONSTANT = 6;
+ public const int SCE_CLW_PICTURE_STRING = 7;
+ public const int SCE_CLW_KEYWORD = 8;
+ public const int SCE_CLW_COMPILER_DIRECTIVE = 9;
+ public const int SCE_CLW_RUNTIME_EXPRESSIONS = 10;
+ public const int SCE_CLW_BUILTIN_PROCEDURES_FUNCTION = 11;
+ public const int SCE_CLW_STRUCTURE_DATA_TYPE = 12;
+ public const int SCE_CLW_ATTRIBUTE = 13;
+ public const int SCE_CLW_STANDARD_EQUATE = 14;
+ public const int SCE_CLW_ERROR = 15;
+ public const int SCE_CLW_DEPRECATED = 16;
+
// CSS
public const int SCE_CSS_DEFAULT = 0;
public const int SCE_CSS_TAG = 1;
diff --git a/src/ScintillaNET/Style.cs b/src/ScintillaNET/Style.cs
index 6789b8f..7750245 100644
--- a/src/ScintillaNET/Style.cs
+++ b/src/ScintillaNET/Style.cs
@@ -702,6 +702,101 @@ public static class Batch
#endregion Batch
+ #region Clw
+
+ ///
+ /// Style constants for use with the lexer.
+ ///
+ public static class CLW
+ {
+ ///
+ /// Attributes style index
+ ///
+ public const int Attributes = NativeMethods.SCE_CLW_ATTRIBUTE;
+
+ ///
+ /// Built in procedures function style index.
+ ///
+ public const int BuiltInProceduresFunction = NativeMethods.SCE_CLW_BUILTIN_PROCEDURES_FUNCTION;
+
+ ///
+ /// Comment style index.
+ ///
+ public const int Comment = NativeMethods.SCE_CLW_COMMENT;
+
+ ///
+ /// Compiler directive style index
+ ///
+ public const int CompilerDirective = NativeMethods.SCE_CLW_COMPILER_DIRECTIVE;
+
+ ///
+ /// Default (whitespace) style index.
+ ///
+ public const int Default = NativeMethods.SCE_CLW_DEFAULT;
+
+ ///
+ /// Depreciated style index
+ ///
+ public const int Depreciated = NativeMethods.SCE_CLW_DEPRECATED;
+
+ ///
+ /// Error style index
+ ///
+ public const int Error = NativeMethods.SCE_CLW_ERROR;
+
+ ///
+ /// Integer Constant style index.
+ ///
+ public const int IntegerConstant = NativeMethods.SCE_CLW_INTEGER_CONSTANT;
+
+ ///
+ /// Keyword style index
+ ///
+ public const int Keyword = NativeMethods.SCE_CLW_KEYWORD;
+
+ ///
+ /// Label string style index.
+ ///
+ public const int Label = NativeMethods.SCE_CLW_LABEL;
+
+ ///
+ /// Real Constant style index.
+ ///
+ public const int PictureString = NativeMethods.SCE_CLW_PICTURE_STRING;
+
+ ///
+ /// Real Constant style index.
+ ///
+ public const int RealConstant = NativeMethods.SCE_CLW_REAL_CONSTANT;
+
+ ///
+ /// Runtime expressions style index
+ ///
+ public const int RuntimeExpressions = NativeMethods.SCE_CLW_RUNTIME_EXPRESSIONS;
+
+ ///
+ /// Standard equates style index
+ ///
+ public const int StandardEquates = NativeMethods.SCE_CLW_STANDARD_EQUATE;
+
+ ///
+ /// Single-quoted string style index.
+ ///
+ public const int String = NativeMethods.SCE_CLW_STRING;
+
+ ///
+ /// Structure data type style index.
+ ///
+ public const int StructureDataTypes = NativeMethods.SCE_CLW_STRUCTURE_DATA_TYPE;
+
+ ///
+ /// User Identifier style index.
+ ///
+ public const int UserIdentifier = NativeMethods.SCE_CLW_USER_IDENTIFIER;
+ }
+
+ #endregion Clw
+
#region Cpp
///