Age | Commit message (Collapse) | Author |
|
|
|
Hi Fredrik,
> I've gotten some feedback from your review,
> You need to add documentation under Erts-> "User's Guide" -> "tty - A
> command line interface"
>
> You need to add testcase in interactive_shell_SUITE a simplified
> example of how this testcase could look like;
> ctrl_w_and_ctrl_u(_Conf) ->
> rtnode([{putline,""}, {putline, "2."}, {getline, "2"},
> {putline,"xxx yy"++[$\^w]++"."}, {getline,"xxx"}, {putline,"xxx
> yy"++[$\^u]++"z."}, {getline,"z"}],[]).
Please find an updated version of the patch attached to this e-mail. I
hope that you still accept it via e-mail because the former patch was
sent the same way ;-).
I have extended the documentation to list the new key combinations and
added tests to make sure they work.
Kind regards,
--
Dr. Stefan Zegenhagen
arcutronix GmbH
Garbsener Landstr. 10
30419 Hannover
Germany
Tel: +49 511 277-2734
Fax: +49 511 277-2709
Email: [email protected]
Web: www.arcutronix.com
*Synchronize the Ethernet*
General Managers: Dipl. Ing. Juergen Schroeder, Dr. Josef Gfrerer -
Legal Form: GmbH, Registered office: Hannover, HRB 202442, Amtsgericht
Hannover; Ust-Id: DE257551767.
Please consider the environment before printing this message.
>From ce4b827c78d18f39bb1146fd2959ffd7ae2b4bb6 Mon Sep 17 00:00:00 2001
From: Stefan Zegenhagen <[email protected]>
Date: Mon, 6 May 2013 14:39:07 +0200
Subject: [PATCH] [EDLIN] support a few more control keys
Add support for the following control keys that many users have become
accustomed to:
- <CTRL>+W : backward kill word
- <CTRL>+U : backward kill line
- <HOME> : goto start of line
- <END> : goto end of line
- <CTRL>+<LEFT> : backward word
- <CTRL>+<RIGHT> : forward word
It seems that the <CTRL>+<LEFT|RIGHT> control key sequences are
different between terminal emulators, therefore a few possible
combinations were added (similar to how libreadline is configured).
Documentation and tests are extended to reflect the new functionality.
|
|
|
|
Search mode can be entered by pressing ctrl-r. Enter terms and press
ctrl-r again to search backwards, or ctrl-s to then search forward (if
you terminal doesn't eat up that one). Press enter to execute the line,
or use tab, arrow keys, or other control sequences (^D, ^K, etc.) to
exit search mode while remaining on the last found line. Exiting is also
possible by pressing the escape key twice.
The search mode is a simpler version of the one available in bash or
zsh shells.
This adds a few modes to the shell (search, on top of none and meta) in
group.erl for history search, and a few more in edlin.erl to change the
meaning of control sequences while searching.
|
|
|
|
Change the shell's line buffer mechanism to more
closely match readline-based shells. New behavior:
1. Blank lines are not added to the line buffer.
2. Pressing the down arrow on the last line causes no change.
The previous behavior erased the line.
3. The new line is temporarily added to the line buffer
so the user can move to previous lines with up arrows
and then back to the new line with down arrows.
The previous behavior discarded the partially written
new line.
4. Changes made to previous lines while exploring the line
buffer history are preserved.
The previous behavior discarded changes made to older lines.
|
|
Hans Bolinder (the author/maintainer of qlc) prefers
for readability reasons to use length/1 in a guard
when it is known that the list is guaranteed to be
short, so the change suggested by tidier for line 875
of qlc_pt has not been included.
|
|
* uw/shell-tab-completion:
Shell tab completion now works for quoted module and function names
OTP-8383 Shell tab completion now works for quoted module and function
names. (Thanks to Ulf Wiger.)
|
|
While quoted atoms in module and function names are not common,
they are allowed, and sometimes quite useful. In OTP, they are
commonplace in ORBER, and can also be found in XMERL. Tab completion
needs to recognize quoted atoms and act accordingly. This patch
includes changes in edlin:over_word/1. It should be noted that these
changes also affect the 'kill word', 'forward word' and 'backward word'
commands in the line editor. The author thinks that the changes are
for the better. There are also minor changes in edlin_expand.erl -
mainly in regard to the conversion between atoms and strings.
Another change is that the list of matches is now sorted, partly
to simplify testing, but also because it seems sensible to present
the matches that way. A test suite, edlin_expand_SUITE, has been
added to the stdlib test suites.
(amended 2009-12-18 to actually include the modified files too
and again to rename the capitalized test modules for portability.)
|
|
|