added F1-12 key, fixed DCH and ICH.
This commit is contained in:
		
							
								
								
									
										12
									
								
								config.h
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								config.h
									
									
									
									
									
								
							| @@ -39,6 +39,18 @@ static Key key[] = { | |||||||
| 	{ XK_End,    "\033[4~" }, | 	{ XK_End,    "\033[4~" }, | ||||||
| 	{ XK_Prior,  "\033[5~" }, | 	{ XK_Prior,  "\033[5~" }, | ||||||
| 	{ XK_Next,   "\033[6~" }, | 	{ XK_Next,   "\033[6~" }, | ||||||
|  | 	{ XK_F1,        "\033OP"   }, | ||||||
|  | 	{ XK_F2,        "\033OQ"   }, | ||||||
|  | 	{ XK_F3,        "\033OR"   }, | ||||||
|  | 	{ XK_F4,        "\033OS"   }, | ||||||
|  | 	{ XK_F5,        "\033[15~" }, | ||||||
|  | 	{ XK_F6,        "\033[17~" }, | ||||||
|  | 	{ XK_F7,        "\033[18~" }, | ||||||
|  | 	{ XK_F8,        "\033[19~" }, | ||||||
|  | 	{ XK_F9,        "\033[20~" }, | ||||||
|  | 	{ XK_F10,       "\033[21~" }, | ||||||
|  | 	{ XK_F11,       "\033[23~" }, | ||||||
|  | 	{ XK_F12,       "\033[24~" }, | ||||||
| }; | }; | ||||||
|  |  | ||||||
| static char gfx[] = { | static char gfx[] = { | ||||||
|   | |||||||
							
								
								
									
										6
									
								
								st.c
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								st.c
									
									
									
									
									
								
							| @@ -497,21 +497,21 @@ tdeletechar(int n) { | |||||||
| 		return; | 		return; | ||||||
| 	} | 	} | ||||||
| 	memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph)); | 	memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph)); | ||||||
| 	tclearregion(term.col-size, term.c.y, term.col-1, term.c.y); | 	tclearregion(term.col-n, term.c.y, term.col-1, term.c.y); | ||||||
| } | } | ||||||
|  |  | ||||||
| void | void | ||||||
| tinsertblank(int n) { | tinsertblank(int n) { | ||||||
| 	int src = term.c.x; | 	int src = term.c.x; | ||||||
| 	int dst = src + n; | 	int dst = src + n; | ||||||
| 	int size = term.col - n - src; | 	int size = term.col - dst; | ||||||
|  |  | ||||||
| 	if(dst >= term.col) { | 	if(dst >= term.col) { | ||||||
| 		tclearregion(term.c.x, term.c.y, term.col-1, term.c.y); | 		tclearregion(term.c.x, term.c.y, term.col-1, term.c.y); | ||||||
| 		return; | 		return; | ||||||
| 	} | 	} | ||||||
| 	memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph)); | 	memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph)); | ||||||
| 	tclearregion(src, term.c.y, dst, term.c.y); | 	tclearregion(src, term.c.y, dst - 1, term.c.y); | ||||||
| } | } | ||||||
|  |  | ||||||
| void | void | ||||||
|   | |||||||
							
								
								
									
										12
									
								
								st.info
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								st.info
									
									
									
									
									
								
							| @@ -37,6 +37,18 @@ st| simpleterm, | |||||||
| 	kcuu1=\E[A, | 	kcuu1=\E[A, | ||||||
| 	kdch1=\E[3~, | 	kdch1=\E[3~, | ||||||
| 	kend=\E[4~, | 	kend=\E[4~, | ||||||
|  | 	kf1=\EOP, | ||||||
|  | 	kf2=\EOQ, | ||||||
|  | 	kf3=\EOR, | ||||||
|  | 	kf4=\EOS, | ||||||
|  | 	kf5=\E[15~, | ||||||
|  | 	kf6=\E[17~, | ||||||
|  | 	kf7=\E[18~, | ||||||
|  | 	kf8=\E[19~, | ||||||
|  | 	kf9=\E[20~, | ||||||
|  | 	kf10=\E[21~, | ||||||
|  | 	kf11=\E[23~, | ||||||
|  | 	kf12=\E[24~, | ||||||
| 	khome=\E[1~, | 	khome=\E[1~, | ||||||
| 	knp=\E[6~, | 	knp=\E[6~, | ||||||
| 	kpp=\E[5~, | 	kpp=\E[5~, | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user