/*********************** * RYUDO CONFIGURATION * **********************/ /*************** * LOOK & FEEL * [All of these are required options except OPACITY and *TRANSPARENTLIST] **************/ /* Border colors */ #define SBORDERCOL 0x17736C #define BORDERCOL 0x000000 /* Window sweep border color */ #define GHOSTCOL 0x797979 /* Hold mode border colors -- if you don't use 9term you don't need to * care what these are */ #define SHOLDCOL 0xC8C8C8 #define HOLDCOL 0x444444 /* Border width in pixels */ #define BORDER 4 /* Gap size, in pixels, for pseudo-tiling. Should be even */ #define GAPSZ 4 /* Menu border width and color */ #define MENUBORDER 0 #define MBORDERCOL 0x000000 /* Normal menu colors */ #define MENUFGCOL 0xC9C9C9 #define MENUBGCOL 0x000000 /* Selected menu colors */ #define SMENUFGCOL 0x000000 #define SMENUBGCOL 0x1F9B92 /* You must use a compositor (eg xcompmgr, picom) for the next 2 settings * to have any effect, and each setting doesn't work without the other */ /* From 0 - 255, the opacity of windows marked 'transparent' */ #define OPACITY 217 // clang-format off /* Window classes marked 'transparent' */ #define TRANSPARENTLIST { \ "Alacritty", \ "kate", \ "acme", \ 0 \ } /* List of fonts to try, in order, for rendering the menus. * Remember the backslash at the end of non-terminating lines! */ #define FONTLIST { \ "*-lucidatypewriter-medium-*-12-*-75-*",\ "lucm.latin1.9", \ "blit", \ "*-lucidatypewriter-bold-*-14-*-75-*", \ "9x15bold", \ "fixed", \ "*", \ 0 \ } /* Names for the virtual desktops. Even if you don't use all of them, * it's safer to keep dummy or null values for all of them in case you * start the program with a different number of virtuals by happenstance. * Remember the backslash at the end of non-terminating lines! */ #define VIRTUALLIST {\ "One", \ "Two", \ "Three", \ "Four", \ "Five", \ "Six", \ "Seven", \ "Eight", \ "Nine", \ "Ten", \ "Eleven", \ "Twelve", \ 0 \ } // clang-format on /************ * BEHAVIOR * [Everything in this section is optional unless otherwise noted] ***********/ /* This sets the size ratio for windows spawned via keyboard or * center-snapped; CENTERNUM should be >= 2, so use 2/4 instead of 1/2 */ #define CENTERNUM 2 // required unless you also comment/omit SNAPCENTER_KEY #define CENTERDEN 3 // required unless you also comment/omit SNAPCENTER_KEY /* Centered windows should maximize vertically by default? * This is the behavior of new windows spawned with the launch shortcut * and of centered windows with SHORTCUTMOD + SNAPCENTER_KEY -- * use SHORTCUTMOD + SHIFT + SNAPCENTER_KEY to get the other behavior. */ #define CENTERVMAX /* Show 'Maximize' menuitem? */ // #define SHOWMAX /* Show 'Stick' menuitem? */ // #define SHOWSTICK /* Notify on virtual desktop switch? */ #define VIRTNOTIFY /* The summary and message to pass to the notifcation daeomon */ #define VIRTHEADER "virtual" #define VIRTMSG "[%s]" /* If enabled, having the mouse cursor in a monitor will cause * new windows to spawn in that monitor; otherwise, they will spawn * in the same monitor as the active window and can be moved afterward */ #define MONITORFOLLOWSMOUSE // clang-format off /* List of window classes to spawn as sticky; * Class values for currently open windows are conveniently shown in the last * column of the 'xshove' command given with no arguments. * Can be partial strings. * Remember the backslash at the end of non-terminating lines! */ #define AUTOSTICK {\ "XOsview", \ "XClock", \ 0 \ } /* List of terminal window classes -- include your favorite terminal here, * and remove those you don't use. Can be partial strings. * This array is required. Remember the backslash at the end of non- * terminating lines! */ #define TERMINALS {\ "term", \ "Term", \ "xvt", \ "Alacritty", \ "onsole", \ 0 \ } /* List of window classes to REQUIRE window sweeping when spawning; * Can be partial strings. * Remember the backslash at the end of non-terminating lines! */ #define ALWAYSDRAW {\ 0 \ } // clang-format on /*************** * KEYBINDINGS * [Any shortcut key can be omitted] **************/ /* Modifier key and associated modifier bits; * Shift = (1<<0) * Lock = (1<<1) * Control = (1<<2) * Mod1 = (1<<3) * Mod2 = (1<<4) * Mod3 = (1<<5) * Mod4 = (1<<6) * Mod5 = (1<<7) */ #define SHORTCUTMOD Mod4Mask #define MODBITS (1 << 6) /* Shortcut keys */ #define MAX_KEY XK_m #define ICON_KEY XK_i #define UNHIDE_KEY XK_u #define MOVE_KEY XK_v #define RESIZE_KEY XK_r #define DESTROY_KEY XK_d #define STICK_KEY XK_s #define WRANGLE_KEY XK_a #define SNAPLEFT_KEY XK_h #define SNAPRIGHT_KEY XK_l #define SNAPTOP_KEY XK_k #define SNAPBOTTOM_KEY XK_j #define SNAPTOPLEFT_KEY XK_q #define SNAPBOTTOMLEFT_KEY XK_w #define SNAPBOTTOMRIGHT_KEY XK_o #define SNAPTOPRIGHT_KEY XK_p #define SNAPCENTER_KEY XK_c #define ZOOM_KEY XK_z #define NEXTVIRT_KEY XK_Right #define PREVVIRT_KEY XK_Left #define LAUNCH_KEY XK_slash // ignore these for now -- this is a feature in development #define STICKYTOFRONT_KEY XK_t #define STICKYTOBACK_KEY XK_b