Improvements to console routines

Town, Brad btown@ceddec.com
Tue Oct 17 11:27:00 GMT 2000


I've made a few improvements to the console routines.

. Added an alternative font (^[[11m) for displaying graphics characters
. Corrected bold, underline, reverse, and invisible attributes for use with
colors

I also hand-tweaked a terminfo file and a termcap file to use the changes.
Programs tested include the ncurses test programs, tack, mc, and frotz.
(The attached patches and term* files expand upon the patches I submitted
back in May.)

Details:
The alternative font is actually just a flag to disable the call to
CharToOemBuff in fhandler_console::write_normal.  For example, the character
0xDB (U with circumflex) is a U in the normal font and a solid block in the
alternative font.  This allows programs to map characters like the
registered-trademark symbol to an 'r', while allowing other programs to use
the graphics characters for drawing lines.

Character attributes are maintained individually in
fhandler_console::char_command.

Brad Town

-------------- next part --------------
A non-text attachment was scrubbed...
Name: fhandler.h.diff
Type: text/x-diff
Size: 203 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin/attachments/20001017/31ffb077/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fhandler_console.cc.diff
Type: text/x-diff
Size: 7208 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin/attachments/20001017/31ffb077/attachment-0001.bin>
-------------- next part --------------
cygwin|ansi emulation for cygwin32:\
	:am:ms:xn:xo:\
	:Co#8:it#8:pa#64:\
	:&7=^Z:@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DC=\E[%dP:\
	:DL=\E[%dM:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\
	:F5=\E[28~:F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:\
	:FA=\E[34~:IC=\E[%d@:K1=\E[1~:K2=\E[G:K3=\E[5~:K4=\E[4~:\
	:K5=\E[6~:\
	:ac=+\020\054\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\
        :as=\E[11m:ae=\E[10m:\
	:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:\
	:cr=^M:do=\E[B:ei=:ho=\E[H:im=:k1=\E[[A:\
	:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:\
	:k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:kI=\E[2~:kN=\E[6~:\
	:kP=\E[5~:kb=^H:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:\
	:le=^H:md=\E[1m:me=\E[m:mk=\E[8m:mr=\E[7m:nd=\E[C:\
	:op=\E[39;49m:r1=\Ec:rc=\E8:sc=\E7:se=\E[22;27m:sf=^J:\
	:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:u6=\E[%i%d;%dR:u7=\E[6n:\
	:u8=\E[?6c:u9=\E[c:ue=\E[24m:up=\E[A:us=\E[4m:
-------------- next part --------------
cygwin|ansi emulation for cygwin32,
	am, msgr, xenl, xon,
	colors#8, it#8, pairs#64,
        acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
        smacs=\E[11m, rmacs=\E[10m,
	bel=^G, bold=\E[1m, clear=\E[2J, cr=^M,
	cub1=^H, cud1=\E[B, cuf1=\E[C,
	cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%dP, dl=\E[%dM,
	ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH,
	ich=\E[%d@, il=\E[%dL, ind=^J, invis=\E[8m,
	ka1=\E[1~, ka3=\E[5~, kb2=\E[G, kbs=^H, kc1=\E[4~, kc3=\E[6~,
	kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
	kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, 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[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D,
	kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
	khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kspd=^Z,
	op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmso=\E[22;27m,
	rmul=\E[24m, rs1=\Ec, sc=\E7, setab=\E[4%dm,
	setaf=\E[3%dm,
	sgr=\E[0%?%p1%t;1;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m,
	sgr0=\E[m, smso=\E[1;7m, smul=\E[4m, u6=\E[%i%d;%dR,
	u7=\E[6n, u8=\E[?6c, u9=\E[c,



More information about the Cygwin mailing list