Plugins

All user plugins are kept in ~/Library/Application Support/Keymando/Plugins/ by default.

Example: ~/Library/Application Support/Keymando/Plugins/my_plugin.rb

    class MyPlugin < Plugin

      requires_version '1.0.3'

      # This method gets run before your keymandorc.rb
      def before
        ...
      end

      # This method gets run for each event (key stroke)
      def event_received(sequence)
        false # return true if we handled the event here
      end

      # This method gets run after your keymandorc.rb
      def after
        ...
      end

    end

Note: All ~/Library/Application Support/Keymando/Plugins/**/*.rb files are loaded but only decendants of the Plugin class will have their ‘before’, ‘event_received’, and ‘after’ methods run, so make sure your class inherits from the Plugin class.

A community repository of plugins has been started on Github!

https://github.com/keymando

Check it out at https://github.com/keymando