This changes the behaviour of the following commands:
- `/ban`
- `/timeout`
- `/untimeout`
- `/unban`
All of those commands now accept one or more `--channel` parameters to override which channel the action should take place in.
The `--channel` parameter accepts a channel ID or channel name with the same syntax as the other "user targets" do (e.g. `id:11148817` or `pajlada`)
examples
Ban user in the chat you're typing in:
`/ban weeb123`
Ban user in the chat you're typing in, with a reason specified:
`/ban weeb123 the ban reason`
Ban user in a separate chat, with a reason specified:
`/ban --channel pajlada weeb123 the ban reason`
Ban user in two separate chats, with a reason specified:
`/ban --channel pajlada --channel id:117166826 weeb123 the ban reason`
Timeout user in the chat you're typing in:
`/timeout weeb123`
Timeout user in the chat you're typing in, with a reason specified:
`/timeout weeb123 10m the timeout reason`
Timeout user in a separate chat, with a reason specified:
`/timeout --channel pajlada weeb123 10m the timeout reason`
Timeout user in two separate chats, with a reason specified:
`/timeout --channel pajlada --channel id:117166826 weeb123 10m the timeout reason`
Unban user in the chat you're typing in:
`/unban weeb123`
Unban user in a separate chat:
`/unban --channel pajlada weeb123`
Unban user in two separate chats:
`/unban --channel pajlada --channel id:117166826 weeb123`
This change enforces strict include grouping using IncludeCategories
In addition to adding this to the .clang-format file and applying it in the tests/src and src directories, I also did the following small changes:
In ChatterSet.hpp, I changed lrucache to a <>include
In Irc2.hpp, I change common/SignalVector.hpp to a "project-include"
In AttachedWindow.cpp, NativeMessaging.cpp, WindowsHelper.hpp, BaseWindow.cpp, and StreamerMode.cpp, I disabled clang-format for the windows-includes
In WindowDescriptors.hpp, I added the missing vector include. It was previously not needed because the include was handled by another file that was previously included first.
clang-format minimum version has been bumped, so Ubuntu version used in the check-formatting job has been bumped to 22.04 (which is the latest LTS)
* Move ChatSettings commands to their own file
* reformat error message strings
* move ChatCommands together in CommandController.cpp
* Allow CommandContext to be provided for builtin functions
using variants MEGADANK
* add missing include
* rename to ComandFunctionVariants
also include some move magic & const reffing