From 9573bfccb0338be027416c3e1f169830ae62b12c Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Tue, 10 Oct 2023 09:00:19 -0700 Subject: [PATCH] website: RIS --- website/app/vt/ris/page.mdx | 112 ++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 website/app/vt/ris/page.mdx diff --git a/website/app/vt/ris/page.mdx b/website/app/vt/ris/page.mdx new file mode 100644 index 000000000..3f251ea8b --- /dev/null +++ b/website/app/vt/ris/page.mdx @@ -0,0 +1,112 @@ +import VTSequence from "@/components/VTSequence"; + +# Full Reset (RIS) + + + +Reset the terminal. + +The full reset operation does the following: + +- Set the cursor shape to the default +- Reset the scroll region to the full screen +- Disable [left and right margin mode (mode 69)](#TODO) +- Disable [origin mode (mode 6)](#TODO) +- Unset cursor foreground and background colors +- Reset charsets to the default +- Reset [cursor key mode (DECCKM)](#TODO) +- Reset [disable keyboard input (KAM)](#TODO) +- Reset [application keypad mode](/vt/deckpnm) +- Reset xterm keyboard modifier state to the default +- Disable cursor [protected attribute](#TODO) +- Disable any [protected area](#TODO) +- Reset all [mouse tracking modes](#TODO) +- Reset tabstops to default +- Enable [send-receive mode (mode 12)](#TODO) +- Reset [backspace sends delete (mode 67)](#TODO) +- Return to the primary screen and clear it +- Move the cursor to the top-left corner +- Reset the pending wrap state +- Reset saved cursor state + +## Validation + +### DECSLRM V-1: Full Screen + +```bash +printf "\033[1;1H" # move to top-left +printf "\033[0J" # clear screen +printf "ABC\n" +printf "DEF\n" +printf "GHI\n" +printf "\033[?69h" # enable left/right margins +printf "\033[s" # scroll region left/right +printf "\033[X" +``` + +``` +|cBC_____| +|DEF_____| +|GHI_____| +``` + +### DECSLRM V-2: Left Only + +```bash +printf "\033[1;1H" # move to top-left +printf "\033[0J" # clear screen +printf "ABC\n" +printf "DEF\n" +printf "GHI\n" +printf "\033[?69h" # enable left/right margins +printf "\033[2s" # scroll region left/right +printf "\033[2G" # move cursor to column 2 +printf "\033[L" +``` + +``` +|Ac______| +|DBC_____| +|GEF_____| +| HI_____| +``` + +### DECSLRM V-3: Left And Right + +```bash +printf "\033[1;1H" # move to top-left +printf "\033[0J" # clear screen +printf "ABC\n" +printf "DEF\n" +printf "GHI\n" +printf "\033[?69h" # enable left/right margins +printf "\033[1;2s" # scroll region left/right +printf "\033[2G" # move cursor to column 2 +printf "\033[L" +``` + +``` +|_cC_____| +|ABF_____| +|DEI_____| +|GH______| +``` + +### DECSLRM V-4: Left Equal to Right + +```bash +printf "\033[1;1H" # move to top-left +printf "\033[0J" # clear screen +printf "ABC\n" +printf "DEF\n" +printf "GHI\n" +printf "\033[?69h" # enable left/right margins +printf "\033[2;2s" # scroll region left/right +printf "\033[X" +``` + +``` +|cBC_____| +|DEF_____| +|GHI_____| +```