… | |
… | |
47 | methods that are documented (or working) for that module should work |
47 | methods that are documented (or working) for that module should work |
48 | on this object. |
48 | on this object. |
49 | |
49 | |
50 | Once initialised, this module will also restore the terminal |
50 | Once initialised, this module will also restore the terminal |
51 | settings on a normal program exit. |
51 | settings on a normal program exit. |
|
|
52 | |
|
|
53 | The callback will be installed with the "CallbackHandlerInstall", |
|
|
54 | which means it handles history expansion and history, among other |
|
|
55 | things. |
52 | |
56 | |
53 | The following key-value pairs are supported: |
57 | The following key-value pairs are supported: |
54 | |
58 | |
55 | on_line => $cb->($string) |
59 | on_line => $cb->($string) |
56 | The only mandatory parameter - passes the callback that will |
60 | The only mandatory parameter - passes the callback that will |
… | |
… | |
103 | This function can be called even when readline has never been |
107 | This function can be called even when readline has never been |
104 | initialised. |
108 | initialised. |
105 | |
109 | |
106 | The last string should end with a newline. |
110 | The last string should end with a newline. |
107 | |
111 | |
|
|
112 | CAVEATS |
|
|
113 | There are some issues with readline that can be problematic in |
|
|
114 | event-based programs: |
|
|
115 | |
|
|
116 | blocking I/O |
|
|
117 | Readline uses blocking terminal I/O. Under most circumstances, this |
|
|
118 | does not cause big delays, but ttys have the potential to block |
|
|
119 | programs indefinitely (e.g. on XOFF). |
|
|
120 | |
|
|
121 | unexpected disk I/O |
|
|
122 | By default, readline does filename completion on TAB, and reads its |
|
|
123 | config files. |
|
|
124 | |
|
|
125 | Tab completion can be disabled by calling "$rl->unbind_key (9)". |
|
|
126 | |
|
|
127 | tty settings |
|
|
128 | After readline has been initialised, it will mangle the termios tty |
|
|
129 | settings. This does not normally affect output very much, but should |
|
|
130 | be taken into consideration. |
|
|
131 | |
|
|
132 | output intermixing |
|
|
133 | Your program might wish to print messages (for example, log |
|
|
134 | messages) to STDOUT or STDERR. This will usually cause confusion, |
|
|
135 | unless readline is hidden with the hide method. |
|
|
136 | |
|
|
137 | Oh, and the above list is probably not complete. |
|
|
138 | |
108 | AUTHOR, CONTACT, SUPPORT |
139 | AUTHOR, CONTACT, SUPPORT |
109 | Marc Lehmann <schmorp@schmorp.de> |
140 | Marc Lehmann <schmorp@schmorp.de> |
110 | http://software.schmorp.de/pkg/AnyEvent-Readline-Gnu.html |
141 | http://software.schmorp.de/pkg/AnyEvent-ReadLine-Gnu.html |
111 | |
142 | |
|
|
143 | SEE ALSO |
|
|
144 | rltelnet - a simple tcp_connect-with-readline program using this module. |
|
|
145 | |