>Simple tutorial
Synopsis
- finch [options]
Description
finch is a console-based modular messaging client based on libpurple which is capable of connecting to AIM, MSN, Yahoo!, XMPP, ICQ, IRC, SILC, Novell GroupWise, Lotus Sametime, Zephyr, Gadu-Gadu, and QQ all at once. It has many common features found in other clients, as well as many unique features. Finch is not endorsed by or affiliated with America Online, ICQ, Microsoft, or Yahoo.
Options
The following options are provided by finch using the standard GNU command line syntax:
- -d, –debug
- Print debugging messages to stderr and start with the Debug window. The messages shown in the Debug window are the same as the ones printed in stderr.
- -c, –config=DIR
- Use DIR as the directory for config files instead of ~/.purple.
- -h, –help
- Print this help and exit.
- -n, –nologin
- Don’t automatically login when finch starts. Sets all accounts to Offline.
- -v, –version
- Display the version information window.
GNT Shortcuts
You can use the following shortcuts:
- Alt + a
- Bring up a list of available actions. You can use this list to access the accounts window, plugins window, preference window etc.
- Alt + n
- Go to the next window.
- Alt + p
- Go to the previous window.
- Alt + w
- Show the list of windows. You can select and jump to any window from the list.
- Alt + c
- Close the current window.
- Alt + q
- Quit.
- Alt + m
- Start moving a window. Press the cursor keys to move the window. When you are done, press Enter or Escape.
- Alt + r
- Start resizing a window. Press the cursor keys to resize the window. When you are done, press Enter or Escape.
- Alt + d
- Dump the contents of the screen in HTML format in a file named “dump.html” in working directory.
- Alt + .
- Move the position of the current window in the window list one place to the right.
- Alt + ,
- Move the position of the current window in the window list one place to the left.
- Alt + l
- Refresh the windows. This is useful after resizing the terminal window.
- Alt + 1 2 … 0
- Jump to the 1st, 2nd … 10th window.
- Ctrl + o
- Bring up the menu (if there is one) for a window. Note that currently only the buddylist has a menu.
Files
~/.gntrc: configuration file for gnt applications.
- A sample file looks like:
- [general]shadow = 0# There is experimental mouse supportmouse = 1# To use some custom window-managerwm = /usr/local/lib/purple/s.so# Remember window-positions based on the titles (on by default)remember_position = 1[colors]# The RGB values range in [0, 1000]black = 0; 0; 0red = 1000; 0; 0green = 0; 1000; 0blue = 250; 250; 700white = 1000; 1000; 1000gray = 700; 700; 700darkgray = 256; 256; 256[colorpairs]normal = white; blackhighlight = white; bluehighlightd = black; grayshadow = black; darkgraytitle = white; bluetitled = white; graytext = white; bluedisabled = gray; blackurgent = green; black# Remap some keys for GntEntry[GntEntry::remap]# Remap the up-arrow to the left-arrow^[[A = ^[[D# Remap the down-arrow to the right-arrow^[[B = ^[[C# Remap ‘a’ to ‘bcd’a = bcd# Completely ignore the key ‘q’q =# But the following will NOT work#abc = bcd# Hitting ‘space’ will activate a button[GntButton::remap] = r
Widget Actions
You can specifiy key-bindings for specific widgets. The following entries in ~/.gntrc correspond to the default keybindings for the actions:[GntEntry::binding]
c-a = cursor-home
home = cursor-home
c-e = cursor-end
end = cursor-end
backspace = delete-prev
del = delete-next
c-d = delete-next
c-u = delete-start
c-k = delete-end
c-b = cursor-prev
left = cursor-prev
c-f = cursor-next
right = cursor-next
tab = suggest-show
down = suggest-next
up = suggest-prev
c-w = delete-prev-word
a-b = cursor-prev-word
a-f = cursor-next-word
a-d = delete-next-word
c-v = clipboard-paste
[GntTree::binding]
up = move-up
down = move-down
c-n = move-down
c-p = move-up
pageup = page-up
pagedown = page-down
# Following is the default binding for the context-menu
menu = context-menu
# The following will let you open the context-menu in the buddylist with c-b
# c-b = context-menu
[GntWidget::binding]
f11 = context-menu
[GntWindow::binding]
c-o = show-menu
f10 = show-menu
The c- corresponds to the Control key. You can also use ctrl- or ctr- or ctl- to indicate a combination. For alt-keys, you can use one of a-, alt-, m- or meta-. You can also usehome, end, left, right etc. keys.
Mouse Support
There is experimental mouse support. You can focus windows, activate buttons, select rows in a list, scroll using the wheel-scroll etc. Selecting text in a text-view copies it to the gnt clipboard. Mouse support is disabled by default, so you need to enable it in ~/.gntrc (see the sample above).
Window Management
The default window management is very limited. But it is possible to write custom window managers to suit your needs. There is a sample window-manager included (nameds.so) which adds a little ‘close-button’ for the windows, removes the borders from the buddylist and pops up new windows in the middle of the screen, instead of at the upper-left corder. It is provided as a sample simple manager, but it should be possible to write more complex managers, and it’s very possible that the window-manager API will need to be enhanced. Look at the sample ~/.gntrc file ab
ove to see how to select a window-manager.It is also possible to rebind the window-manager actions in ~/.gntrc, eg:
[GntWM::binding]
a-n = window-next
a-p = window-prev
a-c = window-close
a-w = window-list
a-d = dump-screen
a-, = shift-left
a-. = shift-right
a-a = action-list
a-m = start-move
a-r = start-resize
a-q = wm-quit
a-l = refresh-screen
# The following action is still incomplete, and doesn’t have a default binding
# switch-window-n
# For the sample custom window manager
[GntS::binding]
a-b = toggle-buddylist
a-C = toggle-clipboard
Conversation Commands
There are a few helpful commands in addition to the regular commands. You can use these from any conversation to access other windows.
- accounts
- for the accounts window.
- buddylist
- for the buddylist.
- debugwin
- for the debug window.
- plugins
- for the plugins window.
- prefs
- for the preferences window.
- status
- for the status window.