----- "CAI Qian" <caiqian@xxxxxxxxxx> wrote: > Hallo! > > There are a few things that bother me the most regards the crash utility > usages. > > 1) Pointer remains at the beginning after the UP array key. When > entering the UP array key, it repeats the last command like, > > crash> struct struct_tss > > However, then the current position remains at the beginning. It is > usually unlike in bash that the current position remains at the end, > so it is easier to update the command like, > > crash> struct struct_tss ffffffff819f1764 I believe that's a function of the readline library, and there may be a setting/binding that could be used to make that happen. Since the beginning, readline has been set up by crash like this: if (STREQ(pc->editing_mode, "vi")) { rl_editing_mode = vi_mode; rl_bind_key(CTRL('N'), rl_get_next_history); rl_bind_key(CTRL('P'), rl_get_previous_history); rl_bind_key_in_map(CTRL('P'), rl_get_previous_history, vi_insertion_keymap); rl_bind_key_in_map(CTRL('N'), rl_get_next_history, vi_insertion_keymap); rl_generic_bind(ISFUNC, "[A", (char *)rl_get_previous_history, vi_movement_keymap); rl_generic_bind(ISFUNC, "[B", (char *)rl_get_next_history, vi_movement_keymap); } if (STREQ(pc->editing_mode, "emacs")) { rl_editing_mode = emacs_mode; } I don't recall where those bindings came from -- I copied them from some other program. I'm guessing that there's a binding that would put the cursor at the end of the recalled string, but I don't know what it is off-hand. If anybody knows what the binding sequence is, please post it here... On the other hand, when updating a command string, I guess it depends whether the location you want to change is at the beginning or the end of the string would be a cause to be bothered by it? > > 2) Pressing PgUp/PgDn when input leads nothing can be input. This > happens like, > > crash> log > > In order to see the full log output, I may press PgDn several > times. However, if continue pressing the key after the output has > already finished like, In the case of the "log" command, the PageUp and PageDown keys are being captured by the scrolling routine, which is /usr/bin/less by default. > > crash> > > there seems no way to input anything unless pressing Enter several > times until reach the next prompt. Right -- PageUp and PageDown don't make sense once you are back to the "crash> " command prompt. > 3) Ctrl-C is not working to cancel the current input. GDB has the same > problem. It needs to press Ctrl-C several times to get it to a new > prompt. That's also done on purpose -- in certain circumstances it requires that Ctrl-C be hit 3 times (MAX_SIGINTS_ACCEPTED). There was a good reason that was put in place, but I'm afraid I don't recall why... Dave -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility