Skip to content

Commit 2654b4c

Browse files
author
appt2
committed
add css3 color
1 parent a025449 commit 2654b4c

File tree

15 files changed

+3206
-2752
lines changed

15 files changed

+3206
-2752
lines changed

app/src/main/java/io/github/rosemoe/sora/langs/java/JavaCodeAnalyzer.java

Lines changed: 44 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
package io.github.rosemoe.sora.langs.java;
22

3+
import Ninja.coder.Ghostemane.code.marco.ColorCompat;
34
import android.graphics.Color;
45
import android.util.Log;
6+
import io.github.rosemoe.sora.data.Span;
57
import io.github.rosemoe.sora.text.TextStyle;
8+
import io.github.rosemoe.sora.widget.ListCss3Color;
69
import java.util.Stack;
710
import io.github.rosemoe.sora.data.BlockLine;
811
import org.antlr.v4.runtime.CharStreams;
@@ -45,6 +48,7 @@ public void analyze(
4548
}
4649
line = token.getLine() - 1;
4750
type = token.getType();
51+
String text1 = token.getText();
4852
column = token.getCharPositionInLine();
4953
if (type == JavaLexer.EOF) {
5054
lastLine = line;
@@ -102,7 +106,7 @@ public void analyze(
102106
result.addIfNeeded(
103107
line,
104108
column,
105-
TextStyle.makeStyle(EditorColorScheme.KEYWORD, 0, true, false, false));
109+
TextStyle.makeStyle(EditorColorScheme.KEYWORD, 0, true, false, false, true));
106110
break;
107111
case JavaLexer.DECIMAL_LITERAL:
108112
case JavaLexer.HEX_LITERAL:
@@ -116,8 +120,11 @@ public void analyze(
116120
result.addIfNeeded(line, column, EditorColorScheme.LITERAL);
117121
break;
118122
case JavaLexer.STRING_LITERAL:
119-
result.addIfNeeded(line, column, forString());
120-
break;
123+
{
124+
result.addIfNeeded(line, column, forString());
125+
break;
126+
}
127+
121128
case JavaLexer.LPAREN:
122129
case JavaLexer.RPAREN:
123130
case JavaLexer.LBRACK:
@@ -185,6 +192,7 @@ public void analyze(
185192
case JavaLexer.IDENTIFIER:
186193
{
187194
int colorid = EditorColorScheme.TEXT_NORMAL;
195+
boolean isBold , isItalic ,isUnderLineMode = false;
188196
if (previous == JavaLexer.AT) {
189197
colorid = EditorColorScheme.Ninja;
190198
}
@@ -213,16 +221,41 @@ public void analyze(
213221
if (token.getText().matches(regex)) {
214222
colorid = EditorColorScheme.KEYWORD;
215223
}
216-
if(previous == JavaLexer.INT) {
217-
colorid = EditorColorScheme.LITERAL;
218-
}
219-
if(previous == JavaLexer.CASE || previous == JavaLexer.FINAL) {
220-
colorid = EditorColorScheme.ATTRIBUTE_NAME;
224+
if (previous == JavaLexer.INT) {
225+
colorid = EditorColorScheme.LITERAL;
221226
}
227+
if (previous == JavaLexer.CASE || previous == JavaLexer.FINAL) {
228+
colorid = EditorColorScheme.ATTRIBUTE_NAME;
229+
}
230+
231+
// if (text1.equals("red")) {
232+
// try {
233+
// result.addIfNeeded(line, column, EditorColorScheme.ATTRIBUTE_VALUE);
234+
// int wordLength = token.getText().length(); // طول کلمه‌ی به رنگ قرمز
235+
// int endOfRed = column + wordLength;
236+
// //test
237+
// Span span = Span.obtain(column, EditorColorScheme.ATTRIBUTE_VALUE);
238+
// span.setUnderlineColor(ColorCompat.RED);
239+
// result.add(line, span);
240+
//
241+
// Span middle = Span.obtain(endOfRed , EditorColorScheme.LITERAL);
242+
// middle.setUnderlineColor(Color.TRANSPARENT);
243+
// result.add(line, middle);
244+
//
245+
// Span end =
246+
// Span.obtain(endOfRed, TextStyle.makeStyle(EditorColorScheme.TEXT_NORMAL));
247+
// end.setUnderlineColor(Color.TRANSPARENT);
248+
// result.add(line, end);
249+
//
250+
// //break;
251+
// } catch (Exception ignore) {
252+
// ignore.printStackTrace();
253+
// }
254+
// }
255+
ListCss3Color.initColor(token,line,column,result);
222256
result.addIfNeeded(line, column, colorid);
223257
break;
224258
}
225-
226259
case JavaLexer.LBRACE:
227260
result.addIfNeeded(line, column, EditorColorScheme.OPERATOR);
228261
if (stack.isEmpty()) {
@@ -251,6 +284,7 @@ public void analyze(
251284

252285
default:
253286
result.addIfNeeded(line, column, EditorColorScheme.TEXT_NORMAL);
287+
254288
break;
255289
}
256290

@@ -275,4 +309,5 @@ public long withoutCompletion(int id) {
275309
public long forString() {
276310
return TextStyle.makeStyle(EditorColorScheme.LITERAL, 0, true, true, false);
277311
}
312+
278313
}

0 commit comments

Comments
 (0)