187 lines
		
	
	
		
			7.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			187 lines
		
	
	
		
			7.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
urk 0.-1.cvs
 | 
						|
http://urk.sourceforge.net/
 | 
						|
 | 
						|
 | 
						|
Overview:
 | 
						|
 | 
						|
urk is an IRC client written purely in python for linux/gnome. It has a powerful
 | 
						|
built-in scripting system (also python), which is used to implement much of the
 | 
						|
client.
 | 
						|
 | 
						|
 | 
						|
Requirements/User installation:
 | 
						|
 | 
						|
urk requires the following packages (and should run on any os that can provide 
 | 
						|
them):
 | 
						|
-python version 2.4 or greater (www.python.org)
 | 
						|
-pygtk 2.6 or greater (www.pygtk.org)
 | 
						|
 | 
						|
Most Linux (or at least GNOME) users should have these things already or be able
 | 
						|
to easily install them.
 | 
						|
 | 
						|
Because urk is pure python, no compilation of urk is required. Just extract the 
 | 
						|
source to somewhere and run 'python urk.py'.
 | 
						|
 | 
						|
Windows versions of the above should theoretically work but may not in practice.
 | 
						|
I am hoping someone will come along and actually support urk on windows.
 | 
						|
 | 
						|
 | 
						|
Optional requirements:
 | 
						|
 | 
						|
urk can also make use of these packages if you have them:
 | 
						|
-pygtksourceview, part of gnome-python-extras <=2.12 and gnome-python-desktop 
 | 
						|
 >=2.14, for source highlighting and undo in the internal script editor
 | 
						|
-python-dbus, for, well, not much (if dbus is available, urk only makes a single
 | 
						|
 instance per session, and commands can be executed remotely by calling urk.py)
 | 
						|
 | 
						|
 | 
						|
Getting started:
 | 
						|
 | 
						|
Make sure you have all the requirements, go to the directory where you have
 | 
						|
extracted the source, and type 'python urk.py'.
 | 
						|
 | 
						|
We don't have any preferences windows yet. You can change your nickname by
 | 
						|
typing '/nick nickname' (replacing nickname with the nick you want to use)
 | 
						|
or typing a new nick in the nick field on the lower right corner and pressing 
 | 
						|
enter.
 | 
						|
 | 
						|
To connect, type '/server irc.gamesurge.net' (replacing irc.gamesurge.net with 
 | 
						|
the server you want to connect to).
 | 
						|
 | 
						|
If you want to connect to another server (without disconnecting the current
 | 
						|
one), use the -m switch as in '/server -m irc.gamesurge.net'.
 | 
						|
 | 
						|
To join a channel when you're connected to a server, type '/join #channelname',
 | 
						|
replacing #channelname with the channel you want to join.
 | 
						|
 | 
						|
urk currently only supports the bare minimum commands and features you should
 | 
						|
need to connect and chat normally. On channels, you can send messages by
 | 
						|
typing them (if you want to send a message that starts with a /, use /say to
 | 
						|
send your message). You can send actions to channels with /me and send messages
 | 
						|
to arbitrary targets with /msg. If urk does not recognize a command, it will
 | 
						|
send it to the server. This works to implement most commands you would expect
 | 
						|
on an irc client.
 | 
						|
 | 
						|
 | 
						|
Configuration:
 | 
						|
 | 
						|
Most configuration has to be done manually. If urk is running, you can configure
 | 
						|
it using commands. The settings are stored in urk.conf on your profile
 | 
						|
directory, which you can locate by typing '/pyeval urk.userpath' in urk.
 | 
						|
 | 
						|
To set a value in urk, type
 | 
						|
 | 
						|
/pyexec conf.conf['setting'] = value
 | 
						|
 | 
						|
To see the current value, type
 | 
						|
 | 
						|
/pyeval conf.conf['setting']
 | 
						|
 | 
						|
To unset a value (meaning urk will use the default), type
 | 
						|
 | 
						|
/pyexec del conf.conf['setting']
 | 
						|
 | 
						|
Setting:            Description:
 | 
						|
 | 
						|
'nick'                 The nickname urk should use. The default is to try to get
 | 
						|
    it from the os. Put this in quotes when you set it.
 | 
						|
 | 
						|
'altnicks'             A list of alternative nicknames to use. The default is
 | 
						|
    an empty list.
 | 
						|
 | 
						|
'quitmsg'              The message people see when you quit. The default is to
 | 
						|
    advertise urk with your current version; we have to promote it somehow.
 | 
						|
    This value needs to be in quotes.
 | 
						|
 | 
						|
'autoreconnect'        If True, urk will try to reconnect when you're
 | 
						|
    disconnected from a network. Defaults to True. Set this to True or False.
 | 
						|
 | 
						|
'highlight_words'      A list of words, in addition to your nick, that cause a
 | 
						|
    highlight event (normally the tab label turns blue and, if it's available,
 | 
						|
    the tray icon shows up). For example: ['python', 'whale', 'peanut butter']
 | 
						|
 | 
						|
'log_dir'              The place where logs are written. The default is a
 | 
						|
    directory called "logs" on your profile directory.
 | 
						|
 | 
						|
'ui-gtk/tab-pos'       The side of the window where the tabs will reside
 | 
						|
    2 for top
 | 
						|
    0 for left
 | 
						|
    1 for right
 | 
						|
    3 for bottom (default)
 | 
						|
 | 
						|
'ui-gtk/show-menubar'  If True, the menubar is shown. The default is True. Set
 | 
						|
    this to True or False.
 | 
						|
 | 
						|
'command_prefix'       The prefix used to signal a command. Defaults to '/'
 | 
						|
 | 
						|
'font'                 The font used for output. Defaults to "sans 8".
 | 
						|
 | 
						|
'bg_color'             The background color ("black" or "#000000").
 | 
						|
 | 
						|
'fg_color'             The foreground color ("white" or "#ffffff").
 | 
						|
 | 
						|
'timestamp'            A timestamp that will show up before messages. The
 | 
						|
    default is no timestamp. A simple timestamp with hours and minutes is
 | 
						|
    "[%H:%M] ". See http://docs.python.org/lib/module-time.html#l2h-1955 for
 | 
						|
    a key to format this string.
 | 
						|
 | 
						|
'start-console'        If True, urk will start up with a special console window
 | 
						|
    that shows debugging output (normally sent to a terminal) and accepts
 | 
						|
    python expressions. Defaults to False.
 | 
						|
 | 
						|
'status'               If True, urk will be in status window mode. Each network
 | 
						|
    will ALWAYS have a status window. When not in status window mode, networks 
 | 
						|
    only have a status window when there are no channel windows. Defaults to 
 | 
						|
    False.
 | 
						|
 | 
						|
'open-file-command'    The command used to open files and url's with your 
 | 
						|
    preferred application (such as "gnome-open"). This is ignored on Windows, 
 | 
						|
    and you should never need to mess with this, ever.
 | 
						|
 | 
						|
 | 
						|
System-wide installation:
 | 
						|
 | 
						|
Not yet implemented.
 | 
						|
 | 
						|
 | 
						|
About scripting:
 | 
						|
 | 
						|
urk scripts are python source files that contain definitions of functions with 
 | 
						|
certain "magic" names, like onText (for when someone sends a channel or private 
 | 
						|
message). See www.python.org for help on writing python code. The format for 
 | 
						|
onText is:
 | 
						|
 | 
						|
def onText(e):
 | 
						|
    code
 | 
						|
 | 
						|
e is an object used to pass on the various information relating to the event
 | 
						|
that triggered the function. The name is a convention we use, much like self.
 | 
						|
 | 
						|
e.source is the nickname of the person who sent the message.
 | 
						|
 | 
						|
e.target is the nickname or channel that received the message.
 | 
						|
 | 
						|
e.text is the text of the message.
 | 
						|
 | 
						|
e.network is an object representing the network where the message was sent.
 | 
						|
 | 
						|
e.window is a window that seems to be related to the event for some unspecified
 | 
						|
reason. It could be the status window, a channel window, a query, anything.
 | 
						|
 | 
						|
Complete documentation doesn't exist yet. Sorry. Ask us or look at the source. theme.py is good for finding event names.
 | 
						|
 | 
						|
 | 
						|
Bugs/Feedback:
 | 
						|
 | 
						|
Naturally, feedback of any sort is welcome. Of course we want to know about
 | 
						|
bugs. In particular, we'd also like to hear about any features you want or
 | 
						|
expect in an irc client that urk doesn't have. While we'd like to limit the
 | 
						|
things that go in the default client (a notify list, for example, is something
 | 
						|
we'd want to see as an external script, not as part of the default setup, and
 | 
						|
something we're not likely to implement soon), there are probably a lot of 
 | 
						|
little things that we may have skipped over because we don't use them or have 
 | 
						|
become used to urk not having them.
 | 
						|
 | 
						|
The best way to get in touch with us is by irc, at #urk on irc.gamesurge.net.
 | 
						|
Or send a message to the mailing list, urk-discussion@lists.sourceforge.net.
 |