Thu, 17 Jul 2025 20:28:54 -0500
IRCv3: Implement the /me command
This was kind of forgotten about, but it's here now.
Testing Done:
Watched a packet dump to verify it was sent correct and asked people in #pidgin on libera if it came through correctly.
Reviewed at https://reviews.imfreedom.org/r/4070/
feature = get_option('ircv3') summary({'IRCv3': feature.allowed()}, bool_yn : true, section : 'Protocols') if not feature.allowed() subdir_done() endif IRCV3_SOURCES = [ 'purpleircv3commands.c', 'purpleircv3connection.c', 'purpleircv3core.c', 'purpleircv3ctcphandlers.c', 'purpleircv3messagehandlers.c', 'purpleircv3protocol.c', 'purpleircv3protocolconversation.c', ] IRCV3_HEADERS = [ 'purpleircv3commands.h', 'purpleircv3connection.h', 'purpleircv3core.h', 'purpleircv3ctcphandlers.h', 'purpleircv3messagehandlers.h', 'purpleircv3protocol.h', 'purpleircv3protocolconversation.h', ] ibis_dep = dependency('ibis', version : '>= 0.14.0') ircv3_resources = gnome.compile_resources('ircv3resource', 'resources/ircv3.gresource.xml', source_dir : 'resources', c_name : 'purple_ircv3') IRCV3_SOURCES += ircv3_resources shared_library('ircv3', IRCV3_SOURCES + IRCV3_HEADERS, c_args : ['-DPURPLE_IRCV3_COMPILATION', '-DG_LOG_USE_STRUCTURED', '-DG_LOG_DOMAIN="Purple-IRCv3"'], gnu_symbol_visibility : 'hidden', dependencies : [birb_dep, libpurple_dep, glib, gio, hasl, ibis_dep], install : true, install_dir : PURPLE_PLUGINDIR) devenv.append('PURPLE_PLUGIN_PATH', meson.current_build_dir())