diff options
Diffstat (limited to 'subtle/subtle.bak')
-rw-r--r-- | subtle/subtle.bak | 571 |
1 files changed, 0 insertions, 571 deletions
diff --git a/subtle/subtle.bak b/subtle/subtle.bak deleted file mode 100644 index 53bd0c8..0000000 --- a/subtle/subtle.bak +++ /dev/null @@ -1,571 +0,0 @@ -# -# 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|<unknown>|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 # }}} |