You are not logged in.
You can share your config.h and the patches that you use?
Thanks!
config.h:
// -- Appearance -------------------------------------------------------------------------
static const char font[] = "-*-clean-medium-r-*-*-12-*-*-*-*-*-*-*";
static const unsigned int borderpx = 2; /* border pixel of windows */
static const unsigned int snap = 32; /* snap pixel */
static const int systray_enable = 1;
static const int systray_spacing = 2;
#define NUMCOLORS 3
static const char colors[NUMCOLORS][ColLast][8] = {
// border foreground background
{ "#333333", "#FFFFFF", "#000000"}, // 0 - normal
{ "#1793D0", "#1793D0", "#000000"}, // 1 - selected
{ "#333333", "#333333", "#000000"}, // 2 - inactive tags
};
// -- Layout(s) --------------------------------------------------------------------------
static const float mfact = 0.5; /* factor of master area size [0.05..0.95] */
static const int nmaster = 1; /* number of clients in master area */
static const Bool resizehints = False; /* True = respect size hints in tiled resizals */
static const Layout layouts[] = {
/* symbol arrange function */
{ "Tile", tile },
{ "BStack", bstack },
{ "Max", monocle },
{ "Float", NULL },
};
// -- Tagging and Rules ------------------------------------------------------------------
static const Tag tags[] = {
// name layout mfact nmaster
{ "Eins", &layouts[0], -1, -1 },
{ "Zwei", &layouts[0], -1, -1 },
{ "Drei", &layouts[0], -1, -1 },
{ "Vier", &layouts[0], -1, -1 },
{ "Fünf", &layouts[0], -1, -1 },
{ "Sechs", &layouts[0], -1, -1 },
{ "Sieben", &layouts[0], -1, -1 }
};
static const Rule rules[] = {
/* class instance title tags mask isfloating monitor */
{ "Gimp", NULL, NULL, 0, True, -1 },
{ "Chromium", NULL, NULL, 1 << 1, False, -1 },
{ "Vlc", NULL, NULL, 0, True, -1 },
{ "Canvas", NULL, NULL, 0, True, -1 },
{ "Browser", NULL, NULL, 0, True, -1 },
};
// -- Key Definitions --------------------------------------------------------------------
//#define MODKEY Mod1Mask // Alt Key
#define MODKEY Mod4Mask // Windows Key
#define TAGKEYS(KEY,TAG) \
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
static Key keys[] = {
/* modifier key function argument */
{ MODKEY, XK_r, launcher, {0} },
{ MODKEY|ShiftMask, XK_Return, spawn, { .v = "urxvt" } },
{ MODKEY|ShiftMask, XK_w, spawn, { .v = "chromium" } },
{ MODKEY, XK_Down, focusstack, {.i = +1 } },
{ MODKEY, XK_Up, focusstack, {.i = -1 } },
{ MODKEY|ShiftMask, XK_Down, movestack, {.i = +1 } },
{ MODKEY|ShiftMask, XK_Up, movestack, {.i = -1 } },
{ MODKEY, XK_Left, setmfact, {.f = -0.05} },
{ MODKEY, XK_Right, setmfact, {.f = +0.05} },
{ MODKEY, XK_i, incnmaster, {.i = +1 } },
{ MODKEY, XK_d, incnmaster, {.i = -1 } },
{ MODKEY, XK_Return, zoom, {0} },
{ MODKEY, XK_Tab, view, {0} },
{ MODKEY|ShiftMask, XK_c, killclient, {0} },
{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
{ MODKEY, XK_b, setlayout, {.v = &layouts[1]} },
{ MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
{ MODKEY, XK_f, setlayout, {.v = &layouts[3]} },
{ MODKEY|ShiftMask, XK_space, togglefloating, {0} },
{ MODKEY, XK_0, view, {.ui = ~0 } },
{ MODKEY, XK_comma, focusmon, {.i = -1 } },
{ MODKEY, XK_period, focusmon, {.i = +1 } },
{ MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } },
{ MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } },
TAGKEYS( XK_1, 0)
TAGKEYS( XK_2, 1)
TAGKEYS( XK_3, 2)
TAGKEYS( XK_4, 3)
TAGKEYS( XK_5, 4)
TAGKEYS( XK_6, 5)
TAGKEYS( XK_7, 6)
{ MODKEY|ShiftMask, XK_q, quit, {0} },
};
// -- Button Definitions -----------------------------------------------------------------
static Button buttons[] = {
/* click event mask button function argument */
{ ClkClientWin, MODKEY, Button1, movemouse, {0} },
{ ClkClientWin, MODKEY, Button3, togglefloating, {0} },
{ ClkClientWin, MODKEY|ShiftMask, Button1, resizemouse, {0} },
{ ClkTagBar, 0, Button1, view, {0} },
{ ClkTagBar, 0, Button3, toggleview, {0} },
{ ClkTagBar, MODKEY, Button1, tag, {0} },
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
};
Ok, see if I remember all the patches I have:
pertag2 (from ok100 - see Shinryuu's post above - this actually includes bottomstack, bonus!), movestack, statuscolors (or similiar)...
I've created my own systray patch (old - you can find some info somewhere here), and I've done some modifications to add the bar border at the very top of the screen (inspired initially by Google's bar).
Offline
I've done some modifications to add the bar border at the very top of the screen (inspired initially by Google's bar).
How did you do it? Can you share a patch?
Offline
@kcirick
Thanks!
@ok100
// border foreground background
{ "#333333", "#FFFFFF", "#000000"}, // 0 - normal
{ "#1793D0", "#1793D0", "#000000"}, // 1 - selected
{ "#333333", "#333333", "#000000"}, // 2 - inactive tags
};
border #1793D0
Last edited by ivoarch (2012-01-03 14:37:35)
Offline
@ivoarch, thanks, but I'm rather interested in how he removed squares and draws stripe above active tag.
Offline
Edit the dwm.c:
drawbar() function:
...
for(c = m->clients; c; c = c->next) {
occ |= c->tags;
if(c->isurgent) urg |= c->tags;
}
dc.x = 0;
+ dc.w = m->ww;
+ drawborder(dc.colors[0]);
// draw tag names
for(i = 0; i < LENGTH(tags); i++) {
dc.w = TEXTW(tags[i].name);
...
with a new function:
void drawborder(unsigned long col[ColLast]){
XGCValues gcv;
XRectangle r = {dc.x, dc.y, dc.w, 2 };
gcv.foreground = col[ColBorder];
XChangeGC(dpy, dc.gc, GCForeground, &gcv);
XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
}
You also need to reserve the space for the border, so in setup():
- bh = dc.h = dc.font.height + 2;
+ bh = dc.h = dc.font.height + 6;
and when you draw stuff (ie drawtext() ), just replace dc.y with dc.y+2 (where 2 is the border height)... You may have to fine tune things yourself, but that's the general idea...
EDIT: Oh right, so in drawbar() function, just replace the drawsquare() at line735 (ish) with
drawborder(col)
and that will highlight the bar above the selected tag.
Last edited by kcirick (2012-01-03 15:33:43)
Offline
@kcirick, it works, except it doesn't highlight inactive occupied tags. They have same foreground color as empty inactive tags.
You switched to KDE?
Last edited by OK100 (2012-01-03 16:18:46)
Offline
@OK100: yes, i've created another user running kde...but i have not deleted wmfs of course
Offline
@kcirick, it works, except it doesn't highlight inactive occupied tags. They have same foreground color as empty inactive tags.
I do this inside drawbar():
// draw tag names
for(i = 0; i < LENGTH(tags); i++) {
dc.w = TEXTW(tags[i].name);
col = m->tagset[m->seltags] & 1 << i ? dc.colors[1] : dc.colors[0];
ltcol = occ & 1 << i || m->tagset[m->seltags] & 1 << i ? dc.colors[0] : dc.colors[2];
drawtext(tags[i].name, ltcol, urg & 1 << i);
drawborder(col);
dc.x += dc.w;
}
so the text colors indicates inactive occupied tags (dc.colors[2] if occupied and dc.colors[0] if not). Of course you can fiddle around with this so that you can have the border color indicating this information, if you wish.
I hope that answered your question?
Offline
Offline
Been a while since I've posted here; I've been playing around with WMFS lately. Still trying to figure out how to get color in the status bar when feeding conky through it, but it'll do for now.
Offline
Hello @OK100
Mind sharing taskbar's patch for dwm ?
thanks
dwm:
http://ompldr.org/tYzFhbA http://ompldr.org/tYzFhbQ http://ompldr.org/tYzFhbw http://ompldr.org/tYzFhcA http://ompldr.org/tYzFhcQ http://ompldr.org/tYzFhcgpatches (@ github):
- pertag2
- scratchpad-stay
- xbm layout icons
- urgentcolor
- monocle no borders
- im-grid
- push
- tilemovemouse
- togglefullscreen
Offline
I've been playing around with WMFS lately. Still trying to figure out how to get color in the status bar when feeding conky through it, but it'll do for now.
Put this before the conky command: \\#rgbrgb\
Offline
userlander wrote:Simple Openbox, conky, tint2:
Anyone know how to center the calendar? Tried everything I could find, nothing worked. Here's the expression I used:
${font dejavu sans mono:size=8.5}${execpi 60 DJS=`date +%_d`; cal | sed s/"\(^\|[^0-9]\)$DJS"'\b'/'\1${color #f57900}'"$DJS"'$color'/} ${font}
Works for me with the following (note the $alignc before the execpi statement):
${font dejavu sans mono:size=8.5}$alignc${execpi 60 DJS=`date +%_d`; cal | sed s/"\(^\|[^0-9]\)$DJS"'\b'/'\1${color #f57900}'"$DJS"'$color'/} ${font}
*EDIT* I just realized that this messes up the last week of the month with regards to the day of the week. You'll either need to figure out a way of aligning the last line on the left, or else hope someone knows a better solution.
*EDIT #2* I fell back on simply inserting a horizontal offset in order to move the calendar into the correct location. You'll need to play with the offset to get it more or less correct, but here's the code:
${font dejavu sans mono:size=8.5}${offset 25}${execpi 60 DJS=`date +%_d`; cal | sed s/"\(^\|[^0-9]\)$DJS"'\b'/'\1${color #f57900}'"$DJS"'$color'/} ${font}
Thx 4 suggestions lswest, but all of them only center the name of the month, not the actual calendar. Anyone else have a possible solution? Not sure why it wouldn't work - maybe the code I'm using has some bad characters in it?
EDIT:
Ok, for anyone else having this problem, I finally got it to work with this expression. Just change the offset to whatever you want it to be:
${font DejaVu Sans Mono:size=8.5}${color}${execpi 300 cal |sed -e "s/\<$(date +%-d)\>/\${color 993124}&\${color}/" -e 's/^/${offset 60}/'} ${font}
Yielding:
Last edited by userlander (2012-01-04 04:03:07)
Offline
Been a while since I've posted here; I've been playing around with WMFS lately. Still trying to figure out how to get color in the status bar when feeding conky through it, but it'll do for now.
Clean: http://ompldr.org/tYzFsZA Totally fake busy: http://ompldr.org/tYzFsZg
i like your config, mind sharing wmfsrc??
Offline
ANOKNUSA wrote:I've been playing around with WMFS lately. Still trying to figure out how to get color in the status bar when feeding conky through it, but it'll do for now.
Put this before the conky command: \\#rgbrgb\
;)
Thanks for the feedback; could you clarify a bit? Do I place the hex color code in front of each object/variable in .conkyrc?
EDIT: That's precisely it. Thanks, TheImmortalPhoenix.
@veroke: Sure, but it's definitely kinda rough around the edges; by the time you read this, it'll have changed. ;)
#
# This is the default wmfs config file, copy it to
# ~/.config/wmfs/wmfsrc and edit it.
#
# Include file to split configuration
# @include "~/.config/wmfs/menu-wmfsrc"
[misc]
use_xft = true
font = "bitocra-8"
raisefocus = true
focus_follow_mouse = true
focus_follow_movement = true
opacity = 255
# focus_pointer_click: click on unfocused client area:
# true -- default, set focus
# false -- click go to client; including dockapps
focus_pointer_click = true
[/misc]
[bar]
bg = "#151515"
fg = "#E5E5E5"
border = true
height = "-1"
light_shade = 0.10
dark_shade = -0.10
# Order of infobar elements:
# t = Tag list
# l = Layout button
# s = Selbar
elements_order = "tls"
# Status readout
#status_path = ""
#status_timing = 5
[systray]
# Enable/disable systray
active = true
# Screen of systray
screen = 0
# Spacing between tray icons
spacing = 3
[/systray]
# Remove this section to disable the selbar.
[selbar]
bg = "#1A1A1A"
fg = "#A8852A"
border = true
# Cut title length
max_length = 45
[mouse] button = "3" func = "clientlist" [/mouse]
[mouse] button = "4" func = "client_next" [/mouse]
[mouse] button = "5" func = "client_prev" [/mouse]
[/selbar]
[/bar]
[layouts]
fg = "#C54C6B"
bg = "#363636"
# Border around the layout button.
border = true
# Value menu or switch.
system = "menu"
# Keep layout geo for free layout
keep_layout_geo = false
# Enable split mode with client_resize_<direction>
cfactor_enable_split = true
# Symbol displayed for the selected layout in the list
selected_layout_symbol = "*"
# Width of layout button
# layout_button_width = x
# Tiling layouts.
[layout] type = "tile_right" symbol = "-->" [/layout]
[layout] type = "tile_left" symbol = "<--" [/layout]
[layout] type = "tile_top" symbol = "_^_" [/layout]
[layout] type = "tile_bottom" symbol = "=" [/layout]
[layout] type = "tile_grid" symbol = "GRID_H" [/layout]
[layout] type = "tile_grid_vertical" symbol = "GRID_V" [/layout]
[layout] type = "mirror_vertical" symbol = "MIRROR_V" [/layout]
[layout] type = "mirror_horizontal" symbol = "MIRROR_H" [/layout]
# Other layouts.
[layout] type = "max" symbol = "[ ]" [/layout]
[layout] type = "free" symbol = "*" [/layout]
[/layouts]
[tags]
[default_tag]
name = "new tag"
mwfact = 0.5
nmaster = 1
layout = "tile"
resizehint = false
infobar_position = "top"
split = false
[/default_tag]
# whether client_next on the last tag will send you on the first
# and client_prev on the first tag will send you on the last one
tag_round = false
# Going twice on the same tag will bring you back on the previous one
tag_auto_prev = true
occupied_bg = "#1A1A1A"
occupied_fg = "#7D9044"
sel_fg = "#2697AE"
sel_bg = "#353535"
urgent_bg = "#1A1A1A"
urgent_fg = "#000000"
# If true, number of the tag will be used for name
name_count = true
#default_name = "new tag" # deprecated, use [default_tag] instead
#default_layout = "tile_right" # deprecated, use [default_tag] instead
expose_name = "EXPOSE"
expose_layout = "mirror_h"
# Border around the tag buttons.
border = true
# Hide empty tags in tag list
autohide = true
# Mouse buttons action on tag.
mouse_button_tag_sel = "1"
mouse_button_tag_transfert = "2"
mouse_button_tag_add = "3"
mouse_button_tag_next = "4"
mouse_button_tag_prev = "5"
[tag]
name = "Firefox"
screen = 0
mwfact = 0.65
nmaster = 1
layout = "bottom"
resizehint = false
infobar_position = "top"
above_fc = false
split = false
#[mouse] [/mouse] Possible multi mouse section
[/tag]
[tag] name = "Work" [/tag]
[tag] name = "Utils" [/tag]
[tag] name = "Media" [/tag]
[tag] name = "What" [/tag]
#[tag] name = "six" [/tag]
#[tag] name = "seven" [/tag]
#[tag] name = "eight" [/tag]
#[tag] name = "nine" [/tag]
[/tags]
[root]
# Command you can execute to set the background.
background_command = "xsetroot -solid black"
[mouse] button = "4" func = "tag_next" [/mouse]
[mouse] button = "5" func = "tag_prev" [/mouse]
[mouse] button = "3" func = "menu" cmd = "rootmenu" [/mouse]
[/root]
[client]
client_round = true
client_auto_center = tru
border_height = 2
border_shadow = true
border_normal = "#161616"
border_focus = "#1a1a1a"
place_at_mouse = false
resize_corner_normal = "#191919"
resize_corner_focus = "#003366"
set_new_win_master = false
client_tile_raise = false
new_client_get_mouse = false
# send all client that have no tag rule in this default tag
#default_open_tag = 4
# same as above but for the screen
#default_open_screen = 1
# Space between tiled clients (px)
padding = 1
# Modifier for mouse use
modifier = "Mod4"
light_shade = 0.10
dark_shade = -0.10
# *DEPRECATED* but works, see [rules] section
# Set automatic free or max client
# autofree = "xterm|MPlayer"
# automax = "Navigator"
[mouse] button = "1" func = "client_raise" [/mouse]
[mouse] button = "1" func = "mouse_move" [/mouse]
[mouse] button = "3" func = "client_raise" [/mouse]
[mouse] button = "3" func = "mouse_resize" [/mouse]
# Remove this section to delete the titlebar.
#[titlebar]
#stipple = false
#height = 10
#fg_normal = "#1A1A1A"
#fg_focus = "#2697AE"
#[mouse] button = "1" func = "client_raise" [/mouse]
#[mouse] button = "1" func = "mouse_move" [/mouse]
#[mouse] button = "3" func = "client_raise" [/mouse]
#[mouse] button = "3" func = "mouse_resize" [/mouse]
#[button]
## Available "free", "max", "tile" flags or button.
#flags = "free,max,tile"
#[mouse] button = "1" func = "client_kill" [/mouse]
#[mouse] button = "3" func = "menu" cmd = "clientmenu" [/mouse]
#[line] coord = {1, 1, 4, 1} [/line]
#[line] coord = {1, 1, 1, 4} [/line]
#[line] coord = {1, 4, 4, 4} [/line]
#[/button]
#[/titlebar]
[/client]
[rules]
[rule]
instance = "Navigator" # First part of WM_CLASS
class = "Firefox" # Seconf part of WM_CLASS, not needed if first part is correct
# role = "" # WM_WINDOW_ROLE
screen = 0 # Screen to use
tag = 1 # Tag number of apps
free = false # Set automatic free client
max = false # Set automatic maximized client
follow_client = false # follow the client
ignore_tags = false # ignore tag (free mode)
[/rule]
[rule]
instance = "xv" # First part of WM_CLASS
class = "MPlayer" # Seconf part of WM_CLASS, not needed if first part is correct
# role = "" # WM_WINDOW_ROLE
screen = 0 # Screen to use
tag = 2 # Tag number of apps
free = true # Set automatic free client
max = false # Set automatic maximized client
follow_client = false # follow the client
ignore_tags = false # ignore tag (free mode)
[/rule]
[rule]
instance = "xv" # First part of WM_CLASS
class = "MPlayer" # Seconf part of WM_CLASS, not needed if first part is correct
# role = "" # WM_WINDOW_ROLE
screen = 0 # Screen to use
tag = 2 # Tag number of apps
free = true # Set automatic free client
max = false # Set automatic maximized client
follow_client = false # follow the client
ignore_tags = false # ignore tag (free mode)
[/rule]
[rule]
instance = "vlc" # First part of WM_CLASS
class = "Vlc" # Seconf part of WM_CLASS, not needed if first part is correct
# role = "" # WM_WINDOW_ROLE
screen = 0 # Screen to use
tag = 4 # Tag number of apps
free = false # Set automatic free client
max = false # Set automatic maximized client
follow_client = false # follow the client
ignore_tags = false # ignore tag (free mode)
[/rule]
[rule]
instance = "deadbeef" # First part of WM_CLASS
class = "Deadbeef" # Seconf part of WM_CLASS, not needed if first part is correct
# role = "" # WM_WINDOW_ROLE
screen = 0 # Screen to use
tag = 4 # Tag number of apps
free = false # Set automatic free client
max = false # Set automatic maximized client
follow_client = false # follow the client
ignore_tags = false # ignore tag (free mode)
[/rule]
[/rules]
[menu]
# Default menu, binded on the root window, button 3.
[set_menu]
name = "rootmenu"
# place_at_mouse = false
# x = 40 y = 50
# Available "center", "left", "right" menu align. Default: "center".
align = "left"
fg_focus = "#191919" bg_focus = "#7E89A2"
fg_normal = "#9F9AB3" bg_normal = "#191919"
[item] name = "Terminal" func = "spawn" cmd = "terminal" [/item]
[item] name = "Applications" submenu = "appmenu" [/item]
[item] name = "Next tag" func = "tag_next" [/item]
[item] name = "Previous tag" func = "tag_prev" [/item]
[item] name = "Next layout" func = "layout_next" [/item]
[item] name = "Previous layout" func = "layout_prev" [/item]
[item] name = "Toggle infobar" func = "toggle_infobar_position" [/item]
[item] name = "Quit WMFS" func = "quit" [/item]
[/set_menu]
[set_menu]
name = "appmenu"
align = "left"
fg_focus = "#191919" bg_focus = "#7E89A2"
fg_normal = "#9F9AB3" bg_normal = "#191919"
[item] name = "Browser" func = "spawn" cmd = "firefox" [/item]
[item] name = "Calculator" func = "spawn" cmd = "xcalc" [/item]
[/set_menu]
[set_menu]
name = "clientmenu"
fg_focus = "#D4D4D4" bg_focus = "#003366"
fg_normal = "#D4D4D4" bg_normal = "#191919"
# Check items: possible 'check_max' or 'check_free'.
[item] name = "Close" func = "client_kill" [/item]
[item] name = "Maximize" func = "toggle_max" check = "check_max" [/item]
[item] name = "Free" func = "toggle_free" check = "check_free" [/item]
[/set_menu]
[/menu]
[launcher]
[set_launcher]
# Limit size of the launcher window (px)
width_limit = 300
name = "launcher_exec"
prompt = "Exec: "
command = "exec"
[/set_launcher]
[/launcher]
[keys]
# Reload the configuration of wmfs.
[key] mod = {"Mod4", "Shift"} key = "r" func = "reload" [/key]
# Open a terminal.
[key] mod = {"Mod4"} key = "Return" func = "spawn" cmd = "terminal" [/key]
# Kill the selected client.
[key] mod = {"Mod4"} key = "q" func = "client_kill" [/key]
# Quit wmfs.
[key] mod = {"Mod4", "Shift"} key = "q" func = "quit" [/key]
# Swap current client with the next.
[key] mod = {"Mod4"} key = "t" func = "client_swap_next" [/key]
# Swap current client with the previous.
[key] mod = {"Mod4", "Shift"} key = "t" func = "client_swap_prev" [/key]
# Set the selected client as Master
[key] mod = {"Mod4"} key = "m" func = "client_set_master" [/key]
# Toggle maximum the selected client
[key] mod = {"Mod4"} key = "m" func = "toggle_max" [/key]
# Toggle free the selected client.
[key] mod = {"Mod4", "Shift"} key = "space" func = "toggle_free" [/key]
# Toggle the position of the infobar.
[key] mod = {"Mod4"} key = "b" func = "toggle_infobar_position" [/key]
[key] mod = {"Mod4", "Shift"} key = "b" func = "toggle_infobar_display" [/key]
# Toggle the resizehint of the current tag/screen
[key] mod = {"Shift", "Control"} key = "r" func = "toggle_resizehint" [/key]
# Toggle the tag_autohide mode
[key] mod = {"Shift", "Control"} key = "t" func = "toggle_tagautohide" [/key]
# Select the next client.
[key] mod = {"Mod4"} key = "Tab" func = "client_next" [/key]
# Select the previous client.
[key] mod = {"Mod4","Shift"} key = "Tab" func = "client_prev" [/key]
# Select the next tag.
[key] mod = {"Mod4"} key = "Right" func = "tag_next" [/key]
# Select the previous tag.
[key] mod = {"Mod4"} key = "Left" func = "tag_prev" [/key]
# Select the next visible tag.
[key] mod = {"Mod4"} key = "l" func = "tag_next_visible" [/key]
# Select the previous visible tag.
[key] mod = {"Mod4"} key = "j" func = "tag_prev_visible" [/key]
# Set the next layout.
[key] mod = {"Mod4"} key = "comma" func = "layout_next" [/key]
# Set the previous layout.
[key] mod = {"Mod4"} key = "period" func = "layout_prev" [/key]
# Increase nmaster.
[key] mod = {"Alt"} key = "d" func = "set_nmaster" cmd = "+1" [/key]
# Decease nmaster.
[key] mod = {"Alt", "Shift"} key = "d" func = "set_nmaster" cmd = "-1" [/key]
# Toggle maximize
[key] mod = {"Mod4"} key = "m" func = "toggle_max" [/key]
#Launcher.
[key] mod = {"Alt"} key = "p" func = "launcher" cmd = "launcher_exec" [/key]
[key] mod = {"Mod4"} key = "space" func = "spawn" cmd = "dmenu_run -p 'Arch Linux' " [/key]
# Set the tag x.
[key] mod = {"Mod4"} key = "1" func = "tag" cmd = "1" [/key]
[key] mod = {"Mod4"} key = "2" func = "tag" cmd = "2" [/key]
[key] mod = {"Mod4"} key = "3" func = "tag" cmd = "3" [/key]
[key] mod = {"Mod4"} key = "4" func = "tag" cmd = "4" [/key]
[key] mod = {"Mod4"} key = "5" func = "tag" cmd = "5" [/key]
[key] mod = {"Mod4"} key = "6" func = "tag" cmd = "6" [/key]
[key] mod = {"Mod4"} key = "7" func = "tag" cmd = "7" [/key]
[key] mod = {"Mod4"} key = "8" func = "tag" cmd = "8" [/key]
[key] mod = {"Mod4"} key = "9" func = "tag" cmd = "9" [/key]
# Transfert selected client to x.
[key] mod = {"Mod4", "Shift"} key = "1" func = "tag_transfert" cmd ="1" [/key]
[key] mod = {"Mod4", "Shift"} key = "2" func = "tag_transfert" cmd ="2" [/key]
[key] mod = {"Mod4", "Shift"} key = "3" func = "tag_transfert" cmd ="3" [/key]
[key] mod = {"Mod4", "Shift"} key = "4" func = "tag_transfert" cmd ="4" [/key]
[key] mod = {"Mod4", "Shift"} key = "5" func = "tag_transfert" cmd ="5" [/key]
[key] mod = {"Mod4", "Shift"} key = "6" func = "tag_transfert" cmd ="6" [/key]
[key] mod = {"Mod4", "Shift"} key = "7" func = "tag_transfert" cmd ="7" [/key]
[key] mod = {"Mod4", "Shift"} key = "8" func = "tag_transfert" cmd ="8" [/key]
[key] mod = {"Mod4", "Shift"} key = "9" func = "tag_transfert" cmd ="9" [/key]
# Toggle additional tags (x) on the current tag
[key] mod = {"Alt", "Mod4"} key = "F1" func = "tag_toggle_additional" cmd ="1" [/key]
[key] mod = {"Alt", "Mod4"} key = "F2" func = "tag_toggle_additional" cmd ="2" [/key]
[key] mod = {"Alt", "Mod4"} key = "F3" func = "tag_toggle_additional" cmd ="3" [/key]
[key] mod = {"Alt", "Mod4"} key = "F4" func = "tag_toggle_additional" cmd ="4" [/key]
[key] mod = {"Alt", "Mod4"} key = "F5" func = "tag_toggle_additional" cmd ="5" [/key]
[key] mod = {"Alt", "Mod4"} key = "F6" func = "tag_toggle_additional" cmd ="6" [/key]
[key] mod = {"Alt", "Mod4"} key = "F7" func = "tag_toggle_additional" cmd ="7" [/key]
[key] mod = {"Alt", "Mod4"} key = "F8" func = "tag_toggle_additional" cmd ="8" [/key]
[key] mod = {"Alt", "Mod4"} key = "F9" func = "tag_toggle_additional" cmd ="9" [/key]
# change screen
[key] mod = {"Mod4"} key = "Tab" func = "screen_next" [/key]
[key] mod = {"Mod4", "Shift"} key = "Tab" func = "screen_prev" [/key]
# swap client in the next/prev screen
[key] mod = {"Mod4", "Shift"} key = "a" func = "client_screen_next" [/key]
[key] mod = {"Mod4", "Shift"} key = "z" func = "client_screen_prev" [/key]
# Toggle tag explose
[key] mod = {"Alt"} key = "e" func = "toggle_tag_expose" [/key]
# Toggle split mode
[key] mod = {"Alt"} key = "s" func = "split_toggle" [/key]
# Focus next client with direction
[key] mod = {"Alt"} key = "h" func = "client_focus_left" [/key]
[key] mod = {"Alt"} key = "l" func = "client_focus_right" [/key]
[key] mod = {"Alt"} key = "k" func = "client_focus_top" [/key]
[key] mod = {"Alt"} key = "j" func = "client_focus_bottom" [/key]
# Swap next client with direction
#[key] mod = {"Mod4"} key = "h" func = "client_swap_left" [/key]
[key] mod = {"Mod4"} key = "l" func = "client_swap_right" [/key]
[key] mod = {"Mod4"} key = "k" func = "client_swap_top" [/key]
[key] mod = {"Mod4"} key = "j" func = "client_swap_bottom" [/key]
# Move next splitted client with direction
[key] mod = {"Control", "Shift"} key = "h" func = "split_move_left" [/key]
[key] mod = {"Control", "Shift"} key = "l" func = "split_move_right" [/key]
[key] mod = {"Control", "Shift"} key = "k" func = "split_move_top" [/key]
[key] mod = {"Control", "Shift"} key = "j" func = "split_move_bottom" [/key]
# Resize selected tiled client with direction
[key] mod = {"Mod4"} key = "h" func = "client_resize_left" cmd = "20" [/key]
[key] mod = {"Mod4"} key = "l" func = "client_resize_right" cmd = "20" [/key]
[key] mod = {"Mod4"} key = "k" func = "client_resize_top" cmd = "20" [/key]
[key] mod = {"Mod4"} key = "j" func = "client_resize_bottom" cmd = "20" [/key]
[key] mod = { "Mod4", "Control"} key = "h" func = "client_resize_right" cmd = "-20" [/key]
[key] mod = { "Mod4", "Control"} key = "l" func = "client_resize_left" cmd = "-20" [/key]
[key] mod = { "Mod4", "Control"} key = "k" func = "client_resize_bottom" cmd = "-20" [/key]
[key] mod = { "Mod4", "Control"} key = "j" func = "client_resize_top" cmd = "-20" [/key]
# Scratchpad
[key] mod = {"Mod4"} key = "F12" func = "spawn" cmd = "terminal -name scratchpad -geometry 64x10+480+34" [/key]
[rule] instance = "scratchpad" name = "scratchpad" free = "true" [/rule]
# unlisted fonctions that can be used in [key] func = ""
# client_ignore_tag # Toggle the client in ignore_tag (display the client on all tags)
# tag_prev_sel # go back to the previous selected tag
# tag_transfert_{next, prev}
# tag_urgent # go to the urgent tag
# tag_swap_{next, prev} # swap tag with the previous/next one
# tag_last # go to the last tag
# tag_stay_last # toggle the current tag as the last one
# toggle_abovefc
# screen_prev_sel # go to the previous screen selected
# set_layout # set layout. need to be called with cmd = "<layout_name>"
# ignore_next_client_rules # ignore the rule the next time a rule is called
[/keys]
Last edited by ANOKNUSA (2012-01-04 04:27:10)
Offline
Thx 4 suggestions lswest, but all of them only center the name of the month, not the actual calendar. Anyone else have a possible solution? Not sure why it wouldn't work - maybe the code I'm using has some bad characters in it?
Odd, works fine for me. I did see in a few conky-related threads that some people have the same issue though. Would have suggested the same fix (applying the offset to the beginning of each line of code using sed) that you've supplied now. Might have something to do with the fact that I run conky-lua (1.8.1-3) on my PC. Glad you got it working, and you're welcome.
Lswest <- the first letter of my username is a lowercase "L".
"...the Linux philosophy is "laugh in the face of danger". Oops. Wrong one. "Do it yourself". That's it." - Linus Torvalds
Offline
configs?)
Offline
Hello @OK100
Mind sharing taskbar's patch for dwm ?
thanks
OK100 wrote:dwm:
http://ompldr.org/tYzFhbA http://ompldr.org/tYzFhbQ http://ompldr.org/tYzFhbw http://ompldr.org/tYzFhcA http://ompldr.org/tYzFhcQ http://ompldr.org/tYzFhcgpatches (@ github):
- pertag2
- scratchpad-stay
- xbm layout icons
- urgentcolor
- monocle no borders
- im-grid
- push
- tilemovemouse
- togglefullscreen
Hi lsathler, you can find all my patches here: https://github.com/ok100/dwm
Offline
Been a while since I've posted here; I've been playing around with WMFS lately. Still trying to figure out how to get color in the status bar when feeding conky through it, but it'll do for now.
Clean: http://ompldr.org/tYzFsZA Totally fake busy: http://ompldr.org/tYzFsZg
I love your hostname. It's mine too, but would you mind telling me how you got the messages before the terminal in the upper right of your screenshot? Specifically the colours, but any guidance will do. My google-fu is failing me.
Offline