CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): kaki ()
날 짜 (Date): 1995년07월07일(금) 09시23분27초 KDT
제 목(Title): vt100 화면콘트롤 ESC sequence Definition

예전에  C code로  정의해  놓은  헤더화일을  올려봅니다.
엑스텀에서  칼라세팅은  디폴트   값입니다.  원하는 색깔로
엑스 리소스 화일을  고쳐서  바꿀 수  있습니다.
========================================================

/*** Bit Control Codes  ********/
#define NULL                    ((char *)0)
#define ENQ                     0x05
#define BEL                     0x07
#define BS                      0x08
#define HT                      0x09
#define LF                      0x0A
#define VT                      0x0B
#define FF                      0x0C
#define CR                      0x0D
#define SO                      0x0E
#define SI                      0x0F
#define DC1                     0x11
#define DC3                     0x13
#define CAN                     0x18
#define SUB                     0x1A
#define DEL                     0x7F
#define IND                     0x84
#define NEL                     0x85
#define HTS                     0x88
#define RI                      0x8D
#define DCS                     0x90
#define ST                      0x9C
#define SPACE                   0x20
#define ESC                     0x1B

#define eESC(str)               printf("%c%s",0x1B,str)
#define eCSI(str)               printf("%c[%s",0x1B,str)

/*********** Foreground Color ****************/
#define eFG_BLACK               eCSI("30m")
#define eFG_RED                 eCSI("31m")
#define eFG_GREEN               eCSI("32m")
#define eFG_YELLOW              eCSI("33m")
#define eFG_BLUE                eCSI("34m")
#define eFG_MAGENTA             eCSI("35m")
#define eFG_CYAN                eCSI("36m")
#define eFG_WHITE               eCSI("37m")

/*********** Background Color ****************/
#define eBG_BLACK               eCSI("30m")
#define eBG_RED                 eCSI("31m")
#define eBG_GREEN               eCSI("32m")
#define eBG_YELLOW              eCSI("33m")
#define eBG_BLUE                eCSI("34m")
#define eBG_MAGENTA             eCSI("35m")
#define eBG_CYAN                eCSI("36m")
#define eBG_WHITE               eCSI("37m")

/******* Character Sets **************/
#define eASCII_G0               eESC("(B")
#define eASCII_G1               eESC(")B")
#define eKS_ROMAN_G0            eESC("(9")
#define eKS_ROMAN_G1            eESC(")9")
#define eGRAPHIC_G0             eESC("(0")
#define eGRAPHIC_G1             eESC(")0")

/***** Insert/Replace Mode *************/
#define eINSERT                 eCSI("4h")
#define eREPLACE                eCSI("4l")

/***** Send/Receive Mode ***************/
#define eNOECHO                 eCSI("12h")
#define eECHO                   eCSI("12l")

/***** Text Cursor Enable Mode *********/
#define eCUR_ON                 eCSI("?25h")
#define eCUR_OFF                eCSI("?25l")

/***** Cursor Key Movement *****************/
#define eUP                     eESC("[1A")
#define eDOWN                   eESC("[1B")
#define eRIGHT                  eESC("[1C")
#define eLEFT                   eESC("[1D")
#define eBS                     putchar(BS)
#define eEND                    eESC("G")
#define eMOVE(y,x)              printf("%c[%d;%dH",0x1B,(y),(x))

/***** Column Mode **********************/
#define eCOL_132                eCSI("?3h")
#define eCOL_80                 eCSI("?3l")

/***** Char Size Mode ********************/
#define eDTOP                   eESC("#3")
#define eDBOTTOM                eESC("#4")
#define eSINGLE                 eESC("#5")
#define eDWIDTHW                eESC("#6")

/***** Reverse Background ***************/
#define eNORMAL_BACK            eCSI("?5l")
#define eREVERSE_BACK           eCSI("?5h")

/****** Screen Attrute Mode ***********/
#define eNORMAL_CHAR            eCSI("?5h")
#define eREVERSE_CHAR           eCSI("?5l")

/****** Scrolling Mode ******************/
#define eSMOOTH_SCROLL          eCSI("?4h")
#define eJUMP_SCROLL            eCSI("?4l")
#define eSCROLL_AREA(Pt,Pb)     printf("%c[%d;%dr",ESC,(Pt),(Pb))

/****** Auto Repeat Mode *****************/
#define eREPEAT                 eCSI("?8h")
#define eREPEAT_OFF             eCSI("?8l")

/****** 한글 대 영문 크기 Select *********/
#define eHAN2                   eCSI("30h")
#define eHAN1                   eCSI("30l") 

/****** Block/Non Block Mode in Keyboard Input **/
#define eBLOCK_IN               eCSI("31h")
#define eNO_BLOCK_IN            eCSI("31l")

/****** Key Input Mode ********************/
#define eENG                    eCSI("0t")
#define eKOR                    eCSI("1t")

/****** Korean/English Mode **************/
#define eKOR_ENG                eESC("Fk")
#define eENG_ONLY               eESC("Fl")

/****** Upper/Lower Case Char ************/
#define eUPCASE                 eESC("FV")
#define eLOWCASE                eESC("FW")

/****** 2 Byte Korean Local Display *****/
#define e2_BYTE                 eCSI("36h")
#define eNO_2_BYTE              eCSI("36l") 

/****** Set Character Attributes *********/
#define eRESET                  eCSI("0m")
#define eHILIGHT                eCSI("1m")
#define eHILIGHT_OFF            eCSI("22m")
#define eDIM                    eCSI("2m")
#define eDIM_OFF                eCSI("23m")
#define eBLANK                  eCSI("3m")
#define eBLANK_OFF              eCSI("21m")
#define eUNDERLINE              eCSI("4m")
#define eUNDERLINE_OFF          eCSI("24m")
#define eBLINK                  eCSI("5m")
#define eBLINK_OFF              eCSI("25m")
#define eNON_ERASABLE           eCSI("6m")
#define eNON_ERASABLE_OFF       eCSI("26m")
#define eREVERSE                eCSI("7m")
#define eREVERSE_OFF            eCSI("27m")

/******  Meta Char ************************/
#define eBELL                   putchar(BEL)
#define eLINE_FEED              putchar(LF)
#define eCLEAR                  printf("%c[2J",0x1B)
#define eCEOL                   printf("%c[K",0x1B)
#define eCLEAR_AREA(t,b)        printf("%c[%d;0H%c[%dM",0x1B,(t),0x1B,(b)-(t)+1)
#define eNEWLINE                eESC("E")
#define eSPACE                  putchar(SPACE)



[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.