plugins/wtf_plugin.py
author Mikael Berthe <mikael@lilotux.net>
Tue, 01 May 2007 23:59:21 +0200
changeset 17 069f7fd5545d
parent 12 d79701227a04
child 21 2fea9969b088
permissions -rw-r--r--
Fix permissions
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     1
#$ neutron_plugin 01
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     2
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     3
import re
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     4
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     5
WTF_FILE = 'static/wtf.txt'
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     6
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     7
def handler_wtf(type, source, parameters):
12
d79701227a04 Small improvement to wtf_plugin
Mikael Berthe <mikael@lilotux.net>
parents: 10
diff changeset
     8
	parameters = parameters.rstrip(" ?\n").lstrip()
10
7de2fee2986f Improve coding style
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
     9
	word = parameters.upper() + "\t"
0
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    10
10
7de2fee2986f Improve coding style
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
    11
	if not parameters:
7de2fee2986f Improve coding style
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
    12
		smsg(type, source, "Gimme an acronym!")
7de2fee2986f Improve coding style
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
    13
		return
7de2fee2986f Improve coding style
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
    14
12
d79701227a04 Small improvement to wtf_plugin
Mikael Berthe <mikael@lilotux.net>
parents: 10
diff changeset
    15
	reply = ''.join(line for line in file(WTF_FILE) \
d79701227a04 Small improvement to wtf_plugin
Mikael Berthe <mikael@lilotux.net>
parents: 10
diff changeset
    16
		if line.startswith(word))
0
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    17
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    18
	if not reply:
10
7de2fee2986f Improve coding style
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
    19
		reply = "Sorry, I don't know what " + parameters + " means..."
12
d79701227a04 Small improvement to wtf_plugin
Mikael Berthe <mikael@lilotux.net>
parents: 10
diff changeset
    20
	else:
d79701227a04 Small improvement to wtf_plugin
Mikael Berthe <mikael@lilotux.net>
parents: 10
diff changeset
    21
		reply= re.sub("\t+", ": ", reply.rstrip())
0
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    22
12
d79701227a04 Small improvement to wtf_plugin
Mikael Berthe <mikael@lilotux.net>
parents: 10
diff changeset
    23
	smsg(type, source, reply)
0
93b25987d3e5 Initial Mercurial repository
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    24
10
7de2fee2986f Improve coding style
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
    25
register_command_handler(handler_wtf, 'wtf', 0,
7de2fee2986f Improve coding style
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
    26
                         'Translates acronyms for you', 'wtf', ['wtf wtf'])