From ad6c28e8c79f2e38503a6cb24f017cd7b709a63c Mon Sep 17 00:00:00 2001 From: Neil Date: Wed, 8 Jan 2014 13:50:22 +1100 Subject: Feature [feature-requests:#1041]. Highlight hex, octal, and binary numbers in FreeBASIC which use the prefixes &h, &o and &b respectively. From Ebben. --- doc/ScintillaHistory.html | 6 ++++++ lexers/LexBasic.cxx | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html index 23b4ca27d..d7710bf30 100644 --- a/doc/ScintillaHistory.html +++ b/doc/ScintillaHistory.html @@ -439,6 +439,7 @@ Thomas Martitz felix Christian Walther + Ebben

@@ -461,6 +462,11 @@ Added DropSelectionN API to drop a selection from a multiple selection.

  • + Basic lexer highlights hex, octal, and binary numbers in FreeBASIC which use the prefixes + &h, &o and &b respectively. + Feature #1041. +
  • +
  • C++ lexer fixes bug where keyword followed immediately by quoted string continued keyword style. Bug #1564. diff --git a/lexers/LexBasic.cxx b/lexers/LexBasic.cxx index 55285201f..b73fac8b6 100644 --- a/lexers/LexBasic.cxx +++ b/lexers/LexBasic.cxx @@ -445,9 +445,9 @@ void SCI_METHOD LexerBasic::Lex(unsigned int startPos, int length, int initStyle sc.SetState(SCE_B_STRING); } else if (IsDigit(sc.ch)) { sc.SetState(SCE_B_NUMBER); - } else if (sc.Match('$')) { + } else if (sc.Match('$') || sc.Match("&h") || sc.Match("&H") || sc.Match("&o") || sc.Match("&O")) { sc.SetState(SCE_B_HEXNUMBER); - } else if (sc.Match('%')) { + } else if (sc.Match('%') || sc.Match("&b") || sc.Match("&B")) { sc.SetState(SCE_B_BINNUMBER); } else if (sc.Match('#')) { sc.SetState(SCE_B_CONSTANT); -- cgit v1.2.3