Project

General

Profile

unexist.dev

Assorted tidbits and projects

Positioner

Overview

The positioner displays the available views in a selection window inside of the active window in different colors:

  1. Views the client is visible in are shown in occupied color
  2. The current view in the focus color
  3. Other views just in the view color

The cursor keys move the selection through the list, Space marks the current view in the urgent color and Enter tags/untags the current window to be visible on the selected views. The positioner will use the names of the views to create tags for placement if necessary.

{{lightbox(contrib/positioner, Positioner)}}

Colors

Color triplet Meaning
Focus Currently selected view
View Other views
Occupied Views client is visible
Urgent Selected views

Keys

Keys Action
Left, Up Move to left
Right, Down Move to right
Escape Hide/exit
Space Select view
Return Tag/untag selected views and exit hide/exit

Usage

Either call it like ruby merger.rb from commandline or add following loader and grab to your subtle config.

{{hide}}begin
  require "#{ENV["HOME"]}/path/to/positioner.rb" 
rescue LoadError => error
  puts error
end

grab "W-p" do
  Subtle::Contrib::Positioner.run
end

Install

Currently there is no package available and you need either to clone the repository:

hg clone http://hg.subforge.org/subtle-contrib

Or download the latest archive:

http://hg.subforge.org/subtle-contrib/archive/tip.tar.bz2

These scripts may work, if you encounter any problems please ask in the usual places.

Configuration

Per default, the positioner uses fixed as font, this can be changed after requiring the positioner.rb and before running it for the first time.

Fonts

{{hide}}begin
  require "#{ENV["HOME"]}/path/to/positioner.rb" 

  # Set font
  Subtle::Contrib::Positioner.font = "xft:DejaVu Sans Mono:pixelsize=80:antialias=true" 
rescue LoadError => error
  puts error
end