Move config.h include from st.c to x.c
config.h includes references to KeySyms and other X stuff. Until we come up with a cleaner way to separate configuration, it is simpler (leads to more code removal) to have this here. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
This commit is contained in:
parent
32d3b1d00f
commit
65976c1a29
73
config.def.h
73
config.def.h
|
@ -5,8 +5,8 @@
|
||||||
*
|
*
|
||||||
* font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html
|
* font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html
|
||||||
*/
|
*/
|
||||||
char font[] = "Liberation Mono:pixelsize=12:antialias=true:autohint=true";
|
static char *font = "Liberation Mono:pixelsize=12:antialias=true:autohint=true";
|
||||||
int borderpx = 2;
|
static int borderpx = 2;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* What program is execed by st depends of these precedence rules:
|
* What program is execed by st depends of these precedence rules:
|
||||||
|
@ -16,54 +16,54 @@ int borderpx = 2;
|
||||||
* 4: value of shell in /etc/passwd
|
* 4: value of shell in /etc/passwd
|
||||||
* 5: value of shell in config.h
|
* 5: value of shell in config.h
|
||||||
*/
|
*/
|
||||||
static char shell[] = "/bin/sh";
|
char *shell = "/bin/sh";
|
||||||
static char *utmp = NULL;
|
char *utmp = NULL;
|
||||||
static char stty_args[] = "stty raw pass8 nl -echo -iexten -cstopb 38400";
|
char *stty_args = "stty raw pass8 nl -echo -iexten -cstopb 38400";
|
||||||
|
|
||||||
/* identification sequence returned in DA and DECID */
|
/* identification sequence returned in DA and DECID */
|
||||||
static char vtiden[] = "\033[?6c";
|
char *vtiden = "\033[?6c";
|
||||||
|
|
||||||
/* Kerning / character bounding-box multipliers */
|
/* Kerning / character bounding-box multipliers */
|
||||||
float cwscale = 1.0;
|
static float cwscale = 1.0;
|
||||||
float chscale = 1.0;
|
static float chscale = 1.0;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* word delimiter string
|
* word delimiter string
|
||||||
*
|
*
|
||||||
* More advanced example: " `'\"()[]{}"
|
* More advanced example: " `'\"()[]{}"
|
||||||
*/
|
*/
|
||||||
static char worddelimiters[] = " ";
|
char *worddelimiters = " ";
|
||||||
|
|
||||||
/* selection timeouts (in milliseconds) */
|
/* selection timeouts (in milliseconds) */
|
||||||
unsigned int doubleclicktimeout = 300;
|
static unsigned int doubleclicktimeout = 300;
|
||||||
unsigned int tripleclicktimeout = 600;
|
static unsigned int tripleclicktimeout = 600;
|
||||||
|
|
||||||
/* alt screens */
|
/* alt screens */
|
||||||
int allowaltscreen = 1;
|
int allowaltscreen = 1;
|
||||||
|
|
||||||
/* frames per second st should at maximum draw to the screen */
|
/* frames per second st should at maximum draw to the screen */
|
||||||
unsigned int xfps = 120;
|
static unsigned int xfps = 120;
|
||||||
unsigned int actionfps = 30;
|
static unsigned int actionfps = 30;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* blinking timeout (set to 0 to disable blinking) for the terminal blinking
|
* blinking timeout (set to 0 to disable blinking) for the terminal blinking
|
||||||
* attribute.
|
* attribute.
|
||||||
*/
|
*/
|
||||||
unsigned int blinktimeout = 800;
|
static unsigned int blinktimeout = 800;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* thickness of underline and bar cursors
|
* thickness of underline and bar cursors
|
||||||
*/
|
*/
|
||||||
unsigned int cursorthickness = 2;
|
static unsigned int cursorthickness = 2;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* bell volume. It must be a value between -100 and 100. Use 0 for disabling
|
* bell volume. It must be a value between -100 and 100. Use 0 for disabling
|
||||||
* it
|
* it
|
||||||
*/
|
*/
|
||||||
int bellvolume = 0;
|
static int bellvolume = 0;
|
||||||
|
|
||||||
/* default TERM value */
|
/* default TERM value */
|
||||||
char termname[] = "st-256color";
|
char *termname = "st-256color";
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* spaces per tab
|
* spaces per tab
|
||||||
|
@ -80,10 +80,10 @@ char termname[] = "st-256color";
|
||||||
*
|
*
|
||||||
* stty tabs
|
* stty tabs
|
||||||
*/
|
*/
|
||||||
static unsigned int tabspaces = 8;
|
unsigned int tabspaces = 8;
|
||||||
|
|
||||||
/* Terminal colors (16 first used in escape sequence) */
|
/* Terminal colors (16 first used in escape sequence) */
|
||||||
const char *colorname[] = {
|
static const char *colorname[] = {
|
||||||
/* 8 normal colors */
|
/* 8 normal colors */
|
||||||
"black",
|
"black",
|
||||||
"red3",
|
"red3",
|
||||||
|
@ -118,8 +118,8 @@ const char *colorname[] = {
|
||||||
*/
|
*/
|
||||||
unsigned int defaultfg = 7;
|
unsigned int defaultfg = 7;
|
||||||
unsigned int defaultbg = 0;
|
unsigned int defaultbg = 0;
|
||||||
unsigned int defaultcs = 256;
|
static unsigned int defaultcs = 256;
|
||||||
unsigned int defaultrcs = 257;
|
static unsigned int defaultrcs = 257;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Default shape of cursor
|
* Default shape of cursor
|
||||||
|
@ -128,33 +128,33 @@ unsigned int defaultrcs = 257;
|
||||||
* 6: Bar ("|")
|
* 6: Bar ("|")
|
||||||
* 7: Snowman ("☃")
|
* 7: Snowman ("☃")
|
||||||
*/
|
*/
|
||||||
unsigned int cursorshape = 2;
|
static unsigned int cursorshape = 2;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Default columns and rows numbers
|
* Default columns and rows numbers
|
||||||
*/
|
*/
|
||||||
|
|
||||||
unsigned int cols = 80;
|
static unsigned int cols = 80;
|
||||||
unsigned int rows = 24;
|
static unsigned int rows = 24;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Default colour and shape of the mouse cursor
|
* Default colour and shape of the mouse cursor
|
||||||
*/
|
*/
|
||||||
unsigned int mouseshape = XC_xterm;
|
static unsigned int mouseshape = XC_xterm;
|
||||||
unsigned int mousefg = 7;
|
static unsigned int mousefg = 7;
|
||||||
unsigned int mousebg = 0;
|
static unsigned int mousebg = 0;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Color used to display font attributes when fontconfig selected a font which
|
* Color used to display font attributes when fontconfig selected a font which
|
||||||
* doesn't match the ones requested.
|
* doesn't match the ones requested.
|
||||||
*/
|
*/
|
||||||
unsigned int defaultattr = 11;
|
static unsigned int defaultattr = 11;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Internal mouse shortcuts.
|
* Internal mouse shortcuts.
|
||||||
* Beware that overloading Button1 will disable the selection.
|
* Beware that overloading Button1 will disable the selection.
|
||||||
*/
|
*/
|
||||||
MouseShortcut mshortcuts[] = {
|
static MouseShortcut mshortcuts[] = {
|
||||||
/* button mask string */
|
/* button mask string */
|
||||||
{ Button4, XK_ANY_MOD, "\031" },
|
{ Button4, XK_ANY_MOD, "\031" },
|
||||||
{ Button5, XK_ANY_MOD, "\005" },
|
{ Button5, XK_ANY_MOD, "\005" },
|
||||||
|
@ -164,7 +164,7 @@ MouseShortcut mshortcuts[] = {
|
||||||
#define MODKEY Mod1Mask
|
#define MODKEY Mod1Mask
|
||||||
#define TERMMOD (ControlMask|ShiftMask)
|
#define TERMMOD (ControlMask|ShiftMask)
|
||||||
|
|
||||||
Shortcut shortcuts[] = {
|
static Shortcut shortcuts[] = {
|
||||||
/* mask keysym function argument */
|
/* mask keysym function argument */
|
||||||
{ XK_ANY_MOD, XK_Break, sendbreak, {.i = 0} },
|
{ XK_ANY_MOD, XK_Break, sendbreak, {.i = 0} },
|
||||||
{ ControlMask, XK_Print, toggleprinter, {.i = 0} },
|
{ ControlMask, XK_Print, toggleprinter, {.i = 0} },
|
||||||
|
@ -209,26 +209,26 @@ Shortcut shortcuts[] = {
|
||||||
* If you want keys other than the X11 function keys (0xFD00 - 0xFFFF)
|
* If you want keys other than the X11 function keys (0xFD00 - 0xFFFF)
|
||||||
* to be mapped below, add them to this array.
|
* to be mapped below, add them to this array.
|
||||||
*/
|
*/
|
||||||
KeySym mappedkeys[] = { -1 };
|
static KeySym mappedkeys[] = { -1 };
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* State bits to ignore when matching key or button events. By default,
|
* State bits to ignore when matching key or button events. By default,
|
||||||
* numlock (Mod2Mask) and keyboard layout (XK_SWITCH_MOD) are ignored.
|
* numlock (Mod2Mask) and keyboard layout (XK_SWITCH_MOD) are ignored.
|
||||||
*/
|
*/
|
||||||
uint ignoremod = Mod2Mask|XK_SWITCH_MOD;
|
static uint ignoremod = Mod2Mask|XK_SWITCH_MOD;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Override mouse-select while mask is active (when MODE_MOUSE is set).
|
* Override mouse-select while mask is active (when MODE_MOUSE is set).
|
||||||
* Note that if you want to use ShiftMask with selmasks, set this to an other
|
* Note that if you want to use ShiftMask with selmasks, set this to an other
|
||||||
* modifier, set to 0 to not use it.
|
* modifier, set to 0 to not use it.
|
||||||
*/
|
*/
|
||||||
uint forceselmod = ShiftMask;
|
static uint forceselmod = ShiftMask;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is the huge key array which defines all compatibility to the Linux
|
* This is the huge key array which defines all compatibility to the Linux
|
||||||
* world. Please decide about changes wisely.
|
* world. Please decide about changes wisely.
|
||||||
*/
|
*/
|
||||||
Key key[] = {
|
static Key key[] = {
|
||||||
/* keysym mask string appkey appcursor crlf */
|
/* keysym mask string appkey appcursor crlf */
|
||||||
{ XK_KP_Home, ShiftMask, "\033[2J", 0, -1, 0},
|
{ XK_KP_Home, ShiftMask, "\033[2J", 0, -1, 0},
|
||||||
{ XK_KP_Home, ShiftMask, "\033[1;2H", 0, +1, 0},
|
{ XK_KP_Home, ShiftMask, "\033[1;2H", 0, +1, 0},
|
||||||
|
@ -451,7 +451,7 @@ Key key[] = {
|
||||||
* ButtonRelease and MotionNotify.
|
* ButtonRelease and MotionNotify.
|
||||||
* If no match is found, regular selection is used.
|
* If no match is found, regular selection is used.
|
||||||
*/
|
*/
|
||||||
uint selmasks[] = {
|
static uint selmasks[] = {
|
||||||
[SEL_RECTANGULAR] = Mod1Mask,
|
[SEL_RECTANGULAR] = Mod1Mask,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -459,8 +459,7 @@ uint selmasks[] = {
|
||||||
* Printable characters in ASCII, used to estimate the advance width
|
* Printable characters in ASCII, used to estimate the advance width
|
||||||
* of single wide characters.
|
* of single wide characters.
|
||||||
*/
|
*/
|
||||||
char ascii_printable[] =
|
static char ascii_printable[] =
|
||||||
" !\"#$%&'()*+,-./0123456789:;<=>?"
|
" !\"#$%&'()*+,-./0123456789:;<=>?"
|
||||||
"@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"
|
"@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"
|
||||||
"`abcdefghijklmnopqrstuvwxyz{|}~";
|
"`abcdefghijklmnopqrstuvwxyz{|}~";
|
||||||
|
|
||||||
|
|
47
st.c
47
st.c
|
@ -109,19 +109,6 @@ typedef struct {
|
||||||
int narg; /* nb of args */
|
int narg; /* nb of args */
|
||||||
} STREscape;
|
} STREscape;
|
||||||
|
|
||||||
/* function definitions used in config.h */
|
|
||||||
static void clipcopy(const Arg *);
|
|
||||||
static void clippaste(const Arg *);
|
|
||||||
static void numlock(const Arg *);
|
|
||||||
static void selpaste(const Arg *);
|
|
||||||
static void printsel(const Arg *);
|
|
||||||
static void printscreen(const Arg *) ;
|
|
||||||
static void iso14755(const Arg *);
|
|
||||||
static void toggleprinter(const Arg *);
|
|
||||||
static void sendbreak(const Arg *);
|
|
||||||
|
|
||||||
/* config.h for applying patches and the configuration. */
|
|
||||||
#include "config.h"
|
|
||||||
|
|
||||||
static void execsh(char **);
|
static void execsh(char **);
|
||||||
static void stty(char **);
|
static void stty(char **);
|
||||||
|
@ -199,14 +186,6 @@ static uchar utfmask[UTF_SIZ + 1] = {0xC0, 0x80, 0xE0, 0xF0, 0xF8};
|
||||||
static Rune utfmin[UTF_SIZ + 1] = { 0, 0, 0x80, 0x800, 0x10000};
|
static Rune utfmin[UTF_SIZ + 1] = { 0, 0, 0x80, 0x800, 0x10000};
|
||||||
static Rune utfmax[UTF_SIZ + 1] = {0x10FFFF, 0x7F, 0x7FF, 0xFFFF, 0x10FFFF};
|
static Rune utfmax[UTF_SIZ + 1] = {0x10FFFF, 0x7F, 0x7FF, 0xFFFF, 0x10FFFF};
|
||||||
|
|
||||||
/* config.h array lengths */
|
|
||||||
size_t colornamelen = LEN(colorname);
|
|
||||||
size_t mshortcutslen = LEN(mshortcuts);
|
|
||||||
size_t shortcutslen = LEN(shortcuts);
|
|
||||||
size_t selmaskslen = LEN(selmasks);
|
|
||||||
size_t keyslen = LEN(key);
|
|
||||||
size_t mappedkeyslen = LEN(mappedkeys);
|
|
||||||
|
|
||||||
ssize_t
|
ssize_t
|
||||||
xwrite(int fd, const char *s, size_t len)
|
xwrite(int fd, const char *s, size_t len)
|
||||||
{
|
{
|
||||||
|
@ -585,24 +564,6 @@ getsel(void)
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
selpaste(const Arg *dummy)
|
|
||||||
{
|
|
||||||
xselpaste();
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
clipcopy(const Arg *dummy)
|
|
||||||
{
|
|
||||||
xclipcopy();
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
clippaste(const Arg *dummy)
|
|
||||||
{
|
|
||||||
xclippaste();
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
selclear(void)
|
selclear(void)
|
||||||
{
|
{
|
||||||
|
@ -1572,7 +1533,7 @@ csihandle(void)
|
||||||
break;
|
break;
|
||||||
case 'c': /* DA -- Device Attributes */
|
case 'c': /* DA -- Device Attributes */
|
||||||
if (csiescseq.arg[0] == 0)
|
if (csiescseq.arg[0] == 0)
|
||||||
ttywrite(vtiden, sizeof(vtiden) - 1);
|
ttywrite(vtiden, strlen(vtiden));
|
||||||
break;
|
break;
|
||||||
case 'C': /* CUF -- Cursor <n> Forward */
|
case 'C': /* CUF -- Cursor <n> Forward */
|
||||||
case 'a': /* HPR -- Cursor <n> Forward */
|
case 'a': /* HPR -- Cursor <n> Forward */
|
||||||
|
@ -1791,7 +1752,7 @@ strhandle(void)
|
||||||
dec = base64dec(strescseq.args[2]);
|
dec = base64dec(strescseq.args[2]);
|
||||||
if (dec) {
|
if (dec) {
|
||||||
xsetsel(dec, CurrentTime);
|
xsetsel(dec, CurrentTime);
|
||||||
clipcopy(NULL);
|
xclipcopy();
|
||||||
} else {
|
} else {
|
||||||
fprintf(stderr, "erresc: invalid base64\n");
|
fprintf(stderr, "erresc: invalid base64\n");
|
||||||
}
|
}
|
||||||
|
@ -2134,7 +2095,7 @@ tcontrolcode(uchar ascii)
|
||||||
case 0x99: /* TODO: SGCI */
|
case 0x99: /* TODO: SGCI */
|
||||||
break;
|
break;
|
||||||
case 0x9a: /* DECID -- Identify Terminal */
|
case 0x9a: /* DECID -- Identify Terminal */
|
||||||
ttywrite(vtiden, sizeof(vtiden) - 1);
|
ttywrite(vtiden, strlen(vtiden));
|
||||||
break;
|
break;
|
||||||
case 0x9b: /* TODO: CSI */
|
case 0x9b: /* TODO: CSI */
|
||||||
case 0x9c: /* TODO: ST */
|
case 0x9c: /* TODO: ST */
|
||||||
|
@ -2206,7 +2167,7 @@ eschandle(uchar ascii)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'Z': /* DECID -- Identify Terminal */
|
case 'Z': /* DECID -- Identify Terminal */
|
||||||
ttywrite(vtiden, sizeof(vtiden) - 1);
|
ttywrite(vtiden, strlen(vtiden));
|
||||||
break;
|
break;
|
||||||
case 'c': /* RIS -- Reset to inital state */
|
case 'c': /* RIS -- Reset to inital state */
|
||||||
treset();
|
treset();
|
||||||
|
|
50
st.h
50
st.h
|
@ -190,6 +190,13 @@ typedef struct {
|
||||||
void die(const char *, ...);
|
void die(const char *, ...);
|
||||||
void redraw(void);
|
void redraw(void);
|
||||||
|
|
||||||
|
void iso14755(const Arg *);
|
||||||
|
void numlock(const Arg *);
|
||||||
|
void printscreen(const Arg *);
|
||||||
|
void printsel(const Arg *);
|
||||||
|
void sendbreak(const Arg *);
|
||||||
|
void toggleprinter(const Arg *);
|
||||||
|
|
||||||
int tattrset(int);
|
int tattrset(int);
|
||||||
void tnew(int, int);
|
void tnew(int, int);
|
||||||
void tresize(int, int);
|
void tresize(int, int);
|
||||||
|
@ -225,42 +232,13 @@ extern pid_t pid;
|
||||||
extern int oldbutton;
|
extern int oldbutton;
|
||||||
|
|
||||||
/* config.h globals */
|
/* config.h globals */
|
||||||
extern char font[];
|
extern char *shell;
|
||||||
extern int borderpx;
|
extern char *utmp;
|
||||||
extern float cwscale;
|
extern char *stty_args;
|
||||||
extern float chscale;
|
extern char *vtiden;
|
||||||
extern unsigned int doubleclicktimeout;
|
extern char *worddelimiters;
|
||||||
extern unsigned int tripleclicktimeout;
|
|
||||||
extern int allowaltscreen;
|
extern int allowaltscreen;
|
||||||
extern unsigned int xfps;
|
extern char *termname;
|
||||||
extern unsigned int actionfps;
|
extern unsigned int tabspaces;
|
||||||
extern unsigned int cursorthickness;
|
|
||||||
extern int bellvolume;
|
|
||||||
extern unsigned int blinktimeout;
|
|
||||||
extern char termname[];
|
|
||||||
extern const char *colorname[];
|
|
||||||
extern size_t colornamelen;
|
|
||||||
extern unsigned int defaultfg;
|
extern unsigned int defaultfg;
|
||||||
extern unsigned int defaultbg;
|
extern unsigned int defaultbg;
|
||||||
extern unsigned int defaultcs;
|
|
||||||
extern unsigned int defaultrcs;
|
|
||||||
extern unsigned int cursorshape;
|
|
||||||
extern unsigned int cols;
|
|
||||||
extern unsigned int rows;
|
|
||||||
extern unsigned int mouseshape;
|
|
||||||
extern unsigned int mousefg;
|
|
||||||
extern unsigned int mousebg;
|
|
||||||
extern unsigned int defaultattr;
|
|
||||||
extern MouseShortcut mshortcuts[];
|
|
||||||
extern size_t mshortcutslen;
|
|
||||||
extern Shortcut shortcuts[];
|
|
||||||
extern size_t shortcutslen;
|
|
||||||
extern KeySym mappedkeys[];
|
|
||||||
extern size_t mappedkeyslen;
|
|
||||||
extern uint ignoremod;
|
|
||||||
extern uint forceselmod;
|
|
||||||
extern Key key[];
|
|
||||||
extern size_t keyslen;
|
|
||||||
extern uint selmasks[];
|
|
||||||
extern size_t selmaskslen;
|
|
||||||
extern char ascii_printable[];
|
|
||||||
|
|
3
win.h
3
win.h
|
@ -18,6 +18,3 @@ void xsettitle(char *);
|
||||||
void xsetpointermotion(int);
|
void xsetpointermotion(int);
|
||||||
void xselpaste(void);
|
void xselpaste(void);
|
||||||
void xsetsel(char *, Time);
|
void xsetsel(char *, Time);
|
||||||
void zoom(const Arg *);
|
|
||||||
void zoomabs(const Arg *);
|
|
||||||
void zoomreset(const Arg *);
|
|
||||||
|
|
37
x.c
37
x.c
|
@ -20,6 +20,25 @@ static char *argv0;
|
||||||
#include "st.h"
|
#include "st.h"
|
||||||
#include "win.h"
|
#include "win.h"
|
||||||
|
|
||||||
|
/* function definitions used in config.h */
|
||||||
|
static void clipcopy(const Arg *);
|
||||||
|
static void clippaste(const Arg *);
|
||||||
|
static void selpaste(const Arg *);
|
||||||
|
static void zoom(const Arg *);
|
||||||
|
static void zoomabs(const Arg *);
|
||||||
|
static void zoomreset(const Arg *);
|
||||||
|
|
||||||
|
/* config.h for applying patches and the configuration. */
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
/* config.h array lengths */
|
||||||
|
size_t colornamelen = LEN(colorname);
|
||||||
|
size_t mshortcutslen = LEN(mshortcuts);
|
||||||
|
size_t shortcutslen = LEN(shortcuts);
|
||||||
|
size_t selmaskslen = LEN(selmasks);
|
||||||
|
size_t keyslen = LEN(key);
|
||||||
|
size_t mappedkeyslen = LEN(mappedkeys);
|
||||||
|
|
||||||
/* XEMBED messages */
|
/* XEMBED messages */
|
||||||
#define XEMBED_FOCUS_IN 4
|
#define XEMBED_FOCUS_IN 4
|
||||||
#define XEMBED_FOCUS_OUT 5
|
#define XEMBED_FOCUS_OUT 5
|
||||||
|
@ -188,6 +207,24 @@ static char *opt_line = NULL;
|
||||||
static char *opt_name = NULL;
|
static char *opt_name = NULL;
|
||||||
static char *opt_title = NULL;
|
static char *opt_title = NULL;
|
||||||
|
|
||||||
|
void
|
||||||
|
clipcopy(const Arg *dummy)
|
||||||
|
{
|
||||||
|
xclipcopy();
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
clippaste(const Arg *dummy)
|
||||||
|
{
|
||||||
|
xclippaste();
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
selpaste(const Arg *dummy)
|
||||||
|
{
|
||||||
|
xselpaste();
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
zoom(const Arg *arg)
|
zoom(const Arg *arg)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue
Block a user