iAdd key to send a break to the serial line - st - Simple Terminal Err gopher.r-36.net 70 i Err gopher.r-36.net 70 1Log /scm/st//log.gph gopher.r-36.net 70 1Files /scm/st//files.gph gopher.r-36.net 70 1Refs /scm/st//refs.gph gopher.r-36.net 70 1README /scm/st//file/README.gph gopher.r-36.net 70 1LICENSE /scm/st//file/LICENSE.gph gopher.r-36.net 70 i--- Err gopher.r-36.net 70 1commit 1f087aa8b70fce67e7c43f689b5fb35667b5d84c /scm/st//commit/1f087aa8b70fce67e7c43f689b5fb35667b5d84c.gph gopher.r-36.net 70 1parent 473326f2e3115f4b745730be782b2eba63e0934c /scm/st//commit/473326f2e3115f4b745730be782b2eba63e0934c.gph gopher.r-36.net 70 hAuthor: Roberto E. Vargas Caballero URL:mailto:k0ga@shike2.com gopher.r-36.net 70 iDate: Tue, 8 Sep 2015 12:10:11 +0200 Err gopher.r-36.net 70 i Err gopher.r-36.net 70 iAdd key to send a break to the serial line Err gopher.r-36.net 70 i Err gopher.r-36.net 70 iDiffstat: Err gopher.r-36.net 70 i config.def.h | 1 + Err gopher.r-36.net 70 i st.1 | 3 +++ Err gopher.r-36.net 70 i st.c | 9 +++++++++ Err gopher.r-36.net 70 i Err gopher.r-36.net 70 i3 files changed, 13 insertions(+), 0 deletions(-) Err gopher.r-36.net 70 i--- Err gopher.r-36.net 70 1diff --git a/config.def.h b/config.def.h /scm/st//file/config.def.h.gph gopher.r-36.net 70 i@@ -134,6 +134,7 @@ static Mousekey mshortcuts[] = { Err gopher.r-36.net 70 i Err gopher.r-36.net 70 i static Shortcut shortcuts[] = { Err gopher.r-36.net 70 i /* mask keysym function argument */ Err gopher.r-36.net 70 i+ { XK_NO_MOD, XK_Pause, sendbreak, {.i = 0} }, Err gopher.r-36.net 70 i { ControlMask, XK_Print, toggleprinter, {.i = 0} }, Err gopher.r-36.net 70 i { ShiftMask, XK_Print, printscreen, {.i = 0} }, Err gopher.r-36.net 70 i { XK_ANY_MOD, XK_Print, printsel, {.i = 0} }, Err gopher.r-36.net 70 1diff --git a/st.1 b/st.1 /scm/st//file/st.1.gph gopher.r-36.net 70 i@@ -122,6 +122,9 @@ and all the remaining arguments are used as a command Err gopher.r-36.net 70 i even without it. Err gopher.r-36.net 70 i .SH SHORTCUTS Err gopher.r-36.net 70 i .TP Err gopher.r-36.net 70 i+.B Pause Err gopher.r-36.net 70 i+Send a break in the serial line Err gopher.r-36.net 70 i+.TP Err gopher.r-36.net 70 i .B Ctrl-Print Screen Err gopher.r-36.net 70 i Toggle if st should print to the Err gopher.r-36.net 70 i .I iofile. Err gopher.r-36.net 70 1diff --git a/st.c b/st.c /scm/st//file/st.c.gph gopher.r-36.net 70 i@@ -17,6 +17,7 @@ Err gopher.r-36.net 70 i #include Err gopher.r-36.net 70 i #include Err gopher.r-36.net 70 i #include Err gopher.r-36.net 70 i+#include Err gopher.r-36.net 70 i #include Err gopher.r-36.net 70 i #include Err gopher.r-36.net 70 i #include Err gopher.r-36.net 70 i@@ -333,6 +334,7 @@ static void xzoomreset(const Arg *); Err gopher.r-36.net 70 i static void printsel(const Arg *); Err gopher.r-36.net 70 i static void printscreen(const Arg *) ; Err gopher.r-36.net 70 i static void toggleprinter(const Arg *); Err gopher.r-36.net 70 i+static void sendbreak(const Arg *); Err gopher.r-36.net 70 i Err gopher.r-36.net 70 i /* Config.h for applying patches and the configuration. */ Err gopher.r-36.net 70 i #include "config.h" Err gopher.r-36.net 70 i@@ -2579,6 +2581,13 @@ strreset(void) Err gopher.r-36.net 70 i } Err gopher.r-36.net 70 i Err gopher.r-36.net 70 i void Err gopher.r-36.net 70 i+sendbreak(const Arg *arg) Err gopher.r-36.net 70 i+{ Err gopher.r-36.net 70 i+ if (tcsendbreak(cmdfd, 0)) Err gopher.r-36.net 70 i+ perror("Error sending break"); Err gopher.r-36.net 70 i+} Err gopher.r-36.net 70 i+ Err gopher.r-36.net 70 i+void Err gopher.r-36.net 70 i ttprinter(char *s, size_t len) Err gopher.r-36.net 70 i { Err gopher.r-36.net 70 i if (iofd != -1 && xwrite(iofd, s, len) < 0) { Err gopher.r-36.net 70 .