slack.lua: support @here and @channel

This commit is contained in:
Přemysl Eric Janouch 2017-05-18 10:44:36 +02:00
parent f744681b17
commit 156ea32a90
Signed by: p
GPG Key ID: B715679E3A361BE6

View File

@ -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)