From: Vladimír Vondruš Date: Mon, 16 Sep 2024 10:14:53 +0000 (+0200) Subject: m.code: split away ANSI highlighting to a separate test file. X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~cjwatson/git?a=commitdiff_plain;h=b18686c697ac94898431bcbc4a69f34ddb31eea2;p=blog.git m.code: split away ANSI highlighting to a separate test file. The output of AnsiLexer doesn't change depending on Pygments version, which means I don't need several copies of it, unlike the rest. --- diff --git a/plugins/m/test/code/ansi.html b/plugins/m/test/code/ansi.html new file mode 100644 index 00000000..541239a1 --- /dev/null +++ b/plugins/m/test/code/ansi.html @@ -0,0 +1,147 @@ + + + + + m.code colored terminal output | A Pelican Blog + + + + + + +
+
+
+
+
+
+

m.code colored terminal output

+ +

Trivial console output, including inline code:

+
![mosra@don-perverzo m.css]$ ls
+CONTRIBUTING.rst  CREDITS.rst  doc            plugins        README.rst
+COPYING           css          documentation  pelican-theme  site
+
+ASan reports:
+
+=>0x0c287fff8030: 00[fc]fc fc fc fc fc fc fc fc fc fa fa fa fa fa
+

All possible console colors:

+
Named foreground colors:
+  Black Red Green Yellow Blue Magenta Cyan White Default
+  BrightBlack BrightRed BrightGreen BrightYellow
+  BrightBlue BrightMagenta BrightCyan BrightWhite
+
+RGB foreground colors:
+  91,157,217 157,217,91 217,91,157
+
+Palette-based foreground colors:
+    0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
+   16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31
+   32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47
+   48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63
+   64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79
+   80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95
+   96  97  98  99 100 101 102 103 104 105 106 107 108 109 110 111
+  112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
+  128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
+  144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
+  160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
+  176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
+  192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
+  208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223
+  224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
+  240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255
+
+Reset undoes foreground color
+  Green Reset
+  Red Reset, with implicit '0'
+
+Reset or normal intensity undo brightness
+  Bright Reset
+  Bright Normal intensity
+
+Non-bright named foreground colors and brightness stack 
+  Bright and Yellow foreground in one Sequence
+  Yellow foreground and Bright in one Sequence
+  Bright Sequence and Yellow foreground Sequence
+  Yellow foreground Sequence and Bright Sequence
+
+Bright named foreground colors do not heed or change brightness flag,
+nor do RGB or palette-based colors
+  Bright BrightGreen (still bright) Green
+  Default BrightGreen Green
+  Bright palette 9 (still bright) Blue palette 9
+  Blue palette 9 Blue palette 9
+  Bright rgb(255,255,0) (still bright) Blue rgb(255,255,0)
+  Blue rgb(255,255,0) Blue rgb(255,255,0)
+
+Named background colors:
+  Black Red Green Yellow Blue Magenta Cyan White Default
+  BrightBlack BrightRed BrightGreen BrightYellow
+  BrightBlue BrightMagenta BrightCyan BrightWhite
+
+RGB background colors:
+  91,157,217 157,217,91 217,91,157
+
+Palette-based background colors:
+    0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
+   16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31
+   32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47
+   48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63
+   64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79
+   80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95
+   96  97  98  99 100 101 102 103 104 105 106 107 108 109 110 111
+  112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
+  128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
+  144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
+  160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
+  176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
+  192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
+  208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223
+  224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
+  240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255
+
+Background colors do not heed or change brightness flag
+  Bright BrightGreen Green
+  BrightGreen Black
+
+Foreground and background colors stack:
+  Blue on Yellow
+  Palette 12 on BrightYellow
+  White on Palette 88
+  BrightWhite on RGB 128,0,128
+  RGB 0,128,128 on RGB 0,128,128
+  RGB 192,192,0 on RGB 0,128,128
+
+Inverted colors:
+  Blue Inverted Inverted again Reset
+  Blue Inverted Inverted back Reset
+  Blue Inverted and bright Inverted again Reset
+  Blue Inverted and bright Inverted back Reset
+  Bright blue Inverted Inverted again Reset
+  Bright blue Inverted Inverted back Reset
+
+Other commands are ignored
+  half-bright
+  set underscore
+  set blink
+  reset selected mapping, display control flag, and toggle
+  select null mapping, set display control flag, reset
+  select null mapping, set display control flag, set toggle
+  set underline
+  underline off
+  blink off
+ +
+
+
+
+
+ + diff --git a/plugins/m/test/code/ansi.rst b/plugins/m/test/code/ansi.rst new file mode 100644 index 00000000..aeffd366 --- /dev/null +++ b/plugins/m/test/code/ansi.rst @@ -0,0 +1,15 @@ +m.code colored terminal output +############################## + +.. role:: ansi(code) + :language: ansi + +Trivial console output, including :ansi:`inline` code: + +.. include:: console.ansi + :code: ansi + +All possible console colors: + +.. include:: console-colors.ansi + :code: ansi diff --git a/plugins/m/test/code/page.html b/plugins/m/test/code/page.html index 2cb4e0e1..56c8ed93 100644 --- a/plugins/m/test/code/page.html +++ b/plugins/m/test/code/page.html @@ -38,123 +38,9 @@ highlighting:

int main() {
     return 1;
 }
-

Inline code is here: constexpr int foo = 5;.

-
![mosra@don-perverzo m.css]$ ls
-CONTRIBUTING.rst  CREDITS.rst  doc            plugins        README.rst
-COPYING           css          documentation  pelican-theme  site
-
-ASan reports:
-
-=>0x0c287fff8030: 00[fc]fc fc fc fc fc fc fc fc fc fa fa fa fa fa
-

Syntax highlighting:

+

Inline code is here: constexpr int foo = 5;. Syntax highlighting:

# Comment
 var = "string{}escape\n"
-

Console colors, including inline code:

-
Named foreground colors:
-  Black Red Green Yellow Blue Magenta Cyan White Default
-  BrightBlack BrightRed BrightGreen BrightYellow
-  BrightBlue BrightMagenta BrightCyan BrightWhite
-
-RGB foreground colors:
-  91,157,217 157,217,91 217,91,157
-
-Palette-based foreground colors:
-    0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
-   16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31
-   32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47
-   48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63
-   64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79
-   80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95
-   96  97  98  99 100 101 102 103 104 105 106 107 108 109 110 111
-  112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
-  128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
-  144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
-  160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
-  176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
-  192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
-  208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223
-  224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
-  240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255
-
-Reset undoes foreground color
-  Green Reset
-  Red Reset, with implicit '0'
-
-Reset or normal intensity undo brightness
-  Bright Reset
-  Bright Normal intensity
-
-Non-bright named foreground colors and brightness stack 
-  Bright and Yellow foreground in one Sequence
-  Yellow foreground and Bright in one Sequence
-  Bright Sequence and Yellow foreground Sequence
-  Yellow foreground Sequence and Bright Sequence
-
-Bright named foreground colors do not heed or change brightness flag,
-nor do RGB or palette-based colors
-  Bright BrightGreen (still bright) Green
-  Default BrightGreen Green
-  Bright palette 9 (still bright) Blue palette 9
-  Blue palette 9 Blue palette 9
-  Bright rgb(255,255,0) (still bright) Blue rgb(255,255,0)
-  Blue rgb(255,255,0) Blue rgb(255,255,0)
-
-Named background colors:
-  Black Red Green Yellow Blue Magenta Cyan White Default
-  BrightBlack BrightRed BrightGreen BrightYellow
-  BrightBlue BrightMagenta BrightCyan BrightWhite
-
-RGB background colors:
-  91,157,217 157,217,91 217,91,157
-
-Palette-based background colors:
-    0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
-   16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31
-   32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47
-   48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63
-   64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79
-   80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95
-   96  97  98  99 100 101 102 103 104 105 106 107 108 109 110 111
-  112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
-  128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
-  144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
-  160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
-  176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
-  192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
-  208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223
-  224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
-  240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255
-
-Background colors do not heed or change brightness flag
-  Bright BrightGreen Green
-  BrightGreen Black
-
-Foreground and background colors stack:
-  Blue on Yellow
-  Palette 12 on BrightYellow
-  White on Palette 88
-  BrightWhite on RGB 128,0,128
-  RGB 0,128,128 on RGB 0,128,128
-  RGB 192,192,0 on RGB 0,128,128
-
-Inverted colors:
-  Blue Inverted Inverted again Reset
-  Blue Inverted Inverted back Reset
-  Blue Inverted and bright Inverted again Reset
-  Blue Inverted and bright Inverted back Reset
-  Bright blue Inverted Inverted again Reset
-  Bright blue Inverted Inverted back Reset
-
-Other commands are ignored
-  half-bright
-  set underscore
-  set blink
-  reset selected mapping, display control flag, and toggle
-  select null mapping, set display control flag, reset
-  select null mapping, set display control flag, set toggle
-  set underline
-  underline off
-  blink off
// this language is not highlighted

Properly preserve backslashes: \frac{a}{b} ... and backticks: :ref:`a function <os.path.join()>`

diff --git a/plugins/m/test/code/page.rst b/plugins/m/test/code/page.rst index 2803d8e5..907f6be0 100644 --- a/plugins/m/test/code/page.rst +++ b/plugins/m/test/code/page.rst @@ -47,23 +47,13 @@ highlighting: :class: m-inverted :hl-lines: 2 -Inline code is here: :cpp:`constexpr int foo = 5;`. - -.. include:: console.ansi - :code: ansi - -Syntax highlighting: +Inline code is here: :cpp:`constexpr int foo = 5;`. Syntax highlighting: .. code:: py # Comment var = "string{}escape\n" -Console colors, including :ansi:`inline` code: - -.. include:: console-colors.ansi - :code: ansi - .. code:: whatthefuck // this language is not highlighted diff --git a/plugins/m/test/test_code.py b/plugins/m/test/test_code.py index 040bc845..9a430366 100644 --- a/plugins/m/test/test_code.py +++ b/plugins/m/test/test_code.py @@ -55,3 +55,4 @@ class Code(PelicanPluginTestCase): }) self.assertEqual(*self.actual_expected_contents('page.html')) + self.assertEqual(*self.actual_expected_contents('ansi.html'))