James Lu
dda27c1b1c
Show 0 karma in the colour of gold™
2019-10-11 23:23:58 -07:00
jesopo
3fc7294539
exit when all servers are disconnected after ctrl+c
2019-10-11 17:06:37 +01:00
jesopo
0207e8e2b6
Revert "no longer treat ctrl+c as "shutdown" - bitbotctl will take this job"
...
This reverts commit 73e6ede8cc
.
2019-10-11 15:41:51 +01:00
jesopo
73e6ede8cc
no longer treat ctrl+c as "shutdown" - bitbotctl will take this job
2019-10-11 15:39:01 +01:00
jesopo
a5eca53f0a
we need both id
and server
for !disconnect
2019-10-10 18:02:55 +01:00
jesopo
dd94f3a918
'.values()' -> '.items()'
2019-10-10 17:16:00 +01:00
jesopo
0960740aca
dont say a vote has changed when it's been "changed" to the same option
2019-10-10 17:15:03 +01:00
jesopo
c2f075599d
ignore invalid utf8 in markov log imports
2019-10-10 16:36:59 +01:00
jesopo
fe1c2c0205
'channel.find_setting()' -> 'channel.find_settings()'
2019-10-10 15:27:49 +01:00
jesopo
4db34b087d
server.hostmask() already exists
2019-10-10 12:19:34 +01:00
jesopo
d91cd02d34
change badges.py to use utils.datetime_utcnow() - less code dupe
2019-10-10 12:17:10 +01:00
jesopo
0331b763ff
refactor multi-line-to-line normalisation to utils.parse.line_normalise(), use it in rss.py
...
closes #174
2019-10-10 10:33:18 +01:00
jesopo
cf1002a2a9
strip HTML from RSS entry titles
...
closes #174
2019-10-10 10:20:44 +01:00
jesopo
97c439a9d7
!editserver only need an alias to exist, not to be currently connected
2019-10-09 20:56:38 +01:00
panicbit
d069d4b83f
Adjust line splitpoints to word boundaries
2019-10-09 20:54:42 +02:00
jesopo
87a7d74fc3
a chain has failed to generate if the result is the same as the input
2019-10-09 17:54:28 +01:00
jesopo
84ec6d812f
format multi-line toots on a single line using things like double space
2019-10-09 16:44:54 +01:00
jesopo
5aba3f509e
format multi-line tweets on a single line using things like double spaces
2019-10-09 15:35:20 +01:00
jesopo
1e1eeb9b7f
only FORCE_SUCCESS for masterlogin when there's a permissions requirement
2019-10-09 14:29:25 +01:00
jesopo
6b8323b6f5
also split auto-title words on /
2019-10-09 12:58:25 +01:00
jesopo
27da1f314b
[:,] shouldn't be optional because the wider group is
2019-10-09 10:33:31 +01:00
jesopo
7ea434e62e
only accept space between word and modifier for word karma when : or ,
2019-10-09 10:31:56 +01:00
jesopo
a43edd17ae
duck_active should be when the duck spawns
2019-10-08 21:52:26 +01:00
jesopo
90df25cd8d
typo, 'timer.repo()' -> 'timer.redo()'
2019-10-08 17:03:57 +01:00
jesopo
a2ccf85abf
duck-prevent-highlight by default, improve !friends/!enemies query
2019-10-08 16:28:52 +01:00
jesopo
5035a5370c
default !friends/!enemies to be for the current channel
2019-10-08 16:20:52 +01:00
jesopo
44a635b708
prefer url
over id
as it's usually a more user-friendly url
2019-10-08 16:07:35 +01:00
jesopo
921e59e0f8
!isupraw -> !tcpup
2019-10-08 16:02:29 +01:00
jesopo
ee64bfc5fc
look back in logs for URL when non is provided to !isup
2019-10-08 15:56:25 +01:00
jesopo
15782908db
add !isupraw - to check if a tcp connection is possible to a target
...
closes #120
2019-10-08 15:46:15 +01:00
jesopo
4157574516
show $n/$u/$h for ban-format-account help too
2019-10-08 15:08:16 +01:00
jesopo
d0aa1d34f1
don't consume ":"/"," in a karma target
2019-10-08 15:03:24 +01:00
jesopo
a5e489655d
move !which to help.py
2019-10-08 14:48:39 +01:00
jesopo
c547df81dd
add !apropos - to show commands with a given string in them
...
closes #133
2019-10-08 14:45:46 +01:00
jesopo
0226b48b0c
do not permit a space between () and karma modifier
2019-10-08 14:34:14 +01:00
jesopo
1b3ee1cb89
only show twitter url when one was not provided initially
2019-10-08 14:21:15 +01:00
jesopo
37e375c31f
allow !markovfor outside a channel when you share the channel with bitbot
2019-10-08 14:03:09 +01:00
jesopo
355689bb35
send ducks 5-20 seconds after the message that triggered it
2019-10-08 13:57:26 +01:00
jesopo
7a5edccb98
transient timers shouldn't use the event system
2019-10-08 13:49:55 +01:00
jesopo
513f8a1ddd
only show youtu.be url when one was not provided
...
closes #171
2019-10-08 11:39:14 +01:00
jesopo
6a0d41f069
make 'sasl' setting 'sensitive'
2019-10-07 13:12:17 +01:00
jesopo
5c3510fe7c
Setting.format() should effect when you change a setting, mostly for
...
SensitiveSetting
2019-10-07 13:11:58 +01:00
jesopo
50d1eb6b8c
combine find_setting() and find_setting_prefix() on user/channel/server/bot
2019-10-07 12:46:52 +01:00
jesopo
cac8cb7b7e
better help/usage for quote.py commands
...
closes #92
2019-10-04 15:25:53 +01:00
jesopo
3d7f6c9924
only allow !to against users bitbot has seen before
...
closes #111
2019-10-04 15:20:38 +01:00
jesopo
70aceab622
exclude lines with URLs in them from creating markov chains
...
closes #156
2019-10-04 15:14:43 +01:00
jesopo
472b5ba9f0
support !fedi with a URL to a Note
2019-10-04 13:06:29 +01:00
jesopo
8938e119b4
expand apikey
command to list, add, remove and info
...
closes #123
2019-10-04 12:39:36 +01:00
jesopo
843440ac97
preprocess.command returns now need action, message
returns
2019-10-04 12:05:28 +01:00
jesopo
432fd39441
also stop markov chain if we chose None
2019-10-04 11:57:11 +01:00
jesopo
8e4c0f4963
ignore one-char "words" in <title> if they're not a "letter"
2019-10-04 11:20:35 +01:00
jesopo
8f927afdc9
don't auto-title when a URL contains most of it's <title>
2019-10-04 10:52:07 +01:00
jesopo
3466a3c43e
Allow utils.Setting_ parse functions to throw detailed errors
2019-10-04 10:25:48 +01:00
jesopo
7e51165a23
check that third_words
isn't empty
2019-10-04 10:12:52 +01:00
jesopo
95f098b6d6
pass whether a command.regex trigger was an ACTION or not
2019-10-03 16:42:11 +01:00
jesopo
15f28dad1e
only look at PRIVMSG and NOTICE for !seen
2019-10-03 16:02:23 +01:00
jesopo
cee29ba1a5
split words/parens karma in to 2 regexes, only accept non-parens when ^$
...
closes #169
2019-10-03 13:20:35 +01:00
jesopo
db4bb7db56
add !ghcommit and @commit auto-github syntax
2019-10-03 12:09:18 +01:00
jesopo
ec628f4f70
alias
doesnt exist either
2019-10-03 05:19:16 +01:00
jesopo
54e4cd4e74
dont try to !connect to a variable that doesnt exist
2019-10-03 05:15:30 +01:00
Aron Heinecke
028c7758c9
Fix typo
2019-10-02 00:37:59 +02:00
jesopo
afb07f6531
only check arg number at all when not "$-"
2019-09-30 16:33:21 +01:00
jesopo
a9021813e5
first_word.lower() -> first_words[0].lower()
2019-09-30 16:31:13 +01:00
jesopo
f49f34a98f
first_word -> first_words, better if statement
2019-09-30 16:28:57 +01:00
jesopo
3c60de8164
support multiple first_words
2019-09-30 16:27:29 +01:00
jesopo
a75802129f
allow whitespace between karma target and ++/--
2019-09-30 15:36:13 +01:00
jesopo
f306213cb8
'is_localhost()' -> 'host_permitted()'
2019-09-30 15:15:20 +01:00
jesopo
1d34363db4
default sasl-hard-fail to false but add a bot-wide setting for it
2019-09-30 10:41:57 +01:00
jesopo
7d3521395e
add github-token to bot.conf.example, use in github.py when available
2019-09-30 10:35:36 +01:00
jesopo
0a1a3551a2
support "$-" for alias arg, meaning "0 or more args"
2019-09-30 10:15:12 +01:00
jesopo
bc63111984
add !msg
2019-09-27 16:18:49 +01:00
jesopo
514b0126f2
Revert "add !msg"
...
This reverts commit ddaf8a3890
.
2019-09-27 16:16:50 +01:00
jesopo
ddaf8a3890
add !msg
2019-09-27 16:14:39 +01:00
jesopo
2493cfa487
Merge pull request #164 from chiefnoah/master
...
Improves sentence processing for karma
2019-09-27 14:32:59 +01:00
Noah Pederson
c3f95130a3
Some minor cleanup
2019-09-27 07:32:09 -06:00
jesopo
c04ed5875d
pass username/hostname to get_user() so new.user events have that information
2019-09-27 12:54:20 +01:00
jesopo
54d874ddee
take an option server alias arg for !reconnect
...
closes #166
2019-09-27 12:35:28 +01:00
jesopo
efeffb62a9
!changenickname -> !nickname
2019-09-27 12:26:14 +01:00
jesopo
c332ccc1aa
add require_access flags to !silence/!unsilence
2019-09-26 17:56:10 +01:00
jesopo
3c2aef52f6
update username/hostname of Users when they send PRIVMSG/NOTICE/TAGMSG
2019-09-26 17:47:45 +01:00
jesopo
0f87c3c56e
add check_certificate.py, to warn about expiring or not valid client certs
2019-09-26 16:03:23 +01:00
jesopo
f7455e6347
capitalisation and comma for "!stats <alias>"
2019-09-26 14:59:26 +01:00
jesopo
2c8b3749cf
default !roll to 1d6
2019-09-26 14:48:05 +01:00
jesopo
17c899fb70
make dice count optional (default 1)
2019-09-26 14:32:48 +01:00
jesopo
c5b9a13b53
Show dice format error when regex doesn't match
2019-09-26 14:32:20 +01:00
jesopo
ab51bbaefa
only permit 3-digit modifiers
2019-09-26 14:31:38 +01:00
jesopo
0c211528ef
also show "total" when there's modifiers
2019-09-26 14:22:56 +01:00
jesopo
e2ececa9fd
fine. support up to d100
2019-09-26 14:15:54 +01:00
jesopo
3f71674369
allow up to d30, not just d20
2019-09-26 14:09:59 +01:00
jesopo
55c354cebb
add !dice as an alias of !roll
2019-09-26 14:06:58 +01:00
jesopo
d6fa786806
!k should be alias_of !kick
2019-09-26 14:06:47 +01:00
jesopo
8dc415fa4b
support +/- modifiers on dice !roll
2019-09-26 14:04:59 +01:00
jesopo
6cfab3f344
allow !grab for 1 to 3 most recent lines (default is 1)
2019-09-26 13:47:17 +01:00
jesopo
3be9029669
add !action to echo.py
2019-09-26 12:27:20 +01:00
jesopo
30588da3a7
returned
is now a tuple; we want message
2019-09-26 12:19:50 +01:00
jesopo
3c1a313ef2
'require-mode'/'require-access' -> 'require_mode'/'require_access'
...
closes #161
2019-09-26 12:15:35 +01:00
jesopo
2e80b223de
allow all preprocess.command and check.command failures to have a message
2019-09-26 12:14:55 +01:00
jesopo
1da8e15b78
!echo should have a min_args kwarg
2019-09-26 11:56:37 +01:00
jesopo
4bb20c49dd
make !silence effect min_args and unknown-command
...
closes #160
2019-09-26 11:56:14 +01:00
Noah Pederson
f70e46a198
Improves sentence processing for karma
...
Changes the matching regex to grab arbitrary text between ()
for giving (or taking away) karma. Still supports single words
followed by ++/--, including usernames, and strips "," or ":"
characters from the end if a single-word match.
ex. (some sentence to give karma to)++ -> "[Karma] some sentence to give
karma to now has 1 karma"
ex. ngp:++ -> "[Karma] ngp now has 200 karma"
2019-09-26 05:50:10 -05:00