f-irc(1) a user friendly irc client for a terminal/command-line/console

SYNOPSIS

f-irc [configurationfile.conf]

options: configurationfile.conf

DESCRIPTION

The program f-irc Is an irc client for a terminal/command-line/console. Its goal is to be as user friendly as possible with easy navigation and keyboard shortcuts for quick navigation. The learning curve should be as shallow as possible.

CONFIGURATION

Create
~/.firc or firc.conf. ~/.firc will be automatically found at start, else enter it on the command-line:         f-irc my-fi-config.conf
server=host:port
An IRC server to connect to.
auto_join=...
Channel to automatically join.
send_after_login=...
Command to send to the IRC server after connection setup. E.g. PRIVMSG #NickServ IDENTIFY my_password
username=... password=...
Used for authentication against IRC server
nick=... name=...
Identification settings.
description=...
Will be shown instead of server name (if used).
part_message=...
Message to send to the channel when leaving a channel.
server_exit_message=...
Message to send to all channels when leaving a server.
allow_invite=true/false
Should f-irc automatically open a channel when it receives an INVITE message?
ignore_mouse=true/false
Wether to ignore mouse clicks(!). Default is true which makes f-irc ignore the mouse.
favorite=... ...
This defines a favorite channel. First parameter is the server hostname or description, the second parameter the channel name (e.g. #linux.nl). Jump through your favorite channels using ^Q.
store_config_on_exit=true/false
Wether to update the configuration-file at exit. Useful when adding channels and/or servers or changing nicks.
notice_in_serverchannel=true/false
Most (all?) "NOTICE" messages are not personal messages but are from e.g. chanserv and nickserv and friends. If this parameter is set to true, no new channel-windows are created for them; they are put in the server-channel window instead.
highlight=on/off
Wether lines with your nick name in them should be highlighted (green on black).
meta-colors=true/false
Show server-messages and personal messages in a different color than generic messages.
all-colors=true/false
Global color-switch.
nick-color=true/false
When enabled, each line spoken will be colored with the color depending on who said it.
use_nonbasic_colors=true/false
Use more than the 16 standard colors. Useful for "nick-color".
inverse_window_heading=true/false
Show window-heading in reverse (true) or with ASCII-art (false).
show_parts=true/false
Should f-irc show a message when someone leaves a channel?
show_mode_changes=true/false
Should f-irc show a message when there's a mode change?
show_nick_change=true/false
Should f-irc show a message when someone changes his/hers nick?
show_joins=true/false
Should f-irc show a message when someone joins a channel?
auto_rejoin=true/false
Allows you to automatically re-join a channel when you're kicked.
remember_channels=true/false
Store any channels you were in when f-irc terminates.
grep_filter=server,channel,file,reg-exp
If a line written in a server/channel with the specified regular expression, write that line to "file". server and or channel can be omitted but the comma needs to stay. For the server, f-irc looks at the "description"-field of a server.
ignore_file=...
Points to a file with nicks to ignore: #channel nick etc.
auto_private_channel=on/off
Automatically create a new channel window when using /MSG
dcc_path=...
Path where to store files received via DCC.
max_channel_record_lines=...
How many lines of text to store in the scroll-back buffer.
partial_highlight_match=yes/no
Draw the whole line in green or only the parts that match the search term.
word_cloud_n=...
How many items to put in the word-cloud window. Set to 0 to completely disable the word-cloud.
word_cloud_win_height=...
Height of the word-cloud window. This excludes the 2 rows for the border.
word_cloud_refresh=...
Interval in which to restart the word-cloud. Value is in seconds.
word_cloud_min_word_size=...
Minimum size (in characters) of the words evaluated. A sensible value is 4.
default_colorpair=...,...
Set the default color pair. Used for generic texts and borders. First is foreground, second is background. Note that you can either use a color name ("red", "green", etc.) or a hexadecimal color triplet with values 000...3e7 (that may sound strange but ncurses use the range 0...999) with a '#' in front of it. E.g. #1230fe2fa,white
highlight_colorpair=...,...
Color pair used when your nick is mentioned.
meta_colorpair=...,...
Color pair used when server messages are shown (joins, parts, etc)
error_colorpair=...,...
Colors to use when there's an error to show
jumpy_navigation=true/false
^W/R/Z/X: jumpy navigation
temp_colorpair=...,...
Temporary color;
dictionary_file=...
Dictionary file to use for tab completion, see below.
log_dir=
Path where to store chats logging.
mark_personal_messages=yes/no
If someone send you a message in a personal channel ("query"), should f-irc then highlight that channel as if a personal message was sent (default is no).

COLORS

Available colors: black, blue, cyan, default, green, magenta, red, white, yellow.

DICTIONARY

F-irc can, apart from channel/nick/command also do tab-completion on a configurable list of words. With "dictionary_file=..." you can select a text-file with 2 or more columns. In the first column you put the word that f-irc needs to look for when pressing tab. Then when there's a match, that word will be replaced by what's in the 2nd (and 3d, etc.) column.

USAGE

When F-IRC is started, you'll see a list of channels and servers on the right. On the left a large box with what is written by people. The line at the top is the topic of that channel and the line at the bottom is where you write the things you would like to appear in the channels.
If there's a reverse color border around the channel-list, then it is selected. That means that you can navigate through it with the cursor keys. Press right to enter a channel. Press right again on that channel to get a list of names in that channel. Press right once again to get a list of actions to perform on that user. Press left to exit the actions menu. Another left to return to the channel-list. Use up cursor/down cursor keys to navigate through the list. 'home' jumps to the top of the list, 'end' to the bottom.
Press left on a server to "fold it": this hides the channels. Press the right cursor key to unfold it. When a server is not folded and it is already selected, press "right" again to get a menu with server-options: reconnect a server for example and disconnect it.
In the "scroll back"/"search" windows you can press '/' to search in that window and 'w' to write the contents of a window to a file.
^X
means: press ctrl key and press x while still holding ctrl.
If the channel/name-list is selected, you can enter ^N: you can then move the cursor from right to left and back to navigate through the sentence you're typing. If the edit-line is selected, then the border around the names/channels is no longer reverse, also the '>' left from- and the '>' right from the edit line are in reverse video.
If the edit-line is selected, you can press up cursor key and down left cursor key to browse through older lines you wrote. Also "home" and "end" work like they should.
^A
moves the cursor to the left, ^E moves the cursor to the right ^D deletes the character under the cursor. This is like how the bash-shell behaves.
^U
Clear input line. Press second time to undo clear.
If there's something new in a channel, a '*' is put in front of the server or channel name.
^Q
jump to your next favorite channel (see the "favorite=... ..." configuration file parameter).
^W
lets you jump to the next channel in which new lines were written.
^R
like ^W but searching backwards
^Z
lets you jump to the next channel in which your (nick-)name was mentioned
^X
like ^Z but searching backwards
^T
jump back to the previously selected channel
^O
lets f-irc remove all the *'s
^F
lets you scroll-back in what was written by others
^B
lets you scroll-back in what you wrote. you can then select a line and press enter to copy it to your edit-line
^Y
Enable/disable "only show channels with new messages".
^V
Enter 1 character. Used when entering ascii values < 32, e.g. ^B for bold.
Press
TAB for auto-completion of commands (e.g. /TOPIC, /TIME, etc.) and nick names
Press
^G to close a channel.
Press
^L to redraw the screen.
Press
^C to terminate the program. Or enter /EXIT (or /exit, commands are not case sensitive).
When you enter:
@/... then /... is send
@@... then @... is send
@... then the program will look for a channel/server with '...' in its name and then change the channel to that one. you can enter ^J to let it jump to the next channel with that
^P
add a markerline to the current channel
F2
Store current configuration on disk
F3
Add a new server
F4
Switch to edit-line (shortcut for ^N)
F5
Redraw screen
F6
Search in all windows
F7
Close all channels with only "NOTICE" messages. Those are most oftehn the channels with messages that come from bots and servers.
F8
Configure f-irc
F9
Undo the close of the last closed channel
F10 ^N
Toggle between channel-list, edit-line and word-cloud (if enabled)
F12
Add markerline to all channels on all servers

USAGE

Not only messages but also commands can be entered in the line at the bottom. Above @... was mentioned and also the TAB-completion was mentioned. Apart from that also a couple of commands weere implemented: /ADDSERVER Adds a server
/AWAY
Set yout away status.
/BAN
Ban a user from the current channel.
/CTCP
Send a CTCP command. E.g. /CTCP flok VERSION
/DCCSEND
Send a file to a user using DCC.
/EXIT
Terminate the program.
/IGNORE
Ignore a user.
/INFO
This asks info of an IRC server.
/INVITE
Invite a user to a channel.
/JOIN
Enter a channel.
/KICK
Kick a user from a channel
/LEAVE
Leave a channel. Short-cut is ^G.
/LINKS
Lists servers to which this irc server is connected.
/LIST
Ask server for a list of channels.
/MODE
Sets a mode on a user.
/MSG
Send a private message to a user.
/NICK
Set your nick for that server.
/NOTICE
Send a notice to a user.
/PING
Ping a user.
/SAVECONFIG
Store current configuration on disk.
/SEARCHALL
Search for a text in all channels and servers.
/SPAM
Send a private message to everybody in a channel. People don't like it and you will probably be banned.
/TIME
Ask an IRC server for its notion of time.
/TOPIC
Set the topic of a channel
/UNIGNORE
Un-ignore a user.
/VERSION
Ask parameters of a server.
/WHOIS x
Asks the server who 'x' is.

MISC

F-IRC was written by [email protected]

Please be nice too other people.