asciimoo / wuzz

Interactive cli tool for HTTP inspection
GNU Affero General Public License v3.0
10.54k stars 412 forks source link

vim keybindings - better navigation #22

Open acarl005 opened 7 years ago

acarl005 commented 7 years ago

This is awesome! I hate to be "that guy" but vim keybindings would be nice 🤓. Vim's <ctrl-w> window commands for navigating windows would be especially convenient for quickly jumping around.

Benaiah commented 7 years ago

I have an existing branch with j/k keybindings for scrolling up and down - adding a <ctrl-w> keybind would be pretty easy. I messed up some stuff in git, but I'll try to get that finished up and send in a pull request today.

Benaiah commented 7 years ago

@acarl005 did you have any other suggestions for vim keybinds (other than in the text fields themselves, not sure how feasible that would be)?

acarl005 commented 7 years ago

Apart from the window commands, the ability to navigate (hjkl and bweBWE) within the text fields would be the most useful imho. It would be nice to be able to quickly copy-paste text blocks, e.g. copying a whole JSON object with ya{ to the system clipboard if possible.

asciimoo commented 7 years ago

Maybe, it would be better to make keybindings configurable in the future. I love vim too, but unfortunately not everybody feels the same, and they may not find it intuitive.

acarl005 commented 7 years ago

You're absolutely right. I'd be happy with a command line option like wuzz --vim-keys or something like that and I could just alias it.

Benaiah commented 7 years ago

@asciimoo I agree with making keybinds configurable. wuzz could use a config file for quite a few things - for instance, settings like pretty-printing seem like they would be a bit awkward to provide on the command line.

caedn commented 7 years ago

I see that ctrl-j/k jump to the next/previous field, I think ctrl-h/l to jump between columns would be very useful too.

Some common readline keybindings would be very nice as well. Especially ctrl-a/e to jump to the beginning and end of a line. Maybe use alt+hjkl for the vim navigation so they don't shadow the readline commands.

Opening the $EDITOR for a field (maybe with ctrl-x-e) would be my preferred way to edit anything beyond the most basic stuff.

justinas commented 7 years ago

Alternatively, I would suggest an option of Readline/Emacs keybindings. Ctrl-A, Ctrl-E, Alt-F, Alt-B like in the shell would be super useful.

nigurr commented 7 years ago

Can we add support for vim? so that delete line is easy :) currently i don't have option for this

ieatmumble commented 7 years ago

Hi,

Indeed, it would be really helpful to be able to delete one row of text, along the lines of dd in vim or ctrl+k in nano, at least for the cases when the text is pasted from a different source, in bulk. Along the same lines, being able to delete everything to the left on the same row and everything to the right would be extra helpful.

Thanks a lot for this useful and promising tool!