hipTabComplete Plugin

OverView

This plugin provides tab-key nickname completion. Ircle 3.1b11 dated December 10, 2001 or later is required for tab-key nick completion.

If you hit the tab key when the inputline is empty, Ircle behaves as it always did, cycling thru the list of the last 10 people who sent you a /msg. If there is text in the inputline and the cursor is at the end of the line, HipScript attempts to do tab-key completion on the word at the end of the line.

The tab completion feature in Ircle is not limited to just nicknames, although that will surely be its primary use. If you type some text in the Ircle inputline and then hit the tab key, HipScript attempts to complete the word at the end of the line by supplying a nickname of someone currently in the channel you're typing in. If there are multiple matches for the partitial word at the end of the line, hitting the tab key repeatedly will cycle through all the matches one after another.

HipScript tries to match a nickname by first considering all nicknames that start with the sequence of letters from the last word on the inputline. After that, it considers nicknames that start with those letters after removing any special characters (such as underbars, brackets, or braces) from the nick. Finally, it considers nicknames that have that sequence of letters in them anywhere.

Thus if you have users in the channel named Corrine, JoeCool, and [cookie], and you type "co<tab>" it will first expand the co to Corrine. If you hit tab again, it changes Corrine to [cookie]. Hit it again and it changes to JoeCool. Hit it one more time and it changes back to "co" and the cycle starts again.

If you hold down the shift key when you hit tab, it cycles backwards through the matches. If you hold down the control key when you hit tab, it shows you the list of all (or the first 30) matches. If you hold down the option key when you hit tab, it rebuilds its lists of matches as if you had the NoPals and NoTrim options set and begins cycling through the matches that way.

In addition to nickname completion, HipScript can do alias command completion. If you type a partial alias name in the inputline such as /pa<tab> it will cycle thru all aliases that start with pa, followed by all the contain the letters pa. Note that this works only with alias commands, not HipScript or builtin IRC commands (for now).

/nickcomp command

/nickcomp [ trim | notrim ]
/nickcomp [ pals | nopals ]

This command enables or disables options for tab-key nickname completion.

The pals option uses your HipScript Pals list to translate completed nicknames to the person's pal name.

The trim option trims leading and trailing special characters from the person's nickname in an attempt to be a bit more "natural sounding". So, someone with a nick like {{{[[[JoeLamer]]]}}} would expand to simply "JoeLamer". If the line start with a / the trimming is NOT done, so that commands such as kickbans work properly. Sometimes the trim logic does a bad job of deciding what characters to trim away. For example, a nick such as "[X]Dude" expands to "X]Dude" which looks even worse. In this case, hit option-tab to temporarily disable trimming and expand to the full nick.