From 5eec7d2bf653cc9c8a834882b7fefff57534e334 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Hru=C5=A1ka?= Date: Tue, 5 Sep 2017 16:54:55 +0200 Subject: [PATCH] added a table with nomenclature --- html_orig/pages/help.php | 99 +++++++++++++++++++++++++++++----------- 1 file changed, 73 insertions(+), 26 deletions(-) diff --git a/html_orig/pages/help.php b/html_orig/pages/help.php index 4aa8920..cf42f87 100644 --- a/html_orig/pages/help.php +++ b/html_orig/pages/help.php @@ -12,9 +12,14 @@
  • Loopback test: Connect the Rx and Tx pins with a piece of wire. Anything you type in the browser should appear on the screen. Set Parser Timeout = 0 in Terminal Settings to be able to manually enter escape sequences. + +
  • There is very little RAM available to the webserver, and it can support at most 4 connections at the same time. + Each terminal session (open window with the terminal screen) uses one persistent connection for screen updates. + Avoid leaving unused windows open, or either the RAM or connections may be exhausted.
  • For best performance, use the module in Client mode (connected to external network) and minimize the number - of simultaneous connections. Enabling AP consumes extra RAM and strains the processor. + of simultaneous connections. Enabling AP consumes extra RAM because the DHCP server and Captive Portal + DNS server are started.
  • In AP mode, check that the WiFi channel used is clear; interference may cause flaky connection. A good mobile app to use for this is @@ -29,7 +34,7 @@
    -

    Escape Sequences Intro

    +

    Escape Sequences Intro & Nomenclature

    VT102 @@ -42,29 +47,69 @@ ESPTerm accepts UTF-8 characters received on the communication UART and displays them on the screen, interpreting some codes as Control Characters. Those are e.g. Carriage Return (13), Line Feed (10), Tab (9), Backspace (8) and Bell (7). Escape sequences start with the control character ESC (27), followed by any number of ASCII characters - forming the body of the command. On this page, we'll use \e to indicate ESC. + forming the body of the command.

    - -

    - Escape sequences can be divided based on their first character and structure. Most common types are: -

    - -
      -
    • CSI commands: \e[ followed by 1 optional leading character, multiple numbers divided by - semicolons, and one or two trailing characters. Those control the cursor, set attributes and manipulate screen content. E.g. \e[?7;10h, \e[2J
    • -
    • SGR commands: CSI terminated by m. Those set text attributes and colors. E.g. \e[
    • -
    • OSC commands: \e] followed by any number of UTF-8 characters (ESPTerm supports up to 64) - terminated by \e\\ (ESC and backslash) or Bell (7). Those are used to exchange text strings.
    • -
    • There are a few other commands that don't follow this pattern, such as \e7 or - \e#8, mostly for historical reasons.
    • -
    - -

    A list of the most important escape sequences is presented in the following sections.

    + +

    Nomenclature & Command Types

    + +

    Examples on this help page use the following symbols for special characters and command types: + (spaces are for clarity only, DO NOT include them in the commands!)

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameSymbolASCIIC stringFunction
    ESC\eESC (27)"\e", "\x1b", "\033"Introduces an escape sequence. (Note: \e is a GCC extension)
    Bell\aBEL (7)"\a", "\x7", "\07"Audible beep
    String TerminatorSTESC \ (27 92)
    or \a (7)
    "\x1b\\", "\a"Terminates a string command (\a can be used as an alternative)
    Control Sequence IntroducerCSIESC ["\x1b["Starts a CSI command. Examples: \e[?7;10h, \e[2J
    Operating System CommandOSCESC ]"\x1b]"Starts an OSC command. Is followed by a command string terminated by ST. Example: \e]0;My Screen Title\a
    Select Graphic RenditionSGRCSI n ; n ; n m"\x1b[1;2;3m"Set text attributes, like color or style. 0 to 10 numbers can be used, \e[m is treated as \e[0m
    + +

    There are also some other commands that don't follow the CSI, SGR or OSC pattern, such as \e7 or + \e#8. A list of the most important escape sequences is presented in the following sections.

    -

    Screen Behavior

    +

    Screen Behavior & Refreshing

    The initial screen size, title text and button labels can be configured in Terminal Settings.

    @@ -192,25 +237,25 @@ - + - + - + - + @@ -287,9 +332,11 @@

    Mouse

    - ESPTerm in the current version does not implement standard mouse input. Instead, clicks/taps produce CSI sequences - \e[r;cM (row, column). You can use this for virtual on-screen buttons. + ESPTerm implements standard mouse tracking schemes based on Xterm. Mouse tracking can be used to add + powerful user interactions such as on-screen buttons, draggable on-screen sliders or dials, menus etc.

    + + TODO
    KeyCodeKeyCode
    🡑Up \e[A F1 \eOP
    🡓Down \e[B F2 \eOQ
    🡒Right \e[C F3 \eOR
    🡐Left \e[D F4 \eOS