logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Term::ReadLine::Zoid::Base - atomic routines

Author

       Jaap Karssenberg || Pardus [Larus] <pardus@cpan.org>

       Copyright  (c)  2004  Jaap  G  Karssenberg.  All rights reserved.  This program is free software; you can
       redistribute it and/or modify it under the same terms as Perl itself.

Bugs

       Undefined behaviour when the buffer has more lines then the terminal.

       Please mail the author if you find any other bugs.

Description

       This module contains some atomic operations used by all Term::ReadLine::Zoid objects. It is intended as a
       base class.

       At the very least, to child class needs to define a "default()" function to handle key bindings and a
       "draw()" function which in turn calls "print()". Also the attributes "IN" and "OUT" should contain valid
       filehandles.

Methods

ANSIstuff
       "cursor_at($x, $y)"
           Positions the cursor on screen, dimensions are 1-based.

       "clear_screen()"
           Clear screen.

       "title($string)"
           Set terminal title to $string. When using for example xterm(1) this is the window name.

       "print_length($string)"
           Returns the printable length of $string, not counting (some) ansi sequences.

   Privateapi
       Methods for use in overload classes.  Avoidusingthesemethodsfromtheapplication.

       "bell()"
           Notify the user of an error or limit.

       "loop()"
           Low level function used by readline.  Calls "draw()" and "do_key()".

       "beat()"
           Method called by intervals while waiting for input, to be overloaded.

       "read_key()"
           Returns one key read from input (this is the named key, not the char when mapped).

       "do_key($key)"
           Execute  a  key,  calls  subroutine  for  a key binding or the default binding.  If $key is undefined
           "read_key()" is called first.

       "press($string)"
           Do chars in $string like they were typed on the keyboard. Used for testing puposes and to make macros
           possible.

           If you give more then one argument, these are considered individual characters,  use  this  to  press
           named keys.

       "unread_key($string)"
           Unshifts characters on the read buffer, arguments the same as "press()".

       "key_name($chr)"
           Returns a name for a character or character sequence.

       "key_binding($key, $mode)"
           Returns the keybinding for $key in $mode, mode defaults to the current one.

       "bindchr($chr, $key)"
           Bind a key name to a character, or a character sequence. All bindings of this kind are global (you're
           using only one keyboard, right ?).

       "recalc_chr_map()"
           Recalculates the chr map, you need to call this after deleting from %chr_names.

       "print($lines, $pos)"
           Low level function used by draw. Both arguments need to be array references.

Name

       Term::ReadLine::Zoid::Base - atomic routines

See Also

       Term::ReadLine::Zoid

perl v5.34.0                                       2022-06-17                    Term::ReadLine::Zoid::Base(3pm)

See Also