Trac is being migrated to new services! Issues can be found in our new YouTrack instance and WIKI pages can be found on our website.

C Plugin How-To

This document is a stub page. Its sole purpose is to provide convenient and easy-to-find linkage to the actual tutorials on plugin development. We will cover a variety of topics, as outlined below.

  1. Basic C Plugin How-To - Start here. This covers the core basics needed to write a plugin.
  2. Plugin Actions How-To - This covers using the Plugin Actions facilities to provide additional features.
  3. Choosing Plugin ID's - This covers how to properly select a plugin ID.
  4. Debug API How-To - This covers using the libpurple debug API to generate debugging messages for your plugin.
  5. Notify API How-To - This covers using the notify API to inform the user of events.
  6. Command API How-To - This covers using the command API to add text-based commands to libpurple clients.
  7. Request API How-To - This covers using the Request API to request input from the user.
  8. Signals How-To - This covers using signals to detect events and act accordingly.


  1. Valgrind How-To - Covers best practices for memory checking your plugin.

Note that since work on this set of How-To documents began, some of the example plugins have made their way into libpurple and Pidgin. Starting with version 2.2.0, helloworld.c, debug_example.c, and notify_example.c are all included with the libpurple source. A compilation issue was present with these plugins on some systems; this has been fixed for version 2.2.1.

Last modified 14 years ago Last modified on Dec 5, 2009, 1:19:43 AM
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!