You are not logged in.

#51 2012-01-03 14:26:21

kcirick
Member
Registered: 2010-06-21
Posts: 364

Re: January 2012 Screenshots

ivoarch wrote:

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

#52 2012-01-03 14:35:13

OK100
Member
From: [U==]
Registered: 2010-04-26
Posts: 453

Re: January 2012 Screenshots

kcirick wrote:

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

#53 2012-01-03 14:35:50

ivoarch
Member
From: the six feet under the ground
Registered: 2011-03-31
Posts: 436

Re: January 2012 Screenshots

@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)


I love GnuEmacs, GnuScreen, ratpoison, and conkeror.
Github )||( Weblog

Offline

#54 2012-01-03 14:46:22

OK100
Member
From: [U==]
Registered: 2010-04-26
Posts: 453

Re: January 2012 Screenshots

@ivoarch, thanks, but I'm rather interested in how he removed squares and draws stripe above active tag.

Offline

#55 2012-01-03 15:30:54

kcirick
Member
Registered: 2010-06-21
Posts: 364

Re: January 2012 Screenshots

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

#56 2012-01-03 16:00:13

TheImmortalPhoenix
Member
From: 127.0.0.1
Registered: 2011-08-13
Posts: 436

Re: January 2012 Screenshots

tYzFjcg

Offline

#57 2012-01-03 16:16:51

OK100
Member
From: [U==]
Registered: 2010-04-26
Posts: 453

Re: January 2012 Screenshots

@kcirick, it works, except it doesn't highlight inactive occupied tags. They have same foreground color as empty inactive tags.

TheImmortalPhoenix wrote:

You switched to KDE?

Last edited by OK100 (2012-01-03 16:18:46)

Offline

#58 2012-01-03 16:29:33

TheImmortalPhoenix
Member
From: 127.0.0.1
Registered: 2011-08-13
Posts: 436

Re: January 2012 Screenshots

@OK100: yes, i've created another user running kde...but i have not deleted wmfs of course smile

Offline

#59 2012-01-03 16:47:52

kcirick
Member
Registered: 2010-06-21
Posts: 364

Re: January 2012 Screenshots

OK100 wrote:

@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

#60 2012-01-03 16:56:11

OK100
Member
From: [U==]
Registered: 2010-04-26
Posts: 453

Re: January 2012 Screenshots

Thanks!

Offline

#61 2012-01-03 19:56:53

Cavedude
Member
Registered: 2011-12-21
Posts: 45

Re: January 2012 Screenshots

My evolving xfce desk

Screenshot_01032012_07_52_05_PM.jpg

Offline

#62 2012-01-03 22:50:32

ANOKNUSA
Member
Registered: 2010-10-22
Posts: 2,141

Re: January 2012 Screenshots

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: tYzFsZA  Totally fake busy:  tYzFsZg

Offline

#63 2012-01-03 23:08:39

lsathler
Member
Registered: 2010-05-15
Posts: 16

Re: January 2012 Screenshots

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/tYzFhcg

patches (@ github):
- pertag2
- scratchpad-stay
- xbm layout icons
- urgentcolor
- monocle no borders
- im-grid
- push
- tilemovemouse
- togglefullscreen

smile

Offline

#64 2012-01-03 23:29:04

TheImmortalPhoenix
Member
From: 127.0.0.1
Registered: 2011-08-13
Posts: 436

Re: January 2012 Screenshots

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\

wink

Offline

#65 2012-01-04 02:31:59

userlander
Member
Registered: 2008-08-23
Posts: 413

Re: January 2012 Screenshots

lswest wrote:
userlander wrote:

Simple Openbox, conky, tint2:

http://ompldr.org/tYzBvNw

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:

tYzFvNA

Last edited by userlander (2012-01-04 04:03:07)

Offline

#66 2012-01-04 03:48:41

veroke12
Member
Registered: 2011-07-22
Posts: 98

Re: January 2012 Screenshots

ANOKNUSA wrote:

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

#67 2012-01-04 04:22:29

ANOKNUSA
Member
Registered: 2010-10-22
Posts: 2,141

Re: January 2012 Screenshots

TheImmortalPhoenix wrote:
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

#68 2012-01-04 10:07:16

stlarch
Member
From: hell
Registered: 2010-12-25
Posts: 1,250

Re: January 2012 Screenshots

I'm working on an .xbm icon pack for dzen (or whatever). I should have it ready in a few days. Here's a little preview:

tYzI3ag

Last edited by stlarch (2012-01-04 23:02:23)

Offline

#69 2012-01-04 11:10:11

lswest
Member
From: Munich, Germany
Registered: 2008-06-14
Posts: 454
Website

Re: January 2012 Screenshots

userlander wrote:

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

#70 2012-01-04 12:29:08

viking60
Member
From: Valhalla
Registered: 2010-08-02
Posts: 95
Website

Re: January 2012 Screenshots

Gnome3 with MSGE and ChocoLatte theme.
1069128.jpeg 1069132.jpeg
Background is animated.


"Common sense is not common"

Offline

#71 2012-01-04 12:54:58

kveras
Member
From: Uppsala, Sweden
Registered: 2011-03-22
Posts: 54

Re: January 2012 Screenshots

Awesome WM
URXVT terminal emulator
ZSH shell

Clean:
120104_clean.thumb.png
Floating:
120104_floating.thumb.png
Tiling:
120104_tiling.thumb.png
Another tiling:
120104_tiling2.thumb.png

Offline

#72 2012-01-04 13:00:55

iEugene
Member
From: Moscow, Russia
Registered: 2011-05-21
Posts: 4

Re: January 2012 Screenshots

configs?)

Offline

#73 2012-01-04 13:38:59

OK100
Member
From: [U==]
Registered: 2010-04-26
Posts: 453

Re: January 2012 Screenshots

lsathler wrote:

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/tYzFhcg

patches (@ github):
- pertag2
- scratchpad-stay
- xbm layout icons
- urgentcolor
- monocle no borders
- im-grid
- push
- tilemovemouse
- togglefullscreen

smile

Hi lsathler, you can find all my patches here: https://github.com/ok100/dwm

Offline

#74 2012-01-04 13:47:18

tenmilestereo
Member
Registered: 2011-02-19
Posts: 22
Website

Re: January 2012 Screenshots

ANOKNUSA wrote:

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

#75 2012-01-04 14:18:55

trvjillo
Member
Registered: 2008-10-27
Posts: 41

Re: January 2012 Screenshots

Revived my aluminum paper weight with some OpenBSD voodoo.

clean
1iNhMs.jpg
stuffs&whatnot
zIaqws.jpg

Last edited by trvjillo (2012-01-04 14:21:51)

Offline

Board footer

Powered by FluxBB