summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/degesch/slack.lua15
1 files changed, 10 insertions, 5 deletions
diff --git a/plugins/degesch/slack.lua b/plugins/degesch/slack.lua
index 456d3b0..87786da 100644
--- a/plugins/degesch/slack.lua
+++ b/plugins/degesch/slack.lua
@@ -85,12 +85,17 @@ degesch.hook_completion (function (hook, data, word)
local needle = word:gsub ("^@", ""):lower ()
local t = {}
- for i, chan_user in ipairs (chan.users) do
- local nick = chan_user.user.nickname
- if data.location == 0 then nick = nick .. ":" end
- if nick:sub (1, #needle):lower () == needle then
- table.insert (t, "@" .. nick)
+ local try = function (name)
+ if data.location == 0 then name = name .. ":" end
+ if name:sub (1, #needle):lower () == needle then
+ table.insert (t, "@" .. name)
end
end
+ for _, chan_user in ipairs (chan.users) do
+ try (chan_user.user.nickname)
+ end
+ for _, special in ipairs { "channel", "here" } do
+ try (special)
+ end
return t
end)