diff options
author | sariel <shahar.ariel@verizonmedia.com> | 2021-10-21 13:20:30 +0300 |
---|---|---|
committer | sariel <shahar.ariel@verizonmedia.com> | 2021-10-21 13:20:30 +0300 |
commit | 1e9ac6538c5e6b42481dadb250d71d8338e2e1c2 (patch) | |
tree | 5f2dd9838498d95d0a841aaabd9e7743a74d7e9e /sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java | |
parent | 6ce5672fc9288c66ba795e6837994edb8605c03f (diff) |
Add keywords to the syntax highlighter
Diffstat (limited to 'sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java')
-rw-r--r-- | sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java | 115 |
1 files changed, 91 insertions, 24 deletions
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java index 2f21400f14a..68cb1563324 100644 --- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java +++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java @@ -22,11 +22,9 @@ public class SdSyntaxHighlighter extends SyntaxHighlighterBase { private static final HashSet<IElementType> keyWordsSet = initKeyWordsSet(); private static final HashSet<IElementType> constantsSet = initConstantsSet(); -// private static final HashSet<IElementType> symbols = initSymbolsSet(); - public static final TextAttributesKey IDENTIFIER = - createTextAttributesKey("SD_IDENTIFIER", DefaultLanguageHighlighterColors.INSTANCE_FIELD); + createTextAttributesKey("SD_IDENTIFIER", DefaultLanguageHighlighterColors.IDENTIFIER); public static final TextAttributesKey CONSTANT = createTextAttributesKey("SD_CONSTANT", DefaultLanguageHighlighterColors.CONSTANT); public static final TextAttributesKey KEY = @@ -35,6 +33,8 @@ public class SdSyntaxHighlighter extends SyntaxHighlighterBase { createTextAttributesKey("SD_SYMBOL", DefaultLanguageHighlighterColors.BRACKETS); public static final TextAttributesKey STRING = createTextAttributesKey("SD_STRING", DefaultLanguageHighlighterColors.STRING); + public static final TextAttributesKey NUMBER = + createTextAttributesKey("SD_NUMBER", DefaultLanguageHighlighterColors.NUMBER); public static final TextAttributesKey COMMENT = createTextAttributesKey("SD_COMMENT", DefaultLanguageHighlighterColors.LINE_COMMENT); public static final TextAttributesKey BAD_CHARACTER = @@ -47,6 +47,7 @@ public class SdSyntaxHighlighter extends SyntaxHighlighterBase { private static final TextAttributesKey[] KEY_KEYS = new TextAttributesKey[]{KEY}; private static final TextAttributesKey[] SYMBOL_KEYS = new TextAttributesKey[]{SYMBOL}; private static final TextAttributesKey[] STRING_KEYS = new TextAttributesKey[]{STRING}; + private static final TextAttributesKey[] NUMBER_KEYS = new TextAttributesKey[]{NUMBER}; private static final TextAttributesKey[] COMMENT_KEYS = new TextAttributesKey[]{COMMENT}; private static final TextAttributesKey[] EMPTY_KEYS = new TextAttributesKey[0]; @@ -58,18 +59,16 @@ public class SdSyntaxHighlighter extends SyntaxHighlighterBase { @Override public TextAttributesKey @NotNull [] getTokenHighlights(IElementType tokenType) { - if (tokenType.equals(SdTypes.IDENTIFIER_VAL)) { + if (tokenType.equals(SdTypes.IDENTIFIER_VAL) || tokenType.equals(SdTypes.IDENTIFIER_WITH_DASH_VAL)) { return IDENTIFIER_KEYS; -// } else if (tokenType.equals(SdTypes.KEY)) { -// return KEY_KEYS; -// } else if (tokenType.equals(SdTypes.VALUE)) { -// return VALUE_KEYS; } else if (keyWordsSet.contains(tokenType)) { return KEY_KEYS; } else if (tokenType.equals(SdTypes.SYMBOL)) { return SYMBOL_KEYS; - } else if (tokenType.equals(SdTypes.STRING)) { + } else if (tokenType.equals(SdTypes.STRING_REG)) { return STRING_KEYS; + } else if (tokenType.equals(SdTypes.INTEGER_REG) || tokenType.equals(SdTypes.FLOAT_REG)) { + return NUMBER_KEYS; } else if (tokenType.equals(SdTypes.COMMENT)) { return COMMENT_KEYS; } else if (constantsSet.contains(tokenType)) { @@ -81,34 +80,81 @@ public class SdSyntaxHighlighter extends SyntaxHighlighterBase { } } -// private static HashSet<IElementType> initSymbolsSet() { -// HashSet<IElementType> symbols = new HashSet<>(); -// symbols.add('{'); -// return symbols; -// } - private static HashSet<IElementType> initKeyWordsSet() { HashSet<IElementType> keyWords = new HashSet<>(); - keyWords.add(SdTypes.MACRO); + keyWords.add(SdTypes.SEARCH); + keyWords.add(SdTypes.SCHEMA); keyWords.add(SdTypes.FIELD); keyWords.add(SdTypes.TYPE); - keyWords.add(SdTypes.SEARCH); - keyWords.add(SdTypes.DOCUMENT); + keyWords.add(SdTypes.INDEXING); + keyWords.add(SdTypes.INPUT); + keyWords.add(SdTypes.DOCUMENT_SUMMARY); keyWords.add(SdTypes.INHERITS); + keyWords.add(SdTypes.IMPORT); + keyWords.add(SdTypes.AS); + keyWords.add(SdTypes.FIELDSET); + keyWords.add(SdTypes.FIELDS); + keyWords.add(SdTypes.CONSTANT); + keyWords.add(SdTypes.FILE); + keyWords.add(SdTypes.URI); + keyWords.add(SdTypes.OUTPUT); + keyWords.add(SdTypes.ONNX_MODEL); + keyWords.add(SdTypes.ANNOTATION); + keyWords.add(SdTypes.RANK_PROFILE); + keyWords.add(SdTypes.MATCH_PHASE); + keyWords.add(SdTypes.FIRST_PHASE); + keyWords.add(SdTypes.EXPRESSION); + keyWords.add(SdTypes.SECOND_PHASE); + keyWords.add(SdTypes.RANK_PROPERTIES); + keyWords.add(SdTypes.MACRO); + keyWords.add(SdTypes.FUNCTION); + keyWords.add(SdTypes.INLINE); + keyWords.add(SdTypes.SUMMARY_FEATURES); + keyWords.add(SdTypes.RANK_FEATURES); + keyWords.add(SdTypes.CONSTANTS); + keyWords.add(SdTypes.DOCUMENT); keyWords.add(SdTypes.STRUCT); keyWords.add(SdTypes.STRUCT_FIELD); keyWords.add(SdTypes.MATCH); - keyWords.add(SdTypes.INDEXING); + keyWords.add(SdTypes.DISTANCE_METRIC); + keyWords.add(SdTypes.ALIAS); + keyWords.add(SdTypes.STEMMING); keyWords.add(SdTypes.RANK); keyWords.add(SdTypes.INDEXING_REWRITE); keyWords.add(SdTypes.QUERY_COMMAND); + keyWords.add(SdTypes.BOLDING); + keyWords.add(SdTypes.HNSW); + keyWords.add(SdTypes.SORTING); + keyWords.add(SdTypes.RANK_TYPE); + keyWords.add(SdTypes.WEIGHTEDSET); + keyWords.add(SdTypes.DICTIONARY); + keyWords.add(SdTypes.ID); + keyWords.add(SdTypes.NORMALIZING); + keyWords.add(SdTypes.WEIGHT); + return keyWords; } private static HashSet<IElementType> initConstantsSet() { HashSet<IElementType> constants = new HashSet<>(); - constants.add(SdTypes.SUMMARY); + constants.add(SdTypes.RAW_AS_BASE64_IN_SUMMARY); + constants.add(SdTypes.OMIT_SUMMARY_FEATURES); + constants.add(SdTypes.FROM_DISK); + constants.add(SdTypes.IGNORE_DEFAULT_RANK_FEATURES); constants.add(SdTypes.ATTRIBUTE); + constants.add(SdTypes.ORDER); + constants.add(SdTypes.MAX_HITS); + constants.add(SdTypes.DIVERSITY); + constants.add(SdTypes.MIN_GROUPS); + constants.add(SdTypes.CUTOFF_FACTOR); + constants.add(SdTypes.CUTOFF_STRATEGY); + constants.add(SdTypes.NUM_THREADS_PER_SEARCH); + constants.add(SdTypes.TERMWISE_LIMIT); + constants.add(SdTypes.MIN_HITS_PER_THREAD); + constants.add(SdTypes.NUM_SEARCH_PARTITION); + constants.add(SdTypes.KEEP_RANK_COUNT); + constants.add(SdTypes.RANK_SCORE_DROP_LIMIT); + constants.add(SdTypes.RERANK_COUNT); constants.add(SdTypes.TEXT); constants.add(SdTypes.EXACT); constants.add(SdTypes.EXACT_TERMINATOR); @@ -121,19 +167,40 @@ public class SdSyntaxHighlighter extends SyntaxHighlighterBase { constants.add(SdTypes.MAX_LENGTH); constants.add(SdTypes.GRAM); constants.add(SdTypes.GRAM_SIZE); + constants.add(SdTypes.SUMMARY); constants.add(SdTypes.INDEX); + constants.add(SdTypes.SET_LANGUAGE); constants.add(SdTypes.FAST_SEARCH); constants.add(SdTypes.FAST_ACCESS); - constants.add(SdTypes.ALIAS); - constants.add(SdTypes.SORTING); - constants.add(SdTypes.DISTANCE_METRIC); + constants.add(SdTypes.PAGED); + constants.add(SdTypes.MUTABLE); constants.add(SdTypes.FILTER); constants.add(SdTypes.NORMAL); constants.add(SdTypes.NONE); constants.add(SdTypes.FULL); constants.add(SdTypes.DYNAMIC); + constants.add(SdTypes.SOURCE); + constants.add(SdTypes.TO); constants.add(SdTypes.MATCHED_ELEMENTS_ONLY); - + constants.add(SdTypes.ON); + constants.add(SdTypes.OFF); + constants.add(SdTypes.TRUE); + constants.add(SdTypes.FALSE); + constants.add(SdTypes.ARITY); + constants.add(SdTypes.LOWER_BOUND); + constants.add(SdTypes.UPPER_BOUND); + constants.add(SdTypes.DENSE_POSTING_LIST_THRESHOLD); + constants.add(SdTypes.ENABLE_BM25); + constants.add(SdTypes.MAX_LINKS_PER_NODE); + constants.add(SdTypes.NEIGHBORS_TO_EXPLORE_AT_INSERT); + constants.add(SdTypes.MULTI_THREADED_INDEXING); + constants.add(SdTypes.ASCENDING); + constants.add(SdTypes.DESCENDING); + constants.add(SdTypes.STRENGTH); + constants.add(SdTypes.LOCALE); + constants.add(SdTypes.CREATE_IF_NONEXISTENT); + constants.add(SdTypes.REMOVE_IF_ZERO); + return constants; } } |