@@ -10,6 +10,7 @@ object SyntaxThemes {
1010
1111 val dark = mapOf (
1212 DARCULA_KEY to SyntaxTheme (
13+ key = DARCULA_KEY ,
1314 code = 0xEDEDED ,
1415 keyword = 0xCC7832 ,
1516 string = 0x6A8759 ,
@@ -21,6 +22,7 @@ object SyntaxThemes {
2122 mark = 0xEDEDED
2223 ),
2324 MONOKAI_KEY to SyntaxTheme (
25+ key = MONOKAI_KEY ,
2426 code = 0xF8F8F2 ,
2527 keyword = 0xF92672 ,
2628 string = 0xE6DB74 ,
@@ -32,6 +34,7 @@ object SyntaxThemes {
3234 mark = 0xF8F8F2
3335 ),
3436 NOTEPAD_KEY to SyntaxTheme (
37+ key = NOTEPAD_KEY ,
3538 code = 0x000080 ,
3639 keyword = 0x0000FF ,
3740 string = 0x808080 ,
@@ -43,6 +46,7 @@ object SyntaxThemes {
4346 mark = 0xAA2C8C
4447 ),
4548 MATRIX_KEY to SyntaxTheme (
49+ key = MATRIX_KEY ,
4650 code = 0x008500 ,
4751 keyword = 0x008500 ,
4852 string = 0x269926 ,
@@ -54,6 +58,7 @@ object SyntaxThemes {
5458 mark = 0x008500
5559 ),
5660 PASTEL_KEY to SyntaxTheme (
61+ key = PASTEL_KEY ,
5762 code = 0xDFDEE0 ,
5863 keyword = 0x729FCF ,
5964 string = 0x93CF55 ,
@@ -68,6 +73,7 @@ object SyntaxThemes {
6873
6974 val light = mapOf (
7075 DARCULA_KEY to SyntaxTheme (
76+ key = DARCULA_KEY ,
7177 code = 0x121212 ,
7278 keyword = 0xCC7832 ,
7379 string = 0x6A8759 ,
@@ -79,6 +85,7 @@ object SyntaxThemes {
7985 mark = 0x121212
8086 ),
8187 MONOKAI_KEY to SyntaxTheme (
88+ key = MONOKAI_KEY ,
8289 code = 0x07070D ,
8390 keyword = 0xF92672 ,
8491 string = 0xE6DB74 ,
@@ -90,6 +97,7 @@ object SyntaxThemes {
9097 mark = 0x07070D
9198 ),
9299 NOTEPAD_KEY to SyntaxTheme (
100+ key = NOTEPAD_KEY ,
93101 code = 0x000080 ,
94102 keyword = 0x0000FF ,
95103 string = 0x808080 ,
@@ -101,6 +109,7 @@ object SyntaxThemes {
101109 mark = 0xAA2C8C
102110 ),
103111 MATRIX_KEY to SyntaxTheme (
112+ key = MATRIX_KEY ,
104113 code = 0x008500 ,
105114 keyword = 0x008500 ,
106115 string = 0x269926 ,
@@ -112,6 +121,7 @@ object SyntaxThemes {
112121 mark = 0x008500
113122 ),
114123 PASTEL_KEY to SyntaxTheme (
124+ key = PASTEL_KEY ,
115125 code = 0x20211F ,
116126 keyword = 0x729FCF ,
117127 string = 0x93CF55 ,
@@ -127,10 +137,18 @@ object SyntaxThemes {
127137 fun themes (darkMode : Boolean = false) = if (darkMode) dark else light
128138
129139 fun default (darkMode : Boolean = false) = themes(darkMode)[DARCULA_KEY ]!!
140+
130141 fun darcula (darkMode : Boolean = false) = themes(darkMode)[DARCULA_KEY ]!!
131142 fun monokai (darkMode : Boolean = false) = themes(darkMode)[MONOKAI_KEY ]!!
132143 fun notepad (darkMode : Boolean = false) = themes(darkMode)[NOTEPAD_KEY ]!!
133144 fun matrix (darkMode : Boolean = false) = themes(darkMode)[MATRIX_KEY ]!!
134145 fun pastel (darkMode : Boolean = false) = themes(darkMode)[PASTEL_KEY ]!!
135146
147+ fun getNames (): List <String > = SyntaxThemes .light.map {
148+ it.key
149+ .lowercase()
150+ .replaceFirstChar { if (it.isLowerCase()) it.titlecase() else it.toString() }
151+ }
152+
153+ fun SyntaxTheme.useDark (darkMode : Boolean ) = if (darkMode) dark[key] else light[key]
136154}
0 commit comments