Commit graph

112 commits

Author SHA1 Message Date
jesopo
b3b8c6534b Remove debug prints 2019-06-18 16:51:00 +01:00
jesopo
621830c360 Simplify SentLine by shifting truncation to ParsedLine (and commands.outs) 2019-06-18 14:14:37 +01:00
jesopo
98e1202c78 Allow command.regex hooks to opt-in to being triggered from a /me
closes #68
2019-06-16 18:40:25 +01:00
jesopo
c9de95f44a forgot to pass stdout and stderr to command callbacks! 2019-06-16 09:51:45 +01:00
jesopo
8ab4880c5c Change from yield checks to a func in events that pass up EventErrors 2019-06-15 18:42:14 +01:00
jesopo
3fad17d1b9 catch StopIteration.value, pass back EventError that comes from a generator 2019-06-14 12:48:26 +01:00
jesopo
f614d1fc14 add self check.command, change !config to use new yields 2019-06-14 12:09:42 +01:00
jesopo
f05fc209b0 Add a way to __or__ utils.Checks, as a "if one of these passes" thing 2019-06-14 12:01:55 +01:00
jesopo
d7fa2cfa24 Catch yields in command callbacks for e.g. permission checks 2019-06-14 11:42:12 +01:00
jesopo
53907b57d7 command-out truncation logic should be referencing sent_line 2019-06-10 11:21:59 +01:00
jesopo
6c5dc958d0 Add .assure() to ParsedLine, to make it immune from .valid() 2019-06-10 10:45:02 +01:00
jesopo
321bd7acf4 check stdout/stderr has_text() before .send() gets rid of it 2019-06-07 16:21:19 +01:00
jesopo
b1d07859c3 actually return ret 2019-06-07 16:21:11 +01:00
jesopo
8e6835be3c Only show typing indicators for commands that expect output 2019-06-07 15:57:15 +01:00
jesopo
5f47d86708 Send +draft/typing tag when processing commands 2019-06-07 15:30:53 +01:00
jesopo
d281f5ef17 Remove +draft/typing TAGMSG - that was for testing 2019-06-06 21:16:39 +01:00
jesopo
f96378ac07 move immediate-write-trigger to IRCServer.py, trigger _event_loop for
running=False
2019-06-06 17:58:35 +01:00
jesopo
6f27879d1b Send +draft/typing before processing command. WIP 2019-06-06 17:31:11 +01:00
jesopo
268c5adb3c Add depends-on hashflags to relevant modules 2019-05-25 21:40:06 +01:00
jesopo
61af81c9de Add comment about why we strip non-alnum chars from private commands 2019-05-23 16:10:31 +01:00
jesopo
4b5f839231 Forgot not so it was stripping alnum chars, not non-almun chars 2019-05-23 16:05:41 +01:00
jesopo
0a23e71e4e .lstrip alphanumeric chars from private commands 2019-05-23 16:03:49 +01:00
jesopo
9df7b80d00 pass the command_prefix that triggered an event through event kwargs 2019-05-23 11:44:52 +01:00
jesopo
cf29c37112 Add usage examples for all settings 2019-05-23 10:28:14 +01:00
jesopo
5ab4c6cbff target_str is BitBot's own nickname for private messages 2019-05-22 14:26:22 +01:00
jesopo
0dbf44a681 Default taget_str in send.stdout/send.stderr to target.name 2019-05-22 08:24:59 +01:00
jesopo
fe67edecac change arg order for StdOut(/StdErr( in send.stdout/send.stderr events 2019-05-21 23:16:54 +01:00
jesopo
d003b8eb57 change position of target_str in self.command args 2019-05-21 23:14:56 +01:00
jesopo
6d44db6065 Remove references to STATUSMSG - just pass around a raw target_str (target
without statusmsg chars stripped off)
2019-05-21 23:09:32 +01:00
jesopo
7ddc539ea6 don't overwrite tags var 2019-05-21 13:02:40 +01:00
jesopo
11e5cc50c4 Keep commands/outs.py tags-agnostic 2019-05-21 12:56:05 +01:00
jesopo
02998efc43 Actually pass args_split in to _find_command_hook 2019-05-20 06:42:17 +01:00
jesopo
c9b9827c14 take/return args_split from _find_command_hook, for alias replacing 2019-05-20 06:39:58 +01:00
jesopo
5ed9185fb5 Remove now-unneeded call to .buffer.skip_next() after a preprocess.command
failure
2019-05-19 17:53:21 +01:00
jesopo
9d89d7198e target doesn't exist in message handlers 2019-05-19 17:36:31 +01:00
jesopo
db3525778e Only buffer.skip() for non-regex commands 2019-05-19 17:34:14 +01:00
jesopo
8be178f406 Use re.search, not re.match, for command.regex hooks 2019-05-19 08:41:20 +01:00
jesopo
4e0e63e7f8 Hand over regex-based-command responsibilities to commands module 2019-05-18 18:35:47 +01:00
jesopo
278d6f02d6 Don't collect preprocess.command errors after we get a HARD_FAIL 2019-05-15 16:41:49 +01:00
jesopo
5ca9ae550d msgid has been ratified 2019-05-15 08:45:59 +01:00
jesopo
7ed4d5fa03 draft/msgid isn't ratified quite yet 2019-05-14 23:07:55 +01:00
jesopo
421d9c10c7 Add utils.irc.MessageTag and use it for both draft and ratified msgid 2019-05-14 13:02:45 +01:00
jesopo
73052ddc49 Update !help usage string 2019-05-11 17:07:24 +01:00
jesopo
81bb0242fe Change !help to be !help <module> <command> 2019-05-10 16:11:53 +01:00
jesopo
543a01882b Don't parse '/me's as commands 2019-05-06 23:26:13 +01:00
jesopo
c11afedba9 Add !serverunignore 2019-05-06 17:17:06 +01:00
jesopo
96550eaef0 put permission control on !serverignore, don't rely on setting default of None 2019-05-06 17:16:48 +01:00
jesopo
a368bc018a server -> event["server"] 2019-05-06 17:13:09 +01:00
jesopo
8312efcc1c Pass server param to _is_ignored 2019-05-06 17:12:05 +01:00
jesopo
0114d35d4c Add a mechanism to ignore specific commands for a whole network 2019-05-06 17:08:56 +01:00
jesopo
44b15073e7 No longer prefix stderr with "!", it doesn't really make sense 2019-04-30 22:45:52 +01:00
jesopo
677b488ab0 Typo in commands/outs.py, 'methd' -> 'method' 2019-04-30 22:45:37 +01:00
jesopo
df39570d4a Add ability to ignore users per-command 2019-04-27 14:49:45 +01:00
jesopo
f8e933d4cc Delete 'ignore' setting when unignoring so it doesn't hold space in the database
but still defaults to false
2019-04-26 07:57:20 +01:00
jesopo
cf9898d5bd Support continuous alias arg replacements (e.g. "index 1 onwards" using "$1-") 2019-04-14 21:54:02 +01:00
jesopo
8c94bcf6ca Move utils.irc.IRCParsedLine to IRCLine.ParsedLine, improve truncation
mechanism, don't convert sent line from ParsedLine to text to ParsedLine for
line_handler handling
2019-02-23 21:33:04 +00:00
jesopo
dec3485071 Clear command Out text when there's nothing left to send 2019-02-22 17:47:25 +00:00
jesopo
9408cc9487 Typo, 'ValuError' -> 'ValueError' 2019-02-22 17:44:46 +00:00
jesopo
bb4ec082dd Let IRCLine.Line handle truncating command output 2019-02-10 20:49:59 +00:00
jesopo
90618e883b Move REGEX_CUTOFF to outs.py (commands) 2019-02-09 17:52:51 +00:00
jesopo
1ff2a00c48 Move StdOut/StdErr specific consts to outs.py (commands) 2019-02-09 17:50:40 +00:00
jesopo
6b042d9460 Split command StdOut/StdErr in to their own file (commands) 2019-02-09 17:49:01 +00:00