Project

General

Profile

unexist.dev

/

subtle

Assorted tidbits and projects

Subtlext » History » Version 91

Version 90 (Anonymous, 09/08/2009 05:49 PM) → Version 91/95 (Anonymous, 12/31/2009 02:59 AM)

h1. Subtlext\015\012\015\012[[Subtlext]] is an extension that brings the power of [[subtler]] to "Ruby":http://www.ruby-lang.org. \015\012\015\012A compending list of the classes with it's functionality can be found in "rdoc":http://unexist.scrapping.cc/rdoc/subtle/index.html and informations about the available unit tests in the [[development]] section.\015\012\015\012h2. Examples\015\012\015\012This time a more complex example to show what you can do with this extension:\015\012\015\012<pre><code class="ruby">\015\012require("subtle/subtlext")\015\012\015\012puts class="ruby">\015\012require("subtle/subtlext")\015\012\015\012subtle = Subtlext::Subtle.new(":2")\015\012\015\012puts "subtle %s on %s" % \015\012 [Subtlext::Subtle.version, Subtlext::Subtle.running? [subtle.version, subtle.running? ? Subtlext::Subtle.display subtle.display : "none"]\015\012\015\012puts "Tags: %s" % [Subtlext::Tag[:all].join(", [subtle.tags.join(", ")]\015\012\015\012# Views\015\012views = []\015\012Subtlext::View[:all].each []\015\012subtle.views.each do |v|\015\012 views.push("%s (%s)" % [v.current? ? "[#{v}]" : v, v.tags.join(", ")])\015\012end\015\012puts "Views: %s" % [views.join(", ")]\015\012\015\012# Clients\015\012clients = []\015\012Subtlext::Client[:all].each []\015\012subtle.clients.each do |c|\015\012 clients.push("%s (%s)" % [c, c.tags.join(", ")])\015\012end\015\012puts "Clients: %s" % [clients.join(", ")]\015\012</code></pre>\015\012\015\012Output:\015\012<pre><code>subtle 0.8.1684 0.8.1017 on :0.0\015\012Tags: :2.0\015\012Tags: default, test, void, terms, float, full, editor, video, browser, editor, stick, float, eight, two, seven, one, bashrun, sakura, python\015\012Views: terms (terms, eight, two), [www] (browser, eight, two), void terms\015\012Views: web (default, void, eight, two), editor (test, editor, seven, one)\015\012Clients: urxvt2 (two, one), urxvt1 (eight, seven), subtle - Subtlext - Redmine - Vimperator (browser), Xephyr on :2.0 (ctrl+shift grabs mouse and keyboard) (test, float), event.c (~/projects/subtle/src/subtle) - GVIM (editor)\015\012</code></pre>\015\012\015\012More browser), [dev] (editor, terms), work (video, browser, terms)\015\012Clients: xterm (terms), xterm (terms)\015\012</code></pre>\015\012\015\012More examples are in the tarball in *dist/scripts*. Currently there is the example from above (*example.rb*), an example for a web interface with "Sinatra":http://sinatra.rubyforge.org/ (*web.rb*) and an interface with "Ruby-Gtk":http://ruby-gnome2.sourceforge.jp (*gtk.rb*).\015\012\015\012{{tocnavi(subtle,Sublets,Quickstart,Grabs)}}