bug-ncurses
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ncurses (init_extended_pair): can't create more than 255 color pairs


From: Niegodziwy Beru
Subject: ncurses (init_extended_pair): can't create more than 255 color pairs
Date: Sat, 11 May 2019 13:43:46 +0200

Hello,
In version 6.1, ncurses introduce init_extended_pair to extend limit
of possible color pairs above short limit. In my app I would like to
display three words:

pair255 (green background, red foreground)
pair256 (green background, red foreground)
pair32767 (red background, green foreground)

Only pair value 255 work correctly, pair numbers 256 and 32767 doesn’t
generate proper colors (I don’t get any errors, and COLOR_PAIRS
indicates value 65536).

Originally I post this problem on stackoverflow
(https://stackoverflow.com/questions/55972033/ncurses-init-extended-pair-cant-create-more-than-255-color-pairs
), where I have two problems, with library delivered by Ubuntu, but
with newest code (from repository) I was able to reproduce only one of
them.

1. Code to reproduce:

#include <iostream>
#include <ncurses.h>

int main() {
    trace(TRACE_MAXIMUM);
    WINDOW *scr = initscr();
    start_color();

    std::cout << "COLOR_PAIRS: " << COLOR_PAIRS << std::endl;

    int a = init_extended_color(2, 999, 0, 0);
    int b = init_extended_color(3, 0, 999, 0);

    if (a == ERR or b == ERR)
        std::cout << "AB error" << std::endl;

    int pair1 = 255;
    if (init_extended_pair(pair1, 2, 3) == ERR)
        std::cout << "Error: " << pair1 << std::endl;

    _tracef("Example pair1");
    attr_on(COLOR_PAIR(pair1), NULL);
    mvprintw(2, 1, "pair255");
    attr_off(COLOR_PAIR(pair1), NULL);

    int pair2 = 256;
    if (init_extended_pair(pair2, 2, 3) == ERR)
        std::cout << "Error: " << pair2 << std::endl;

    _tracef("Example pair2");
    attr_on(COLOR_PAIR(pair2), NULL);
    mvprintw(3, 1, "pair256");
    attr_off(COLOR_PAIR(pair2), NULL);

    int pair3 = 32767; // 2^15-1
    if (init_extended_pair(pair3, 3, 2) == ERR)
        std::cout << "Error: " << pair3 << std::endl;

    _tracef("Example pair3");
    attr_on(COLOR_PAIR(pair3), NULL);
    mvprintw(4, 1, "pair32767");
    attr_off(COLOR_PAIR(pair3), NULL);

    refresh();
    getch();
    endwin();

    return 0;
}

2. Compilation and execution:

$ g++  main.cpp ~/ncurses-6.1-20190504/lib/libncursesw_g.a
$ ./a.out
COLOR_PAIRS: 65536

3. Steps that I use to build ncurses:

$ wget -c https://invisible-island.net/datafiles/current/ncurses.tar.gz
$ tar -zxvf ncurses.tar.gz
$ cd ncurses-6.1-20190504/
$ ./configure --enable-ext-colors --enable-widec --with-trace
--with-terminfo-dirs="/etc/terminfo:/lib/terminfo:/usr/share/terminfo"
--with-default-terminfo-dir=/etc/terminfo --without-gpm
$ make

3. System and environment info:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 19.04
Release:    19.04
Codename:   disco

$ g++ --version
g++ (Ubuntu 8.3.0-6ubuntu1) 8.3.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

gnome-terminal --version
# GNOME Terminal 3.32.1 using VTE 0.56.1 +GNUTLS

$ echo $TERM
xterm-256color

5. Trace

TRACING NCURSES version 6.1.20190504 (tracelevel=0x1fff)
called {initscr()
+ called {new_prescr()
_nc_alloc_screen_sp 0x55d036b8e0b0
+ return }0x55d036b8e0b0
+ called {newterm(0x55d036b8e0b0, "xterm-256color",
0x7f29f6ed1760,0x7f29f6ed0a00)
+ + called {setupterm("xterm-256color",1,0x7ffe5a2049bc)
your terminal name is xterm-256color
using 2048 for getstr limit
+ + + called {_nc_first_db
duplicate /etc/terminfo
not found /home/beru/.terminfo
+ + + return }
_nc_next_db 1 /etc/terminfo
+ + + called {_nc_read_tic_entry(file=0x7ffe5a203930,
path=/etc/terminfo, name=xterm-256color)
cannot open terminfo /etc/terminfo/x/xterm-256color (errno=2)
+ + + return }code 0
_nc_next_db 2 /lib/terminfo
+ + + called {_nc_read_tic_entry(file=0x7ffe5a203930,
path=/lib/terminfo, name=xterm-256color)
read terminfo /lib/terminfo/x/xterm-256color
+ + + + called {_nc_read_termtype(ptr=0x55d036b8eab0,
buffer=0x7ffe5a1f3810, limit=3555)
READ termtype header @0
TERMTYPE name_size=37, bool=38/44, num=15/39 str=413/414(1538)
get Numbers[0]=80
get Numbers[1]=8
get Numbers[2]=24
get Numbers[3]=-1
get Numbers[4]=-1
get Numbers[5]=-1
get Numbers[6]=-1
get Numbers[7]=-1
get Numbers[8]=-1
get Numbers[9]=-1
get Numbers[10]=-1
get Numbers[11]=-1
get Numbers[12]=-1
get Numbers[13]=256
get Numbers[14]=65536
Strings[0] = "\e[Z"
Strings[1] = "\^G"
Strings[2] = "\r"
Strings[3] = "\e[%i%p1%d;%p2%dr"
Strings[4] = "\e[3g"
Strings[5] = "\e[H\e[2J"
Strings[6] = "\e[K"
Strings[7] = "\e[J"
Strings[8] = "\e[%i%p1%dG"
Strings[10] = "\e[%i%p1%d;%p2%dH"
Strings[11] = "\n"
Strings[12] = "\e[H"
Strings[13] = "\e[?25l"
Strings[14] = "\b"
Strings[16] = "\e[?12l\e[?25h"
Strings[17] = "\e[C"
Strings[19] = "\e[A"
Strings[20] = "\e[?12;25h"
Strings[21] = "\e[P"
Strings[22] = "\e[M"
Strings[25] = "\e(0"
Strings[26] = "\e[5m"
Strings[27] = "\e[1m"
Strings[28] = "\e[?1049h\e[22;0;0t"
Strings[30] = "\e[2m"
Strings[31] = "\e[4h"
Strings[32] = "\e[8m"
Strings[34] = "\e[7m"
Strings[35] = "\e[7m"
Strings[36] = "\e[4m"
Strings[37] = "\e[%p1%dX"
Strings[38] = "\e(B"
Strings[39] = "\e(B\e[m"
Strings[40] = "\e[?1049l\e[23;0;0t"
Strings[42] = "\e[4l"
Strings[43] = "\e[27m"
Strings[44] = "\e[24m"
Strings[45] = "\e[?5h$<100/>\e[?5l"
Strings[49] = "\e[!p\e[?3;4l\e[4l\e>"
Strings[53] = "\e[L"
Strings[55] = "\^?"
Strings[59] = "\e[3~"
Strings[61] = "\eOB"
Strings[66] = "\eOP"
Strings[67] = "\e[21~"
Strings[68] = "\eOQ"
Strings[69] = "\eOR"
Strings[70] = "\eOS"
Strings[71] = "\e[15~"
Strings[72] = "\e[17~"
Strings[73] = "\e[18~"
Strings[74] = "\e[19~"
Strings[75] = "\e[20~"
Strings[76] = "\eOH"
Strings[77] = "\e[2~"
Strings[79] = "\eOD"
Strings[81] = "\e[6~"
Strings[82] = "\e[5~"
Strings[83] = "\eOC"
Strings[84] = "\e[1;2B"
Strings[85] = "\e[1;2A"
Strings[87] = "\eOA"
Strings[88] = "\e[?1l\e>"
Strings[89] = "\e[?1h\e="
Strings[101] = "\e[?1034l"
Strings[102] = "\e[?1034h"
Strings[105] = "\e[%p1%dP"
Strings[106] = "\e[%p1%dM"
Strings[107] = "\e[%p1%dB"
Strings[108] = "\e[%p1%d@"
Strings[109] = "\e[%p1%dS"
Strings[110] = "\e[%p1%dL"
Strings[111] = "\e[%p1%dD"
Strings[112] = "\e[%p1%dC"
Strings[113] = "\e[%p1%dT"
Strings[114] = "\e[%p1%dA"
Strings[118] = "\e[i"
Strings[119] = "\e[4i"
Strings[120] = "\e[5i"
Strings[121] = "%p1%c\e[%p2%{1}%-%db"
Strings[122] = "\ec\e]104\^G"
Strings[123] = "\e[!p\e[?3;4l\e[4l\e>"
Strings[126] = "\e8"
Strings[127] = "\e[%i%p1%dd"
Strings[128] = "\e7"
Strings[129] = "\n"
Strings[130] = "\eM"
Strings[131] = 
"%?%p9%t\e(0%e\e(B%;\e[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m"
Strings[132] = "\eH"
Strings[134] = "\t"
Strings[141] = "\eOE"
Strings[146] = "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"
Strings[148] = "\e[Z"
Strings[151] = "\e[?7h"
Strings[152] = "\e[?7l"
Strings[164] = "\eOF"
Strings[165] = "\eOM"
Strings[191] = "\e[3;2~"
Strings[194] = "\e[1;2F"
Strings[199] = "\e[1;2H"
Strings[200] = "\e[2;2~"
Strings[201] = "\e[1;2D"
Strings[204] = "\e[6;2~"
Strings[206] = "\e[5;2~"
Strings[210] = "\e[1;2C"
Strings[216] = "\e[23~"
Strings[217] = "\e[24~"
Strings[218] = "\e[1;2P"
Strings[219] = "\e[1;2Q"
Strings[220] = "\e[1;2R"
Strings[221] = "\e[1;2S"
Strings[222] = "\e[15;2~"
Strings[223] = "\e[17;2~"
Strings[224] = "\e[18;2~"
Strings[225] = "\e[19;2~"
Strings[226] = "\e[20;2~"
Strings[227] = "\e[21;2~"
Strings[228] = "\e[23;2~"
Strings[229] = "\e[24;2~"
Strings[230] = "\e[1;5P"
Strings[231] = "\e[1;5Q"
Strings[232] = "\e[1;5R"
Strings[233] = "\e[1;5S"
Strings[234] = "\e[15;5~"
Strings[235] = "\e[17;5~"
Strings[236] = "\e[18;5~"
Strings[237] = "\e[19;5~"
Strings[238] = "\e[20;5~"
Strings[239] = "\e[21;5~"
Strings[240] = "\e[23;5~"
Strings[241] = "\e[24;5~"
Strings[242] = "\e[1;6P"
Strings[243] = "\e[1;6Q"
Strings[244] = "\e[1;6R"
Strings[245] = "\e[1;6S"
Strings[246] = "\e[15;6~"
Strings[247] = "\e[17;6~"
Strings[248] = "\e[18;6~"
Strings[249] = "\e[19;6~"
Strings[250] = "\e[20;6~"
Strings[251] = "\e[21;6~"
Strings[252] = "\e[23;6~"
Strings[253] = "\e[24;6~"
Strings[254] = "\e[1;3P"
Strings[255] = "\e[1;3Q"
Strings[256] = "\e[1;3R"
Strings[257] = "\e[1;3S"
Strings[258] = "\e[15;3~"
Strings[259] = "\e[17;3~"
Strings[260] = "\e[18;3~"
Strings[261] = "\e[19;3~"
Strings[262] = "\e[20;3~"
Strings[263] = "\e[21;3~"
Strings[264] = "\e[23;3~"
Strings[265] = "\e[24;3~"
Strings[266] = "\e[1;4P"
Strings[267] = "\e[1;4Q"
Strings[268] = "\e[1;4R"
Strings[269] = "\e[1K"
Strings[293] = "\e[%i%d;%dR"
Strings[294] = "\e[6n"
Strings[295] = "\e[?%[;0123456789]c"
Strings[296] = "\e[c"
Strings[297] = "\e[39;49m"
Strings[298] = "\e]104\^G"
Strings[299] = 
"\e]4;%p1%d;rgb:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\e\\"
Strings[311] = "\e[3m"
Strings[321] = "\e[23m"
Strings[355] = "\e[M"
Strings[359] = "\e[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m"
Strings[360] = 
"\e[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m"
Strings[411] = "\el"
Strings[412] = "\em"
READ extended_header @2512
extended header: bool 2, number 0, string 64(126:771)
READ 2 extended-booleans @2522
READ 0 extended-numbers @2524
READ extended-offsets @2524
READ 771 bytes of extended-strings @2784
first extended-string is "\e]112\^G"
Before computing extended-string capabilities str_count=413, ext_str_count=64
Strings[0] = "\e]112\^G"
Strings[1] = "\e]12;%p1%s\^G"
Strings[2] = "\e[3J"
Strings[3] = "\e]52;%p1%s;%p2%s\^G"
Strings[4] = "\e[2 q"
Strings[5] = "\e[%p1%d q"
Strings[6] = "\e[3;3~"
Strings[7] = "\e[3;4~"
Strings[8] = "\e[3;5~"
Strings[9] = "\e[3;6~"
Strings[10] = "\e[3;7~"
Strings[11] = "\e[1;2B"
Strings[12] = "\e[1;3B"
Strings[13] = "\e[1;4B"
Strings[14] = "\e[1;5B"
Strings[15] = "\e[1;6B"
Strings[16] = "\e[1;7B"
Strings[17] = "\e[1;3F"
Strings[18] = "\e[1;4F"
Strings[19] = "\e[1;5F"
Strings[20] = "\e[1;6F"
Strings[21] = "\e[1;7F"
Strings[22] = "\e[1;3H"
Strings[23] = "\e[1;4H"
Strings[24] = "\e[1;5H"
Strings[25] = "\e[1;6H"
Strings[26] = "\e[1;7H"
Strings[27] = "\e[2;3~"
Strings[28] = "\e[2;4~"
Strings[29] = "\e[2;5~"
Strings[30] = "\e[2;6~"
Strings[31] = "\e[2;7~"
Strings[32] = "\e[1;3D"
Strings[33] = "\e[1;4D"
Strings[34] = "\e[1;5D"
Strings[35] = "\e[1;6D"
Strings[36] = "\e[1;7D"
Strings[37] = "\e[6;3~"
Strings[38] = "\e[6;4~"
Strings[39] = "\e[6;5~"
Strings[40] = "\e[6;6~"
Strings[41] = "\e[6;7~"
Strings[42] = "\e[5;3~"
Strings[43] = "\e[5;4~"
Strings[44] = "\e[5;5~"
Strings[45] = "\e[5;6~"
Strings[46] = "\e[5;7~"
Strings[47] = "\e[1;3C"
Strings[48] = "\e[1;4C"
Strings[49] = "\e[1;5C"
Strings[50] = "\e[1;6C"
Strings[51] = "\e[1;7C"
Strings[52] = "\e[1;2A"
Strings[53] = "\e[1;3A"
Strings[54] = "\e[1;4A"
Strings[55] = "\e[1;5A"
Strings[56] = "\e[1;6A"
Strings[57] = "\e[1;7A"
Strings[62] = "\e[29m"
Strings[63] = "\e[9m"
MOVE from [63:476] "\e[9m"
... to    [477] "\e[9m"
MOVE from [62:475] "\e[29m"
... to    [476] "\e[29m"
MOVE from [61:474] (null)
... to    [475] (null)
MOVE from [60:473] (null)
... to    [474] (null)
MOVE from [59:472] (null)
... to    [473] (null)
MOVE from [58:471] (null)
... to    [472] (null)
MOVE from [57:470] "\e[1;7A"
... to    [471] "\e[1;7A"
MOVE from [56:469] "\e[1;6A"
... to    [470] "\e[1;6A"
MOVE from [55:468] "\e[1;5A"
... to    [469] "\e[1;5A"
MOVE from [54:467] "\e[1;4A"
... to    [468] "\e[1;4A"
MOVE from [53:466] "\e[1;3A"
... to    [467] "\e[1;3A"
MOVE from [52:465] "\e[1;2A"
... to    [466] "\e[1;2A"
MOVE from [51:464] "\e[1;7C"
... to    [465] "\e[1;7C"
MOVE from [50:463] "\e[1;6C"
... to    [464] "\e[1;6C"
MOVE from [49:462] "\e[1;5C"
... to    [463] "\e[1;5C"
MOVE from [48:461] "\e[1;4C"
... to    [462] "\e[1;4C"
MOVE from [47:460] "\e[1;3C"
... to    [461] "\e[1;3C"
MOVE from [46:459] "\e[5;7~"
... to    [460] "\e[5;7~"
MOVE from [45:458] "\e[5;6~"
... to    [459] "\e[5;6~"
MOVE from [44:457] "\e[5;5~"
... to    [458] "\e[5;5~"
MOVE from [43:456] "\e[5;4~"
... to    [457] "\e[5;4~"
MOVE from [42:455] "\e[5;3~"
... to    [456] "\e[5;3~"
MOVE from [41:454] "\e[6;7~"
... to    [455] "\e[6;7~"
MOVE from [40:453] "\e[6;6~"
... to    [454] "\e[6;6~"
MOVE from [39:452] "\e[6;5~"
... to    [453] "\e[6;5~"
MOVE from [38:451] "\e[6;4~"
... to    [452] "\e[6;4~"
MOVE from [37:450] "\e[6;3~"
... to    [451] "\e[6;3~"
MOVE from [36:449] "\e[1;7D"
... to    [450] "\e[1;7D"
MOVE from [35:448] "\e[1;6D"
... to    [449] "\e[1;6D"
MOVE from [34:447] "\e[1;5D"
... to    [448] "\e[1;5D"
MOVE from [33:446] "\e[1;4D"
... to    [447] "\e[1;4D"
MOVE from [32:445] "\e[1;3D"
... to    [446] "\e[1;3D"
MOVE from [31:444] "\e[2;7~"
... to    [445] "\e[2;7~"
MOVE from [30:443] "\e[2;6~"
... to    [444] "\e[2;6~"
MOVE from [29:442] "\e[2;5~"
... to    [443] "\e[2;5~"
MOVE from [28:441] "\e[2;4~"
... to    [442] "\e[2;4~"
MOVE from [27:440] "\e[2;3~"
... to    [441] "\e[2;3~"
MOVE from [26:439] "\e[1;7H"
... to    [440] "\e[1;7H"
MOVE from [25:438] "\e[1;6H"
... to    [439] "\e[1;6H"
MOVE from [24:437] "\e[1;5H"
... to    [438] "\e[1;5H"
MOVE from [23:436] "\e[1;4H"
... to    [437] "\e[1;4H"
MOVE from [22:435] "\e[1;3H"
... to    [436] "\e[1;3H"
MOVE from [21:434] "\e[1;7F"
... to    [435] "\e[1;7F"
MOVE from [20:433] "\e[1;6F"
... to    [434] "\e[1;6F"
MOVE from [19:432] "\e[1;5F"
... to    [433] "\e[1;5F"
MOVE from [18:431] "\e[1;4F"
... to    [432] "\e[1;4F"
MOVE from [17:430] "\e[1;3F"
... to    [431] "\e[1;3F"
MOVE from [16:429] "\e[1;7B"
... to    [430] "\e[1;7B"
MOVE from [15:428] "\e[1;6B"
... to    [429] "\e[1;6B"
MOVE from [14:427] "\e[1;5B"
... to    [428] "\e[1;5B"
MOVE from [13:426] "\e[1;4B"
... to    [427] "\e[1;4B"
MOVE from [12:425] "\e[1;3B"
... to    [426] "\e[1;3B"
MOVE from [11:424] "\e[1;2B"
... to    [425] "\e[1;2B"
MOVE from [10:423] "\e[3;7~"
... to    [424] "\e[3;7~"
MOVE from [9:422] "\e[3;6~"
... to    [423] "\e[3;6~"
MOVE from [8:421] "\e[3;5~"
... to    [422] "\e[3;5~"
MOVE from [7:420] "\e[3;4~"
... to    [421] "\e[3;4~"
MOVE from [6:419] "\e[3;3~"
... to    [420] "\e[3;3~"
MOVE from [5:418] "\e[%p1%d q"
... to    [419] "\e[%p1%d q"
MOVE from [4:417] "\e[2 q"
... to    [418] "\e[2 q"
MOVE from [3:416] "\e]52;%p1%s;%p2%s\^G"
... to    [417] "\e]52;%p1%s;%p2%s\^G"
MOVE from [2:415] "\e[3J"
... to    [416] "\e[3J"
MOVE from [1:414] "\e]12;%p1%s\^G"
... to    [415] "\e]12;%p1%s\^G"
MOVE from [0:413] "\e]112\^G"
... to    [414] "\e]112\^G"
Check table-size: 126/126
ext_NAMES starting @433 in extended_strings, first = "AX"
Strings[0] = "AX"
Strings[1] = "XT"
Strings[2] = "Cr"
Strings[3] = "Cs"
Strings[4] = "E3"
Strings[5] = "Ms"
Strings[6] = "Se"
Strings[7] = "Ss"
Strings[8] = "kDC3"
Strings[9] = "kDC4"
Strings[10] = "kDC5"
Strings[11] = "kDC6"
Strings[12] = "kDC7"
Strings[13] = "kDN"
Strings[14] = "kDN3"
Strings[15] = "kDN4"
Strings[16] = "kDN5"
Strings[17] = "kDN6"
Strings[18] = "kDN7"
Strings[19] = "kEND3"
Strings[20] = "kEND4"
Strings[21] = "kEND5"
Strings[22] = "kEND6"
Strings[23] = "kEND7"
Strings[24] = "kHOM3"
Strings[25] = "kHOM4"
Strings[26] = "kHOM5"
Strings[27] = "kHOM6"
Strings[28] = "kHOM7"
Strings[29] = "kIC3"
Strings[30] = "kIC4"
Strings[31] = "kIC5"
Strings[32] = "kIC6"
Strings[33] = "kIC7"
Strings[34] = "kLFT3"
Strings[35] = "kLFT4"
Strings[36] = "kLFT5"
Strings[37] = "kLFT6"
Strings[38] = "kLFT7"
Strings[39] = "kNXT3"
Strings[40] = "kNXT4"
Strings[41] = "kNXT5"
Strings[42] = "kNXT6"
Strings[43] = "kNXT7"
Strings[44] = "kPRV3"
Strings[45] = "kPRV4"
Strings[46] = "kPRV5"
Strings[47] = "kPRV6"
Strings[48] = "kPRV7"
Strings[49] = "kRIT3"
Strings[50] = "kRIT4"
Strings[51] = "kRIT5"
Strings[52] = "kRIT6"
Strings[53] = "kRIT7"
Strings[54] = "kUP"
Strings[55] = "kUP3"
Strings[56] = "kUP4"
Strings[57] = "kUP5"
Strings[58] = "kUP6"
Strings[59] = "kUP7"
Strings[60] = "ka2"
Strings[61] = "kb1"
Strings[62] = "kb3"
Strings[63] = "kc2"
Strings[64] = "rmxx"
Strings[65] = "smxx"
...done reading terminfo bool 46(2) num 39(0) str 478(64)
extend: num_Booleans:46
+ + + + return }code 1
+ + + return }code 1
_nc_setup_tinfo returns 1
+ + + called {set_curterm(0x55d036b8e9e0)
+ + + return }(nil)
+ + + called {def_shell_mode((nil)) ->term 0x55d036b8e9e0
_nc_get_tty_mode(1): iflags: {ICRNL} oflags: {OPOST, ONLCR} cflags:
{CREAD} CS8 lflags: {ECHO, ECHOE, ECHOK, ICANON, ISIG, IEXTEN}
+ + + return }0
+ + + called {def_prog_mode((nil)) ->term 0x55d036b8e9e0
_nc_get_tty_mode(1): iflags: {ICRNL} oflags: {OPOST, ONLCR} cflags:
{CREAD} CS8 lflags: {ECHO, ECHOE, ECHOK, ICANON, ISIG, IEXTEN}
+ + + return }0
+ + + called {baudrate((nil))
+ + + return }38400
screen size: terminfo lines = 24 columns = 80
SYS screen size: environment LINES = 46 COLUMNS = 178
screen size is 46x178
TABSIZE = 8
+ + return }0
+ + called {_nc_setupscreen(46, 178, 0x7f29f6ed1760, 0, 0)
created SP 0x55d036b8e0b0
screen size: terminfo lines = 46 columns = 178
SYS screen size: environment LINES = 46 COLUMNS = 178
screen size is 46x178
TABSIZE = 8
+ + + called {termname(0x55d036b8e0b0)
+ + + return }"xterm-256color"
create :screen xterm-256color 46x178
padding will be used
+ + + called {termattrs(0x55d036b8e0b0)
+ + + return }{000 |
{A_STANDOUT|A_UNDERLINE|A_REVERSE|A_BLINK|A_DIM|A_BOLD|A_ALTCHARSET|A_INVIS|A_ITALIC}}
+ + + called {has_colors()
+ + + return }1
initializing ACS map
#0 real_map['`' = 0140] = {ACS_DIAMOND}
#2 real_map['a' = 0141] = {ACS_CKBOARD}
#4 real_map['f' = 0146] = {ACS_DEGREE}
#6 real_map['g' = 0147] = {ACS_PLMINUS}
#8 real_map['i' = 0151] = {ACS_LANTERN}
#10 real_map['j' = 0152] = {ACS_LRCORNER}
#12 real_map['k' = 0153] = {ACS_URCORNER}
#14 real_map['l' = 0154] = {ACS_ULCORNER}
#16 real_map['m' = 0155] = {ACS_LLCORNER}
#18 real_map['n' = 0156] = {ACS_PLUS}
#20 real_map['o' = 0157] = {ACS_S1}
#22 real_map['p' = 0160] = {ACS_S3}
#24 real_map['q' = 0161] = {ACS_HLINE}
#26 real_map['r' = 0162] = {ACS_S7}
#28 real_map['s' = 0163] = {ACS_S9}
#30 real_map['t' = 0164] = {ACS_LTEE}
#32 real_map['u' = 0165] = {ACS_RTEE}
#34 real_map['v' = 0166] = {ACS_BTEE}
#36 real_map['w' = 0167] = {ACS_TTEE}
#38 real_map['x' = 0170] = {ACS_VLINE}
#40 real_map['y' = 0171] = {ACS_LEQUAL}
#42 real_map['z' = 0172] = {ACS_GEQUAL}
#44 real_map['{' = 0173] = {ACS_PI}
#46 real_map['|' = 0174] = {ACS_NEQUAL}
#48 real_map['}' = 0175] = {ACS_STERLING}
#50 real_map['~' = 0176] = {ACS_BULLET}
READ acs_chars "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"
DIFF acs_chars 
"+>,<-^.v0#A+B+C+D+E+F+G+H+I+J+K+L+M+N+Q-R-T+U+V+W+X|Y|``aaffggh#iijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"
_nc_unicode_locale(ANSI_X3.4-1968) ->0
_nc_unicode_locale(ANSI_X3.4-1968) ->0
initializing WIDE-ACS map (Unicode is not active)
#0, width:1 SetChar(l, '+' = 053) = {ACS_ULCORNER}
#1, width:1 SetChar(m, '+' = 053) = {ACS_LLCORNER}
#2, width:1 SetChar(k, '+' = 053) = {ACS_URCORNER}
#3, width:1 SetChar(j, '+' = 053) = {ACS_LRCORNER}
#4, width:1 SetChar(t, '+' = 053) = {ACS_LTEE}
#5, width:1 SetChar(u, '+' = 053) = {ACS_RTEE}
#6, width:1 SetChar(v, '+' = 053) = {ACS_BTEE}
#7, width:1 SetChar(w, '+' = 053) = {ACS_TTEE}
#8, width:1 SetChar(q, '-' = 055) = {ACS_HLINE}
#9, width:1 SetChar(x, '|' = 0174) = {ACS_VLINE}
#10, width:1 SetChar(n, '+' = 053) = {ACS_PLUS}
#11, width:1 SetChar(o, '~' = 0176) = {ACS_S1}
#12, width:1 SetChar(s, '_' = 0137) = {ACS_S9}
#13, width:1 SetChar(`, '+' = 053) = {ACS_DIAMOND}
#14, width:1 SetChar(a, ':' = 072) = {ACS_CKBOARD}
#15, width:1 SetChar(f, ''' = 047) = {ACS_DEGREE}
#16, width:1 SetChar(g, '#' = 043) = {ACS_PLMINUS}
#17, width:1 SetChar(~, 'o' = 0157) = {ACS_BULLET}
#18, width:1 SetChar(,, '<' = 074) = {{ ',' = 054 } | {A_ALTCHARSET}}
#19, width:1 SetChar(+, '>' = 076) = {{ '+' = 053 } | {A_ALTCHARSET}}
#20, width:1 SetChar(., 'v' = 0166) = {{ '.' = 056 } | {A_ALTCHARSET}}
#21, width:1 SetChar(-, '^' = 0136) = {{ '-' = 055 } | {A_ALTCHARSET}}
#22, width:1 SetChar(h, '#' = 043) = {{ 'h' = 0150 } | {A_ALTCHARSET}}
#23, width:1 SetChar(i, '#' = 043) = {ACS_LANTERN}
#24, width:1 SetChar(0, '#' = 043) = {{ '0' = 060 } | {A_ALTCHARSET}}
#25, width:1 SetChar(p, '-' = 055) = {ACS_S3}
#26, width:1 SetChar(r, '-' = 055) = {ACS_S7}
#27, width:1 SetChar(y, '<' = 074) = {ACS_LEQUAL}
#28, width:1 SetChar(z, '>' = 076) = {ACS_GEQUAL}
#29, width:1 SetChar({, '*' = 052) = {ACS_PI}
#30, width:1 SetChar(|, '!' = 041) = {ACS_NEQUAL}
#31, width:1 SetChar(}, 'f' = 0146) = {ACS_STERLING}
#32, width:1 SetChar(L, '+' = 053) = {{ 'L' = 0114 } | {A_ALTCHARSET}}
#33, width:1 SetChar(M, '+' = 053) = {{ 'M' = 0115 } | {A_ALTCHARSET}}
#34, width:1 SetChar(K, '+' = 053) = {{ 'K' = 0113 } | {A_ALTCHARSET}}
#35, width:1 SetChar(J, '+' = 053) = {{ 'J' = 0112 } | {A_ALTCHARSET}}
#36, width:1 SetChar(T, '+' = 053) = {{ 'T' = 0124 } | {A_ALTCHARSET}}
#37, width:1 SetChar(U, '+' = 053) = {{ 'U' = 0125 } | {A_ALTCHARSET}}
#38, width:1 SetChar(V, '+' = 053) = {{ 'V' = 0126 } | {A_ALTCHARSET}}
#39, width:1 SetChar(W, '+' = 053) = {{ 'W' = 0127 } | {A_ALTCHARSET}}
#40, width:1 SetChar(Q, '-' = 055) = {{ 'Q' = 0121 } | {A_ALTCHARSET}}
#41, width:1 SetChar(X, '|' = 0174) = {{ 'X' = 0130 } | {A_ALTCHARSET}}
#42, width:1 SetChar(N, '+' = 053) = {{ 'N' = 0116 } | {A_ALTCHARSET}}
#43, width:1 SetChar(C, '+' = 053) = {{ 'C' = 0103 } | {A_ALTCHARSET}}
#44, width:1 SetChar(D, '+' = 053) = {{ 'D' = 0104 } | {A_ALTCHARSET}}
#45, width:1 SetChar(B, '+' = 053) = {{ 'B' = 0102 } | {A_ALTCHARSET}}
#46, width:1 SetChar(A, '+' = 053) = {{ 'A' = 0101 } | {A_ALTCHARSET}}
#47, width:1 SetChar(G, '+' = 053) = {{ 'G' = 0107 } | {A_ALTCHARSET}}
#48, width:1 SetChar(F, '+' = 053) = {{ 'F' = 0106 } | {A_ALTCHARSET}}
#49, width:1 SetChar(H, '+' = 053) = {{ 'H' = 0110 } | {A_ALTCHARSET}}
#50, width:1 SetChar(I, '+' = 053) = {{ 'I' = 0111 } | {A_ALTCHARSET}}
#51, width:1 SetChar(R, '-' = 055) = {{ 'R' = 0122 } | {A_ALTCHARSET}}
#52, width:1 SetChar(Y, '|' = 0174) = {{ 'Y' = 0131 } | {A_ALTCHARSET}}
#53, width:1 SetChar(E, '+' = 053) = {{ 'E' = 0105 } | {A_ALTCHARSET}}
_nc_get_locale "C"
legacy-coding 1
creating newscr
+ + + called {newwin(0x55d036b8e0b0, 46,178,0,0)
+ + + + called {_nc_makenew(0x55d036b8e0b0,46,178,0,0)
create :window 0x55d036b999c0
+ + + + return }0x55d036b999c0
+ + + return }0x55d036b999c0
creating curscr
+ + + called {newwin(0x55d036b8e0b0, 46,178,0,0)
+ + + + called {_nc_makenew(0x55d036b8e0b0,46,178,0,0)
create :window 0x55d036bd1ee0
+ + + + return }0x55d036bd1ee0
+ + + return }0x55d036bd1ee0
creating stdscr
+ + + called {newwin(0x55d036b8e0b0, 46,178,0,0)
+ + + + called {_nc_makenew(0x55d036b8e0b0,46,178,0,0)
create :window 0x55d036c0a400
+ + + + return }0x55d036c0a400
+ + + return }0x55d036c0a400
+ + return }0
+ + called {typeahead(0x55d036b8e0b0, 0)
+ + return }0
+ + called {baudrate(0x55d036b8e0b0)
+ + return }38400
char_padding 2 msecs
CostOf carriage_return 2 "\r"
CostOf cursor_home 6 "\e[H"
CostOf cursor_to_ll 1000000 (null)
CostOf cursor_left 2 "\b"
CostOf cursor_right 6 "\e[C"
CostOf cursor_down 2 "\n"
CostOf cursor_up 6 "\e[A"
CostOf enter_insert_mode 8 "\e[4h"
CostOf exit_insert_mode 8 "\e[4l"
+ + called {tparm("\e[%i%p1%d;%p2%dH", 23, 23)
+ + return }"\e[24;24H"
CostOf TPARM_2(SP_PARM->_address_cursor, 23, 23) 16 "\e[24;24H"
+ + called {tparm("\e[%p1%dD", 23)
+ + return }"\e[23D"
CostOf TPARM_1(parm_left_cursor, 23) 10 "\e[23D"
+ + called {tparm("\e[%p1%dC", 23)
+ + return }"\e[23C"
CostOf TPARM_1(parm_right_cursor, 23) 10 "\e[23C"
+ + called {tparm("\e[%p1%dB", 23)
+ + return }"\e[23B"
CostOf TPARM_1(parm_down_cursor, 23) 10 "\e[23B"
+ + called {tparm("\e[%p1%dA", 23)
+ + return }"\e[23A"
CostOf TPARM_1(parm_up_cursor, 23) 10 "\e[23A"
+ + called {tparm("\e[%i%p1%dG", 23)
+ + return }"\e[24G"
CostOf TPARM_1(column_address, 23) 10 "\e[24G"
+ + called {tparm("\e[%i%p1%dd", 23)
+ + return }"\e[24d"
CostOf TPARM_1(row_address, 23) 10 "\e[24d"
NormalizedCost clr_eos 3 "\e[J"
NormalizedCost clr_eol 3 "\e[K"
NormalizedCost clr_bol 4 "\e[1K"
NormalizedCost delete_character 3 "\e[P"
NormalizedCost insert_character 1000000 (null)
+ + called {tparm("\e[%p1%dP", 23)
+ + return }"\e[23P"
NormalizedCost TPARM_1(parm_dch, 23) 5 "\e[23P"
+ + called {tparm("\e[%p1%d@", 23)
+ + return }"\e[23@"
NormalizedCost TPARM_1(parm_ich, 23) 5 "\e[23@"
+ + called {tparm("\e[%p1%dX", 23)
+ + return }"\e[23X"
NormalizedCost TPARM_1(erase_chars, 23) 5 "\e[23X"
+ + called {tparm("%p1%c\e[%p2%{1}%-%db", 32, 23)
+ + return }" \e[22b"
NormalizedCost TPARM_2(repeat_char, ' ', 23) 6 " \e[22b"
+ + called {tparm("\e[%i%p1%d;%p2%dH", 23, 23)
+ + return }"\e[24;24H"
NormalizedCost TPARM_2(SP_PARM->_address_cursor, 23, 23) 8 "\e[24;24H"
+ + called {tparm("\e[%i%p1%dG", 23)
+ + return }"\e[24G"
NormalizedCost TPARM_1(column_address, 23) 5 "\e[24G"
+ + called {tparm("\e[%p1%dC", 23)
+ + return }"\e[23C"
NormalizedCost TPARM_1(parm_right_cursor, 23) 5 "\e[23C"
tputs(enter_ca_mode = "\e[?1049h\e[22;0;0t", 1, _nc_outch) called
+ + called {tparm("\e[%i%p1%d;%p2%dr", 0, 45)
+ + return }"\e[1;46r"
tputs(change_scroll_region = "\e[1;46r", 1, _nc_outch) called
tputs(exit_attribute_mode = "\e(B\e[m", 1, _nc_outch) called
tputs(exit_insert_mode = "\e[4l", 1, _nc_outch) called
tputs(enter_am_mode = "\e[?7h", 1, _nc_outch) called
+ + called {_nc_initscr(0x55d036b8e0b0) ->term 0x55d036b8e9e0
+ + + called {cbreak(0x55d036b8e0b0)
cbreak before bits: iflags: {ICRNL} oflags: {OPOST, ONLCR} cflags:
{CREAD} CS8 lflags: {ECHO, ECHOE, ECHOK, ICANON, ISIG, IEXTEN}
_nc_set_tty_mode(1): oflags: {OPOST, ONLCR} cflags: {CREAD} CS8
lflags: {ECHO, ECHOE, ECHOK, ISIG, IEXTEN}
cbreak after bits: oflags: {OPOST, ONLCR} cflags: {CREAD} CS8 lflags:
{ECHO, ECHOE, ECHOK, ISIG, IEXTEN}
+ + + return }0
_nc_set_tty_mode(1): oflags: {OPOST} cflags: {CREAD} CS8 lflags: {ISIG, IEXTEN}
+ + return }0
+ + called {_nc_signal_handler(1)
CatchIfDefault - will catch SIGINT
CatchIfDefault - will catch SIGTERM
CatchIfDefault - will catch SIGWINCH
+ + return }
+ return }0x55d036b8e0b0
+ called {def_prog_mode(0x55d036b8e0b0) ->term 0x55d036b8e9e0
_nc_get_tty_mode(1): oflags: {OPOST} cflags: {CREAD} CS8 lflags: {ISIG, IEXTEN}
+ return }0
return }0x55d036c0a400
called {start_color(0x55d036b8e0b0)
tputs(orig_pair = "\e[39;49m", 1, _nc_outch) called
+ called {tigetflag(0x55d036b8e0b0, RGB)
+ return }-1
+ called {tigetnum(0x55d036b8e0b0, RGB)
+ return }-2
+ called {tigetstr(0x55d036b8e0b0, RGB)
+ return }(cancelled)
started color: COLORS = 256, COLOR_PAIRS = 65536
return }0
called {init_color(0x55d036b8e0b0,2,999,0,0)
+ called 
{tparm("\e]4;%p1%d;rgb:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\e\\",
2, 999, 0, 0)
+ return }"\e]4;2;rgb:FE/00/00\e\\"
tputs(initialize_color = "\e]4;2;rgb:FE/00/00\e\\", 1, _nc_outch) called
return }0
called {init_color(0x55d036b8e0b0,3,0,999,0)
+ called 
{tparm("\e]4;%p1%d;rgb:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\e\\",
3, 0, 999, 0)
+ return }"\e]4;3;rgb:00/FE/00\e\\"
tputs(initialize_color = "\e]4;3;rgb:00/FE/00\e\\", 1, _nc_outch) called
return }0
called {init_pair(0x55d036b8e0b0,255,2,3)
return }0
Example pair1
called {wattr_on(0x55d036c0a400,{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}})
... current {A_NORMAL} (0)
new attribute is {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}
return }0
called {mvprintw(2,1,"pair255")
+ called {wmove(0x55d036c0a400,2,1)
+ return }0
+ called {vw_printw(0x55d036c0a400,"pair255",va_list)
+ + called {waddnstr(0x55d036c0a400,"pair255",-1)
... current {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}
str is not null, length = 7
*str = 0160
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ 'p' = 0160 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (2, 1..1) = {{ 'p' = 0160 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 0141
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ 'a' = 0141 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (2, 2..2) = {{ 'a' = 0141 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 0151
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ 'i' = 0151 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (2, 3..3) = {{ 'i' = 0151 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 0162
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ 'r' = 0162 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (2, 4..4) = {{ 'r' = 0162 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 062
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ '2' = 062 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (2, 5..5) = {{ '2' = 062 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 065
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ '5' = 065 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (2, 6..6) = {{ '5' = 065 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 065
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ '5' = 065 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (2, 7..7) = {{ '5' = 065 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
waddnstr returns 0
+ + return }0
+ return }0
return }0
called {wattr_off(0x55d036c0a400,{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}})
... current {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}} (255)
new attribute is {A_NORMAL}
return }0
called {init_pair(0x55d036b8e0b0,256,2,3)
return }0
Example pair2
called {wattr_on(0x55d036c0a400,{A_NORMAL})
... current {A_NORMAL} (0)
new attribute is {A_NORMAL}
return }0
called {mvprintw(3,1,"pair256")
+ called {wmove(0x55d036c0a400,3,1)
+ return }0
+ called {vw_printw(0x55d036c0a400,"pair256",va_list)
+ + called {waddnstr(0x55d036c0a400,"pair256",-1)
... current {A_NORMAL}
str is not null, length = 7
*str = 0160
render_char bkg {{ ' ' = 040 }} (0), attrs {A_NORMAL} (0) -> ch {{ 'p'
= 0160 }} (0)
cell (3, 1..1) = {{ 'p' = 0160 }}
*str = 0141
render_char bkg {{ ' ' = 040 }} (0), attrs {A_NORMAL} (0) -> ch {{ 'a'
= 0141 }} (0)
cell (3, 2..2) = {{ 'a' = 0141 }}
*str = 0151
render_char bkg {{ ' ' = 040 }} (0), attrs {A_NORMAL} (0) -> ch {{ 'i'
= 0151 }} (0)
cell (3, 3..3) = {{ 'i' = 0151 }}
*str = 0162
render_char bkg {{ ' ' = 040 }} (0), attrs {A_NORMAL} (0) -> ch {{ 'r'
= 0162 }} (0)
cell (3, 4..4) = {{ 'r' = 0162 }}
*str = 062
render_char bkg {{ ' ' = 040 }} (0), attrs {A_NORMAL} (0) -> ch {{ '2'
= 062 }} (0)
cell (3, 5..5) = {{ '2' = 062 }}
*str = 065
render_char bkg {{ ' ' = 040 }} (0), attrs {A_NORMAL} (0) -> ch {{ '5'
= 065 }} (0)
cell (3, 6..6) = {{ '5' = 065 }}
*str = 066
render_char bkg {{ ' ' = 040 }} (0), attrs {A_NORMAL} (0) -> ch {{ '6'
= 066 }} (0)
cell (3, 7..7) = {{ '6' = 066 }}
waddnstr returns 0
+ + return }0
+ return }0
return }0
called {wattr_off(0x55d036c0a400,{A_NORMAL})
... current {A_NORMAL} (0)
new attribute is {A_NORMAL}
return }0
called {init_pair(0x55d036b8e0b0,32767,3,2)
return }0
Example pair3
called {wattr_on(0x55d036c0a400,{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}})
... current {A_NORMAL} (0)
new attribute is {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}
return }0
called {mvprintw(4,1,"pair32767")
+ called {wmove(0x55d036c0a400,4,1)
+ return }0
+ called {vw_printw(0x55d036c0a400,"pair32767",va_list)
+ + called {waddnstr(0x55d036c0a400,"pair32767",-1)
... current {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}
str is not null, length = 9
*str = 0160
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ 'p' = 0160 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (4, 1..1) = {{ 'p' = 0160 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 0141
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ 'a' = 0141 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (4, 2..2) = {{ 'a' = 0141 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 0151
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ 'i' = 0151 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (4, 3..3) = {{ 'i' = 0151 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 0162
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ 'r' = 0162 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (4, 4..4) = {{ 'r' = 0162 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 063
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ '3' = 063 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (4, 5..5) = {{ '3' = 063 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 062
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ '2' = 062 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (4, 6..6) = {{ '2' = 062 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 067
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ '7' = 067 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (4, 7..7) = {{ '7' = 067 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 066
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ '6' = 066 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (4, 8..8) = {{ '6' = 066 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
*str = 067
render_char bkg {{ ' ' = 040 }} (0), attrs {A_COLOR{255 =
{COLOR_GREEN, COLOR_YELLOW}}} (255) -> ch {{ '7' = 067 } |
{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}} (255)
cell (4, 9..9) = {{ '7' = 067 } | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
waddnstr returns 0
+ + return }0
+ return }0
return }0
called {wattr_off(0x55d036c0a400,{A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}})
... current {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}} (255)
new attribute is {A_NORMAL}
return }0
called {refresh()
+ called {wrefresh(0x55d036c0a400)
+ + called {wnoutrefresh(0x55d036c0a400)
...win[ 0]   0177 ='           '
...win[ 1]   0177 ='           '
...win[ 2]   0177 =' pair255   '
colors[ 2]        =' ???????   '
...win[ 3]   0177 =' pair256   '
...win[ 4]   0177 =' pair32767 '
colors[ 4]        =' ????????? '
...win[ 5]   0177 ='           '
...win[ 6]   0177 ='           '
...win[ 7]   0177 ='           '
...win[ 8]   0177 ='           '
...win[ 9]   0177 ='           '
...win[10]   0177 ='           '
...win[11]   0177 ='           '
...win[12]   0177 ='           '
...win[13]   0177 ='           '
...win[14]   0177 ='           '
...win[15]   0177 ='           '
...win[16]   0177 ='           '
...win[17]   0177 ='           '
...win[18]   0177 ='           '
...win[19]   0177 ='           '
...win[20]   0177 ='           '
...win[21]   0177 ='           '
...win[22]   0177 ='           '
...win[23]   0177 ='           '
...win[24]   0177 ='           '
...win[25]   0177 ='           '
...win[26]   0177 ='           '
...win[27]   0177 ='           '
...win[28]   0177 ='           '
...win[29]   0177 ='           '
...win[30]   0177 ='           '
...win[31]   0177 ='           '
...win[32]   0177 ='           '
...win[33]   0177 ='           '
...win[34]   0177 ='           '
...win[35]   0177 ='           '
...win[36]   0177 ='           '
...win[37]   0177 ='           '
...win[38]   0177 ='           '
...win[39]   0177 ='           '
...win[40]   0177 ='           '
...win[41]   0177 ='           '
...win[42]   0177 ='           '
...win[43]   0177 ='           '
...win[44]   0177 ='           '
...win[45]   0177 ='           '
+ + + called {wsyncdown(0x55d036c0a400)
+ + + return }
newscr[ 0]   0177 ='           '
newscr[ 1]   0177 ='           '
newscr[ 2]   0177 =' pair255   '
colors[ 2]        =' ???????   '
newscr[ 3]   0177 =' pair256   '
newscr[ 4]   0177 =' pair32767 '
colors[ 4]        =' ????????? '
newscr[ 5]   0177 ='           '
newscr[ 6]   0177 ='           '
newscr[ 7]   0177 ='           '
newscr[ 8]   0177 ='           '
newscr[ 9]   0177 ='           '
newscr[10]   0177 ='           '
newscr[11]   0177 ='           '
newscr[12]   0177 ='           '
newscr[13]   0177 ='           '
newscr[14]   0177 ='           '
newscr[15]   0177 ='           '
newscr[16]   0177 ='           '
newscr[17]   0177 ='           '
newscr[18]   0177 ='           '
newscr[19]   0177 ='           '
newscr[20]   0177 ='           '
newscr[21]   0177 ='           '
newscr[22]   0177 ='           '
newscr[23]   0177 ='           '
newscr[24]   0177 ='           '
newscr[25]   0177 ='           '
newscr[26]   0177 ='           '
newscr[27]   0177 ='           '
newscr[28]   0177 ='           '
newscr[29]   0177 ='           '
newscr[30]   0177 ='           '
newscr[31]   0177 ='           '
newscr[32]   0177 ='           '
newscr[33]   0177 ='           '
newscr[34]   0177 ='           '
newscr[35]   0177 ='           '
newscr[36]   0177 ='           '
newscr[37]   0177 ='           '
newscr[38]   0177 ='           '
newscr[39]   0177 ='           '
newscr[40]   0177 ='           '
newscr[41]   0177 ='           '
newscr[42]   0177 ='           '
newscr[43]   0177 ='           '
newscr[44]   0177 ='           '
newscr[45]   0177 ='           '
+ + return }0
+ + called {_nc_tinfo:doupdate(0x55d036b8e0b0)
curscr[ 0]   0177 ='  '
curscr[ 1]   0177 ='  '
curscr[ 2]   0177 ='  '
curscr[ 3]   0177 ='  '
curscr[ 4]   0177 ='  '
curscr[ 5]   0177 ='  '
curscr[ 6]   0177 ='  '
curscr[ 7]   0177 ='  '
curscr[ 8]   0177 ='  '
curscr[ 9]   0177 ='  '
curscr[10]   0177 ='  '
curscr[11]   0177 ='  '
curscr[12]   0177 ='  '
curscr[13]   0177 ='  '
curscr[14]   0177 ='  '
curscr[15]   0177 ='  '
curscr[16]   0177 ='  '
curscr[17]   0177 ='  '
curscr[18]   0177 ='  '
curscr[19]   0177 ='  '
curscr[20]   0177 ='  '
curscr[21]   0177 ='  '
curscr[22]   0177 ='  '
curscr[23]   0177 ='  '
curscr[24]   0177 ='  '
curscr[25]   0177 ='  '
curscr[26]   0177 ='  '
curscr[27]   0177 ='  '
curscr[28]   0177 ='  '
curscr[29]   0177 ='  '
curscr[30]   0177 ='  '
curscr[31]   0177 ='  '
curscr[32]   0177 ='  '
curscr[33]   0177 ='  '
curscr[34]   0177 ='  '
curscr[35]   0177 ='  '
curscr[36]   0177 ='  '
curscr[37]   0177 ='  '
curscr[38]   0177 ='  '
curscr[39]   0177 ='  '
curscr[40]   0177 ='  '
curscr[41]   0177 ='  '
curscr[42]   0177 ='  '
curscr[43]   0177 ='  '
curscr[44]   0177 ='  '
curscr[45]   0177 ='  '
newscr[ 0]   0177 ='           '
newscr[ 1]   0177 ='           '
newscr[ 2]   0177 =' pair255   '
colors[ 2]        =' ???????   '
newscr[ 3]   0177 =' pair256   '
newscr[ 4]   0177 =' pair32767 '
colors[ 4]        =' ????????? '
newscr[ 5]   0177 ='           '
newscr[ 6]   0177 ='           '
newscr[ 7]   0177 ='           '
newscr[ 8]   0177 ='           '
newscr[ 9]   0177 ='           '
newscr[10]   0177 ='           '
newscr[11]   0177 ='           '
newscr[12]   0177 ='           '
newscr[13]   0177 ='           '
newscr[14]   0177 ='           '
newscr[15]   0177 ='           '
newscr[16]   0177 ='           '
newscr[17]   0177 ='           '
newscr[18]   0177 ='           '
newscr[19]   0177 ='           '
newscr[20]   0177 ='           '
newscr[21]   0177 ='           '
newscr[22]   0177 ='           '
newscr[23]   0177 ='           '
newscr[24]   0177 ='           '
newscr[25]   0177 ='           '
newscr[26]   0177 ='           '
newscr[27]   0177 ='           '
newscr[28]   0177 ='           '
newscr[29]   0177 ='           '
newscr[30]   0177 ='           '
newscr[31]   0177 ='           '
newscr[32]   0177 ='           '
newscr[33]   0177 ='           '
newscr[34]   0177 ='           '
newscr[35]   0177 ='           '
newscr[36]   0177 ='           '
newscr[37]   0177 ='           '
newscr[38]   0177 ='           '
newscr[39]   0177 ='           '
newscr[40]   0177 ='           '
newscr[41]   0177 ='           '
newscr[42]   0177 ='           '
newscr[43]   0177 ='           '
newscr[44]   0177 ='           '
newscr[45]   0177 ='           '
+ + + called {_nc_signal_handler(0)
+ + + return }
+ + + called {ClrUpdate
ClearScreen() called
+ + + + called {pair_content(0x55d036b8e0b0,0,0x7ffe5a204950,0x7ffe5a204954)
...pair_content(0x55d036b8e0b0,0,7,0)
+ + + + return }0
tputs(orig_pair = "\e[39;49m", 1, _nc_outch) called
setting colors: pair = 0, fg = 7, bg = 0
+ + + + called 
{tparm("\e[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
7)
+ + + + return }"\e[37m"
tputs(set_a_foreground = "\e[37m", 1, _nc_outch) called
+ + + + called 
{tparm("\e[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
0)
+ + + + return }"\e[40m"
tputs(set_a_background = "\e[40m", 1, _nc_outch) called
tputs(clear_screen = "\e[H\e[2J", 1, _nc_outch) called
screen cleared
updating screen from scratch
+ + + + called {TransformLine(0x55d036b8e0b0, 0)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 1)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 2)
GoTo(0x55d036b8e0b0, 2, 1) from (0, 0)
+ + + + + called {_nc_tinfo_mvcur(0x55d036b8e0b0,0,0,2,1)
+ + + + + + called {tparm("\e[%i%p1%d;%p2%dH", 2, 1)
+ + + + + + return }"\e[3;2H"
+ + + + + + called {tparm("\e[%i%p1%dd", 2)
+ + + + + + return }"\e[3d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
+ + + + + + called {tparm("\e[%i%p1%dd", 2)
+ + + + + + return }"\e[3d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
+ + + + + + called {tparm("\e[%i%p1%dd", 2)
+ + + + + + return }"\e[3d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
+ + + + + + called {tparm("\e[%i%p1%dd", 2)
+ + + + + + return }"\e[3d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
mvcur tactic 1
tputs(mvcur = "\n\n ", 1, _nc_outch) called
+ + + + + return }0
flushing 115 bytes
PutRange(0x55d036b8e0b0, 0x55d036bd49f0, 0x55d036b9c4d0, 2, 1, 7)
EmitRange 7:{"pair255" | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
PutAttrChar({{ 'p' = 0160 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (2, 1)
+ + + + + called {vid_puts({A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}},255)
previous attribute was {A_NORMAL}, 0
old pair = 0 -- new pair = 255
+ + + + + + called
{pair_content(0x55d036b8e0b0,255,0x7ffe5a2046c8,0x7ffe5a2046cc)
...pair_content(0x55d036b8e0b0,255,2,3)
+ + + + + + return }0
+ + + + + + called {pair_content(0x55d036b8e0b0,0,0x7ffe5a2046d0,0x7ffe5a2046d4)
...pair_content(0x55d036b8e0b0,0,7,0)
+ + + + + + return }0
setting colors: pair = 255, fg = 2, bg = 3
+ + + + + + called
{tparm("\e[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
2)
+ + + + + + return }"\e[32m"
tputs(set_a_foreground = "\e[32m", 1, _nc_outch) called
+ + + + + + called
{tparm("\e[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
3)
+ + + + + + return }"\e[43m"
tputs(set_a_background = "\e[43m", 1, _nc_outch) called
+ + + + + return }0
PUTC 0x70
PutAttrChar({{ 'a' = 0141 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (2, 2)
PUTC 0x61
PutAttrChar({{ 'i' = 0151 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (2, 3)
PUTC 0x69
PutAttrChar({{ 'r' = 0162 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (2, 4)
PUTC 0x72
PutAttrChar({{ '2' = 062 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (2, 5)
PUTC 0x32
PutAttrChar({{ '5' = 065 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (2, 6)
PUTC 0x35
PutAttrChar({{ '5' = 065 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (2, 7)
PUTC 0x35
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 3)
GoTo(0x55d036b8e0b0, 3, 1) from (2, 8)
+ + + + + called {_nc_tinfo_mvcur(0x55d036b8e0b0,2,8,3,1)
+ + + + + + called {tparm("\e[%i%p1%d;%p2%dH", 3, 1)
+ + + + + + return }"\e[4;2H"
+ + + + + + called {tparm("\e[%i%p1%dd", 3)
+ + + + + + return }"\e[4d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
+ + + + + + called {tparm("\e[%i%p1%dd", 3)
+ + + + + + return }"\e[4d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
+ + + + + + called {tparm("\e[%i%p1%dd", 3)
+ + + + + + return }"\e[4d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
+ + + + + + called {tparm("\e[%i%p1%dd", 3)
+ + + + + + return }"\e[4d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
mvcur tactic 2
tputs(mvcur = "\r\n\e[C", 1, _nc_outch) called
+ + + + + return }0
flushing 22 bytes
PutRange(0x55d036b8e0b0, 0x55d036bd5d70, 0x55d036b9d850, 3, 1, 7)
EmitRange 7:{"pair256"}
PutAttrChar({{ 'p' = 0160 }}) at (3, 1)
+ + + + + called {vid_puts({A_NORMAL},0)
previous attribute was {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}, 255
tputs(exit_attribute_mode = "\e(B\e[m", 1, _nc_outch) called
old pair = 0 -- new pair = 0
+ + + + + + called {pair_content(0x55d036b8e0b0,0,0x7ffe5a2046d0,0x7ffe5a2046d4)
...pair_content(0x55d036b8e0b0,0,7,0)
+ + + + + + return }0
tputs(orig_pair = "\e[39;49m", 1, _nc_outch) called
setting colors: pair = 0, fg = 7, bg = 0
+ + + + + + called
{tparm("\e[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
7)
+ + + + + + return }"\e[37m"
tputs(set_a_foreground = "\e[37m", 1, _nc_outch) called
+ + + + + + called
{tparm("\e[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
0)
+ + + + + + return }"\e[40m"
tputs(set_a_background = "\e[40m", 1, _nc_outch) called
+ + + + + return }0
PUTC 0x70
PutAttrChar({{ 'a' = 0141 }}) at (3, 2)
PUTC 0x61
PutAttrChar({{ 'i' = 0151 }}) at (3, 3)
PUTC 0x69
PutAttrChar({{ 'r' = 0162 }}) at (3, 4)
PUTC 0x72
PutAttrChar({{ '2' = 062 }}) at (3, 5)
PUTC 0x32
PutAttrChar({{ '5' = 065 }}) at (3, 6)
PUTC 0x35
PutAttrChar({{ '6' = 066 }}) at (3, 7)
PUTC 0x36
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 4)
GoTo(0x55d036b8e0b0, 4, 1) from (3, 8)
+ + + + + called {_nc_tinfo_mvcur(0x55d036b8e0b0,3,8,4,1)
+ + + + + + called {tparm("\e[%i%p1%d;%p2%dH", 4, 1)
+ + + + + + return }"\e[5;2H"
+ + + + + + called {tparm("\e[%i%p1%dd", 4)
+ + + + + + return }"\e[5d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
+ + + + + + called {tparm("\e[%i%p1%dd", 4)
+ + + + + + return }"\e[5d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
+ + + + + + called {tparm("\e[%i%p1%dd", 4)
+ + + + + + return }"\e[5d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
+ + + + + + called {tparm("\e[%i%p1%dd", 4)
+ + + + + + return }"\e[5d"
+ + + + + + called {tparm("\e[%i%p1%dG", 1)
+ + + + + + return }"\e[2G"
mvcur tactic 2
tputs(mvcur = "\r\n ", 1, _nc_outch) called
+ + + + + return }0
flushing 34 bytes
PutRange(0x55d036b8e0b0, 0x55d036bd70f0, 0x55d036b9ebd0, 4, 1, 9)
EmitRange 9:{"pair32767" | {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}}
PutAttrChar({{ 'p' = 0160 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (4, 1)
+ + + + + called {vid_puts({A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}},255)
previous attribute was {A_NORMAL}, 0
old pair = 0 -- new pair = 255
+ + + + + + called
{pair_content(0x55d036b8e0b0,255,0x7ffe5a2046c8,0x7ffe5a2046cc)
...pair_content(0x55d036b8e0b0,255,2,3)
+ + + + + + return }0
+ + + + + + called {pair_content(0x55d036b8e0b0,0,0x7ffe5a2046d0,0x7ffe5a2046d4)
...pair_content(0x55d036b8e0b0,0,7,0)
+ + + + + + return }0
setting colors: pair = 255, fg = 2, bg = 3
+ + + + + + called
{tparm("\e[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
2)
+ + + + + + return }"\e[32m"
tputs(set_a_foreground = "\e[32m", 1, _nc_outch) called
+ + + + + + called
{tparm("\e[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
3)
+ + + + + + return }"\e[43m"
tputs(set_a_background = "\e[43m", 1, _nc_outch) called
+ + + + + return }0
PUTC 0x70
PutAttrChar({{ 'a' = 0141 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (4, 2)
PUTC 0x61
PutAttrChar({{ 'i' = 0151 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (4, 3)
PUTC 0x69
PutAttrChar({{ 'r' = 0162 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (4, 4)
PUTC 0x72
PutAttrChar({{ '3' = 063 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (4, 5)
PUTC 0x33
PutAttrChar({{ '2' = 062 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (4, 6)
PUTC 0x32
PutAttrChar({{ '7' = 067 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (4, 7)
PUTC 0x37
PutAttrChar({{ '6' = 066 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (4, 8)
PUTC 0x36
PutAttrChar({{ '7' = 067 } | {A_COLOR{255 = {COLOR_GREEN,
COLOR_YELLOW}}}}) at (4, 9)
PUTC 0x37
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 5)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 6)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 7)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 8)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 9)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 10)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 11)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 12)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 13)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 14)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 15)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 16)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 17)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 18)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 19)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 20)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 21)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 22)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 23)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 24)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 25)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 26)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 27)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 28)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 29)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 30)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 31)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 32)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 33)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 34)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 35)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 36)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 37)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 38)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 39)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 40)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 41)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 42)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 43)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 44)
+ + + + return }
+ + + + called {TransformLine(0x55d036b8e0b0, 45)
+ + + + return }
+ + + return }
GoTo(0x55d036b8e0b0, 4, 10) from (4, 10)
+ + + called {_nc_tinfo_mvcur(0x55d036b8e0b0,4,10,4,10)
+ + + return }0
flushing 19 bytes
+ + + called {vid_puts({A_NORMAL},0)
previous attribute was {A_COLOR{255 = {COLOR_GREEN, COLOR_YELLOW}}}, 255
tputs(exit_attribute_mode = "\e(B\e[m", 1, _nc_outch) called
old pair = 0 -- new pair = 0
+ + + + called {pair_content(0x55d036b8e0b0,0,0x7ffe5a2048f0,0x7ffe5a2048f4)
...pair_content(0x55d036b8e0b0,0,7,0)
+ + + + return }0
tputs(orig_pair = "\e[39;49m", 1, _nc_outch) called
setting colors: pair = 0, fg = 7, bg = 0
+ + + + called 
{tparm("\e[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
7)
+ + + + return }"\e[37m"
tputs(set_a_foreground = "\e[37m", 1, _nc_outch) called
+ + + + called 
{tparm("\e[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
0)
+ + + + return }"\e[40m"
tputs(set_a_background = "\e[40m", 1, _nc_outch) called
+ + + return }0
flushing 24 bytes
Update cost: 150 chars, 0 clocks system time, 0 clocks user time
+ + + called {_nc_signal_handler(1)
+ + + return }
+ + return }0
+ return }0
return }0
called {wgetch(0x55d036c0a400)
+ called {_nc_wgetch(0x55d036c0a400)
+ + called {is_wintouched(0x55d036c0a400)
+ + return }0
read 1 characters
pushed ' ' = 040 at 1
head = 0, tail = 1, peek = 0
char 0 = ' ' = 040
char 1 = 000
char 2 = 000
char 3 = 000
char 4 = 000
char 5 = 000
char 6 = 000
char 7 = 000
char 8 = 000
char 9 = 000
pulling ' ' = 040 from 0
head = -1, tail = 0, peek = -1
char 0 = ' ' = 040
char 1 = 000
char 2 = 000
char 3 = 000
char 4 = 000
char 5 = 000
char 6 = 000
char 7 = 000
char 8 = 000
char 9 = 000
+ + called {wechochar(0x55d036c0a400, {' ' = 040})
render_char bkg {{ ' ' = 040 }} (0), attrs {A_NORMAL} (0) -> ch {{ ' '
= 040 }} (0)
cell (4, 10..10) = {{ ' ' = 040 }}
+ + + called {wrefresh(0x55d036c0a400)
+ + + + called {wnoutrefresh(0x55d036c0a400)
...win[ 0]  -1 -1 ='           '
...win[ 1]  -1 -1 ='           '
...win[ 2]  -1 -1 =' pair255   '
colors[ 2]        =' ???????   '
...win[ 3]  -1 -1 =' pair256   '
...win[ 4]  10 10 =' pair32767 '
colors[ 4]        =' ????????? '
...win[ 5]  -1 -1 ='           '
...win[ 6]  -1 -1 ='           '
...win[ 7]  -1 -1 ='           '
...win[ 8]  -1 -1 ='           '
...win[ 9]  -1 -1 ='           '
...win[10]  -1 -1 ='           '
...win[11]  -1 -1 ='           '
...win[12]  -1 -1 ='           '
...win[13]  -1 -1 ='           '
...win[14]  -1 -1 ='           '
...win[15]  -1 -1 ='           '
...win[16]  -1 -1 ='           '
...win[17]  -1 -1 ='           '
...win[18]  -1 -1 ='           '
...win[19]  -1 -1 ='           '
...win[20]  -1 -1 ='           '
...win[21]  -1 -1 ='           '
...win[22]  -1 -1 ='           '
...win[23]  -1 -1 ='           '
...win[24]  -1 -1 ='           '
...win[25]  -1 -1 ='           '
...win[26]  -1 -1 ='           '
...win[27]  -1 -1 ='           '
...win[28]  -1 -1 ='           '
...win[29]  -1 -1 ='           '
...win[30]  -1 -1 ='           '
...win[31]  -1 -1 ='           '
...win[32]  -1 -1 ='           '
...win[33]  -1 -1 ='           '
...win[34]  -1 -1 ='           '
...win[35]  -1 -1 ='           '
...win[36]  -1 -1 ='           '
...win[37]  -1 -1 ='           '
...win[38]  -1 -1 ='           '
...win[39]  -1 -1 ='           '
...win[40]  -1 -1 ='           '
...win[41]  -1 -1 ='           '
...win[42]  -1 -1 ='           '
...win[43]  -1 -1 ='           '
...win[44]  -1 -1 ='           '
...win[45]  -1 -1 ='           '
+ + + + + called {wsyncdown(0x55d036c0a400)
+ + + + + return }
newscr[ 0]  -1 -1 ='           '
newscr[ 1]  -1 -1 ='           '
newscr[ 2]  -1 -1 =' pair255   '
colors[ 2]        =' ???????   '
newscr[ 3]  -1 -1 =' pair256   '
newscr[ 4]  -1 -1 =' pair32767 '
colors[ 4]        =' ????????? '
newscr[ 5]  -1 -1 ='           '
newscr[ 6]  -1 -1 ='           '
newscr[ 7]  -1 -1 ='           '
newscr[ 8]  -1 -1 ='           '
newscr[ 9]  -1 -1 ='           '
newscr[10]  -1 -1 ='           '
newscr[11]  -1 -1 ='           '
newscr[12]  -1 -1 ='           '
newscr[13]  -1 -1 ='           '
newscr[14]  -1 -1 ='           '
newscr[15]  -1 -1 ='           '
newscr[16]  -1 -1 ='           '
newscr[17]  -1 -1 ='           '
newscr[18]  -1 -1 ='           '
newscr[19]  -1 -1 ='           '
newscr[20]  -1 -1 ='           '
newscr[21]  -1 -1 ='           '
newscr[22]  -1 -1 ='           '
newscr[23]  -1 -1 ='           '
newscr[24]  -1 -1 ='           '
newscr[25]  -1 -1 ='           '
newscr[26]  -1 -1 ='           '
newscr[27]  -1 -1 ='           '
newscr[28]  -1 -1 ='           '
newscr[29]  -1 -1 ='           '
newscr[30]  -1 -1 ='           '
newscr[31]  -1 -1 ='           '
newscr[32]  -1 -1 ='           '
newscr[33]  -1 -1 ='           '
newscr[34]  -1 -1 ='           '
newscr[35]  -1 -1 ='           '
newscr[36]  -1 -1 ='           '
newscr[37]  -1 -1 ='           '
newscr[38]  -1 -1 ='           '
newscr[39]  -1 -1 ='           '
newscr[40]  -1 -1 ='           '
newscr[41]  -1 -1 ='           '
newscr[42]  -1 -1 ='           '
newscr[43]  -1 -1 ='           '
newscr[44]  -1 -1 ='           '
newscr[45]  -1 -1 ='           '
+ + + + return }0
+ + + + called {_nc_tinfo:doupdate(0x55d036b8e0b0)
curscr[ 0]  -1 -1 ='           '
curscr[ 1]  -1 -1 ='           '
curscr[ 2]  -1 -1 =' pair255   '
colors[ 2]        =' ???????   '
curscr[ 3]  -1 -1 =' pair256   '
curscr[ 4]  -1 -1 =' pair32767 '
colors[ 4]        =' ????????? '
curscr[ 5]  -1 -1 ='           '
curscr[ 6]  -1 -1 ='           '
curscr[ 7]  -1 -1 ='           '
curscr[ 8]  -1 -1 ='           '
curscr[ 9]  -1 -1 ='           '
curscr[10]  -1 -1 ='           '
curscr[11]  -1 -1 ='           '
curscr[12]  -1 -1 ='           '
curscr[13]  -1 -1 ='           '
curscr[14]  -1 -1 ='           '
curscr[15]  -1 -1 ='           '
curscr[16]  -1 -1 ='           '
curscr[17]  -1 -1 ='           '
curscr[18]  -1 -1 ='           '
curscr[19]  -1 -1 ='           '
curscr[20]  -1 -1 ='           '
curscr[21]  -1 -1 ='           '
curscr[22]  -1 -1 ='           '
curscr[23]  -1 -1 ='           '
curscr[24]  -1 -1 ='           '
curscr[25]  -1 -1 ='           '
curscr[26]  -1 -1 ='           '
curscr[27]  -1 -1 ='           '
curscr[28]  -1 -1 ='           '
curscr[29]  -1 -1 ='           '
curscr[30]  -1 -1 ='           '
curscr[31]  -1 -1 ='           '
curscr[32]  -1 -1 ='           '
curscr[33]  -1 -1 ='           '
curscr[34]  -1 -1 ='           '
curscr[35]  -1 -1 ='           '
curscr[36]  -1 -1 ='           '
curscr[37]  -1 -1 ='           '
curscr[38]  -1 -1 ='           '
curscr[39]  -1 -1 ='           '
curscr[40]  -1 -1 ='           '
curscr[41]  -1 -1 ='           '
curscr[42]  -1 -1 ='           '
curscr[43]  -1 -1 ='           '
curscr[44]  -1 -1 ='           '
curscr[45]  -1 -1 ='           '
newscr[ 0]  -1 -1 ='           '
newscr[ 1]  -1 -1 ='           '
newscr[ 2]  -1 -1 =' pair255   '
colors[ 2]        =' ???????   '
newscr[ 3]  -1 -1 =' pair256   '
newscr[ 4]  -1 -1 =' pair32767 '
colors[ 4]        =' ????????? '
newscr[ 5]  -1 -1 ='           '
newscr[ 6]  -1 -1 ='           '
newscr[ 7]  -1 -1 ='           '
newscr[ 8]  -1 -1 ='           '
newscr[ 9]  -1 -1 ='           '
newscr[10]  -1 -1 ='           '
newscr[11]  -1 -1 ='           '
newscr[12]  -1 -1 ='           '
newscr[13]  -1 -1 ='           '
newscr[14]  -1 -1 ='           '
newscr[15]  -1 -1 ='           '
newscr[16]  -1 -1 ='           '
newscr[17]  -1 -1 ='           '
newscr[18]  -1 -1 ='           '
newscr[19]  -1 -1 ='           '
newscr[20]  -1 -1 ='           '
newscr[21]  -1 -1 ='           '
newscr[22]  -1 -1 ='           '
newscr[23]  -1 -1 ='           '
newscr[24]  -1 -1 ='           '
newscr[25]  -1 -1 ='           '
newscr[26]  -1 -1 ='           '
newscr[27]  -1 -1 ='           '
newscr[28]  -1 -1 ='           '
newscr[29]  -1 -1 ='           '
newscr[30]  -1 -1 ='           '
newscr[31]  -1 -1 ='           '
newscr[32]  -1 -1 ='           '
newscr[33]  -1 -1 ='           '
newscr[34]  -1 -1 ='           '
newscr[35]  -1 -1 ='           '
newscr[36]  -1 -1 ='           '
newscr[37]  -1 -1 ='           '
newscr[38]  -1 -1 ='           '
newscr[39]  -1 -1 ='           '
newscr[40]  -1 -1 ='           '
newscr[41]  -1 -1 ='           '
newscr[42]  -1 -1 ='           '
newscr[43]  -1 -1 ='           '
newscr[44]  -1 -1 ='           '
newscr[45]  -1 -1 ='           '
+ + + + + called {_nc_signal_handler(0)
+ + + + + return }
+ + + + + called {_nc_scroll_optimize(0x55d036b8e0b0)
virt  -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
-1 -1
+ + + + + return }
Transforming lines, nonempty 46
GoTo(0x55d036b8e0b0, 4, 11) from (4, 10)
+ + + + + called {_nc_tinfo_mvcur(0x55d036b8e0b0,4,10,4,11)
+ + + + + + called {tparm("\e[%i%p1%d;%p2%dH", 4, 11)
+ + + + + + return }"\e[5;12H"
+ + + + + + called {tparm("\e[%i%p1%dG", 11)
+ + + + + + return }"\e[12G"
+ + + + + + called {tparm("\e[%i%p1%dG", 11)
+ + + + + + return }"\e[12G"
+ + + + + + called {tparm("\e[%i%p1%dd", 4)
+ + + + + + return }"\e[5d"
+ + + + + + called {tparm("\e[%i%p1%dG", 11)
+ + + + + + return }"\e[12G"
+ + + + + + called {tparm("\e[%i%p1%dG", 11)
+ + + + + + return }"\e[12G"
mvcur tactic 1
tputs(mvcur = " ", 1, _nc_outch) called
+ + + + + return }0
flushing 1 bytes
Update cost: 1 chars, 0 clocks system time, 0 clocks user time
+ + + + + called {_nc_signal_handler(1)
+ + + + + return }
+ + + + return }0
+ + + return }0
+ + return }0
wgetch returning : ' ' = 040
+ return }0
return }32
called {endwin(0x55d036b8e0b0)
tputs(orig_pair = "\e[39;49m", 1, _nc_outch) called
+ called {_nc_tinfo_mvcur(0x55d036b8e0b0,4,11,45,0)
+ + called {tparm("\e[%i%p1%d;%p2%dH", 45, 0)
+ + return }"\e[46;1H"
+ + called {tparm("\e[%i%p1%dd", 45)
+ + return }"\e[46d"
+ + called {tparm("\e[%i%p1%dG", 0)
+ + return }"\e[1G"
+ + called {tparm("\e[%i%p1%dd", 45)
+ + return }"\e[46d"
+ + called {tparm("\e[%i%p1%dd", 45)
+ + return }"\e[46d"
+ + called {tparm("\e[%i%p1%dd", 45)
+ + return }"\e[46d"
mvcur tactic 2
tputs(mvcur = "\r\e[46d", 1, _nc_outch) called
+ return }0
tputs(clr_eol = "\e[K", 1, _nc_outch) called
+ called {_nc_reset_colors(0x55d036b8e0b0)
tputs(orig_pair = "\e[39;49m", 1, _nc_outch) called
tputs(orig_colors = "\e]104\^G", 1, _nc_outch) called
+ return }TRUE
+ called {_nc_tinfo_mvcur(0x55d036b8e0b0,-1,-1,45,0)
+ + called {tparm("\e[%i%p1%d;%p2%dH", 45, 0)
+ + return }"\e[46;1H"
mvcur tactic 0
tputs(mvcur = "\e[46;1H", 1, _nc_outch) called
+ return }0
tputs(exit_ca_mode = "\e[?1049l\e[23;0;0t", 1, _nc_outch) called
+ called {reset_shell_mode(0x55d036b8e0b0) ->term 0x55d036b8e9e0
tputs(keypad_local = "\e[?1l\e>", 1, _nc_outch) called
flushing 63 bytes
_nc_set_tty_mode(1): iflags: {ICRNL} oflags: {OPOST, ONLCR} cflags:
{CREAD} CS8 lflags: {ECHO, ECHOE, ECHOK, ICANON, ISIG, IEXTEN}
+ return }0
return }0

I hope this is enough information to reproduce this problem.

Best regards,
Beru

-- 
Nulla sine Deo mens bona est



reply via email to

[Prev in Thread] Current Thread [Next in Thread]