Chinaunix首页 | 论坛 | 博客
  • 博客访问: 303155
  • 博文数量: 69
  • 博客积分: 1626
  • 博客等级: 上尉
  • 技术积分: 785
  • 用 户 组: 普通用户
  • 注册时间: 2007-01-15 19:01
文章分类

全部博文(69)

文章存档

2015年(4)

2014年(4)

2013年(3)

2012年(6)

2011年(1)

2010年(16)

2009年(8)

2008年(18)

2007年(9)

我的朋友

分类: 其他UNIX

2015-01-13 23:26:09

require 'totalspaces2'


def alfred_move_windows(appname)
    wx  = 0
    wxy = 0


    current_space = TotalSpaces2.current_space
    windowsall = TotalSpaces2.window_list


     if !windowsall.empty?
         no_current_windows = windowsall.select {
            |window| window[:space_number] != current_space
         }
         no_current_windows.each{|window| 
           wx = wx + 1          
           if window[:app_name].downcase =~/#{appname}/
              win_pra = (window[:frame].delete"\{\} ").split(',')
              xpos =  win_pra[0].to_i
              ypos =  win_pra[1].to_i 
              off  =  (1920 - xpos)
              TotalSpaces2.move_window(
                 window[:window_id],1920, ypos)
              TotalSpaces2.move_window_to_space(
                 window[:window_id], current_space)
              0.step(off,10){|n| TotalSpaces2.move_window(
                 window[:window_id],1920-n,ypos)
               } 


                 if wxy == 0
                    wxy = wx - 1
                 TotalSpaces2.set_front_window(no_current_windows[wxy][:window_id]) 
                    wxy = nil
                 end
                 sleep 0.3
            end
          }
     end
end


$LOAD_PATH << '.'
alfred_move_windows("{query}")


@@@@@@@@@@@@@@@@@@@@@@@@@@

#!/usr/bin/ruby
require 'totalspaces2'


current_spaces = TotalSpaces2.current_space
windows = TotalSpaces2.window_list
if current_spaces < 4
  dest_space = current_spaces + 1
else
  dest_space = 1
end


if !windows.empty?
    current_space_windows = windows.select {
    |window| window[:space_number] == current_spaces
   }
end


if current_space_windows[0]
      win_pra = (current_space_windows[0][:frame].delete"\{\} ").split(',')
      xpos =  win_pra[0].to_i
      ypos =  win_pra[1].to_i 
      off  =  (1920 - win_pra[0].to_i)
      0.step(off,8){|n| TotalSpaces2.move_window(
      current_space_windows[0][:window_id],xpos+n,ypos)
      }
      TotalSpaces2.move_window_to_space(
            current_space_windows[0][:window_id],dest_space)
if current_space_windows[1]
      TotalSpaces2.set_front_window(current_space_windows[1][:window_id])
end
      TotalSpaces2.move_window(
           current_space_windows[0][:window_id],xpos, ypos)
end   












阅读(843) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~