From 72f79234cb7baea6dc440c0e6d01ec10b5cea55f Mon Sep 17 00:00:00 2001 From: Tom Feist Date: Fri, 4 Mar 2011 01:59:41 +0000 Subject: readme: updated to give a brief description of the various bits of the repo. --- README.md | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/README.md b/README.md index 3562c91..f465f1a 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,87 @@ This repository contains a collection of scripts I have written or adapted from others to improve my (and your!) irssi using experience. +## What's In Here + +I never thought I'd end up writing so many scripts, so rather than give them +each their own repository as might be sensible, they're all stuffed in here. + +The following is a brief list of the interesting scripts, and why you might want +to use them. + +* `auto_server/` -- provides a `/join+` command which allows you to join + channels on servers to which you're not currently connected, as long as you've + got everything set up correctly in your `/channels` and `/networks` config. + + +* `history_search/` -- an improved version of coekie's original history_search, it + behaves a lot more like the standard Readline incremental + search over your recent command history. + +* `ido_mode/` -- A window switching mode best described as "The bastard lovechild + of emacs ido-mode and window_switcher.pl". It supports flexible matching of + channel names, filtering by active windows, servers, and more. See the script + comments for details. + +* `feature_tests/` has a bunch of different little scripts written to test certain + aspects of Irssi behaviour. None of them are likely to be particularly useful + unless you're looking for simple examples of various things on which to build. + The exception is 'key_test.pl', which is good for figuring out what keycodes + Irssi sees when you give it input. + + pipes.pl might also be interesting as a barebones template for a script which + uses forking and pipes to handle async tasks in the background without hanging + Irssi. + +* `modules/` contains a few half-baked attempts at loadable modules for Irssi, + none of which do very much at the moment. They might be useful as templates + for your own modules, however. + +* `no_key_modes/` provides an additional expando `$M_nopass` which you can + add to your theme to provide channel modes, but without showing the channel + key. This is probably less useful since someone pointed me at `/set + chanmode_expando_strip` which has much the same effect. + +* `patches/` contains a few patches for the irssi source, probably out of date + by now, which do various things. The easiest way to figure out what is to read + them, unless I get bored and document them sometime. + +* `prompt_info/` was the original "How can I put dynamic status crap into my + prompt string" script. This has since been superceded by the far nicer + `uberprompt.pl` which also lives in that dir. Many of my other scripts + require uberprompt as a way to provide part of their user interface. + +* `sb_position/` gives you an additional status bar item which indicates + approximately how far you are scrolled in a given window buffer, in terms + of pages and percentage. It is configurable as the comments in the script + explain. + +* `scrolled_reminder/` is a script that tries to prevent one of the more + common accidental IRC screwups -- replying to a conversation that happened + hours ago because you didn't notice you were scrolled up in the history buffer. + If you try to send a message whilst scrolled, it'll warn you and check you + really want to first. + +* `testing/` is a Perl framework external to Irssi (ie: not a script) that will + ultimately allow you to write unit tests for your scripts, and run them in a + real irssi instance, and check that they behave correctly. Still undergoing + heavy development, and not really ready for public usage. + +* `throttled_autojoin/` doesn't work. It's meant to allow people with huuuuuuge + numbers of autojoin channels and servers to connect slowly, so as not to time + themselves out when reconnecting. Mostly dead. + +* `tinyurl_tabcomplete/` is a script which lets you hit tab following anything + that looks like a URL to replace it with a tinyurl'd version. Handy if you + regularly paste Google-maps links or other massive horrible links. + +* `url_hilight/` I can't remember what this one does. Suggestions welcome. + +* `vim_mode/` The most exciting (and by far the largest) script here. Gives + vim-addicted users a way to use most of their finger-memory in Irssi. Still + under active development, features and bug-requests welcome. Also supported + in #irssi_vim on Freenode. + ## Documentation If you are here looking for my Irssi scripting documentation, please note that -- cgit v1.2.3