Add key definition for printer sequences
These new combinations generate the same behaviour (basically) of vt102. It is a good way of communicating st with other programs. [0] http://www.vt100.net/docs/vt102-ug/chapter2.html
This commit is contained in:
		
							parent
							
								
									6166a1afc8
								
							
						
					
					
						commit
						96c230e476
					
				| 
						 | 
					@ -107,6 +107,8 @@ static Mousekey mshortcuts[] = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static Shortcut shortcuts[] = {
 | 
					static Shortcut shortcuts[] = {
 | 
				
			||||||
	/* mask                 keysym          function        argument */
 | 
						/* mask                 keysym          function        argument */
 | 
				
			||||||
 | 
						{ ControlMask,          XK_Print,       toggleprinter,  {.i =  0} },
 | 
				
			||||||
 | 
						{ ShiftMask,            XK_Print,       printscreen,    {.i =  0} },
 | 
				
			||||||
	{ MODKEY|ShiftMask,     XK_Prior,       xzoom,          {.i = +1} },
 | 
						{ MODKEY|ShiftMask,     XK_Prior,       xzoom,          {.i = +1} },
 | 
				
			||||||
	{ MODKEY|ShiftMask,     XK_Next,        xzoom,          {.i = -1} },
 | 
						{ MODKEY|ShiftMask,     XK_Next,        xzoom,          {.i = -1} },
 | 
				
			||||||
	{ ShiftMask,            XK_Insert,      selpaste,       {.i =  0} },
 | 
						{ ShiftMask,            XK_Insert,      selpaste,       {.i =  0} },
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										12
									
								
								st.c
								
								
								
								
							
							
						
						
									
										12
									
								
								st.c
								
								
								
								
							| 
						 | 
					@ -314,6 +314,8 @@ static void clippaste(const Arg *);
 | 
				
			||||||
static void numlock(const Arg *);
 | 
					static void numlock(const Arg *);
 | 
				
			||||||
static void selpaste(const Arg *);
 | 
					static void selpaste(const Arg *);
 | 
				
			||||||
static void xzoom(const Arg *);
 | 
					static void xzoom(const Arg *);
 | 
				
			||||||
 | 
					static void printscreen(const Arg *) ;
 | 
				
			||||||
 | 
					static void toggleprinter(const Arg *);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Config.h for applying patches and the configuration. */
 | 
					/* Config.h for applying patches and the configuration. */
 | 
				
			||||||
#include "config.h"
 | 
					#include "config.h"
 | 
				
			||||||
| 
						 | 
					@ -2282,6 +2284,16 @@ tprinter(char *s, size_t len) {
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void
 | 
				
			||||||
 | 
					toggleprinter(const Arg *arg) {
 | 
				
			||||||
 | 
						term.mode ^= MODE_PRINT;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void
 | 
				
			||||||
 | 
					printscreen(const Arg *arg) {
 | 
				
			||||||
 | 
						tdump();
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
tdumpline(int n) {
 | 
					tdumpline(int n) {
 | 
				
			||||||
	Glyph *bp, *end;
 | 
						Glyph *bp, *end;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue