bug-ncurses
[Top][All Lists]
Advanced

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

Q: why doesn't putty have smkx/rmkx?


From: Leonardo Brondani Schenkel
Subject: Q: why doesn't putty have smkx/rmkx?
Date: Mon, 11 Jan 2016 14:52:19 +0100
User-agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1

Hi,

Does anybody know why are 'smkx' and 'rmkx' not included in the 'putty'
entry? PuTTY *does* support that functionality:

smkx=\E[?1h\E=
rmkx=\E[?1l\E>

Due to the absence of the above entries, apps can't switch to
application mode: that is probably why in terminfo the
up/down/left/right keys (and their shifted counterparts) contain the
normal mode sequences instead of the application mode sequences (as it
is customary in ncurses).

These are the correct sequences when in application mode:

kLFT=\E[D
kRIT=\E[C
kcub1=\EOD
kcud1=\EOB
kcuf1=\EOC
kcuu1=\EOA
kind=\E[B
kri=\E[A

Note that with the default settings PuTTY sends the same sequences for
both Shift+arrows and Ctrl+arrows and they work as a toggle switch: when
in normal mode Shift/Ctrl+arrow sends the application mode sequence, and
vice-versa.

It's curious to me why terminfo does not describe the above behaviour,
choosing to pretend that the application mode does not exist and
encoding the normal mode sequences instead.

In case it was an oversight, I suggest that the aforementioned changes
are applied to the official terminfo.src. I have applied them to my
local definition and so far I have not encountered any ill effects.

For reference, this is the whole output of infocmp with the changes:

putty|PuTTY terminal emulator,
        am, bce, bw, ccc, hs, mir, msgr, xenl, xon,
        colors#8, it#8, ncv#22, pairs#64,
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
        clear=\E[H\E[J, cnorm=\E[?25h, cr=^M,
        csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
        cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C,
        cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
        dch=\E[%p1%dP, dch1=\E[P,
        address@hidden@address@hidden@address@hidden@address@hidden@%e%p1%c%;,
        dl=\E[%p1%dM, dl1=\E[M, dsl=\E]0;\007, ech=\E[%p1%dX,
        ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
        flash=\E[?5h\E[?5l, fsl=^G, home=\E[H, hpa=\E[%i%p1%dG,
        ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J,
        indn=\E[%p1%dS,
        
initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x,
        is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>\E]R,
        kLFT=\E[D, kRIT=\E[C, kb2=\E[G, kbs=\177, kcbt=\E[Z,
        kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
        kdch1=\E[3~, kend=\E[4~, kf1=\E[11~, kf10=\E[21~,
        kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
        kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
        kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, kf3=\E[13~,
        kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
        kf9=\E[20~, khome=\E[1~, kich1=\E[2~, kind=\E[B,
        kmous=\E[M, knp=\E[6~, kpp=\E[5~, kri=\E[A, kspd=^Z,
        nel=^M^J, oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
        rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmcup=\E[2J\E[?47l,
        rmir=\E[4l, rmkx=\E[?1l\E>, rmpch=\E[10m, rmso=\E[27m,
        rmul=\E[24m,
        rs2=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l,
        s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, sc=\E7,
        setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
        
sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
        sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h,
        smir=\E[4h, smkx=\E[?1h\E=, smpch=\E[11m, smso=\E[7m,
        smul=\E[4m, tbc=\E[3g, tsl=\E]0;, u6=\E[%i%d;%dR, u7=\E[6n,
        u8=\E[?6c, u9=\E[c, vpa=\E[%i%p1%dd,

Kind regards,
Leonardo.




reply via email to

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