NAME

    Tickit::App::Plugin::EscapePrefix - Tickit application plugin for
    Escape-prefixed shortcut keys

SYNOPSIS

       use Tickit;
       use Tickit::App::Plugin::EscapePrefix;
    
       my $tickit = Tickit->new;
    
       Tickit::App::Plugin::EscapePrefix->apply( $tickit );
    
       ...
    
       $tickit->run;

DESCRIPTION

    This package applies code to a Tickit instance to let it handle <Escape
    >-prefixed shortcut keys, by converting them into the equivalent
    <M-...> modified keys instead.

    Once applied using the "apply" method, the plugin will consume any
    plain <Escape> keys typed at the terminal. If another key arrives soon
    afterwards, this key will be consumed and instead a new keypress event
    emitted that adds the "meta" modifier to it. For example, typing
    <Escape> <a> will instead emit the modified key <M-a> to the
    application. If no subsequent key arrives after a timeout of 3 seconds
    then the modification will not apply.

    While the plugin is still pending anothey keypress to modify, a small
    indicator window will appear in the bottom left of the display, showing
    ESC- in a reverse-video style, to remind the user the keypress is
    pending.

METHODS

 apply

       Tickit::App::Plugin::EscapePrefix->apply( $tickit )

    Applies the plugin code to the given toplevel Tickit instance.

TODO

      Much configuration - timeout; style, text and position of indicator
      window

AUTHOR

    Paul Evans <leonerd@leonerd.org.uk>