view src/libvterm/t/60screen_ascii.test @ 30265:8507a5b2c031 v9.0.0468

patch 9.0.0468: exectution stack underflow without the +eval feature Commit: https://github.com/vim/vim/commit/aeef1f7f6d8f6d4e84ffc9a24874f10403e4ddcd Author: Bram Moolenaar <Bram@vim.org> Date: Thu Sep 15 12:20:18 2022 +0100 patch 9.0.0468: exectution stack underflow without the +eval feature Problem: Exectution stack underflow without the +eval feature. (Dominique Pell?) Solution: Add to execution stack without FEAT_EVAL. (closes #11135)
author Bram Moolenaar <Bram@vim.org>
date Thu, 15 Sep 2022 13:30:05 +0200
parents dc88c690f19b
children 2d2758ffd959
line wrap: on
line source

INIT
WANTSCREEN ac

!Get
RESET
PUSH "ABC"
  movecursor 0,3
  ?screen_chars 0,0,1,3 = "ABC"
  ?screen_chars 0,0,1,80 = "ABC"
  ?screen_text 0,0,1,3 = 0x41,0x42,0x43
  ?screen_text 0,0,1,80 = 0x41,0x42,0x43
  ?screen_cell 0,0 = {0x41} width=1 attrs={} fg=rgb(240,240,240) bg=rgb(0,0,0)
  ?screen_cell 0,1 = {0x42} width=1 attrs={} fg=rgb(240,240,240) bg=rgb(0,0,0)
  ?screen_cell 0,2 = {0x43} width=1 attrs={} fg=rgb(240,240,240) bg=rgb(0,0,0)
  ?screen_row 0 = "ABC"
  ?screen_eol 0,0 = 0
  ?screen_eol 0,2 = 0
  ?screen_eol 0,3 = 1
PUSH "\e[H"
  movecursor 0,0
  ?screen_chars 0,0,1,80 = "ABC"
  ?screen_text 0,0,1,80 = 0x41,0x42,0x43
PUSH "E"
  movecursor 0,1
  ?screen_chars 0,0,1,80 = "EBC"
  ?screen_text 0,0,1,80 = 0x45,0x42,0x43

WANTSCREEN -c

!Erase
RESET
PUSH "ABCDE\e[H\e[K"
  ?screen_chars 0,0,1,80 = 
  ?screen_text 0,0,1,80 = 

!Copycell
RESET
PUSH "ABC\e[H\e[@"
PUSH "1"
  ?screen_chars 0,0,1,80 = "1ABC"

RESET
PUSH "ABC\e[H\e[P"
  ?screen_chars 0,0,1,1 = "B"
  ?screen_chars 0,1,1,2 = "C"
  ?screen_chars 0,0,1,80 = "BC"

!Space padding
RESET
PUSH "Hello\e[CWorld"
  ?screen_chars 0,0,1,80 = "Hello World"
  ?screen_text 0,0,1,80 = 0x48,0x65,0x6c,0x6c,0x6f,0x20,0x57,0x6f,0x72,0x6c,0x64

!Linefeed padding
RESET
PUSH "Hello\r\nWorld"
  ?screen_chars 0,0,2,80 = "Hello\nWorld"
  ?screen_text 0,0,2,80 = 0x48,0x65,0x6c,0x6c,0x6f,0x0a,0x57,0x6f,0x72,0x6c,0x64

!Altscreen
RESET
PUSH "P"
  ?screen_chars 0,0,1,80 = "P"
PUSH "\e[?1049h"
  ?screen_chars 0,0,1,80 = 
PUSH "\e[2K\e[HA"
  ?screen_chars 0,0,1,80 = "A"
PUSH "\e[?1049l"
  ?screen_chars 0,0,1,80 = "P"