masshl.py fixes

This commit is contained in:
wowaname 2016-08-20 06:17:44 +00:00
parent cd9c301f67
commit 432ca3ea75

View File

@ -43,7 +43,6 @@ class Loop():
i += 1 i += 1
if self.N_param: if self.N_param:
N_nicks += " %s" % nick N_nicks += " %s" % nick
weechat.prnt("", "%s ; %s" % (nick, self.nicks[-1]))
if (nick != self.nicks[-1] and if (nick != self.nicks[-1] and
len(output) + len(N_nicks) + len(self.nicks[i]) < 300): len(output) + len(N_nicks) + len(self.nicks[i]) < 300):
continue continue
@ -52,9 +51,9 @@ class Loop():
output = output.replace("%N",N_nicks) output = output.replace("%N",N_nicks)
output = output.replace("%r","%08x" % random.randint(0,0xffffffff)) output = output.replace("%r","%08x" % random.randint(0,0xffffffff))
if self.input_method == "keybinding": if self.input_method == "keybinding":
weechat.buffer_set(self.buffer, "input", output) #.encode("UTF-8")) weechat.buffer_set(self.buffer, "input", output)
else: else:
weechat.command(self.buffer, output) #.encode("UTF-8")) weechat.command(self.buffer, output)
# sleep(self.delay) # sleep(self.delay)
output = self.input output = self.input
N_nicks = "" N_nicks = ""
@ -62,13 +61,6 @@ class Loop():
def masshl_cmd_cb(data, buffer, args): def masshl_cmd_cb(data, buffer, args):
input = args input = args
# do we need to loop a bit before printing, or can we send after each nick?
N_param = "%N" in input
if not N_param and "%n" not in input and "%r" not in input:
# if we bind this to Enter key, we don't want useless flooding on
# normal messages
return weechat.WEECHAT_RC_OK
input_method = "command" input_method = "command"
server = weechat.buffer_get_string(buffer, 'localvar_server') server = weechat.buffer_get_string(buffer, 'localvar_server')
channel = weechat.buffer_get_string(buffer, 'localvar_channel') channel = weechat.buffer_get_string(buffer, 'localvar_channel')
@ -77,6 +69,12 @@ def masshl_cmd_cb(data, buffer, args):
input = (input + ' ' if input else '') + weechat.buffer_get_string(buffer, "input") input = (input + ' ' if input else '') + weechat.buffer_get_string(buffer, "input")
input_method = "keybinding" input_method = "keybinding"
N_param = "%N" in input
if not N_param and "%n" not in input and "%r" not in input:
# if we bind this to Enter key, we don't want useless flooding on
# normal messages
return weechat.WEECHAT_RC_OK
optstop = input and input[0] == '-' and input.find(' ') optstop = input and input[0] == '-' and input.find(' ')
opts = input[1:optstop] if optstop else '' opts = input[1:optstop] if optstop else ''
cmdstop = 'd' in opts and input.find(' ', optstop+1) cmdstop = 'd' in opts and input.find(' ', optstop+1)
@ -100,6 +98,8 @@ def masshl_cmd_cb(data, buffer, args):
while weechat.infolist_next(nicklist): while weechat.infolist_next(nicklist):
nicks.append(weechat.infolist_string(nicklist, "name")) nicks.append(weechat.infolist_string(nicklist, "name"))
weechat.infolist_free(nicklist)
workhorse = Loop(buffer, nicks, input, input_method, N_param, delay, opts) workhorse = Loop(buffer, nicks, input, input_method, N_param, delay, opts)
workhorse.run() workhorse.run()