Pragmatic Software
13b09be29a
Commands/Factoids: factchange
: handle escaped delimiters
2023-02-23 13:16:17 -08:00
Pragmatic Software
8d5b992b4c
Update copyright
2023-02-20 21:31:52 -08:00
Pragmatic Software
1eaf85239f
NickList: handle nickchange before any other handlers
2023-02-13 16:27:26 -08:00
Pragmatic Software
21d06bc149
IRC: do not debug PONG events
2023-02-13 16:06:24 -08:00
Pragmatic Software
7da7883d9d
pbot-vm: guest-gdb: stricter match for main()
2023-02-09 21:04:30 -08:00
Pragmatic Software
224a00949a
pbot-vm: guest-gdb: fix potential undefined $start
when optimizations are enabled
2023-02-09 13:39:10 -08:00
Pragmatic Software
47d8f5724a
Check for bans when CHGHOST
...
Remove redundant message type from log message
2023-02-02 09:22:51 -08:00
Pragmatic Software
9f314cd365
Enable aka_debug
because AKA log entries are interesting
2023-02-02 09:13:36 -08:00
Pragmatic Software
7bbd5d8097
Fix QUIT log message
2023-02-01 17:47:25 -08:00
Pragmatic Software
6dd390540a
Improve CHGHOST log message
2023-02-01 17:33:09 -08:00
Pragmatic Software
d3c8c74a9d
Support IRCv3 CHGHOST extension
...
Clean up MessageHistory constants
2023-02-01 17:27:06 -08:00
Pragmatic Software
a173858fb8
Enable multi-prefix
IRCv3 extension
2023-02-01 14:48:12 -08:00
Pragmatic Software
6240aee0a0
Simplify arguments for IRC handlers
2023-01-31 05:44:34 -08:00
Pragmatic Software
441e858a84
Make some log messages more consistent
2023-01-30 15:50:26 -08:00
Pragmatic Software
02d690600b
Gate message-tags debug message with irc.debug_tags
2023-01-28 11:48:29 -08:00
Pragmatic Software
999c07f237
Support IRCv3 message tags; misc refactoring
...
PBot now finally supports IRCv3 message tags. The `account-tag`
capability is now enabled for improved NickServ account tracking.
Refactored CAP negotiation. Minor clean-ups in AntiFlood.pm (which ought to
be completely rewritten from the ground-up).
Misc clean-ups and refactoring of various things.
2023-01-27 11:48:01 -08:00
Pragmatic Software
19d8170af3
applets/pbot-vm: vm-server: fix child signal handler
2023-01-24 12:34:03 -08:00
Pragmatic Software
de7db72c04
applets/c2english: fix issue parsing int *(foo)[5]
2023-01-23 12:46:15 -08:00
Pragmatic Software
7a6a150067
Begin refactoring message-history tracking
2023-01-22 07:36:11 -08:00
Pragmatic Software
d29ec9b6b9
Plugin/Wttr: add sunHour and uvIndex to -sun; decrease cache timeout from 1hr to 15m
2023-01-21 23:32:14 -08:00
Pragmatic Software
d8803a4c29
Update irccloud detection/handling
2023-01-21 14:47:11 -08:00
Pragmatic Software
576783df55
applets/cjeopardy: qstats now shows all wrong answers instead of top 10
2023-01-21 12:13:01 -08:00
Pragmatic Software
55407ce800
Factoids: factadd: include contents for factlog
2022-12-31 14:55:48 -08:00
Pragmatic Software
ad449ff07b
Update version
2022-12-25 18:22:21 -08:00
Pragmatic Software
ea35fc78c2
Commands/Help: update URL to point at TOC
2022-12-25 18:18:18 -08:00
Pragmatic Software
38d9c86984
Factoids: add more pastebin URLs for factadd -url
; update help
URL to point at TOC
2022-12-25 18:17:14 -08:00
Pragmatic Software
474cca04b8
Plugin/WordMorph: simplify word validation
2022-10-01 21:32:25 -07:00
Pragmatic Software
8721122c1f
Plugin/WordMorph: improve sanity checks
2022-10-01 10:17:27 -07:00
Ckat
7bec49c4ed
Plugins/WordMorph: validate word length ( #69 )
2022-10-01 09:49:15 -07:00
Pragmatic Software
2cf09ca415
Plugin/WordMorph: minor refactor/clean-up
2022-09-08 07:19:43 -07:00
Pragmatic Software
219851ffaf
Plugin/WordMorph: add neighbors
subcommand; improve custom
error messages
2022-09-07 17:52:48 -07:00
Pragmatic Software
0196e61b72
Plugin/WordMorph: add check
command to check if a word exists
2022-09-06 08:02:07 -07:00
Pragmatic Software
adaf4e2ed3
Plugin/WordMorph: several improvements
...
- add 2880 variant words to wordlist
- morph generator skips words with same suffix
- default steps increased from 3 to 4
- default minimum word length increased from 4 to 5
Note that you can override default steps and word lengths via `start`.
2022-09-04 16:47:43 -07:00
Pragmatic Software
82edbd2a18
Plugin/WordMorph: minor refactoring/clean-up
2022-08-31 23:09:10 -07:00
Pragmatic Software
f71e08cf7f
Plugin/WordMorph: minor refactoring/clean-up
2022-08-31 22:54:54 -07:00
Pragmatic Software
3c28dd046a
Plugin/WordMorph: allow hinting from right-hand side
2022-08-31 18:27:31 -07:00
Pragmatic Software
bc02854d15
Update WordMorph
...
- Ensure length of each step is correct
- Add WordMorph to plugin_autoload
2022-08-26 12:47:44 -07:00
Pragmatic Software
c071bf7604
applets/cstd.pl: fix parsing of paragraphs
2022-08-26 11:18:20 -07:00
Pragmatic Software
0edfee6d15
Update WordMorph
2022-08-26 00:33:41 -07:00
Pragmatic Software
b9dc225763
Plugin/WordMorph: improve hints with ? in place of next letter change
2022-08-24 23:11:47 -07:00
Pragmatic Software
d5c336c058
Add WordMorph plugin
2022-08-24 14:37:02 -07:00
Pragmatic Software
4551318c56
applets/cstd.pl: Fix footnotes
2022-08-12 13:02:00 -07:00
Pragmatic Software
6a61de1026
Consolidate c{99,11,23}std.pl into cstd.pl
2022-08-12 12:28:58 -07:00
Pragmatic Software
43dec7b70f
applets/gencstd23: fix paragraph diff special case for n1570
2022-08-08 18:45:15 -07:00
Pragmatic Software
9ddd38038a
applets: add C23 draft (n3047) command
...
I really, really need to clean this mess up and combine
c99std.pl, c11std.pl and c23std.pl into one script!
2022-08-07 19:10:34 -07:00
Pragmatic Software
c4602bc295
WebPaste: increase max width to 150 characters
2022-08-07 19:05:43 -07:00
Pragmatic Software
62849c9cc4
Bump version for previous revert
2022-08-03 11:31:09 -07:00
Pragmatic Software
e656fb46cf
Revert "FuncBuiltins: maybe-the: do it for all words"
...
This reverts commit 7093fa0ae4
.
2022-08-03 11:25:05 -07:00
Pragmatic Software
7093fa0ae4
FuncBuiltins: maybe-the: do it for all words
2022-08-03 05:19:45 -07:00
Pragmatic Software
d824255c6e
Misc fixes and improvements
...
applets/random_quote.pl: URI encode arguments
Plugins/FuncSed: improve error handling
2022-08-03 05:18:33 -07:00
Pragmatic Software
e4becb22a1
FuncBuiltins: maybe-the: special-case some indefinite nouns
2022-07-14 10:15:30 -07:00
Pragmatic Software
f7d361beca
Core: show previous server:port if connecting without disconnecting
2022-07-10 12:53:17 -07:00
Pragmatic Software
74380f2a72
Core: Use EXIT_SUCCESS/EXIT_FAILURE; misc clean-ups
2022-07-10 12:45:27 -07:00
Pragmatic Software
9f46cf0ebc
Factoids: disable nickprefixing when action contains $args at any recursion level
2022-07-09 19:33:43 -07:00
Pragmatic Software
d12a463987
Plugin/FuncBuiltins: do not ucfirst on nicks; add more POS to maybe-the
2022-07-09 19:09:27 -07:00
Pragmatic Software
10e49bbbb6
Update factoids
2022-07-08 12:50:30 -07:00
Pragmatic Software
421738498c
cpanfile: add Lingua::EN::Tagger
2022-07-08 09:19:27 -07:00
Pragmatic Software
3ab4ed0a81
Plugin/FuncBuiltin: add maybe-the
function
...
The `maybe-the` function examines the argument's part-of-speech
classification (noun, verb, etc) to determine whether to prepend
the word "the".
2022-07-08 09:11:56 -07:00
Pragmatic Software
833c20efbb
Factoids: do not prefix nick if action has $args
2022-07-08 09:11:16 -07:00
Pragmatic Software
a170b28a8b
Factoids: fix behavior of factoid look-up
2022-07-05 23:12:12 -07:00
Pragmatic Software
0023790fec
applets/(c99,c11)std: better handling of capture groups within -text option
2022-07-04 09:52:50 -07:00
Pragmatic Software
0cf80092a7
Plugins/Wttr: add observation time to default option
2022-07-03 07:22:33 -07:00
Pragmatic Software
87eff496e9
applets/wiktionary: group definitions w/examples; clean up output
2022-06-29 19:38:17 -07:00
Pragmatic Software
3ef58c2bfa
applets/wiktionary: improve output
2022-06-27 20:35:02 -07:00
Pragmatic Software
41b69bdfa5
Factoids: add keep-quotes
metadata for applet commands
2022-06-27 19:52:38 -07:00
Pragmatic Software
780d41e628
Factoids: correct quotemeta2 and make it slightly more readable
2022-06-26 08:42:01 -07:00
Pragmatic Software
5619d30a1b
Factoids: fix Unicode issue with factfind
2022-06-25 17:34:06 -07:00
Pragmatic Software
c0ade8a2f6
Plugin/GoogleSearch: show 3 matches instead of 1
2022-06-25 17:31:40 -07:00
Pragmatic Software
553fdb884c
Plugin/Plang: do not use output_value() on exceptions
2022-06-12 19:33:53 -07:00
Pragmatic Software
d003a326aa
Plugins/Wttr: add -conditions to default option
2022-05-22 17:12:57 -07:00
Pragmatic Software
e7f4729567
pbot-vm: rebuild without print_last_statement() if "cannot subscript something" error
2022-05-01 10:30:34 -07:00
Pragmatic Software
4b5d8aa535
pbot-vm: use %02X for escapes; do not escape \x03 (for IRC colors)
2022-04-08 13:12:37 -07:00
Pragmatic Software
d3328a4acd
Factoids: factinfo
now says "Applet" instead of "Module"
2022-04-08 09:13:57 -07:00
Pragmatic Software
3d311296eb
pbot-vm: output postprocessing: escape control characters/unprintable characters
2022-04-07 18:24:57 -07:00
Pragmatic Software
3375580a2d
pbot-vm: fix parsing of quoted text within GDB/MI
2022-04-06 10:53:07 -07:00
Pragmatic Software
1c57e01fad
pbot-vm: escape malformed Unicode on STDOUT
2022-04-04 22:32:53 -07:00
Pragmatic Software
110912e85d
pbot-vm: use coderef to simplify escaping of malformed Unicode
2022-04-04 22:10:50 -07:00
Pragmatic Software
5bc47b61d9
pbot-vm: display escaped malformed Unicode in output instead of U+FFFD
2022-04-04 21:54:39 -07:00
Pragmatic Software
757088987d
pbot-vm: fix invalid character encountered in JSON string
2022-04-04 21:41:27 -07:00
Pragmatic Software
8381fc7ad2
c99/c11 commands can now take -text
option to filter output
2022-04-04 10:42:42 -07:00
Pragmatic Software
03fb901291
pbot-vm: fix potential time-out when outputting 0
...
If the output from a code snippet is `0` without a newline,
Perl treats this as a false value. When Guest::process_command()
returns a false value, that signals to guest-server::serial_server()
that it is the parent returning and so it will not send the result back
to the host.
However, `0\n` is a true value. Solution: always append a final newline to
the guest output.
2022-03-31 19:52:46 -07:00
Pragmatic Software
d80b70a2e5
Dequeue cache events when removing SQLite Storage entries
2022-03-23 23:45:00 -07:00
Pragmatic Software
23efee674a
Plugin/UrlTitles: update user-agents
2022-03-17 19:17:31 -07:00
Pragmatic Software
1abc466e7a
Plugin/UrlTitles: include URL in history file
2022-03-17 16:47:06 -07:00
Pragmatic Software
bf8749ff9e
Fix blacklist
command
2022-03-09 12:56:38 -08:00
Pragmatic Software
756895b17f
Plugin/UrlTitles: fix indentation
2022-02-27 17:11:55 -08:00
Pragmatic Software
c1cfa0ef4e
Plugins/UrlTitles: fix indentation
2022-02-27 17:08:30 -08:00
Pragmatic Software
02cc7fc488
Refactor UrlTitles plugin
...
Moved logic from get_title.pl applet to plugin.
Removed get_title.pl applet.
ProcessManager::execute_process() can now take a reader subref.
2022-02-27 16:58:01 -08:00
Pragmatic Software
76fd5f5fd7
pbot-vm: fix encoding issues; misc clean-ups
2022-02-24 10:39:15 -08:00
Pragmatic Software
a7b27098ca
Update PBot version
2022-02-15 11:42:55 -08:00
Pragmatic Software
619ff86a94
Rename compiler
factoid to vm-client
2022-02-14 16:47:46 -08:00
Pragmatic Software
3f5a11e608
Plugin/Plang: fix run-time unhandled exception error reporting
2022-01-18 13:42:06 -08:00
Pragmatic Software
02a600fa32
Plugin/Plang: improve error message of unhandled exceptions
2022-01-18 10:59:56 -08:00
Pragmatic Software
e421f9b6bc
Replace U+200b (zwsp) with U+feff (zwnbsp)
...
U+feff is now used instead of U+200b for nick-dehighlighting.
U+feff is non-breaking; it will not break-up the word when wrapping. It also
appears to be much more widely supported. In fact, some terminals will simply
strip the bytes -- this allows copying the text as-is, etc.
Additionally, an exclude-list was added to prevent dehighlighting of specific
nicknames. This is because several terminals do not fully support Unicode's
zero-width spaces -- they show up as plain spaces. Certain words for the #c
channel have been added to this exclude list since they are also somewhat
popular as nicknames there.
2022-01-18 10:32:21 -08:00
Pragmatic Software
731a95ef11
Plugins/Plang: rename Grammar to ParseRules
2022-01-03 15:47:30 -08:00
Pragmatic Software
c04467b50f
Fix minor uninitialized object warning
2022-01-01 21:32:01 -08:00
Pragmatic Software
f78e7bea88
Fix chanrem
command
2022-01-01 21:30:20 -08:00
Pragmatic Software
3d97dc2c33
Rename "modules" to "applets"
...
"Applet" is a much better name for the external command-line
scripts and programs that can be loaded as PBot commands. They
will no longer be confused with Perl modules.
https://en.wikipedia.org/wiki/Applet
2021-11-19 18:05:50 -08:00
Pragmatic Software
136460e6b4
Expand factoid variables/selectors in arguments to code factoids
2021-11-05 13:08:45 -07:00
Pragmatic Software
4cf1e76169
Update commands and factoids
2021-10-19 21:14:52 -07:00