From 4c2af5300dc80ce5c8ff8c742961dcc5af7cd61e Mon Sep 17 00:00:00 2001 From: Rasmus Steinke Date: Wed, 15 Aug 2012 15:17:02 +0200 Subject: adding colors --- .config/subtle/subtle.bak | 571 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 571 insertions(+) create mode 100644 .config/subtle/subtle.bak (limited to '.config/subtle/subtle.bak') diff --git a/.config/subtle/subtle.bak b/.config/subtle/subtle.bak new file mode 100644 index 0000000..53bd0c8 --- /dev/null +++ b/.config/subtle/subtle.bak @@ -0,0 +1,571 @@ +# +# This program can be distributed under the terms of the GNU GPL. +# See the file COPYING. +# +# $Id: .config/subtle/subtle.rb,v 390 2011/10/02 09:06:16 unexist $ +# + +require "socket" + +# Contrib {{{ +begin + require "#{ENV["HOME"]}/bin/subtle-contrib/ruby/launcher.rb" + require "#{ENV["HOME"]}/bin/subtle-contrib/ruby/selector.rb" + + Subtle::Contrib::Selector.font = "xft:Envy Code R:pixelsize=13" + Subtle::Contrib::Launcher.fonts = [ + "xft:Envy Code R:pixelsize=80", + "xft:Envy Code R:pixelsize=13" + ] + + Subtle::Contrib::Launcher.browser_screen_num = 0 +rescue LoadError +end # }}} + +# Options {{{ +set :step, 5 +set :snap, 10 +set :gravity, :center +set :urgent, false +set :resize, false +set :tiling, false +set :separator, "∞" +# }}} + +# Screens {{{ +screen 1 do + stipple false + top [:title, :spacer, :views, :center, :clock, :fuzzytime, :separator, :tray, :center] + bottom [:mpd] + view 1 +end + +# }}} + +# Styles {{{ +style :all do + padding 2, 6, 2, 6 + background "#1a1a1a" + font "xft:Envy Code R:pixelsize=13" +end + +style :title do + foreground "#FFFFFF" +end + +style :views do + style :focus do + foreground "#ffffff" + border_bottom "#acaa53", 2 + end + + style :occupied do + foreground "#7c7c72" + border_bottom "#949269", 2 + end + + style :unoccupied do + foreground "#7c7c72" + end + + style :urgent do + foreground "#c0bd5c" + icon "#c0bd5c" + end + + style :visible do + padding_top 0 + border_top "#494948", 2 + end +end + +style :sublets do + foreground "#7c7c72" + icon "#7c7c72" +end + +style :separator do + foreground "#acaa53" +end + +style :clients do + active "#7c7c72", 2 + inactive "#494948", 2 + margin 2 +end + +style :subtle do + panel "#1a1a1a" + background "#595959" + stipple "#595959" +end # }}} + +# Gravities {{{ +gravity :top_left, [ 0, 0, 50, 50 ] +gravity :top_left66, [ 0, 0, 50, 66 ] +gravity :top_left33, [ 0, 0, 50, 34 ] + +gravity :top, [ 0, 0, 100, 50 ] +gravity :top75, [ 0, 0, 100, 75 ] +gravity :top66, [ 0, 0, 100, 66 ] +gravity :top33, [ 0, 0, 100, 34 ] + +gravity :top_right, [ 50, 0, 50, 50 ] +gravity :top_right66, [ 50, 0, 50, 66 ] +gravity :top_right33, [ 50, 0, 50, 33 ] + +gravity :left, [ 0, 0, 50, 100 ] +gravity :left66, [ 0, 0, 66, 100 ] +gravity :left33, [ 0, 0, 33, 100 ] + +gravity :center, [ 0, 0, 100, 100 ] +gravity :center66, [ 17, 17, 66, 66 ] +gravity :center33, [ 33, 33, 33, 33 ] + +gravity :right, [ 50, 0, 50, 100 ] +gravity :right66, [ 34, 0, 66, 100 ] +gravity :right33, [ 67, 50, 33, 100 ] + +gravity :bottom_left, [ 0, 50, 50, 50 ] +gravity :bottom_left66, [ 0, 34, 50, 66 ] +gravity :bottom_left33, [ 0, 67, 50, 33 ] +gravity :bottom_left25, [ 0, 75, 50, 25 ] + +gravity :bottom, [ 0, 50, 100, 50 ] +gravity :bottom66, [ 0, 34, 100, 66 ] +gravity :bottom33, [ 0, 67, 100, 33 ] + +gravity :bottom_right, [ 50, 50, 50, 50 ], :vert +gravity :bottom_right66, [ 50, 34, 50, 66 ] +gravity :bottom_right33, [ 50, 67, 50, 33 ] +gravity :bottom_right25, [ 50, 75, 50, 25 ] + +gravity :gimp_image, [ 10, 0, 80, 100 ] +gravity :gimp_toolbox, [ 0, 0, 10, 100 ] +gravity :gimp_dock, [ 90, 0, 10, 100 ] + +gravity :dia_toolbox, [ 0, 0, 15, 100 ] +gravity :dia_window, [ 15, 0, 85, 100 ] +# }}} + +# Grabs {{{ +# Host specific +host = Socket.gethostname +modkey = "W" +gravkeys = [ "KP_7", "KP_8", "KP_9", "KP_4", "KP_5", "KP_6", "KP_1", "KP_2", "KP_3" ] + +if("telas" == host || "mockra" == host) #< Netbooks + gravkeys = [ "q", "w", "e", "a", "s", "d", "y", "x", "c" ] +elsif("test" == host) #< Usually VMs + modkey = "A" +end + +# Views and screens +(1..6).each do |i| + grab modkey + "-#{i}", "ViewSwitch#{i}".to_sym + grab modkey + "-S-#{i}", "ViewJump#{i}".to_sym + grab modkey + "-F#{i}", "ScreenJump#{i}".to_sym +end + +# Windows +grab modkey + "-B1", :WindowMove +grab modkey + "-B3", :WindowResize +grab modkey + "-S-f", :WindowFloat +grab modkey + "-S-space", :WindowFull +grab modkey + "-S-s", :WindowStick +grab modkey + "-S-equal", :WindowZaphod +grab modkey + "-r", :WindowRaise +grab modkey + "-l", :WindowLower +grab modkey + "-Left", :WindowLeft +grab modkey + "-Down", :WindowDown +grab modkey + "-Up", :WindowUp +grab modkey + "-Right", :WindowRight +grab modkey + "-k", :WindowKill +grab modkey + "-h", lambda { |c| c.retag } + +# Reload/restart +grab modkey + "-C-q", :SubtleQuit +grab modkey + "-C-r", :SubtleReload +grab modkey + "-C-A-r", :SubtleRestart + +# Gravity keys and focus +gravities = [ + [:top_left, :top_left33, :top_left66], + [:top, :top33, :top66, :top75], + [:top_right, :top_right33, :top_right66], + [:left, :left33, :left66], + [:center, :center33, :center66], + [:right, :right33, :right66], + [:bottom_left, :bottom_left25, :bottom_left33, :bottom_left66], + [:bottom, :bottom33, :bottom66], + [:bottom_right, :bottom_right25, :bottom_right33, :bottom_right66] +] + +gravities.each_index do |i| + grab "%s-%s" % [ modkey, gravkeys[i] ], gravities[i] + + grab "%s-C-%s" % [ modkey, gravkeys[i] ], lambda { + c = Subtlext::Client.visible.select { |c| + gravities[i].include?(c.gravity.name.to_sym) + } + + c.first.focus unless(c.empty?) + } +end + +# Multimedia keys +grab "XF86AudioMute", :VolumeToggle +grab "XF86AudioRaiseVolume", :VolumeRaise +grab "XF86AudioLowerVolume", :VolumeLower +grab "XF86AudioPlay", :MpdToggle +grab "XF86AudioStop", :MpdStop +grab "XF86AudioNext", :MpdNext +grab "XF86AudioPrev", :MpdPrevious + +grab modkey + "-m", "mpc current | tr -d '\n' | xclip" + +# Programs +grab modkey + "-Return", "urxvt" +grab modkey + "-g", "gvim" +grab modkey + "-f", "firefox -no-remote -ProfileManager" +grab modkey + "-F11", "#{ENV["HOME"]}/bin/albumbler.py" + + +# Contrib +grab "W-x" do + Subtle::Contrib::Launcher.run +end + +grab "W-z" do + Subtle::Contrib::Selector.run +end + +# Scratchpad +grab "W-y" do + if((c = Subtlext::Client["scratch"])) + c.toggle_stick + c.focus + elsif((c = Subtlext::Subtle.spawn("urxvt -name scratch"))) + c.tags = [] + c.flags = [ :stick ] + end +end + +# Pychrom +grab modkey + "-p" do + if((t = Subtlext::Tray[:pychrom])) + t.click + else + Subtlext::Subtle.spawn("pychrom") + end +end + +# Tabbing +grab modkey + "-Tab" do + Subtlext::Client.recent[1].focus +end + +# Set layout +grab modkey + "-numbersign" do + # Find stuff + view = Subtlext::View.current + tag = view.tags.first + client = view.clients.first + urxvt1 = Subtlext::Client['urxvt1'] + urxvt2 = Subtlext::Client['urxvt2'] + + # Update tags + urxvt1 + tag + urxvt2 + tag + + # Update gravities + sym = view.name.to_sym + client.gravity = { sym => :top75 } + urxvt1.gravity = { sym => :bottom_right25 } + urxvt2.gravity = { sym => :bottom_left25 } +end +# }}} + +# Tags {{{ +tag "terms" do + match instance: "xterm|urxvt" + gravity :center + resize true +end + +tag "test" do + match instance: "test", class: "urxvt" + geometry [ 943, 548, 640, 480 ] +end + +tag "browser" do + match "navigator|(google\-)?chrom[e|ium]|dwb" + + if("proteus" == host or "pc03112" == host) + gravity :top75 + else + gravity :center + end +end + +tag "pdf" do + match "apvlv|evince" + stick true +end + +tag "pidgin" do + match "pidgin" + float true +end + +tag "editor" do + match "[g]?vim|eclipse" + resize true + + if("mockra" == host or "proteus" == host or "pc03112" == host) + gravity :top75 + else + gravity :center + end +end + +tag "xeph640" do + match "xeph640" + geometry [ 943, 548, 640, 480 ] +end + +tag "xeph800" do + match "xeph800" + geometry [ 855, 172, 800, 800 ] +end + + +tag "android" do + match "SDL_App" +end + +tag "mplayer" do + match "mplayer" + float true + stick true + #urgent true + position [ 2650, 50 ] +end + +tag "stick" do + match "dialog|subtly|python|gtk.rb|display|pychrom|skype|xev|pinentry-gtk-2" + stick true + float true +end + +tag "urgent" do + match "sun-awt-X11-XDialogPeer" + type :dialog + stick true + urgent true + float true +end + +tag "void" do + match "jd-Main|Virtualbox" +end + +tag "powerfolder" do + match "de-dal33t-powerfolder-PowerFolder" + float true + stick true +end + +tag "pms" do + match "net-pms-PMS" + resize true +end + +tag "dialogs" do + match type: [ :dialog, :splash ] + stick true +end + +tag "flash" do + match "exe||plugin-container" + stick true +end + +tag "one" do + match "urxvt2" + gravity :bottom_left +end + +tag "one25" do + match "urxvt2" + gravity :bottom_left25 +end + +tag "two" do + match "urxvt2" + gravity :bottom +end + +tag "three25" do + match "urxvt1" + gravity :bottom_right25 +end + +tag "seven" do + match "urxvt1" + gravity :top_left +end + +tag "eight" do + match "urxvt1" + gravity :top +end + +tag "gimp_image" do + match role: "gimp-image-window" + gravity :gimp_image +end + +tag "gimp_toolbox" do + match role: "gimp-toolbox$" + gravity :gimp_toolbox +end + +tag "gimp_dock" do + match role: "gimp-dock" + gravity :gimp_dock +end + +tag "gimp_scum" do + match role: "gimp-.*|screenshot" +end + +tag "dia_window" do + match role: "diagram_window" + gravity :dia_window +end + +tag "dia_toolbox" do + match role: "toolbox_window" + gravity :dia_toolbox +end + +tag "inkscape" do + match "inkscape" +end + +tag "xfontsel" do + match "xfontsel" + geometry [464, 433, 676, 113] + stick true +end + +tag "xev" do + match name: "Event[ ]Tester" + geometry [1213, 98, 377, 321] + float true + stick true +end +# }}} + +# Views {{{ +if("mockra" == host or "proteus" == host or "pc03112" == host) + www_re = "browser|one25|three25" + test_re = "xeph[0-9]+|android|three25" + editor_re = "editor|one25|three25" + icons = true +else + www_re = "browser" + test_re = "android|xeph[0-9]+|eight|one$|test" + editor_re = "editor" + icons = true +end + +iconpath = "#{ENV["HOME"]}/.config/subtle/icons" + +space = { + :cannon => Subtlext::Icon.new("#{iconpath}/cannon.xbm"), + :ufo => Subtlext::Icon.new("#{iconpath}/ufo.xbm"), + :shelter => Subtlext::Icon.new("#{iconpath}/shelter.xbm"), + :terms => Subtlext::Icon.new("#{iconpath}/invader1.xbm"), + :www => Subtlext::Icon.new("#{iconpath}/invader2.xbm"), + :void => Subtlext::Icon.new("#{iconpath}/invader3.xbm"), + :sketch => Subtlext::Icon.new("#{iconpath}/invader4.xbm"), + :test => Subtlext::Icon.new("#{iconpath}/invader5.xbm"), + :editor => Subtlext::Icon.new("#{iconpath}/invader6.xbm") +} + +view "terms" do + match "terms|eight|two" + #icon "#{iconpath}/terminal.xbm" + icon Subtlext::Icon.new("~/.config/subtle/icons/cannon.xbm") + icon_only icons +end + +view "www" do + match www_re + #icon "#{iconpath}/world.xbm" + icon Subtlext::Icon.new("~/.config/subtle/icons/ufo.xbm") + icon_only icons +end + +view "void" do + match "default|void|powerfolder|pms" + #icon "#{iconpath}/quote.xbm" + icon Subtlext::Icon.new("~/.config/subtle/icons/invader3.xbm") + icon_only icons +end + +view "sketch" do + match "inkscape|dia_*|gimp_.*" + #icon "#{iconpath}/paint.xbm" + icon Subtlext::Icon.new("~/.config/subtle/icons/invader4.xbm") + icon_only icons +end + +view "test" do + match test_re + #icon "#{iconpath}/bug.xbm" + icon Subtlext::Icon.new("~/.config/subtle/icons/invader5.xbm") + icon_only icons +end + +view "editor" do + match editor_re + #icon "#{iconpath}/ruby.xbm" + icon Subtlext::Icon.new("~/.config/subtle/icons/invader6.xbm") + icon_only icons +end + +on :view_jump do |v| + views = Hash[*Subtlext::Screen.all.map { |s| + [ s.view.name.to_sym, space[space.keys[s.id]] ] }.flatten + ] + + Subtlext::View.all.each do |va| + sym = va.name.to_sym + + if(views.keys.include?(sym)) + va.icon.copy_area(views[sym]) + else + va.icon.copy_area(space[va.name.to_sym]) + end + end + + Subtlext::Subtle.render +end +# }}} + +# Sublets {{{ +sublet :clock do + format_string "%a %b %d," +end +# }}} + +# Commands {{{ +def xbmc + Subtlext::Screen[0].view = :terms + Subtlext::Screen[1].view = :browser + + Subtlext::Subtle.spawn("xinit xbmc -- :#{rand(10)}") +end # }}} -- cgit v1.2.3-24-g4f1b