summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormathieui <mathieui@mathieui.net>2014-04-11 01:25:00 +0200
committermathieui <mathieui@mathieui.net>2014-04-11 01:25:00 +0200
commit04aa6c89145dfc8aaa5c2e418e01419af9471726 (patch)
treef05dffc641237c4cb9e96d83c703c52ee96b3e1e
parent0847643b548d1f5014c1af56a86c0e6c2d7ce92f (diff)
downloadpoezio-04aa6c89145dfc8aaa5c2e418e01419af9471726.tar.gz
poezio-04aa6c89145dfc8aaa5c2e418e01419af9471726.tar.bz2
poezio-04aa6c89145dfc8aaa5c2e418e01419af9471726.tar.xz
poezio-04aa6c89145dfc8aaa5c2e418e01419af9471726.zip
Fix #2428 (complete fulljids on /version in MUCs)
also clean up some newlines mess
-rw-r--r--src/core/completions.py18
-rw-r--r--src/tabs/muctab.py7
2 files changed, 13 insertions, 12 deletions
diff --git a/src/core/completions.py b/src/core/completions.py
index cc3dd381..1df8d23d 100644
--- a/src/core/completions.py
+++ b/src/core/completions.py
@@ -24,6 +24,7 @@ def completion_help(self, the_input):
commands = sorted(self.commands.keys()) + sorted(self.current_tab().commands.keys())
return the_input.new_completion(commands, 1, quotify=False)
+
def completion_status(self, the_input):
"""
Completion of /status
@@ -42,6 +43,7 @@ def completion_presence(self, the_input):
elif arg == 2:
return the_input.auto_completion([status for status in possible_show], '', quotify=True)
+
def completion_theme(self, the_input):
""" Completion for /theme"""
themes_dir = config.get('themes_dir', '')
@@ -69,6 +71,7 @@ def completion_win(self, the_input):
l = [i[1] for i in l]
return the_input.new_completion(l, 1, '', quotify=False)
+
def completion_join(self, the_input):
"""
Completion for /join
@@ -136,11 +139,8 @@ def completion_join(self, the_input):
def completion_version(self, the_input):
"""Completion for /version"""
- n = the_input.get_argument_position(quoted=True)
- if n >= 2:
- return
comp = reduce(lambda x, y: x + [i.jid for i in y], (roster[jid].resources for jid in roster.jids() if len(roster[jid])), [])
- return the_input.new_completion(sorted(comp), 1, '', quotify=True)
+ return the_input.new_completion(sorted(comp), 1, quotify=False)
def completion_list(self, the_input):
@@ -153,7 +153,6 @@ def completion_list(self, the_input):
return the_input.new_completion(muc_serv_list, 1, quotify=False)
-
def completion_move_tab(self, the_input):
"""Completion for /move_tab"""
n = the_input.get_argument_position(quoted=True)
@@ -163,8 +162,6 @@ def completion_move_tab(self, the_input):
return the_input.new_completion(nodes, 1, ' ', quotify=True)
-
-
def completion_runkey(self, the_input):
"""
Completion for /runkey
@@ -207,16 +204,19 @@ def completion_bookmark(self, the_input):
muc_list.append('*')
return the_input.new_completion(muc_list, 1, quotify=True)
+
def completion_remove_bookmark(self, the_input):
"""Completion for /remove_bookmark"""
return the_input.new_completion([bm.jid for bm in bookmark.bookmarks], 1, quotify=False)
+
def completion_decline(self, the_input):
"""Completion for /decline"""
n = the_input.get_argument_position(quoted=True)
if n == 1:
return the_input.auto_completion(sorted(self.pending_invites.keys()), 1, '', quotify=True)
+
def completion_bind(self, the_input):
n = the_input.get_argument_position()
if n == 1:
@@ -245,7 +245,6 @@ def completion_message(self, the_input):
return the_input.new_completion(comp, 1, '', quotify=True)
-
def completion_invite(self, the_input):
"""Completion for /invite"""
n = the_input.get_argument_position(quoted=True)
@@ -348,8 +347,6 @@ def completion_set(self, the_input):
return the_input.new_completion(end_list, n, quotify=True)
-
-
def completion_bookmark_local(self, the_input):
"""Completion for /bookmark_local"""
n = the_input.get_argument_position(quoted=True)
@@ -378,4 +375,3 @@ def completion_bookmark_local(self, the_input):
muc_list.append('*')
return the_input.new_completion(muc_list, 1, quotify=True)
-
diff --git a/src/tabs/muctab.py b/src/tabs/muctab.py
index 8953d075..4cd18f03 100644
--- a/src/tabs/muctab.py
+++ b/src/tabs/muctab.py
@@ -16,6 +16,7 @@ import curses
import os
import random
from datetime import datetime
+from functools import reduce
from . import ChatTab, Tab
@@ -206,7 +207,11 @@ class MucTab(ChatTab):
compare_users = lambda x: x.last_talked
userlist = [user.nick for user in sorted(self.users, key=compare_users, reverse=True)\
if user.nick != self.own_nick]
- return the_input.auto_completion(userlist, quotify=False)
+ comp = sorted(reduce(lambda x, y: x + [i.jid for i in y],
+ (roster[jid].resources for jid in roster.jids() if len(roster[jid])),
+ []))
+ userlist.extend(comp)
+ return the_input.new_completion(userlist, 1, quotify=False)
def completion_info(self, the_input):
"""Completion for /info"""