Move config.h include from st.c to x.c
[st.git] / config.def.h
index 7f465d1..1c181ab 100644 (file)
@@ -5,7 +5,7 @@
  *
  * font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html
  */
-static char font[] = "Liberation Mono:pixelsize=12:antialias=true:autohint=true";
+static char *font = "Liberation Mono:pixelsize=12:antialias=true:autohint=true";
 static int borderpx = 2;
 
 /*
@@ -16,12 +16,12 @@ static int borderpx = 2;
  * 4: value of shell in /etc/passwd
  * 5: value of shell in config.h
  */
-static char shell[] = "/bin/sh";
-static char *utmp = NULL;
-static char stty_args[] = "stty raw pass8 nl -echo -iexten -cstopb 38400";
+char *shell = "/bin/sh";
+char *utmp = NULL;
+char *stty_args = "stty raw pass8 nl -echo -iexten -cstopb 38400";
 
 /* identification sequence returned in DA and DECID */
-static char vtiden[] = "\033[?6c";
+char *vtiden = "\033[?6c";
 
 /* Kerning / character bounding-box multipliers */
 static float cwscale = 1.0;
@@ -32,14 +32,14 @@ static float chscale = 1.0;
  *
  * More advanced example: " `'\"()[]{}"
  */
-static char worddelimiters[] = " ";
+char *worddelimiters = " ";
 
 /* selection timeouts (in milliseconds) */
 static unsigned int doubleclicktimeout = 300;
 static unsigned int tripleclicktimeout = 600;
 
 /* alt screens */
-static int allowaltscreen = 1;
+int allowaltscreen = 1;
 
 /* frames per second st should at maximum draw to the screen */
 static unsigned int xfps = 120;
@@ -63,7 +63,7 @@ static unsigned int cursorthickness = 2;
 static int bellvolume = 0;
 
 /* default TERM value */
-static char termname[] = "st-256color";
+char *termname = "st-256color";
 
 /*
  * spaces per tab
@@ -80,7 +80,7 @@ static char termname[] = "st-256color";
  *
  *     stty tabs
  */
-static unsigned int tabspaces = 8;
+unsigned int tabspaces = 8;
 
 /* Terminal colors (16 first used in escape sequence) */
 static const char *colorname[] = {
@@ -116,8 +116,8 @@ static const char *colorname[] = {
  * Default colors (colorname index)
  * foreground, background, cursor, reverse cursor
  */
-static unsigned int defaultfg = 7;
-static unsigned int defaultbg = 0;
+unsigned int defaultfg = 7;
+unsigned int defaultbg = 0;
 static unsigned int defaultcs = 256;
 static unsigned int defaultrcs = 257;
 
@@ -130,6 +130,13 @@ static unsigned int defaultrcs = 257;
  */
 static unsigned int cursorshape = 2;
 
+/*
+ * Default columns and rows numbers
+ */
+
+static unsigned int cols = 80;
+static unsigned int rows = 24;
+
 /*
  * Default colour and shape of the mouse cursor
  */
@@ -155,6 +162,7 @@ static MouseShortcut mshortcuts[] = {
 
 /* Internal keyboard shortcuts. */
 #define MODKEY Mod1Mask
+#define TERMMOD (ControlMask|ShiftMask)
 
 static Shortcut shortcuts[] = {
        /* mask                 keysym          function        argument */
@@ -162,15 +170,14 @@ static Shortcut shortcuts[] = {
        { ControlMask,          XK_Print,       toggleprinter,  {.i =  0} },
        { ShiftMask,            XK_Print,       printscreen,    {.i =  0} },
        { XK_ANY_MOD,           XK_Print,       printsel,       {.i =  0} },
-       { MODKEY|ShiftMask,     XK_Prior,       xzoom,          {.f = +1} },
-       { MODKEY|ShiftMask,     XK_Next,        xzoom,          {.f = -1} },
-       { MODKEY|ShiftMask,     XK_Home,        xzoomreset,     {.f =  0} },
-       { ShiftMask,            XK_Insert,      selpaste,       {.i =  0} },
-       { MODKEY|ShiftMask,     XK_Insert,      clippaste,      {.i =  0} },
-       { MODKEY|ShiftMask,     XK_C,           clipcopy,       {.i =  0} },
-       { MODKEY|ShiftMask,     XK_V,           clippaste,      {.i =  0} },
-       { MODKEY,               XK_Num_Lock,    numlock,        {.i =  0} },
-       { MODKEY,               XK_Control_L,   iso14755,       {.i =  0} },
+       { TERMMOD,              XK_Prior,       zoom,           {.f = +1} },
+       { TERMMOD,              XK_Next,        zoom,           {.f = -1} },
+       { TERMMOD,              XK_Home,        zoomreset,      {.f =  0} },
+       { TERMMOD,              XK_C,           clipcopy,       {.i =  0} },
+       { TERMMOD,              XK_V,           clippaste,      {.i =  0} },
+       { TERMMOD,              XK_Y,           selpaste,       {.i =  0} },
+       { TERMMOD,              XK_Num_Lock,    numlock,        {.i =  0} },
+       { TERMMOD,              XK_I,           iso14755,       {.i =  0} },
 };
 
 /*
@@ -280,23 +287,39 @@ static Key key[] = {
        { XK_KP_8,          XK_ANY_MOD,     "\033Ox",       +2,    0,    0},
        { XK_KP_9,          XK_ANY_MOD,     "\033Oy",       +2,    0,    0},
        { XK_Up,            ShiftMask,      "\033[1;2A",     0,    0,    0},
-       { XK_Up,            ControlMask,    "\033[1;5A",     0,    0,    0},
        { XK_Up,            Mod1Mask,       "\033[1;3A",     0,    0,    0},
+       { XK_Up,         ShiftMask|Mod1Mask,"\033[1;4A",     0,    0,    0},
+       { XK_Up,            ControlMask,    "\033[1;5A",     0,    0,    0},
+       { XK_Up,      ShiftMask|ControlMask,"\033[1;6A",     0,    0,    0},
+       { XK_Up,       ControlMask|Mod1Mask,"\033[1;7A",     0,    0,    0},
+       { XK_Up,ShiftMask|ControlMask|Mod1Mask,"\033[1;8A",  0,    0,    0},
        { XK_Up,            XK_ANY_MOD,     "\033[A",        0,   -1,    0},
        { XK_Up,            XK_ANY_MOD,     "\033OA",        0,   +1,    0},
        { XK_Down,          ShiftMask,      "\033[1;2B",     0,    0,    0},
-       { XK_Down,          ControlMask,    "\033[1;5B",     0,    0,    0},
        { XK_Down,          Mod1Mask,       "\033[1;3B",     0,    0,    0},
+       { XK_Down,       ShiftMask|Mod1Mask,"\033[1;4B",     0,    0,    0},
+       { XK_Down,          ControlMask,    "\033[1;5B",     0,    0,    0},
+       { XK_Down,    ShiftMask|ControlMask,"\033[1;6B",     0,    0,    0},
+       { XK_Down,     ControlMask|Mod1Mask,"\033[1;7B",     0,    0,    0},
+       { XK_Down,ShiftMask|ControlMask|Mod1Mask,"\033[1;8B",0,    0,    0},
        { XK_Down,          XK_ANY_MOD,     "\033[B",        0,   -1,    0},
        { XK_Down,          XK_ANY_MOD,     "\033OB",        0,   +1,    0},
        { XK_Left,          ShiftMask,      "\033[1;2D",     0,    0,    0},
-       { XK_Left,          ControlMask,    "\033[1;5D",     0,    0,    0},
        { XK_Left,          Mod1Mask,       "\033[1;3D",     0,    0,    0},
+       { XK_Left,       ShiftMask|Mod1Mask,"\033[1;4D",     0,    0,    0},
+       { XK_Left,          ControlMask,    "\033[1;5D",     0,    0,    0},
+       { XK_Left,    ShiftMask|ControlMask,"\033[1;6D",     0,    0,    0},
+       { XK_Left,     ControlMask|Mod1Mask,"\033[1;7D",     0,    0,    0},
+       { XK_Left,ShiftMask|ControlMask|Mod1Mask,"\033[1;8D",0,    0,    0},
        { XK_Left,          XK_ANY_MOD,     "\033[D",        0,   -1,    0},
        { XK_Left,          XK_ANY_MOD,     "\033OD",        0,   +1,    0},
        { XK_Right,         ShiftMask,      "\033[1;2C",     0,    0,    0},
-       { XK_Right,         ControlMask,    "\033[1;5C",     0,    0,    0},
        { XK_Right,         Mod1Mask,       "\033[1;3C",     0,    0,    0},
+       { XK_Right,      ShiftMask|Mod1Mask,"\033[1;4C",     0,    0,    0},
+       { XK_Right,         ControlMask,    "\033[1;5C",     0,    0,    0},
+       { XK_Right,   ShiftMask|ControlMask,"\033[1;6C",     0,    0,    0},
+       { XK_Right,    ControlMask|Mod1Mask,"\033[1;7C",     0,    0,    0},
+       { XK_Right,ShiftMask|ControlMask|Mod1Mask,"\033[1;8C",0,   0,    0},
        { XK_Right,         XK_ANY_MOD,     "\033[C",        0,   -1,    0},
        { XK_Right,         XK_ANY_MOD,     "\033OC",        0,   +1,    0},
        { XK_ISO_Left_Tab,  ShiftMask,      "\033[Z",        0,    0,    0},
@@ -440,4 +463,3 @@ static char ascii_printable[] =
        " !\"#$%&'()*+,-./0123456789:;<=>?"
        "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"
        "`abcdefghijklmnopqrstuvwxyz{|}~";
-