From f3cd6134f1e8f5cf43f490155589beb468bab36e Mon Sep 17 00:00:00 2001
From: deepanshu <62979448+deepanshu44@users.noreply.github.com>
Date: Mon, 1 Aug 2022 11:29:12 +0530
Subject: [PATCH 1/2] print colors
---
demo/client.ts | 287 ++++++++++++++++++++++++++++++++++++++++++++++++
demo/index.html | 1 +
2 files changed, 288 insertions(+)
diff --git a/demo/client.ts b/demo/client.ts
index c0d3af6d..8f7a8abe 100644
--- a/demo/client.ts
+++ b/demo/client.ts
@@ -188,6 +188,7 @@ if (document.location.pathname === '/test') {
document.getElementById('load-test').addEventListener('click', loadTest);
document.getElementById('powerline-symbol-test').addEventListener('click', powerlineSymbolTest);
document.getElementById('underline-test').addEventListener('click', underlineTest);
+ document.getElementById('ansi-colors').addEventListener('click', ansiColorsTest);
document.getElementById('add-decoration').addEventListener('click', addDecoration);
document.getElementById('add-overview-ruler').addEventListener('click', addOverviewRuler);
}
@@ -789,6 +790,292 @@ function underlineTest() {
term.write('\x1b[0m\n\r');
}
+function ansiColorsTest() {
+ term.write('\n\r');
+ term.write(
+`\x1b[48;5;1m \x1b[0m`+
+`\x1b[48;5;2m \x1b[0m`+
+`\x1b[48;5;3m \x1b[0m`+
+`\x1b[48;5;4m \x1b[0m`+
+`\x1b[48;5;5m \x1b[0m`+
+`\x1b[48;5;6m \x1b[0m`+
+`\x1b[48;5;7m \x1b[0m`+
+`\x1b[48;5;8m \x1b[0m`+
+`\x1b[48;5;9m \x1b[0m`+
+`\x1b[48;5;10m \x1b[0m`);
+term.write(
+`\x1b[48;5;11m \x1b[0m`+
+`\x1b[48;5;12m \x1b[0m`+
+`\x1b[48;5;13m \x1b[0m`+
+`\x1b[48;5;14m \x1b[0m`+
+`\x1b[48;5;15m \x1b[0m`+
+`\x1b[48;5;16m \x1b[0m`+
+`\x1b[48;5;17m \x1b[0m`+
+`\x1b[48;5;18m \x1b[0m`+
+`\x1b[48;5;19m \x1b[0m`+
+`\x1b[48;5;20m \x1b[0m`);
+term.write(
+`\x1b[48;5;21m \x1b[0m`+
+`\x1b[48;5;22m \x1b[0m`+
+`\x1b[48;5;23m \x1b[0m`+
+`\x1b[48;5;24m \x1b[0m`+
+`\x1b[48;5;25m \x1b[0m`+
+`\x1b[48;5;26m \x1b[0m`+
+`\x1b[48;5;27m \x1b[0m`+
+`\x1b[48;5;28m \x1b[0m`+
+`\x1b[48;5;29m \x1b[0m`+
+`\x1b[48;5;30m \x1b[0m`);
+term.write(
+`\x1b[48;5;31m \x1b[0m`+
+`\x1b[48;5;32m \x1b[0m`+
+`\x1b[48;5;33m \x1b[0m`+
+`\x1b[48;5;34m \x1b[0m`+
+`\x1b[48;5;35m \x1b[0m`+
+`\x1b[48;5;36m \x1b[0m`+
+`\x1b[48;5;37m \x1b[0m`+
+`\x1b[48;5;38m \x1b[0m`+
+`\x1b[48;5;39m \x1b[0m`+
+`\x1b[48;5;40m \x1b[0m`);
+term.write(
+`\x1b[48;5;41m \x1b[0m`+
+`\x1b[48;5;42m \x1b[0m`+
+`\x1b[48;5;43m \x1b[0m`+
+`\x1b[48;5;44m \x1b[0m`+
+`\x1b[48;5;45m \x1b[0m`+
+`\x1b[48;5;46m \x1b[0m`+
+`\x1b[48;5;47m \x1b[0m`+
+`\x1b[48;5;48m \x1b[0m`+
+`\x1b[48;5;49m \x1b[0m`+
+`\x1b[48;5;50m \x1b[0m`);
+term.write(
+`\x1b[48;5;51m \x1b[0m`+
+`\x1b[48;5;52m \x1b[0m`+
+`\x1b[48;5;53m \x1b[0m`+
+`\x1b[48;5;54m \x1b[0m`+
+`\x1b[48;5;55m \x1b[0m`+
+`\x1b[48;5;56m \x1b[0m`+
+`\x1b[48;5;57m \x1b[0m`+
+`\x1b[48;5;58m \x1b[0m`+
+`\x1b[48;5;59m \x1b[0m`+
+`\x1b[48;5;60m \x1b[0m`);
+term.write(
+`\x1b[48;5;61m \x1b[0m`+
+`\x1b[48;5;62m \x1b[0m`+
+`\x1b[48;5;63m \x1b[0m`+
+`\x1b[48;5;64m \x1b[0m`+
+`\x1b[48;5;65m \x1b[0m`+
+`\x1b[48;5;66m \x1b[0m`+
+`\x1b[48;5;67m \x1b[0m`+
+`\x1b[48;5;68m \x1b[0m`+
+`\x1b[48;5;69m \x1b[0m`+
+`\x1b[48;5;70m \x1b[0m`);
+term.write(
+`\x1b[48;5;71m \x1b[0m`+
+`\x1b[48;5;72m \x1b[0m`+
+`\x1b[48;5;73m \x1b[0m`+
+`\x1b[48;5;74m \x1b[0m`+
+`\x1b[48;5;75m \x1b[0m`+
+`\x1b[48;5;76m \x1b[0m`+
+`\x1b[48;5;77m \x1b[0m`+
+`\x1b[48;5;78m \x1b[0m`+
+`\x1b[48;5;79m \x1b[0m`+
+`\x1b[48;5;80m \x1b[0m`);
+term.write(
+`\x1b[48;5;81m \x1b[0m`+
+`\x1b[48;5;82m \x1b[0m`+
+`\x1b[48;5;83m \x1b[0m`+
+`\x1b[48;5;84m \x1b[0m`+
+`\x1b[48;5;85m \x1b[0m`+
+`\x1b[48;5;86m \x1b[0m`+
+`\x1b[48;5;87m \x1b[0m`+
+`\x1b[48;5;88m \x1b[0m`+
+`\x1b[48;5;89m \x1b[0m`+
+`\x1b[48;5;90m \x1b[0m`);
+term.write(
+`\x1b[48;5;91m \x1b[0m`+
+`\x1b[48;5;92m \x1b[0m`+
+`\x1b[48;5;93m \x1b[0m`+
+`\x1b[48;5;94m \x1b[0m`+
+`\x1b[48;5;95m \x1b[0m`+
+`\x1b[48;5;96m \x1b[0m`+
+`\x1b[48;5;97m \x1b[0m`+
+`\x1b[48;5;98m \x1b[0m`+
+`\x1b[48;5;99m \x1b[0m`+
+`\x1b[48;5;100m \x1b[0m`);
+term.write(
+`\x1b[48;5;101m \x1b[0m`+
+`\x1b[48;5;102m \x1b[0m`+
+`\x1b[48;5;103m \x1b[0m`+
+`\x1b[48;5;104m \x1b[0m`+
+`\x1b[48;5;105m \x1b[0m`+
+`\x1b[48;5;106m \x1b[0m`+
+`\x1b[48;5;107m \x1b[0m`+
+`\x1b[48;5;108m \x1b[0m`+
+`\x1b[48;5;109m \x1b[0m`+
+`\x1b[48;5;110m \x1b[0m`);
+term.write(
+`\x1b[48;5;111m \x1b[0m`+
+`\x1b[48;5;112m \x1b[0m`+
+`\x1b[48;5;113m \x1b[0m`+
+`\x1b[48;5;114m \x1b[0m`+
+`\x1b[48;5;115m \x1b[0m`+
+`\x1b[48;5;116m \x1b[0m`+
+`\x1b[48;5;117m \x1b[0m`+
+`\x1b[48;5;118m \x1b[0m`+
+`\x1b[48;5;119m \x1b[0m`+
+`\x1b[48;5;120m \x1b[0m`);
+term.write(
+`\x1b[48;5;121m \x1b[0m`+
+`\x1b[48;5;122m \x1b[0m`+
+`\x1b[48;5;123m \x1b[0m`+
+`\x1b[48;5;124m \x1b[0m`+
+`\x1b[48;5;125m \x1b[0m`+
+`\x1b[48;5;126m \x1b[0m`+
+`\x1b[48;5;127m \x1b[0m`+
+`\x1b[48;5;128m \x1b[0m`+
+`\x1b[48;5;129m \x1b[0m`+
+`\x1b[48;5;130m \x1b[0m`);
+term.write(
+`\x1b[48;5;131m \x1b[0m`+
+`\x1b[48;5;132m \x1b[0m`+
+`\x1b[48;5;133m \x1b[0m`+
+`\x1b[48;5;134m \x1b[0m`+
+`\x1b[48;5;135m \x1b[0m`+
+`\x1b[48;5;136m \x1b[0m`+
+`\x1b[48;5;137m \x1b[0m`+
+`\x1b[48;5;138m \x1b[0m`+
+`\x1b[48;5;139m \x1b[0m`+
+`\x1b[48;5;140m \x1b[0m`);
+term.write(
+`\x1b[48;5;141m \x1b[0m`+
+`\x1b[48;5;142m \x1b[0m`+
+`\x1b[48;5;143m \x1b[0m`+
+`\x1b[48;5;144m \x1b[0m`+
+`\x1b[48;5;145m \x1b[0m`+
+`\x1b[48;5;146m \x1b[0m`+
+`\x1b[48;5;147m \x1b[0m`+
+`\x1b[48;5;148m \x1b[0m`+
+`\x1b[48;5;149m \x1b[0m`+
+`\x1b[48;5;150m \x1b[0m`);
+term.write(
+`\x1b[48;5;151m \x1b[0m`+
+`\x1b[48;5;152m \x1b[0m`+
+`\x1b[48;5;153m \x1b[0m`+
+`\x1b[48;5;154m \x1b[0m`+
+`\x1b[48;5;155m \x1b[0m`+
+`\x1b[48;5;156m \x1b[0m`+
+`\x1b[48;5;157m \x1b[0m`+
+`\x1b[48;5;158m \x1b[0m`+
+`\x1b[48;5;159m \x1b[0m`+
+`\x1b[48;5;160m \x1b[0m`);
+term.write(
+`\x1b[48;5;161m \x1b[0m`+
+`\x1b[48;5;162m \x1b[0m`+
+`\x1b[48;5;163m \x1b[0m`+
+`\x1b[48;5;164m \x1b[0m`+
+`\x1b[48;5;165m \x1b[0m`+
+`\x1b[48;5;166m \x1b[0m`+
+`\x1b[48;5;167m \x1b[0m`+
+`\x1b[48;5;168m \x1b[0m`+
+`\x1b[48;5;169m \x1b[0m`+
+`\x1b[48;5;170m \x1b[0m`);
+term.write(
+`\x1b[48;5;171m \x1b[0m`+
+`\x1b[48;5;172m \x1b[0m`+
+`\x1b[48;5;173m \x1b[0m`+
+`\x1b[48;5;174m \x1b[0m`+
+`\x1b[48;5;175m \x1b[0m`+
+`\x1b[48;5;176m \x1b[0m`+
+`\x1b[48;5;177m \x1b[0m`+
+`\x1b[48;5;178m \x1b[0m`+
+`\x1b[48;5;179m \x1b[0m`+
+`\x1b[48;5;180m \x1b[0m`);
+term.write(
+`\x1b[48;5;181m \x1b[0m`+
+`\x1b[48;5;182m \x1b[0m`+
+`\x1b[48;5;183m \x1b[0m`+
+`\x1b[48;5;184m \x1b[0m`+
+`\x1b[48;5;185m \x1b[0m`+
+`\x1b[48;5;186m \x1b[0m`+
+`\x1b[48;5;187m \x1b[0m`+
+`\x1b[48;5;188m \x1b[0m`+
+`\x1b[48;5;189m \x1b[0m`+
+`\x1b[48;5;190m \x1b[0m`);
+term.write(
+`\x1b[48;5;191m \x1b[0m`+
+`\x1b[48;5;192m \x1b[0m`+
+`\x1b[48;5;193m \x1b[0m`+
+`\x1b[48;5;194m \x1b[0m`+
+`\x1b[48;5;195m \x1b[0m`+
+`\x1b[48;5;196m \x1b[0m`+
+`\x1b[48;5;197m \x1b[0m`+
+`\x1b[48;5;198m \x1b[0m`+
+`\x1b[48;5;199m \x1b[0m`+
+`\x1b[48;5;200m \x1b[0m`);
+term.write(
+`\x1b[48;5;201m \x1b[0m`+
+`\x1b[48;5;202m \x1b[0m`+
+`\x1b[48;5;203m \x1b[0m`+
+`\x1b[48;5;204m \x1b[0m`+
+`\x1b[48;5;205m \x1b[0m`+
+`\x1b[48;5;206m \x1b[0m`+
+`\x1b[48;5;207m \x1b[0m`+
+`\x1b[48;5;208m \x1b[0m`+
+`\x1b[48;5;209m \x1b[0m`+
+`\x1b[48;5;210m \x1b[0m`);
+term.write(
+`\x1b[48;5;211m \x1b[0m`+
+`\x1b[48;5;212m \x1b[0m`+
+`\x1b[48;5;213m \x1b[0m`+
+`\x1b[48;5;214m \x1b[0m`+
+`\x1b[48;5;215m \x1b[0m`+
+`\x1b[48;5;216m \x1b[0m`+
+`\x1b[48;5;217m \x1b[0m`+
+`\x1b[48;5;218m \x1b[0m`+
+`\x1b[48;5;219m \x1b[0m`+
+`\x1b[48;5;220m \x1b[0m`);
+term.write(
+`\x1b[48;5;221m \x1b[0m`+
+`\x1b[48;5;222m \x1b[0m`+
+`\x1b[48;5;223m \x1b[0m`+
+`\x1b[48;5;224m \x1b[0m`+
+`\x1b[48;5;225m \x1b[0m`+
+`\x1b[48;5;226m \x1b[0m`+
+`\x1b[48;5;227m \x1b[0m`+
+`\x1b[48;5;228m \x1b[0m`+
+`\x1b[48;5;229m \x1b[0m`+
+`\x1b[48;5;230m \x1b[0m`);
+term.write(
+`\x1b[48;5;231m \x1b[0m`+
+`\x1b[48;5;232m \x1b[0m`+
+`\x1b[48;5;233m \x1b[0m`+
+`\x1b[48;5;234m \x1b[0m`+
+`\x1b[48;5;235m \x1b[0m`+
+`\x1b[48;5;236m \x1b[0m`+
+`\x1b[48;5;237m \x1b[0m`+
+`\x1b[48;5;238m \x1b[0m`+
+`\x1b[48;5;239m \x1b[0m`+
+`\x1b[48;5;240m \x1b[0m`);
+term.write(
+`\x1b[48;5;241m \x1b[0m`+
+`\x1b[48;5;242m \x1b[0m`+
+`\x1b[48;5;243m \x1b[0m`+
+`\x1b[48;5;244m \x1b[0m`+
+`\x1b[48;5;245m \x1b[0m`+
+`\x1b[48;5;246m \x1b[0m`+
+`\x1b[48;5;247m \x1b[0m`+
+`\x1b[48;5;248m \x1b[0m`+
+`\x1b[48;5;249m \x1b[0m`+
+`\x1b[48;5;250m \x1b[0m`);
+term.write(
+`\x1b[48;5;251m \x1b[0m`+
+`\x1b[48;5;252m \x1b[0m`+
+`\x1b[48;5;253m \x1b[0m`+
+`\x1b[48;5;254m \x1b[0m`+
+`\x1b[48;5;255m \x1b[0m`+
+`\x1b[48;5;256m \x1b[0m`)
+term.write('\n\r');
+}
function addDecoration() {
term.options['overviewRulerWidth'] = 15;
const marker = term.registerMarker(1);
diff --git a/demo/index.html b/demo/index.html
index 214dd25f..d3fc6aab 100644
--- a/demo/index.html
+++ b/demo/index.html
@@ -78,6 +78,7 @@
+
Decorations
From bc57ea3a7a1a8d4843607f7ecce973a383237b7b Mon Sep 17 00:00:00 2001
From: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
Date: Thu, 4 Aug 2022 06:06:31 -0700
Subject: [PATCH 2/2] Reduce duplicate, improve layout
---
demo/client.ts | 307 ++++--------------------------------------------
demo/index.html | 2 +-
2 files changed, 24 insertions(+), 285 deletions(-)
diff --git a/demo/client.ts b/demo/client.ts
index 8f7a8abe..7b113218 100644
--- a/demo/client.ts
+++ b/demo/client.ts
@@ -791,291 +791,30 @@ function underlineTest() {
}
function ansiColorsTest() {
- term.write('\n\r');
- term.write(
-`\x1b[48;5;1m \x1b[0m`+
-`\x1b[48;5;2m \x1b[0m`+
-`\x1b[48;5;3m \x1b[0m`+
-`\x1b[48;5;4m \x1b[0m`+
-`\x1b[48;5;5m \x1b[0m`+
-`\x1b[48;5;6m \x1b[0m`+
-`\x1b[48;5;7m \x1b[0m`+
-`\x1b[48;5;8m \x1b[0m`+
-`\x1b[48;5;9m \x1b[0m`+
-`\x1b[48;5;10m \x1b[0m`);
-term.write(
-`\x1b[48;5;11m \x1b[0m`+
-`\x1b[48;5;12m \x1b[0m`+
-`\x1b[48;5;13m \x1b[0m`+
-`\x1b[48;5;14m \x1b[0m`+
-`\x1b[48;5;15m \x1b[0m`+
-`\x1b[48;5;16m \x1b[0m`+
-`\x1b[48;5;17m \x1b[0m`+
-`\x1b[48;5;18m \x1b[0m`+
-`\x1b[48;5;19m \x1b[0m`+
-`\x1b[48;5;20m \x1b[0m`);
-term.write(
-`\x1b[48;5;21m \x1b[0m`+
-`\x1b[48;5;22m \x1b[0m`+
-`\x1b[48;5;23m \x1b[0m`+
-`\x1b[48;5;24m \x1b[0m`+
-`\x1b[48;5;25m \x1b[0m`+
-`\x1b[48;5;26m \x1b[0m`+
-`\x1b[48;5;27m \x1b[0m`+
-`\x1b[48;5;28m \x1b[0m`+
-`\x1b[48;5;29m \x1b[0m`+
-`\x1b[48;5;30m \x1b[0m`);
-term.write(
-`\x1b[48;5;31m \x1b[0m`+
-`\x1b[48;5;32m \x1b[0m`+
-`\x1b[48;5;33m \x1b[0m`+
-`\x1b[48;5;34m \x1b[0m`+
-`\x1b[48;5;35m \x1b[0m`+
-`\x1b[48;5;36m \x1b[0m`+
-`\x1b[48;5;37m \x1b[0m`+
-`\x1b[48;5;38m \x1b[0m`+
-`\x1b[48;5;39m \x1b[0m`+
-`\x1b[48;5;40m \x1b[0m`);
-term.write(
-`\x1b[48;5;41m \x1b[0m`+
-`\x1b[48;5;42m \x1b[0m`+
-`\x1b[48;5;43m \x1b[0m`+
-`\x1b[48;5;44m \x1b[0m`+
-`\x1b[48;5;45m \x1b[0m`+
-`\x1b[48;5;46m \x1b[0m`+
-`\x1b[48;5;47m \x1b[0m`+
-`\x1b[48;5;48m \x1b[0m`+
-`\x1b[48;5;49m \x1b[0m`+
-`\x1b[48;5;50m \x1b[0m`);
-term.write(
-`\x1b[48;5;51m \x1b[0m`+
-`\x1b[48;5;52m \x1b[0m`+
-`\x1b[48;5;53m \x1b[0m`+
-`\x1b[48;5;54m \x1b[0m`+
-`\x1b[48;5;55m \x1b[0m`+
-`\x1b[48;5;56m \x1b[0m`+
-`\x1b[48;5;57m \x1b[0m`+
-`\x1b[48;5;58m \x1b[0m`+
-`\x1b[48;5;59m \x1b[0m`+
-`\x1b[48;5;60m \x1b[0m`);
-term.write(
-`\x1b[48;5;61m \x1b[0m`+
-`\x1b[48;5;62m \x1b[0m`+
-`\x1b[48;5;63m \x1b[0m`+
-`\x1b[48;5;64m \x1b[0m`+
-`\x1b[48;5;65m \x1b[0m`+
-`\x1b[48;5;66m \x1b[0m`+
-`\x1b[48;5;67m \x1b[0m`+
-`\x1b[48;5;68m \x1b[0m`+
-`\x1b[48;5;69m \x1b[0m`+
-`\x1b[48;5;70m \x1b[0m`);
-term.write(
-`\x1b[48;5;71m \x1b[0m`+
-`\x1b[48;5;72m \x1b[0m`+
-`\x1b[48;5;73m \x1b[0m`+
-`\x1b[48;5;74m \x1b[0m`+
-`\x1b[48;5;75m \x1b[0m`+
-`\x1b[48;5;76m \x1b[0m`+
-`\x1b[48;5;77m \x1b[0m`+
-`\x1b[48;5;78m \x1b[0m`+
-`\x1b[48;5;79m \x1b[0m`+
-`\x1b[48;5;80m \x1b[0m`);
-term.write(
-`\x1b[48;5;81m \x1b[0m`+
-`\x1b[48;5;82m \x1b[0m`+
-`\x1b[48;5;83m \x1b[0m`+
-`\x1b[48;5;84m \x1b[0m`+
-`\x1b[48;5;85m \x1b[0m`+
-`\x1b[48;5;86m \x1b[0m`+
-`\x1b[48;5;87m \x1b[0m`+
-`\x1b[48;5;88m \x1b[0m`+
-`\x1b[48;5;89m \x1b[0m`+
-`\x1b[48;5;90m \x1b[0m`);
-term.write(
-`\x1b[48;5;91m \x1b[0m`+
-`\x1b[48;5;92m \x1b[0m`+
-`\x1b[48;5;93m \x1b[0m`+
-`\x1b[48;5;94m \x1b[0m`+
-`\x1b[48;5;95m \x1b[0m`+
-`\x1b[48;5;96m \x1b[0m`+
-`\x1b[48;5;97m \x1b[0m`+
-`\x1b[48;5;98m \x1b[0m`+
-`\x1b[48;5;99m \x1b[0m`+
-`\x1b[48;5;100m \x1b[0m`);
-term.write(
-`\x1b[48;5;101m \x1b[0m`+
-`\x1b[48;5;102m \x1b[0m`+
-`\x1b[48;5;103m \x1b[0m`+
-`\x1b[48;5;104m \x1b[0m`+
-`\x1b[48;5;105m \x1b[0m`+
-`\x1b[48;5;106m \x1b[0m`+
-`\x1b[48;5;107m \x1b[0m`+
-`\x1b[48;5;108m \x1b[0m`+
-`\x1b[48;5;109m \x1b[0m`+
-`\x1b[48;5;110m \x1b[0m`);
-term.write(
-`\x1b[48;5;111m \x1b[0m`+
-`\x1b[48;5;112m \x1b[0m`+
-`\x1b[48;5;113m \x1b[0m`+
-`\x1b[48;5;114m \x1b[0m`+
-`\x1b[48;5;115m \x1b[0m`+
-`\x1b[48;5;116m \x1b[0m`+
-`\x1b[48;5;117m \x1b[0m`+
-`\x1b[48;5;118m \x1b[0m`+
-`\x1b[48;5;119m \x1b[0m`+
-`\x1b[48;5;120m \x1b[0m`);
-term.write(
-`\x1b[48;5;121m \x1b[0m`+
-`\x1b[48;5;122m \x1b[0m`+
-`\x1b[48;5;123m \x1b[0m`+
-`\x1b[48;5;124m \x1b[0m`+
-`\x1b[48;5;125m \x1b[0m`+
-`\x1b[48;5;126m \x1b[0m`+
-`\x1b[48;5;127m \x1b[0m`+
-`\x1b[48;5;128m \x1b[0m`+
-`\x1b[48;5;129m \x1b[0m`+
-`\x1b[48;5;130m \x1b[0m`);
-term.write(
-`\x1b[48;5;131m \x1b[0m`+
-`\x1b[48;5;132m \x1b[0m`+
-`\x1b[48;5;133m \x1b[0m`+
-`\x1b[48;5;134m \x1b[0m`+
-`\x1b[48;5;135m \x1b[0m`+
-`\x1b[48;5;136m \x1b[0m`+
-`\x1b[48;5;137m \x1b[0m`+
-`\x1b[48;5;138m \x1b[0m`+
-`\x1b[48;5;139m \x1b[0m`+
-`\x1b[48;5;140m \x1b[0m`);
-term.write(
-`\x1b[48;5;141m \x1b[0m`+
-`\x1b[48;5;142m \x1b[0m`+
-`\x1b[48;5;143m \x1b[0m`+
-`\x1b[48;5;144m \x1b[0m`+
-`\x1b[48;5;145m \x1b[0m`+
-`\x1b[48;5;146m \x1b[0m`+
-`\x1b[48;5;147m \x1b[0m`+
-`\x1b[48;5;148m \x1b[0m`+
-`\x1b[48;5;149m \x1b[0m`+
-`\x1b[48;5;150m \x1b[0m`);
-term.write(
-`\x1b[48;5;151m \x1b[0m`+
-`\x1b[48;5;152m \x1b[0m`+
-`\x1b[48;5;153m \x1b[0m`+
-`\x1b[48;5;154m \x1b[0m`+
-`\x1b[48;5;155m \x1b[0m`+
-`\x1b[48;5;156m \x1b[0m`+
-`\x1b[48;5;157m \x1b[0m`+
-`\x1b[48;5;158m \x1b[0m`+
-`\x1b[48;5;159m \x1b[0m`+
-`\x1b[48;5;160m \x1b[0m`);
-term.write(
-`\x1b[48;5;161m \x1b[0m`+
-`\x1b[48;5;162m \x1b[0m`+
-`\x1b[48;5;163m \x1b[0m`+
-`\x1b[48;5;164m \x1b[0m`+
-`\x1b[48;5;165m \x1b[0m`+
-`\x1b[48;5;166m \x1b[0m`+
-`\x1b[48;5;167m \x1b[0m`+
-`\x1b[48;5;168m \x1b[0m`+
-`\x1b[48;5;169m \x1b[0m`+
-`\x1b[48;5;170m \x1b[0m`);
-term.write(
-`\x1b[48;5;171m \x1b[0m`+
-`\x1b[48;5;172m \x1b[0m`+
-`\x1b[48;5;173m \x1b[0m`+
-`\x1b[48;5;174m \x1b[0m`+
-`\x1b[48;5;175m \x1b[0m`+
-`\x1b[48;5;176m \x1b[0m`+
-`\x1b[48;5;177m \x1b[0m`+
-`\x1b[48;5;178m \x1b[0m`+
-`\x1b[48;5;179m \x1b[0m`+
-`\x1b[48;5;180m \x1b[0m`);
-term.write(
-`\x1b[48;5;181m \x1b[0m`+
-`\x1b[48;5;182m \x1b[0m`+
-`\x1b[48;5;183m \x1b[0m`+
-`\x1b[48;5;184m \x1b[0m`+
-`\x1b[48;5;185m \x1b[0m`+
-`\x1b[48;5;186m \x1b[0m`+
-`\x1b[48;5;187m \x1b[0m`+
-`\x1b[48;5;188m \x1b[0m`+
-`\x1b[48;5;189m \x1b[0m`+
-`\x1b[48;5;190m \x1b[0m`);
-term.write(
-`\x1b[48;5;191m \x1b[0m`+
-`\x1b[48;5;192m \x1b[0m`+
-`\x1b[48;5;193m \x1b[0m`+
-`\x1b[48;5;194m \x1b[0m`+
-`\x1b[48;5;195m \x1b[0m`+
-`\x1b[48;5;196m \x1b[0m`+
-`\x1b[48;5;197m \x1b[0m`+
-`\x1b[48;5;198m \x1b[0m`+
-`\x1b[48;5;199m \x1b[0m`+
-`\x1b[48;5;200m \x1b[0m`);
-term.write(
-`\x1b[48;5;201m \x1b[0m`+
-`\x1b[48;5;202m \x1b[0m`+
-`\x1b[48;5;203m \x1b[0m`+
-`\x1b[48;5;204m \x1b[0m`+
-`\x1b[48;5;205m \x1b[0m`+
-`\x1b[48;5;206m \x1b[0m`+
-`\x1b[48;5;207m \x1b[0m`+
-`\x1b[48;5;208m \x1b[0m`+
-`\x1b[48;5;209m \x1b[0m`+
-`\x1b[48;5;210m \x1b[0m`);
-term.write(
-`\x1b[48;5;211m \x1b[0m`+
-`\x1b[48;5;212m \x1b[0m`+
-`\x1b[48;5;213m \x1b[0m`+
-`\x1b[48;5;214m \x1b[0m`+
-`\x1b[48;5;215m \x1b[0m`+
-`\x1b[48;5;216m \x1b[0m`+
-`\x1b[48;5;217m \x1b[0m`+
-`\x1b[48;5;218m \x1b[0m`+
-`\x1b[48;5;219m \x1b[0m`+
-`\x1b[48;5;220m \x1b[0m`);
-term.write(
-`\x1b[48;5;221m \x1b[0m`+
-`\x1b[48;5;222m \x1b[0m`+
-`\x1b[48;5;223m \x1b[0m`+
-`\x1b[48;5;224m \x1b[0m`+
-`\x1b[48;5;225m \x1b[0m`+
-`\x1b[48;5;226m \x1b[0m`+
-`\x1b[48;5;227m \x1b[0m`+
-`\x1b[48;5;228m \x1b[0m`+
-`\x1b[48;5;229m \x1b[0m`+
-`\x1b[48;5;230m \x1b[0m`);
-term.write(
-`\x1b[48;5;231m \x1b[0m`+
-`\x1b[48;5;232m \x1b[0m`+
-`\x1b[48;5;233m \x1b[0m`+
-`\x1b[48;5;234m \x1b[0m`+
-`\x1b[48;5;235m \x1b[0m`+
-`\x1b[48;5;236m \x1b[0m`+
-`\x1b[48;5;237m \x1b[0m`+
-`\x1b[48;5;238m \x1b[0m`+
-`\x1b[48;5;239m \x1b[0m`+
-`\x1b[48;5;240m \x1b[0m`);
-term.write(
-`\x1b[48;5;241m \x1b[0m`+
-`\x1b[48;5;242m \x1b[0m`+
-`\x1b[48;5;243m \x1b[0m`+
-`\x1b[48;5;244m \x1b[0m`+
-`\x1b[48;5;245m \x1b[0m`+
-`\x1b[48;5;246m \x1b[0m`+
-`\x1b[48;5;247m \x1b[0m`+
-`\x1b[48;5;248m \x1b[0m`+
-`\x1b[48;5;249m \x1b[0m`+
-`\x1b[48;5;250m \x1b[0m`);
-term.write(
-`\x1b[48;5;251m \x1b[0m`+
-`\x1b[48;5;252m \x1b[0m`+
-`\x1b[48;5;253m \x1b[0m`+
-`\x1b[48;5;254m \x1b[0m`+
-`\x1b[48;5;255m \x1b[0m`+
-`\x1b[48;5;256m \x1b[0m`)
-term.write('\n\r');
+ term.writeln(`\x1b[0m\n\n\rStandard colors: Bright colors:`);
+ for (let i = 0; i < 16; i++) {
+ term.write(`\x1b[48;5;${i}m ${i.toString().padEnd(2, ' ').padStart(3, ' ')} \x1b[0m`);
+ }
+
+ term.writeln(`\x1b[0m\n\n\rColors 17-231 from 256 palette:`);
+ for (let i = 0; i < 6; i++) {
+ const startId = 16 + i * 36;
+ const endId = 16 + (i + 1) * 36 - 1;
+ term.write(`${startId.toString().padStart(3, ' ')}-${endId.toString().padStart(3, ' ')} `);
+ for (let j = 0; j < 36; j++) {
+ const id = 16 + i * 36 + j;
+ term.write(`\x1b[48;5;${id}m${(id % 10).toString().padStart(2, ' ')}\x1b[0m`);
+ }
+ term.write(`\r\n`);
+ }
+
+ term.writeln(`\x1b[0m\n\rGreyscale from 256 palette:`);
+ term.write('232-255 ');
+ for (let i = 232; i < 256; i++) {
+ term.write(`\x1b[48;5;${i}m ${(i % 10)} \x1b[0m`);
+ }
}
+
function addDecoration() {
term.options['overviewRulerWidth'] = 15;
const marker = term.registerMarker(1);
diff --git a/demo/index.html b/demo/index.html
index d3fc6aab..836084b3 100644
--- a/demo/index.html
+++ b/demo/index.html
@@ -78,7 +78,7 @@
-
+
Decorations