sunaku / rumai Goto Github PK
View Code? Open in Web Editor NEWRuby interface to 9P2000 protocol and WMII window manager
Home Page: http://snk.tuxfamily.org/lib/rumai/
License: ISC License
Ruby interface to 9P2000 protocol and WMII window manager
Home Page: http://snk.tuxfamily.org/lib/rumai/
License: ISC License
== DESCRIPTION Rumai is a pure <<Ruby>> interface to the <<wmii>> window manager. Its name is a portmanteau of "**Ru**by" and "w**mi**i", which I pronounce as "vim eye". === Features * Provides an interactive shell for live experimentation. * Arranges clients, columns, views, and tags dynamically. * Talks directly to wmii's <<libixp, IXP filesystem interface>>. * Includes a pure Ruby client for the <<p9p, 9P2000 protocol>>. * Powers http://github.com/sunaku/wmiirc[my personal] wmiirc and http://github.com/sunaku/wmiirc/network[many others] like it. === Resources Project website:: <%= @proj_home_url = Rumai::WEBSITE %> Announcements feed:: <%= @ann_feed_url = File.join(@proj_home_url, 'ann.xml') %> API documentation:: <%= @api_docs_url = File.join(@proj_home_url, 'api/') %> Source code (browse online, download, or checkout):: <%= @code_repo_url = 'http://github.com/sunaku/rumai' %> Issue tracker (report bugs, request features, get help):: <%= @bug_track_url = File.join(@code_repo_url, 'issues') %>
Hi all,
If I write a string containing multibyte characters to the IXP fs, I get the following error:
irb(Rumai):002:0> Node.new("/rbar/0-mpd").write("\u{2019}") Errno::ECONNRESET: Connection reset by peer from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/message.rb:32:in `read' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/message.rb:32:in `read_9p' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/message.rb:417:in `from_9p' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/transport.rb:140:in `block (2 levels) in recv' from :10:in `synchronize' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/transport.rb:122:in `block in recv' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/transport.rb:121:in `loop' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/transport.rb:121:in `recv' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/transport.rb:176:in `talk' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/transport.rb:471:in `clunk' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/transport.rb:265:in `close' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/transport.rb:222:in `open' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/ixp/transport.rb:376:in `write' from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/lib/rumai/fs.rb:116:in `write' from (irb):2 from /usr/lib/ruby/gems/1.9.1/gems/rumai-3.3.1/bin/rumai:16:in `' from /usr/bin/rumai:19:in `load' from /usr/bin/rumai:19:in `'irb(Rumai):003:0>
I'm using ruby 1.9.2. My current workaround is to not use unicode characters :)
Ruby has global VM lock, so are the mutex really necessary?
On Fri, May 21, 2010 at 7:33 AM, Nathan Neff wrote:
I'd like to have a keyboard shortcut to widen/narrow the current client.
What rumai object(s) would have the "nudge"/"grow" functionality that's
described in the wmii man page?
Rumai::Client in wm.rb --- see:
http://github.com/sunaku/rumai/blob/master/lib/rumai/wm.rb#L101
I would add nudge() and grow() instance methods in this section:
http://github.com/sunaku/rumai/blob/master/lib/rumai/wm.rb#L126
Anyway, I did a quick search through the rumai code and don't really
have the time to dig into the object model
Go to http://snk.tuxfamily.org/lib/rumai/api/ and click on the "Class list" tab.
Following exception occurs on FreeBSD 8.0 with libixp from hg and rumai 3.2.3
[2010-05-24T07:06:11.114120 #24927] ERROR -- : can't convert String into Integer (TypeError) /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:135:in `ungetc' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:135:in `recv' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:122:in `synchronize' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:122:in `recv' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:121:in `loop' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:121:in `recv' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:178:in `talk' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:483:in `clunk' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:271:in `close' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:228:in `open' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/fs.rb:83:in `open' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/fs.rb:101:in `each_line' /home/quasar/.wmii-hg/wmiirc:71
Hi sunaku! it's always me :)
I moved to another machine @ work..
and as usual i've installed your fantastic wmiirc :)
thus i'm having a few issues that i would like to share...
wmii version: wmii-hg with libixp-hg
rumai version: 3.3.1
wmiirc. my own fork.. but i've rebased yesterday
PROBLEM:
trying to use one of the predefined layouts
ie. diamond
gives this error
probably this is caused by some error in my conf..
if you have any hint I would appreciate your help :)
Ghedamat
Hi sunaku,
from time to time I get the following error:
#<Rumai::IXP::Error: illegal fcall type: 0 -- in reply to #<Rumai::IXP::Tclunk:0x0000000259ff68 @fields=[#<Rumai::IXP::Struct::Field:0x00000001f7a480 @name=:tag, @format=2, @countee=nil, @counter=nil>, #<Rumai::IXP::Struct::Field:0x00000001dc1440 @name=:fid, @format=4, @countee=nil, @counter=nil>], @values={:fid=>26, :tag=>0}>>
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/message.rb:421:in `from_9p'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/transport.rb:140:in `block (2 levels) in recv'
<internal:prelude>:8:in `synchronize'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/transport.rb:122:in `block in recv'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/transport.rb:121:in `loop'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/transport.rb:121:in `recv'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/transport.rb:176:in `talk'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/transport.rb:481:in `clunk'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/transport.rb:269:in `close'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/transport.rb:226:in `ensure in open'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/ixp/transport.rb:226:in `open'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/fs.rb:83:in `open'
/home/tom/.gem/ruby/1.9.0/gems/rumai-3.2.4/lib/rumai/fs.rb:101:in `each_line'
/home/tom/.wmii-hg/lib/wmiirc/loader.rb:89:in `enter_event_loop'
/home/tom/.wmii-hg/lib/wmiirc/loader.rb:15:in `run'
/home/tom/.wmii-hg/wmiirc:5:in `<main>'
Do you have an idea if that is a bug or did I do sth. wrong?
Edit: Sorry, I just read http://github.com/sunaku/rumai/issues/unreads#issue/4 and look for the patch/fix.
Edit: So I tried the patch suggested in the other thread. It did not fix the issue (unfortunately). I would be happy if you could suggest something different.
Cheers,
Tom
To encapsulate the new dual colors
and label
attributes introduced in wmii-hg2743.
Following exception occurs from time to time with libixp from hg and rumai 3.2.3
type number is not constant (I've seen 0 and 128)
E, [2010-05-23T20:24:52.216068 #3401] ERROR -- : illegal fcall type: 0 -- in reply to #, #], @values={:tag=>8, :fid=>18}> (Rumai::IXP::Error) /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/message.rb:421:in `from_9p' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:140:in `recv' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:122:in `synchronize' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:122:in `recv' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:121:in `loop' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:121:in `recv' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:176:in `talk' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:481:in `clunk' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:269:in `close' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:226:in `open' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/fs.rb:83:in `open' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/fs.rb:101:in `each_line' /home/quasar/.wmii/wmiirc:71
Following exception occurs on FreeBSD 8.0 using libixp from hg and rumai 3.2.3:
# /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:122:in `synchronize' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:122:in `recv' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:121:in `loop' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:121:in `recv' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:178:in `talk' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:483:in `clunk' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:271:in `close' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/ixp/transport.rb:228:in `open' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/fs.rb:83:in `open' /usr/local/lib/ruby/gems/1.8/gems/rumai-3.2.3/lib/rumai/fs.rb:101:in `each_line' /home/quasar/.wmii-hg/wmiirc:71
On Thu, Nov 5, 2009 at 9:47 AM, Nathan Neff wrote:
I would like a way place the windows back to their original positions.
Actually, I intended for these arranging methods to preserve the
relative (top-down) order of clients in a column. So ideally, you can
switch between arrangements and still have the same relative client
ordering.
I played around with arranging 10 terminals on an empty view:
I'll try to fix this bug in Rumai itself. Thanks.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.