all repos — st @ 1f087aa8b70fce67e7c43f689b5fb35667b5d84c

st (suckless terminal) config

Add key to send a break to the serial line
Roberto E. Vargas Caballero k0ga@shike2.com
commit

1f087aa8b70fce67e7c43f689b5fb35667b5d84c

parent

473326f2e3115f4b745730be782b2eba63e0934c

3 files changed, 13 insertions(+), 0 deletions(-)

jump to
M config.def.hconfig.def.h

@@ -134,6 +134,7 @@ #define MODKEY Mod1Mask

static Shortcut shortcuts[] = { /* mask keysym function argument */ + { XK_NO_MOD, XK_Pause, sendbreak, {.i = 0} }, { ControlMask, XK_Print, toggleprinter, {.i = 0} }, { ShiftMask, XK_Print, printscreen, {.i = 0} }, { XK_ANY_MOD, XK_Print, printsel, {.i = 0} },
M st.1st.1

@@ -122,6 +122,9 @@ and all the remaining arguments are used as a command

even without it. .SH SHORTCUTS .TP +.B Pause +Send a break in the serial line +.TP .B Ctrl-Print Screen Toggle if st should print to the .I iofile.
M st.cst.c

@@ -17,6 +17,7 @@ #include <sys/stat.h>

#include <sys/time.h> #include <sys/types.h> #include <sys/wait.h> +#include <termios.h> #include <time.h> #include <unistd.h> #include <libgen.h>

@@ -333,6 +334,7 @@ static void xzoomreset(const Arg *);

static void printsel(const Arg *); static void printscreen(const Arg *) ; static void toggleprinter(const Arg *); +static void sendbreak(const Arg *); /* Config.h for applying patches and the configuration. */ #include "config.h"

@@ -2576,6 +2578,13 @@ void

strreset(void) { memset(&strescseq, 0, sizeof(strescseq)); +} + +void +sendbreak(const Arg *arg) +{ + if (tcsendbreak(cmdfd, 0)) + perror("Error sending break"); } void