diff options
| author | Tom Feist <shabble@metavore.org> | 2011-04-18 07:12:07 +0000 | 
|---|---|---|
| committer | Tom Feist <shabble@metavore.org> | 2011-04-18 07:12:07 +0000 | 
| commit | 8f1ff6fe57003fc273086afe23b4327387c6d545 (patch) | |
| tree | 30ce20c4abbc98541a0765a5be9266913191d3c8 | |
| parent | readme_generator: made it actually work. (diff) | |
| download | irssi-scripts-8f1ff6fe57003fc273086afe23b4327387c6d545.tar.gz irssi-scripts-8f1ff6fe57003fc273086afe23b4327387c6d545.zip | |
first generated README.
| -rw-r--r-- | ido-mode/README.md | 139 | 
1 files changed, 139 insertions, 0 deletions
| diff --git a/ido-mode/README.md b/ido-mode/README.md new file mode 100644 index 0000000..e17d078 --- /dev/null +++ b/ido-mode/README.md @@ -0,0 +1,139 @@ +# NAME + +ido_switcher.pl + +# DESCRIPTION  + +Search and select windows similar to ido-mode for emacs + +# INSTALLATION + +This script requires that you have first installed and loaded `uberprompt.pl` + +Uberprompt can be downloaded from: + +[http://github.com/shabble/irssi-scripts/raw/master/prompt_info/uberprompt.pl](http://github.com/shabble/irssi-scripts/raw/master/prompt_info/uberprompt.pl) + +and follow the instructions at the top of that file for installation. + +If uberprompt.pl is available, but not loaded, this script will make one +attempt to load it before giving up.  This eliminates the need to precisely +arrange the startup order of your scripts. + +## SETUP + +`/bind ^G /ido_switch_start [options]` + +## USAGE + +`C-g` (or whatever you've set the above bind to), enters IDO window switching mode. +You can then type either a search string, or use one of the additional key-bindings +to change the behaviour of the search.  `C-h` provides online help regarding +the possible interactive options. + +### EXTENDED USAGE: + +It is possible to pass arguments to the /ido_switch_start command, which +correspond to some of the interactively settable parameters listed below. + +The following options are available: + +- `-channels` -- search through only channels. +- `-queries`  -- search through only queries. +- `-all`      -- search both queries and channels (Default). +- `-active`   -- limit search to only window items with activity. +- `-exact`    -- enable exact-substring matching +- `-flex`     -- enable flex-string matching + +_If neither of `-exact` or `-flex` are given, the default is the value of +`/set ido_use_flex`_ + +#### EXAMPLE + +- `/bind ^G /ido_switch_start -channels` +- `/bind ^F /ido_switch_start -queries -active` + +__NOTE:__ When entering window switching mode, the contents of your input line will +be saved and cleared, to avoid visual clutter whilst using the switching +interface.  It will be restored once you exit the mode using either `C-g`, `Esc`, +or `RET`. + +### INTERACTIVE COMMANDS + +The following key-bindings are available only once the mode has been +activated: + +- `C-g`   - Exit the mode without changing windows. +- `Esc`   - Exit, as above. +- `C-s`   - Rotate the list of window candidates forward by 1 +- `C-r`   - Rotate the list of window candidates backward by 1 +- `C-e`   - Toggle 'Active windows only' filter +- `C-f`   - Switch between 'Flex' and 'Exact' matching. +- `C-d`   - Select a network or server to filter candidates by +- `C-u`   - Clear the current search string +- `C-q`   - Cycle between showing only queries, channels, or all. +- `C-SPC` - Filter candidates by current search string, and then reset +                 the search string +- `RET`   - Select the current head of the candidate list (the green one) +- `SPC`   - Select the current head of the list, without exiting the +                 switching mode. The head is then moved one place to the right, +                 allowing one to cycle through channels by repeatedly pressing space. +- `TAB`   - __[currently in development]__ displays all possible completions +                 at the bottom of the current window. +- _All other keys_ (`a-z, A-Z`, etc) - Add that character to the current search +                        string. + +        ### USAGE NOTES +        - Using C-e (show actives), followed by repeatedly pressing space will cycle +           through all your currently active windows. +    - If you enter a search string fragment, and realise that more than one candidate +       is still presented, rather than delete the whole string and modify it, you can +       use C-SPC to 'lock' the current matching candidates, but allow you to search +       through those matches alone. + + + +    Based originally on [window_switcher.pl](http://scripts.irssi.org/scripts/window_switcher.pl) script Copyright 2007 Wouter Coekaerts +    `<coekie@irssi.org>`. + +    Primary functionality Copyright 2010-2011 Tom Feist +    `<shabble+irssi@metavore.org>`. + +    # LICENCE + +    This program is free software; you can redistribute it and/or modify +    it under the terms of the GNU General Public License as published by +    the Free Software Foundation; either version 2 of the License, or +    (at your option) any later version. + +    This program is distributed in the hope that it will be useful, +    but WITHOUT ANY WARRANTY; without even the implied warranty of +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +    GNU General Public License for more details. + +    You should have received a copy of the GNU General Public License +    along with this program; if not, write to the Free Software +    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA + +    # BUGS: + +        - __FIXED__ Sometimes selecting a channel with the same name on a different +           network will take you to the wrong channel. + +    # TODO + +                                                                                                - __DONE__ C-g - cancel +                                                                                        - __DONE__ C-spc - narrow +                                                                                - __DONE__ flex matching (on by default, but optional) +                                                                        - TODO server/network narrowing +                                                                - __DONE__ colourised output (via uberprompt) +                                                        - __DONE__ C-r / C-s rotate matches +                                                - __DONE__ toggle queries/channels +                                        - __DONE__ remove inputline content, restore it afterwards. +                                - TODO tab - display all possibilities in window (clean up afterwards) +                                how exactly will this work? +                        - __DONE__ sort by recent activity/recently used windows (separate commands?) +                - __TODO__ need to be able to switch ordering of active ones (numerical, or most +                recently active, priority to PMs/hilights, etc?) +        - __DONE__ should space auto-move forward to next window for easy stepping +             through sequential/active windows?
\ No newline at end of file | 
