Skip to content

Commit 26e4e8b

Browse files
committed
Fix CSS for Linux
Add patch for disabling Graal Python
1 parent 07d9e92 commit 26e4e8b

File tree

3 files changed

+231
-2
lines changed

3 files changed

+231
-2
lines changed

src/main/resources/static/css/pastorg/code.css

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ textarea, input, body {
1616
}
1717
textarea, input {
1818
padding: 2px;
19-
font-family: Consolas, Monaco, Menlo, "DejaVu Mono", "Courier New", monospace;
19+
font: 14px Consolas, Monaco, Menlo, "DejaVu Mono", "Courier New", monospace;
2020
border: 1px #777 solid;
2121
}
2222
textarea:focus, input:focus {
@@ -41,7 +41,7 @@ textarea {
4141
padding: 5px;
4242
margin-left: auto;
4343
margin-right: auto;
44-
font: 11px "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, "DejaVu Sans", sans-serif;
44+
font: 11px "DejaVu Sans", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
4545
border: 1px #777 solid;
4646
}
4747
.block {

util/Disable-GraalPython.patch

Lines changed: 229 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,229 @@
1+
From 8dc0a7ea50bb88c18292c43003f6e5c00ecdf452 Mon Sep 17 00:00:00 2001
2+
From: EXL <exlmotodev@gmail.com>
3+
Date: Thu, 17 Dec 2020 22:02:36 +0700
4+
Subject: [PATCH 2/2] Disable GraalPython
5+
6+
---
7+
.../code/highlight/HighlightService.java | 30 +++++++++----------
8+
.../code/highlight/enumeration/Mode.java | 19 ++++++------
9+
.../code/highlight/HighlightServiceTest.java | 6 ++--
10+
.../highlight/enumeration/ModeUnitTest.java | 6 ++--
11+
4 files changed, 31 insertions(+), 30 deletions(-)
12+
13+
diff --git a/src/main/java/ru/exlmoto/code/highlight/HighlightService.java b/src/main/java/ru/exlmoto/code/highlight/HighlightService.java
14+
index 1044a3e..2ef4276 100644
15+
--- a/src/main/java/ru/exlmoto/code/highlight/HighlightService.java
16+
+++ b/src/main/java/ru/exlmoto/code/highlight/HighlightService.java
17+
@@ -15,7 +15,7 @@ import ru.exlmoto.code.helper.UtilityHelper;
18+
import ru.exlmoto.code.highlight.enumeration.Mode;
19+
import ru.exlmoto.code.highlight.filter.HighlightFilter;
20+
import ru.exlmoto.code.highlight.implementation.HighlightJs;
21+
-import ru.exlmoto.code.highlight.implementation.HighlightPygments;
22+
+//import ru.exlmoto.code.highlight.implementation.HighlightPygments;
23+
import ru.exlmoto.code.highlight.implementation.HighlightRouge;
24+
import ru.exlmoto.code.highlight.parser.Options;
25+
import ru.exlmoto.code.highlight.parser.OptionsParser;
26+
@@ -28,7 +28,7 @@ import java.util.Map;
27+
28+
import static ru.exlmoto.code.highlight.enumeration.Mode.HighlightJs;
29+
import static ru.exlmoto.code.highlight.enumeration.Mode.HighlightRouge;
30+
-import static ru.exlmoto.code.highlight.enumeration.Mode.HighlightPygments;
31+
+//import static ru.exlmoto.code.highlight.enumeration.Mode.HighlightPygments;
32+
//import static ru.exlmoto.code.highlight.enumeration.Mode.HighlightPygmentsJython;
33+
34+
@Service
35+
@@ -43,7 +43,7 @@ public class HighlightService {
36+
private final CodeConfiguration config;
37+
38+
private final HighlightJs highlightJs;
39+
-private final HighlightPygments highlightPygments;
40+
+// private final HighlightPygments highlightPygments;
41+
private final HighlightRouge highlightRouge;
42+
43+
private final Map<Mode, Pair<String, String>> versions;
44+
@@ -54,7 +54,7 @@ public class HighlightService {
45+
UtilityHelper util,
46+
CodeConfiguration config,
47+
HighlightJs highlightJs,
48+
- HighlightPygments highlightPygments,
49+
+// HighlightPygments highlightPygments,
50+
HighlightRouge highlightRouge) {
51+
this.context = context;
52+
this.optionsParser = optionsParser;
53+
@@ -62,7 +62,7 @@ public class HighlightService {
54+
this.util = util;
55+
this.config = config;
56+
this.highlightJs = highlightJs;
57+
-this.highlightPygments = highlightPygments;
58+
+// this.highlightPygments = highlightPygments;
59+
this.highlightRouge = highlightRouge;
60+
61+
this.versions = new HashMap<>();
62+
@@ -81,10 +81,10 @@ public class HighlightService {
63+
versions.get(HighlightRouge).getFirst(), versions.get(HighlightRouge).getSecond()));
64+
65+
// highlightPygments.setUseJython(false);
66+
-versions.put(HighlightPygments,
67+
-Pair.of(highlightPygments.getLanguageVersion(), highlightPygments.getLibraryVersion()));
68+
-log.info(String.format("GraalVM Python version '%s' and Pygments version '%s' loaded.",
69+
-versions.get(HighlightPygments).getFirst(), versions.get(HighlightPygments).getSecond()));
70+
+// versions.put(HighlightPygments,
71+
+// Pair.of(highlightPygments.getLanguageVersion(), highlightPygments.getLibraryVersion()));
72+
+// log.info(String.format("GraalVM Python version '%s' and Pygments version '%s' loaded.",
73+
+// versions.get(HighlightPygments).getFirst(), versions.get(HighlightPygments).getSecond()));
74+
75+
// highlightPygments.setUseJython(true);
76+
// versions.put(HighlightPygmentsJython,
77+
@@ -104,8 +104,8 @@ public class HighlightService {
78+
highlightRouge.generateCssStyle("base16")
79+
.ifPresent((css) -> log.info(HighlightRouge.name() + ":\n" + css + "\n---\n"));
80+
// highlightPygments.setUseJython(false);
81+
-highlightPygments.generateCssStyle("vs")
82+
-.ifPresent((css) -> log.info(HighlightPygments.name() + ":\n" + css + "\n---\n"));
83+
+// highlightPygments.generateCssStyle("vs")
84+
+// .ifPresent((css) -> log.info(HighlightPygments.name() + ":\n" + css + "\n---\n"));
85+
// highlightPygments.setUseJython(true);
86+
// highlightPygments.generateCssStyle("vim")
87+
// .ifPresent((css) -> log.info(HighlightPygmentsJython.name() + ":\n" + css + "\n---\n"));
88+
@@ -169,10 +169,10 @@ public class HighlightService {
89+
case HighlightRouge: {
90+
return highlightRouge.renderHtmlFromCode(options.getLanguage(), code).orElseThrow(() -> error);
91+
}
92+
-case HighlightPygments: {
93+
+// case HighlightPygments: {
94+
// highlightPygments.setUseJython(false);
95+
-return highlightPygments.renderHtmlFromCode(options.getLanguage(), code).orElseThrow(() -> error);
96+
-}
97+
+// return highlightPygments.renderHtmlFromCode(options.getLanguage(), code).orElseThrow(() -> error);
98+
+// }
99+
// case HighlightPygmentsJython: {
100+
// highlightPygments.setUseJython(true);
101+
// return highlightPygments.renderHtmlFromCode(options.getLanguage(), code).orElseThrow(() -> error);
102+
@@ -194,7 +194,7 @@ public class HighlightService {
103+
this.versions = new HashMap<>();
104+
versions.put(HighlightJs, Pair.of("20.3.0", "10.0.1"));
105+
versions.put(HighlightRouge, Pair.of("2.6.6", "3.1.0"));
106+
-versions.put(HighlightPygments, Pair.of("3.8.0", "2.7.2"));
107+
+// versions.put(HighlightPygments, Pair.of("3.8.0", "2.7.2"));
108+
// versions.put(HighlightPygmentsJython, Pair.of("2.7.2", "2.6.2"));
109+
}
110+
111+
diff --git a/src/main/java/ru/exlmoto/code/highlight/enumeration/Mode.java b/src/main/java/ru/exlmoto/code/highlight/enumeration/Mode.java
112+
index fe0edfd..6ffdb0a 100644
113+
--- a/src/main/java/ru/exlmoto/code/highlight/enumeration/Mode.java
114+
+++ b/src/main/java/ru/exlmoto/code/highlight/enumeration/Mode.java
115+
@@ -8,7 +8,8 @@ public enum Mode {
116+
HighlightJs,
117+
HighlightRouge,
118+
// HighlightPygmentsJython,
119+
-HighlightPygments;
120+
+// HighlightPygments
121+
+;
122+
123+
public static String getName(Mode mode) {
124+
switch (mode) {
125+
@@ -17,9 +18,9 @@ public enum Mode {
126+
return "Highlight.js";
127+
case HighlightRouge:
128+
return "Rouge";
129+
-case HighlightPygments:
130+
+// case HighlightPygments:
131+
// case HighlightPygmentsJython:
132+
-return "Pygments";
133+
+// return "Pygments";
134+
}
135+
}
136+
137+
@@ -28,7 +29,7 @@ public enum Mode {
138+
default:
139+
case HighlightJs:
140+
case HighlightRouge:
141+
-case HighlightPygments:
142+
+// case HighlightPygments:
143+
return "GraalVM";
144+
// case HighlightPygmentsJython:
145+
// return "Jython";
146+
@@ -44,8 +45,8 @@ public enum Mode {
147+
return "code.table.moderate";
148+
// case HighlightPygmentsJython:
149+
// return "code.table.slow";
150+
-case HighlightPygments:
151+
-return "code.table.very.slow";
152+
+// case HighlightPygments:
153+
+// return "code.table.very.slow";
154+
}
155+
}
156+
157+
@@ -56,9 +57,9 @@ public enum Mode {
158+
return "JavaScript";
159+
case HighlightRouge:
160+
return "Ruby";
161+
-case HighlightPygments:
162+
+// case HighlightPygments:
163+
// case HighlightPygmentsJython:
164+
-return "Python";
165+
+// return "Python";
166+
}
167+
}
168+
169+
@@ -74,7 +75,7 @@ public enum Mode {
170+
public static String getCss(Mode mode, Skin theme) {
171+
switch (mode) {
172+
case HighlightRouge:
173+
-case HighlightPygments:
174+
+// case HighlightPygments:
175+
// case HighlightPygmentsJython:
176+
return "static/css/" + theme.name() + "/merged.css";
177+
}
178+
diff --git a/src/test/java/ru/exlmoto/code/highlight/HighlightServiceTest.java b/src/test/java/ru/exlmoto/code/highlight/HighlightServiceTest.java
179+
index 3f53477..d51de50 100644
180+
--- a/src/test/java/ru/exlmoto/code/highlight/HighlightServiceTest.java
181+
+++ b/src/test/java/ru/exlmoto/code/highlight/HighlightServiceTest.java
182+
@@ -53,14 +53,14 @@ class HighlightServiceTest {
183+
resource.readFileToString("classpath:/expected/HighlightJs/" + filename + ".html.txt");
184+
String htmlRouge =
185+
resource.readFileToString("classpath:/expected/Rouge/" + filename + ".html.txt");
186+
-String htmlPygments =
187+
-resource.readFileToString("classpath:/expected/Pygments/" + filename + ".html.txt");
188+
+// String htmlPygments =
189+
+// resource.readFileToString("classpath:/expected/Pygments/" + filename + ".html.txt");
190+
// String htmlPygmentsJython =
191+
// resource.readFileToString("classpath:/expected/PygmentsJython/" + filename + ".html.txt");
192+
193+
assertEquals(htmlHighlightJs, highlight.highlightCode(Mode.HighlightJs, lang, snippet));
194+
assertEquals(htmlRouge, highlight.highlightCode(Mode.HighlightRouge, lang, snippet));
195+
-assertEquals(htmlPygments, highlight.highlightCode(Mode.HighlightPygments, lang, snippet));
196+
+// assertEquals(htmlPygments, highlight.highlightCode(Mode.HighlightPygments, lang, snippet));
197+
// assertEquals(htmlPygmentsJython, highlight.highlightCode(Mode.HighlightPygmentsJython, lang, snippet));
198+
}
199+
200+
diff --git a/src/test/java/ru/exlmoto/code/highlight/enumeration/ModeUnitTest.java b/src/test/java/ru/exlmoto/code/highlight/enumeration/ModeUnitTest.java
201+
index 0a6f286..7562bd2 100644
202+
--- a/src/test/java/ru/exlmoto/code/highlight/enumeration/ModeUnitTest.java
203+
+++ b/src/test/java/ru/exlmoto/code/highlight/enumeration/ModeUnitTest.java
204+
@@ -14,7 +14,7 @@ class ModeUnitTest {
205+
assertEquals(Mode.HighlightJs, Mode.getMode(" "));
206+
assertEquals(Mode.HighlightJs, Mode.getMode("unknown"));
207+
assertEquals(Mode.HighlightJs, Mode.getMode("HighlightJs"));
208+
-assertEquals(Mode.HighlightPygments, Mode.getMode("HighlightPygments"));
209+
+// assertEquals(Mode.HighlightPygments, Mode.getMode("HighlightPygments"));
210+
// assertEquals(Mode.HighlightPygmentsJython, Mode.getMode("HighlightPygmentsJython"));
211+
assertEquals(Mode.HighlightRouge, Mode.getMode("HighlightRouge"));
212+
}
213+
@@ -22,11 +22,11 @@ class ModeUnitTest {
214+
@Test
215+
public void testGetCss() {
216+
assertEquals("static/css/techno/hjs.css", Mode.getCss(Mode.HighlightJs, Skin.techno));
217+
-assertEquals("static/css/techno/merged.css", Mode.getCss(Mode.HighlightPygments, Skin.techno));
218+
+// assertEquals("static/css/techno/merged.css", Mode.getCss(Mode.HighlightPygments, Skin.techno));
219+
// assertEquals("static/css/techno/merged.css", Mode.getCss(Mode.HighlightPygmentsJython, Skin.techno));
220+
assertEquals("static/css/techno/merged.css", Mode.getCss(Mode.HighlightRouge, Skin.techno));
221+
assertEquals("static/css/pastorg/hjs.css", Mode.getCss(Mode.HighlightJs, Skin.pastorg));
222+
-assertEquals("static/css/pastorg/merged.css", Mode.getCss(Mode.HighlightPygments, Skin.pastorg));
223+
+// assertEquals("static/css/pastorg/merged.css", Mode.getCss(Mode.HighlightPygments, Skin.pastorg));
224+
// assertEquals("static/css/pastorg/merged.css", Mode.getCss(Mode.HighlightPygmentsJython, Skin.pastorg));
225+
assertEquals("static/css/pastorg/merged.css", Mode.getCss(Mode.HighlightRouge, Skin.pastorg));
226+
}
227+
--
228+
2.29.2
229+
File renamed without changes.

0 commit comments

Comments
 (0)