[dev] [st][PATCH 4/6] Add key definition for printer sequences

From: Roberto E. Vargas Caballero <k0ga_AT_shike2.com>
Date: Thu, 6 Mar 2014 08:04:30 +0100

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
---
 config.def.h |  2 ++
 st.c         | 12 ++++++++++++
 2 files changed, 14 insertions(+)
diff --git a/config.def.h b/config.def.h
index b31d7d6..47018a3 100644
--- a/config.def.h
+++ b/config.def.h
_AT_@ -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} },
diff --git a/st.c b/st.c
index 1711842..9f9c161 100644
--- a/st.c
+++ b/st.c
_AT_@ -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"
_AT_@ -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;
 
-- 
1.8.5.3
Received on Thu Mar 06 2014 - 08:04:30 CET

This archive was generated by hypermail 2.3.0 : Thu Mar 06 2014 - 08:12:32 CET