# st

Unnamed repository; edit this file 'description' to name the repository.

| Log | Files | Refs | README | LICENSE

    commit be7c6d7fb09ff50127332060d771b94a3bc8e44c
    parent e40d8da194cb02b400b09d2c8642f701c5c16821
    Author: Christoph Lohmann <20h@r-36.net>
    Date:   Sat, 23 Feb 2013 21:50:13 +0100

    Add insert for the primary clipboard to MOD + Shift + Ins.

    Thanks Mantas Mikulėnas <grawity@gmail.com> for the patch!

    Diffstat:
    Mconfig.def.h | 1+
    Mst.c | 17++++++++++++++---

    2 files changed, 15 insertions(+), 3 deletions(-)
    diff --git a/config.def.h b/config.def.h
    @@ -70,6 +70,7 @@ static Shortcut shortcuts[] = {
     	{ MODKEY|ShiftMask,	XK_Prior,	xzoom,		{.i = +1} },
     	{ MODKEY|ShiftMask,	XK_Next,	xzoom,		{.i = -1} },
     	{ ShiftMask,		XK_Insert,	selpaste,	{.i =  0} },
    +	{ MODKEY|ShiftMask,	XK_Insert,	clippaste,	{.i =  0} },
     	{ MODKEY,		XK_Num_Lock,	numlock,	{.i =  0} },
     };

    diff --git a/st.c b/st.c
    @@ -266,9 +266,10 @@ typedef struct {
     } Shortcut;

     /* function definitions used in config.h */
    -static void xzoom(const Arg *);
    -static void selpaste(const Arg *);
    +static void clippaste(const Arg *);
     static void numlock(const Arg *);
    +static void selpaste(const Arg *);
    +static void xzoom(const Arg *);

     /* Config.h for applying patches and the configuration. */
     #include "config.h"
    @@ -830,7 +831,17 @@ selpaste(const Arg *dummy) {
     			xw.win, CurrentTime);
     }

    -void selclear(XEvent *e) {
    +void
    +clippaste(const Arg *dummy) {
    +	Atom clipboard;
    +
    +	clipboard = XInternAtom(xw.dpy, "CLIPBOARD", 0);
    +	XConvertSelection(xw.dpy, clipboard, sel.xtarget, XA_PRIMARY,
    +			xw.win, CurrentTime);
    +}
    +
    +void
    +selclear(XEvent *e) {
     	if(sel.bx == -1)
     		return;
     	sel.bx = -1;