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
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
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
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
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
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
Pragmatic Software
347e4ac69f
modules/compiler_vm: replace ix.io with 0x0.st for pastes
2021-09-17 13:38:04 -07:00
Pragmatic Software
eae16b14b8
modules/compiler_vm: fix -noheaders; manually #including a header once again replaces default includes
2021-09-17 13:30:46 -07:00
Pragmatic Software
3d1479aa59
Users: simplify previous commit
2021-09-14 16:15:00 -07:00
Pragmatic Software
fa65bfc878
Users: id
command can now search by wildcarded hostmasks
2021-09-14 14:23:35 -07:00
Pragmatic Software
5cf9ac1b9f
BanList: misc refactors to improve readability
2021-09-12 22:24:29 -07:00
Pragmatic Software
153d771960
BanList: do not update existing bans with server bans
...
For some reason, various IRC networks do not propagate banlist metadata
such as owner and timestamp when a server rejoins. This causes the
server's banlist entries to contain "set by server" instead of the
original individual who set it and "set on now" instead of when it was
originally set.
This commit modifies PBot's banlist monitoring to only update PBot's
internal banlist metadata when the ban doesn't exist or when the ban is
being updated by an actual individual instead of the server. Now PBot
will remember the original setter and the original timestamp
regardless of whether the IRC server can.
2021-09-12 18:59:36 -07:00