Add key definition for printer sequences - st - simple terminal HTML git clone https://git.parazyd.org/st DIR Log DIR Files DIR Refs DIR README DIR LICENSE --- DIR commit 96c230e476a4fb446a8fa8d651c88fda32cd5427 DIR parent 6166a1afc8c7875ce9ba62e5001040014269a26d HTML Author: Roberto E. Vargas Caballero <k0ga@shike2.com> Date: Fri, 31 Jan 2014 23:05:42 +0100 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 Diffstat: M config.def.h | 2 ++ M st.c | 12 ++++++++++++ 2 files changed, 14 insertions(+), 0 deletions(-) --- DIR diff --git a/config.def.h b/config.def.h @@ -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} }, DIR diff --git a/st.c b/st.c @@ -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" @@ -2283,6 +2285,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;