Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

changes NSH command line editing so ctrl-K deletes from char pos to EOL like GNU readline #8

Merged
merged 1 commit into from
Jan 8, 2020

Conversation

adamfeuer
Copy link

Summary

  • changes NSH command line editing so ctrl-K deletes from char pos to EOL like GNU readline
  • now you can delete entire line with ctrl-A ctrl-K

Impact

  • None if CONFIG_NSH_CLE is not set
  • if CONFIG_NSH_CLE=y is set, ctrl-K deletes from cursor position to end of line, instead of the old behavior, cursor position + 1 to end of line.
  • The new behavior is more like GNU Readline

Testing

  • Manual, on the SAMA5D36-Xplained board.

How To Verify (beyond provided automated tests)

  • CONFIG_NSH_CLE=yin .config
  • make clean; make
  • connect to the NSH via a serial console
  • You should see the new command line editing behavior

- more like GNU readline or emacs - can delete entire line with
  ctrl-A ctrl-K
@patacongo patacongo merged commit 7fd1b90 into apache:master Jan 8, 2020
@patacongo
Copy link
Contributor

Doesn't this behavior depend on the nature of the cursor? If it is a vertical bar "between" characters wouldn't that be different if it is a reversed character, for example? The reversed character is at the current position. You would think that the reversed character should not be deleted, i.e., that the current position + 1 to EOL should be deleted. The real Bash verical bar appears to lie at the left side of the current position, so this behavior is correct, you would want do delete the current character and to the EOL. I 'm not sure, but it does seem that should be different with different cursors.

@adamfeuer
Copy link
Author

@patacongo Thanks for merging this. I didn't think about the bar cursor case, but the behavior with a bar cursor using bash seems the same... I'm on a Mac, running XTerm2, ssh'd into a VMWare Ubuntu 19.10 box. I switched the cursor to a bar using this:

echo -e -n "\x1b[\x36 q" # changes to steady bar

ctrl-A puts the bar at the beginning of the line, before the first character, so it works the same way bash does with an inverse box cursor... I tested in bash and in nsh from picocom.

@adamfeuer adamfeuer deleted the fix/nsh-cle-ctrl-k branch January 8, 2020 22:25
JacobCrabill pushed a commit to JacobCrabill/incubator-nuttx-apps that referenced this pull request Mar 31, 2022
Not all boards have in interrupt line from the phy to
   the Soc. This allows the phy to be polled for link status.

   This may not work on all MAC/PHY combination that
   have mutually exclusive link management and operating
   modes. The STM32F7 and LAN8742AI do not have such a
   limitation.

   To use this option the arch must supply CONFIG_ARCH_PHY_POLLED
   and not CONFIG_ARCH_PHY_INTERRUPT.

netinit:Net monitior support network init for late connect

   If the network is not connected the phy init may time out
   and netinit_net_bringup will return with out completing
   DHCP or initalising ntpc.

   This change uses the lack of the DHCP lease, to contiune the
   netinit_net_bringup, once the interface does come up. It also
   will renew the lease over time, and will re run the dhcp request
   after a network down/up transition.

netinit:Net monitior configure with ipcfg

   Add the use of ipcfg to retrive address configurations
   for the interface.

   netinit:Net monitior support fallback to static IP

   After CONFIG_NETINIT_DHCP_FALLBACK dhcp attempts, fall back to
   the static IP provided by the board via ipcfg.
Zhangshoukui added a commit to Zhangshoukui/nuttx-apps that referenced this pull request Dec 17, 2024
…ter was read

    #0 0x43c7443a in strnlen nuttx/libs/libc/string/lib_strnlen.c:42
    apache#1 0x43c698aa in vsprintf_internal nuttx/libs/libc/stdio/lib_libvsprintf.c:933
    apache#2 0x43c6ca80 in lib_vsprintf nuttx/libs/libc/stdio/lib_libvsprintf.c:1383
    apache#3 0x4409c0bd in vsnprintf nuttx/libs/libc/stdio/lib_vsnprintf.c:72
    apache#4 0x47137cd0 in vcmocka_print_error apps/testing/cmocka/cmocka/src/cmocka.c:2097
    apache#5 0x47139573 in cmocka_print_error apps/testing/cmocka/cmocka/src/cmocka.c:2422
    apache#6 0x471376ff in string_equal_display_error apps/testing/cmocka/cmocka/src/cmocka.c:1410
    apache#7 0x471379a0 in _assert_string_equal apps/testing/cmocka/cmocka/src/cmocka.c:1952
    apache#8 0x4433d972 in read_default apps/testing/drivertest/drivertest_uart.c:242
    apache#9 0x4713c6cd in cmocka_run_one_test_or_fixture apps/testing/cmocka/cmocka/src/cmocka.c:3029
    apache#10 0x4713d487 in cmocka_run_one_tests apps/testing/cmocka/cmocka/src/cmocka.c:3143
    apache#11 0x4713f2ca in _cmocka_run_group_tests apps/testing/cmocka/cmocka/src/cmocka.c:3294
    apache#12 0x443444c6 in cmocka_driver_uart_main apps/testing/drivertest/drivertest_uart.c:358
    apache#13 0x4409a472 in nxtask_startup nuttx/libs/libc/sched/task_startup.c:72
    apache#14 0x43dc92e7 in nxtask_start nuttx/sched/task/task_start.c:116
    apache#15 0x43e31f00 in pre_start nuttx/arch/sim/src/sim/sim_initialstate.c:52

Signed-off-by: zhangshoukui <[email protected]>
xiaoxiang781216 pushed a commit that referenced this pull request Dec 17, 2024
…ter was read

    #0 0x43c7443a in strnlen nuttx/libs/libc/string/lib_strnlen.c:42
    #1 0x43c698aa in vsprintf_internal nuttx/libs/libc/stdio/lib_libvsprintf.c:933
    #2 0x43c6ca80 in lib_vsprintf nuttx/libs/libc/stdio/lib_libvsprintf.c:1383
    #3 0x4409c0bd in vsnprintf nuttx/libs/libc/stdio/lib_vsnprintf.c:72
    #4 0x47137cd0 in vcmocka_print_error apps/testing/cmocka/cmocka/src/cmocka.c:2097
    #5 0x47139573 in cmocka_print_error apps/testing/cmocka/cmocka/src/cmocka.c:2422
    #6 0x471376ff in string_equal_display_error apps/testing/cmocka/cmocka/src/cmocka.c:1410
    #7 0x471379a0 in _assert_string_equal apps/testing/cmocka/cmocka/src/cmocka.c:1952
    #8 0x4433d972 in read_default apps/testing/drivertest/drivertest_uart.c:242
    #9 0x4713c6cd in cmocka_run_one_test_or_fixture apps/testing/cmocka/cmocka/src/cmocka.c:3029
    #10 0x4713d487 in cmocka_run_one_tests apps/testing/cmocka/cmocka/src/cmocka.c:3143
    #11 0x4713f2ca in _cmocka_run_group_tests apps/testing/cmocka/cmocka/src/cmocka.c:3294
    #12 0x443444c6 in cmocka_driver_uart_main apps/testing/drivertest/drivertest_uart.c:358
    #13 0x4409a472 in nxtask_startup nuttx/libs/libc/sched/task_startup.c:72
    #14 0x43dc92e7 in nxtask_start nuttx/sched/task/task_start.c:116
    #15 0x43e31f00 in pre_start nuttx/arch/sim/src/sim/sim_initialstate.c:52

Signed-off-by: zhangshoukui <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants