aboutsummaryrefslogtreecommitdiffhomepage
path: root/lexers/LexNull.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'lexers/LexNull.cxx')
-rw-r--r--lexers/LexNull.cxx40
1 files changed, 40 insertions, 0 deletions
diff --git a/lexers/LexNull.cxx b/lexers/LexNull.cxx
new file mode 100644
index 000000000..d5b3b3046
--- /dev/null
+++ b/lexers/LexNull.cxx
@@ -0,0 +1,40 @@
+// Scintilla source code edit control
+/** @file LexNull.cxx
+ ** Lexer for no language. Used for plain text and unrecognized files.
+ **/
+// Copyright 1998-2001 by Neil Hodgson <neilh@scintilla.org>
+// The License.txt file describes the conditions under which this software may be distributed.
+
+#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+#include <stdarg.h>
+#include <assert.h>
+#include <ctype.h>
+
+#include "ILexer.h"
+#include "Scintilla.h"
+#include "SciLexer.h"
+
+#include "WordList.h"
+#include "LexAccessor.h"
+#include "Accessor.h"
+#include "StyleContext.h"
+#include "CharacterSet.h"
+#include "LexerModule.h"
+
+#ifdef SCI_NAMESPACE
+using namespace Scintilla;
+#endif
+
+static void ColouriseNullDoc(unsigned int startPos, int length, int, WordList *[],
+ Accessor &styler) {
+ // Null language means all style bytes are 0 so just mark the end - no need to fill in.
+ if (length > 0) {
+ styler.StartAt(startPos + length - 1);
+ styler.StartSegment(startPos + length - 1);
+ styler.ColourTo(startPos + length - 1, 0);
+ }
+}
+
+LexerModule lmNull(SCLEX_NULL, ColouriseNullDoc, "null");