ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent-ReadLine-Gnu/Gnu.pm
(Generate patch)

Comparing AnyEvent-ReadLine-Gnu/Gnu.pm (file contents):
Revision 1.3 by root, Thu May 10 22:59:21 2012 UTC vs.
Revision 1.8 by root, Tue Dec 12 15:50:45 2017 UTC

56 require Term::ReadLine::Gnu; 56 require Term::ReadLine::Gnu;
57} 57}
58 58
59use base Term::ReadLine::; 59use base Term::ReadLine::;
60 60
61our $VERSION = '0.2'; 61our $VERSION = '1.1';
62 62
63=item $rl = new AnyEvent::ReadLine::Gnu key => value... 63=item $rl = new AnyEvent::ReadLine::Gnu key => value...
64 64
65Creates a new AnyEvent::ReadLine object. 65Creates a new AnyEvent::ReadLine object.
66 66
72methods that are documented (or working) for that module should work on 72methods that are documented (or working) for that module should work on
73this object. 73this object.
74 74
75Once initialised, this module will also restore the terminal settings on a 75Once initialised, this module will also restore the terminal settings on a
76normal program exit. 76normal program exit.
77
78The callback will be installed with the C<CallbackHandlerInstall>, which
79means it handles history expansion and history, among other things.
77 80
78The following key-value pairs are supported: 81The following key-value pairs are supported:
79 82
80=over 4 83=over 4
81 84
133sub new { 136sub new {
134 my ($class, %arg) = @_; 137 my ($class, %arg) = @_;
135 138
136 $in = $arg{in} || *STDIN; 139 $in = $arg{in} || *STDIN;
137 $out = $arg{out} || *STDOUT; 140 $out = $arg{out} || *STDOUT;
138 $prompt = $arg{prompt} || "> "; 141 $prompt = $arg{prompt} // "> ";
139 $cb = $arg{on_line} || $arg{cb} 142 $cb = $arg{on_line} || $arg{cb}
140 or do { require Carp; Carp::croak ("AnyEvent::ReadLine::Gnu->new on_line callback argument mandatry, but missing") }; 143 or do { require Carp; Carp::croak ("AnyEvent::ReadLine::Gnu->new on_line callback argument mandatry, but missing") };
141 144
142 $self = $class->SUPER::new ($arg{name} || $0, $in, $out); 145 $self = $class->SUPER::new ($arg{name} || $0, $in, $out);
143 146
147 $Term::ReadLine::Gnu::Attribs{term_set} = ["", "", "", ""];
144 $self->CallbackHandlerInstall ($prompt, \&on_line); 148 $self->CallbackHandlerInstall ($prompt, \&on_line);
145 # set the unadorned prompt
146 $self->rl_set_prompt ($prompt);
147 149
148 $hidden = 1; 150 $hidden = 1;
149 $self->show; 151 $self->show;
150 152
151 $self 153 $self
255not cause big delays, but ttys have the potential to block programs 257not cause big delays, but ttys have the potential to block programs
256indefinitely (e.g. on XOFF). 258indefinitely (e.g. on XOFF).
257 259
258=item unexpected disk I/O 260=item unexpected disk I/O
259 261
260By default, readline does filename completion on TAB, and reads it's config files. 262By default, readline does filename completion on TAB, and reads its
263config files.
261 264
262=item output intermixing 265Tab completion can be disabled by calling C<< $rl->unbind_key (9) >>.
266
267=item tty settings
263 268
264After readline has been initialised, it will mangle the termios tty 269After readline has been initialised, it will mangle the termios tty
265settings. This does not normally affect output very much, but should be 270settings. This does not normally affect output very much, but should be
266taken into consideration. 271taken into consideration.
267 272
273=item output intermixing
274
275Your program might wish to print messages (for example, log messages) to
276STDOUT or STDERR. This will usually cause confusion, unless readline is
277hidden with the hide method.
278
268=back 279=back
269 280
270Oh, and the above list is probably not complete. 281Oh, and the above list is probably not complete.
271 282
272=head1 AUTHOR, CONTACT, SUPPORT 283=head1 AUTHOR, CONTACT, SUPPORT
273 284
274 Marc Lehmann <schmorp@schmorp.de> 285 Marc Lehmann <schmorp@schmorp.de>
275 http://software.schmorp.de/pkg/AnyEvent-Readline-Gnu.html 286 http://software.schmorp.de/pkg/AnyEvent-ReadLine-Gnu.html
276 287
277=cut 288=head1 SEE ALSO
278 289
290L<rltelnet> - a simple tcp_connect-with-readline program using this module.
291
292=cut
293

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines