equal
deleted
inserted
replaced
1 |
1 |
2 -- ROOM NICK COMPLETION |
2 -- ROOM NICK COMPLETION |
3 |
3 |
|
4 -- global |
4 room_cid = main.command ( 'priv', |
5 room_cid = main.command ( 'priv', |
5 function ( args ) |
6 function ( args ) |
6 main.run ( 'room privmsg ' .. args ) |
7 main.run ( 'room privmsg ' .. args ) |
7 end, false, {} ) |
8 end, false, {} ) |
8 |
9 |
9 commands_help['priv'] = "nick message\n\nSends private message to room participant. Nick completion available! ;)" |
10 commands_help['priv'] = "nick message\n\nSends private message to room participant. Nick completion available! ;)" |
10 |
11 |
11 registered_nicks = {} |
12 local registered_nicks = {} |
12 |
13 |
13 function register_nicks () |
14 -- global, used in binding |
|
15 function room_priv_register_nicks () |
14 for k, nick in pairs ( registered_nicks ) do |
16 for k, nick in pairs ( registered_nicks ) do |
15 main.del_completion ( room_cid, nick ) |
17 main.del_completion ( room_cid, nick ) |
16 end |
18 end |
17 local buddy = main.current_buddy () |
19 local buddy = main.current_buddy () |
18 if buddy then |
20 if buddy then |
27 end |
29 end |
28 end |
30 end |
29 end |
31 end |
30 end |
32 end |
31 |
33 |
32 room_priv_pgup_action = main.binding ( '338' ) |
34 -- XXX |
33 room_priv_pgdn_action = main.binding ( '339' ) |
35 local room_priv_pattern = "roster%s+(up|down)" |
34 main.binding ( '338', ('lua main.run ( %q ); register_nicks ()'):format ( room_priv_pgup_action ) ) |
36 local room_priv_restore = {} |
35 main.binding ( '339', ('lua main.run ( %q ); register_nicks ()'):format ( room_priv_pgdn_action ) ) |
37 for key, binding in pairs ( main.binding () ) do |
|
38 if binding:match ( room_priv_pattern ) then |
|
39 room_priv_restore[key] = binding |
|
40 main.binding ( key, ('lua main.run ( %q ); room_priv_register_nicks ()'):format ( binding ) |
|
41 end |
|
42 end |
36 |
43 |
37 hooks_d['hook-quit'].room_priv = |
44 hooks_d['hook-quit'].room_priv = |
38 function ( args ) |
45 function ( args ) |
39 main.binding ( '338', room_priv_pgup_action ) |
46 for key, binding in pairs ( room_priv_restore ) do |
40 main.binding ( '339', room_priv_pgdn_action ) |
47 main.binding ( key, binding ) |
|
48 end |
41 end |
49 end |
42 |
50 |
43 -- vim: se ts=4: -- |
51 -- vim: se ts=4: -- |