My thoughts in regard to the flaws of IRC clients.000 CTCP VERSION reply from Nei: BitchX-1.1-final+ by panasync - Linux 2.6.16-2-vserver-em64t-p4 : Keep it to yourself!Goals
I have high demands on IRC, because I like to track many places.
I’ve also realised that it is a difficult thing; and it seems to require careful planning.
I’ve found that while everyone probably has dreamt of writing her own irc client at least once,
The protocol is amazingly simple,
Deciding how to show incoming data is the problem. MainThere are two main points of access to information:
Notify
Actually deciding when to notify you, is the first interesting, and also the easier thing to approach programmatically.
Another question is what parts of information to include in the notify (or how to present it in general). Stuff to do would be,
Furthermore, we’d like to have an easy way to zap away unimportant hilights.
As for the selection method itself, the right thing ™ is to give the user filter chains. Criteria are of course
Maybe it would be possible to represent this with some sort of iptables firewall-like rules.
For example, on Irssi, your almost only way to set up notifications is either through a global hilight message levels
In other clients, you might be able to quickly flick notification for this window with something like /window notify on/off.
Such settings usually don’t persist. Views Pt.1
As for the views on the data, I require quick ways of “filtering”.
I found that this is not the right thing to do. Client/Server
The client/server model should be employed in the client as well.
Many people run either a BNC or use Irssi on like a shell account they
Running an IRC client on a shell is
Now, this might not be very relevant for some people
I do like to have my IRC connection stored away on some always on server of some shell provider.
I also like to come back and get the same view on my data as I left.
But there are better ways to do this!
Of course there is still one benefit which is availability.
Obviously, as soon as you have client/server, you automatically have both.
I would like to make this “local” availability a common case.
I haven’t yet thought about this in detail,
BitchX, is available, or easily installed as binary, so far on every Windows box, on every Linux box, on the HPUX at the HP labs, and on all the Suns at the university CS labs.
On the other hand, I couldn’t get Irssi 0.8.10 to compile on the Sun
Another important thing to keep in mind is, that
Of course, there is always the “rescue mode”: run it over SSH on your
But preferable would be to be able to provide native clients
Since many places do not appreciate you installing software either,
Resorting to SSH is bad, because you do everything display wise on the server side.
Views Pt.2
Many things make a view.
“View” is just my broad term for describing everything that you see on
For example, a layout where you have a surveillance channel on top, 10 lines height, and two general purpose channels on the left and right:
With a keypress, you get a new layout featuring different (or the same) windows, in another arrangement: another view.
A command further, you filter your messages — on the left, all your recent private messages, in the middle, everything that contains the word “irc”
In some window, you inflate all the messages from multiple sources into a single timeline — ircII style: also a view.
Something also expressed through views would be the ability to hide, and reshow, certain messages, such like
Views are also responsible for applying different charset recoding mechanisms depending on rules.
Note that you can have views inside of views. Views can be divided into two categories:
(It might be better to give these two types distinct names, for example
layouts and filters.)
The filters could probably work with the same kind of rules that is used
Irssi has an /ignore option, but this is applying a destructible tool on my input data.
That is a very bad thing. Even things you ignore should be logged.
So in the end you usually opt to not ignore,
Many things on IRC are decided by your client’s power.
For example, public away messages:
Irssi also introduced the feature of “message recoding” (changing message charsets, as if piping them through iconv), which is done at such core level, that it screws your logfiles and destroys messages.
Charset and encoding mess
While encoding mess might be an inherent irc flaw, my client must give me the ability to cope with it appropriately
This means you must have the whole filter set available to decide encoding issues. There might be persons (or clients) always communicating
Or the lack of client side /list filtering in traditional clients, it’s just not up to date.
Another thing is “duplicate” part/quit messages across channels:
Another thing I want to do with these views is to start a private conversation in a shared timeline with the main chat (ircII style), and then be able to copy or move it to its own
Here is a bonus: |
|
Tags:
| |
Navigation | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| « | (older) | (newer) | » | |||||||
| « | und Flash saugt doch | ‹ | Main | › | Ladekabel kostet mehr als Gerät | » | ||||
| « | (monthly archive) | (category archive) | » | |||||||
| « | View entire January 2007 Archives | ‹ | All articles list (Archives) | › | Search | » | Netzwelt | » | ||