diff --git a/_build_assets.sh b/_build_assets.sh new file mode 100755 index 0000000..2056499 --- /dev/null +++ b/_build_assets.sh @@ -0,0 +1,16 @@ +#!/bin/bash +source "_build_common.sh" + +echo 'Copying resources...' + +cp -r img out/img +cp favicon.ico out/ + +if [[ $ESP_PROD ]]; then + echo 'Cleaning junk files...' + find out/ -name "*.orig" -delete + find out/ -name "*.xcf" -delete + find out/ -name "*~" -delete + find out/ -name "*.bak" -delete + find out/ -name "*.map" -delete +fi diff --git a/_build_common.sh b/_build_common.sh new file mode 100755 index 0000000..833611b --- /dev/null +++ b/_build_common.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +export FRONT_END_HASH=$(git rev-parse --short HEAD) diff --git a/_build_css.sh b/_build_css.sh new file mode 100755 index 0000000..1cfa157 --- /dev/null +++ b/_build_css.sh @@ -0,0 +1,7 @@ +#!/bin/bash +source "_build_common.sh" + +echo 'Building CSS...' + +mkdir -p out/css +npm run sass -- --output-style compressed sass/app.scss "out/css/app.$FRONT_END_HASH.css" diff --git a/_build_html.sh b/_build_html.sh new file mode 100755 index 0000000..a4f869d --- /dev/null +++ b/_build_html.sh @@ -0,0 +1,6 @@ +#!/bin/bash +source "_build_common.sh" + +echo 'Building HTML...' + +php ./compile_html.php diff --git a/_build_js.sh b/_build_js.sh new file mode 100755 index 0000000..dc5c65b --- /dev/null +++ b/_build_js.sh @@ -0,0 +1,22 @@ +#!/bin/bash +source "_build_common.sh" + +mkdir -p out/js +echo 'Generating lang.js...' +php ./dump_js_lang.php + +echo 'Processing JS...' +npm run babel -- -o "out/js/app.$FRONT_END_HASH.js" --source-maps js/lib \ + js/lib/chibi.js \ + js/lib/keymaster.js \ + js/lib/polyfills.js \ + js/utils.js \ + js/modal.js \ + js/notif.js \ + js/appcommon.js \ + js/lang.js \ + js/wifi.js \ + js/term_* \ + js/debug_screen.js \ + js/soft_keyboard.js \ + js/term.js diff --git a/build.sh b/build.sh index 7f10082..75ac53f 100755 --- a/build.sh +++ b/build.sh @@ -2,51 +2,13 @@ cd $(dirname $0) -FRONT_END_HASH=$(git rev-parse --short HEAD) +source "_build_common.sh" -rm -r out/* -mkdir out/js -mkdir out/css +rm -fr out/* -echo 'Generating lang.js...' -php ./dump_js_lang.php - -echo 'Packing JS...' -npm run babel -- -o "out/js/app.$FRONT_END_HASH.js" --source-maps js/lib \ - js/lib/chibi.js \ - js/lib/keymaster.js \ - js/lib/polyfills.js \ - js/utils.js \ - js/modal.js \ - js/notif.js \ - js/appcommon.js \ - js/lang.js \ - js/wifi.js \ - js/term_* \ - js/debug_screen.js \ - js/soft_keyboard.js \ - js/term.js - -echo 'Building CSS...' - -npm run sass -- --output-style compressed sass/app.scss "out/css/app.$FRONT_END_HASH.css" - -echo 'Building HTML...' - -php ./compile_html.php - -echo 'Copying resources...' - -cp -r img out/img -cp favicon.ico out/ - -if [[ $ESP_PROD ]]; then - echo 'Cleaning junk files...' - find out/ -name "*.orig" -delete - find out/ -name "*.xcf" -delete - find out/ -name "*~" -delete - find out/ -name "*.bak" -delete - find out/ -name "*.map" -delete -fi +./_build_css.sh +./_build_js.sh +./_build_html.sh +./_build_assets.sh echo 'ESPTerm front-end ready' diff --git a/pages/about.php b/pages/about.php index b6ea8dd..6e7d4c5 100644 --- a/pages/about.php +++ b/pages/about.php @@ -2,7 +2,7 @@
© Ondřej Hruška, 2016-2017 diff --git a/pages/help.php b/pages/help.php index 575d4d5..12bbb45 100644 --- a/pages/help.php +++ b/pages/help.php @@ -1,5 +1,10 @@
+ \e[?12h \\
+ \e[?12l
+
+
@@ -193,6 +202,15 @@
+ \e[?45h \\
+ \e[?45l
+
+
diff --git a/pages/help/cmd_system.php b/pages/help/cmd_system.php
index 18a76de..f7b19f0 100644
--- a/pages/help/cmd_system.php
+++ b/pages/help/cmd_system.php
@@ -18,6 +18,10 @@
The screen size, title and button labels remain unchanged.
- \e]80+n;t\a
+ \e]8x;t\a
- \e]90+n;m\a
+ \e]9x;m\a
+
+
+ \e]9;t\a
+
+
+ \e[?ns \\
+ \e[?nr
+ \e[?2004h \\
+ \e[?2004l
+
+
+ \e[?1049h \\
+ \e[?1049l
+
+
@@ -93,10 +158,6 @@
SRM is the opposite of Local Echo, meaning `\e[12h` disables and `\e[12l` enables Local Echo.
- The initial screen size, title text and button labels can be configured in Terminal Settings. + The initial screen size, title text and button labels can be configured + in Terminal Settings.
@@ -13,5 +14,17 @@ repaint. If you experience issues (broken image due to dropped bytes), try adjusting those config options. It may also be useful to try different baud rates.
+ ++ ESPTerm supports all UTF-8 characters, but to reduce the screen buffer RAM size, + only a small amount of unique multi-byte characters can be used at the same time + (up to 160, depending on compile flags). Unique multi-byte characters are stored in a + look-up table and are removed when they are no longer used on the screen. In + rare cases it can happen that a character stays in the table after no longer + being used (this can be noticed when the table fills up and new characters + are not shown correctly). This is fixed by clearing the screen (`\e[2J` or `\ec`). +
- Colors are set using SGR commands (like `\e[10;20;30m`). The following tables list the SGR codes to use. - Selected colors are used for any new text entered, as well as for empty space when using line and screen clearing commands. - The configured default colors can be restored using SGR 39 for foreground and SGR 49 for background. + Colors are set using SGR commands (like `\e[30;47m`). The following tables list the SGR + codes to use. Selected colors are used for any new text entered, as well as for empty + space when using clearing commands (except screen reset `\ec`, which first clears all + style attriutes. The configured default colors can be restored using `SGR 39` for + foreground and `SGR 49` for background.
- The actual color representation depends on a color theme which + The actual color representation of the basic 16 colors depends on a color theme which can be selected in Terminal Settings.
@@ -61,5 +63,19 @@ 106 107+ ESPTerm supports in total 256 standard colors. The dark and bright basic colors are + numbered 0-7 and 8-15. To use colors higher than 15 (or 0-15 using this simpler numbering), + send `CSI 38 ; 5 ; n m`, where `n` is the color to set. Use 48 for background colors. +
+ ++ For a fererence of all 256 shades please refer to + jonasjacek.github.io/colors + or look it up elsewhere. +
- All text attributes are set using SGR commands like `\e[10;20;30m`, with up to 10 numbers separated by semicolons. + All text attributes are set using SGR commands like `\e[1;4m`, with up to 10 numbers separated by semicolons. To restore all attributes to their default states, use SGR 0: `\e[0m` or `\e[m`.
@@ -16,11 +16,23 @@1Conceal turns all characters invisible.