We’ve made some major improvements to the tab completion of nicknames in IRC
channels (and other chatrooms). The goal, as always, is to make it “just work”
(so you can think about more important things!).
Simply press TAB to complete the first couple of letters you have typed:
To undo the completion, just press Backspace as usual.
If there is no unique nick that fits the bill, Instantbird tries to guess which nick you mean from the context. For example, if you have recently been pinged by someone, that nick is preferred. Otherwise it just completes as much as possible, and shows you a list of alternative completions:
You can then always press TAB again to cycle through these candidate nicks until you get the right one:
(Shift+TAB will cycle through the list in the opposite direction.)
Notice how Instantbird automatically added a colon after the nick, as we were addressing someone at the start of a message. And if you add another nick, you get a comma-separated list:
Of course, sometimes that may not be what you intended. So if you delete the trailing colon by pressing Backspace, the punctuation adjusts accordingly:
Don’t forget you can also reply to any message by double-clicking it! This will add the sender’s nick to the beginning of the message.
We’ve made quite a bit of improvements over the past few weeks. Although a lot of the changes are behind the scenes or fixing regressions, there are some exciting user facing changes, as detailed below! We’ve also been working with our Google Summer of Code 2012 student, wnayes, quite a bit to get him up to speed of how things work in Instantbird. He’s made great progress on understanding the code and has even fixed a bug (see the “top protocols” page, below)!
"Top Protocol" Page in the Account Wizard
- The account wizard now has a “top protocols” page to allow users to quickly set up accounts that are most applicable to them. This is localizable as different instant messaging networks are popular in different regions.
- Tab Completion improvements:
- Names of people who have pinged you (i.e. said your name in the chat).
- Names of active participants.
- Names of inactive participants.
Google Summer of Code Status:
To follow along with what wnayes will be working on this summer, you can read his blog (RSS feed) and check out his user repository. Additionally, he’s posted some general information (his application, timeline and a series of links) that he’ll be updating as the summer continues. (And of course you can stop by our IRC channel, #instantbird on irc.mozilla.org, and say “Hi!”)
For Instantbird 1.1, which will be released soon, we realized a weak spot in our API was the ability to control whether events should be shown to a user or cancelled under certain conditions. This fits in as part of our mission about giving control of instant messaging to the user: the user should only be interrupted by events that deserve their attention. If you’re wondering how this is useful; extensions now have great control over how Instantbird is allowed to interact with the user. For example, extensions could: keep conversations from opening (i.e. spam guards), quiet sounds during a full screen video, or even stop new conversations from opening if the user has set their status as Unavailable.
Extensions are able to simply register themselves with the interruptions manager and they will automatically be notified if certain events happen, including when Instantbird wants to: get your attention (e.g. flash the task bar), open a new conversation, play a sound or show a message notification.
The API is really easy to use and we’ve created some example add-ons that use it! We have created an an add-on to not allow the NickServ from IRC accounts to open (source), an update of NickServKiller. Additionally there is an add-on to force auto-joined chats to be held on the buddy list (source), allowing you to give them your attention when you want to. Another example of a great add-on is the Do Not Disturb add-on, which does not allow Instantbird to disturb the user while their status is set to Unavailable, really allowing you to concentrate on something more important (source).
There’s also a skeleton for an anti-spam add-on (an often requested feature!) that is just waiting to be finished! Contact us on #instantbird on irc.mozilla.org if you’re interested in helping out. And don’t worry, these extensions will be available on addons.instantbird.org soon!
We think this is a great addition for add-on developers working on Instantbird and can’t wait to see what exciting ideas people come up with!
Another very visible change between Instantbird 0.2 and 0.3 is the possibility to set a user icon and a display name.
You will see a place holder icon at the top of the buddy list, just click it (this will open a file picker) to set an icon. The icon will be automatically resized and converted to fit the various size and format requirements of the IM networks you use.
Similarly, click the “Display name” place holder to edit it. This name will be visible in your contacts’ buddy lists (unfortunately this currently works only for MSN).
Here you go, your friends will now easily recognize you:
The contact list was identified as a weak area of Instantbird 0.2. It has been dramatically improved for Instantbird 0.3 which we plan to release next week.
Like most IM clients, Instantbird 0.2 had each contact placed in a group, leading users to organize contacts a bit like files are placed in folders on the disk.
While this seems ok at first, placing contacts inside groups doesn’t work well when thinking of the contact as a person. Don’t you have a friend (group ‘friend’) who is also a coworker (group ‘colleagues’)?
For this reason, with Instantbird 0.3 we replaced the notion of “Groups” with the notion of “Tags” throughout the user interface. While groups used to be containers for your contacts (it was possible to move a contact from one group into another), tags are additional data attached to the contact (you can add or remove tags on a contact, but no longer ‘move’ a contact) and thus a single contact can have multiple tags. To change the tags attached to a contact, use the “Tags…” context menu item of the contact; it shows a list of the existing tags with a check mark next to the tags attached to the selected contact. Checking/unchecking a tag in this list will attach/detach a tag from the contact.
Instantbird 0.2 was released with Bubbles as its default message theme:
The most common feedback we received from users that quickly switched back to Simple (the previous default) or another theme was that the lack of timestamp for each message made the theme unusable.
Some users have really passionate opinions about whether these timestamps should be shown or not. On one hand, people think it’s a useful piece of information that should always be visible, but on the other hand, people think it’s a waste of space on their limited screens. The common “solution” to this problem is to include a “show timestamp” preference, allowing each user to decide for themselves which of the two behaviors is the least inconvenient.
I don’t think that making the user responsible for choosing between two not-so-good options which one is best is a good way to address this issue. So soon after the 0.2 release, I started searching for better solutions.
In Instantbird 0.2 a lot of visual bloat has been removed from all windows. Some margins have been reduced, borders that weren’t useful for clarity have been removed, and alignments have been improved. All of this contributes to a better use of the available space on the screen, and to a better perceived impression of simplicity in the user interface.
To illustrate this, let’s compare the conversation window before and after: