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:
Roberto E. Vargas Caballero 2014-01-31 23:05:42 +01:00
parent 6166a1afc8
commit 96c230e476
2 changed files with 14 additions and 0 deletions

View File

@ -107,6 +107,8 @@ static Mousekey mshortcuts[] = {
static Shortcut shortcuts[] = {
/* 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_Next, xzoom, {.i = -1} },
{ ShiftMask, XK_Insert, selpaste, {.i = 0} },

12
st.c
View File

@ -314,6 +314,8 @@ static void clippaste(const Arg *);
static void numlock(const Arg *);
static void selpaste(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. */
#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
tdumpline(int n) {
Glyph *bp, *end;