mirror of
https://github.com/MidnightCommander/mc
synced 2024-12-22 20:36:50 +03:00
930f683019
MC already has its own half-ready trick: when pasting with Shift-Insert, using the X11 extension, the newline ("Enter" as mc calls it) with the Shift modifier pressed gets converted to a "Return", and in the editor the Return character inserts a non-indenting newline. This makes pasting better in terminals not supporting bracketed paste, however, it has some problems that this commit addresses: * Shift+newline gets this special treatment, but Ctrl+newline gets dropped. Hence e.g. when pasting in Gnome-terminal with Ctrl+Shift+V all the newlines will be missing. This commit adds the same non-indenting newline behavior to Ctrl+Newline and Ctrl+Shift+Newline. * The code forgets about Tab that also needs special treatment: - Most terminals send \e[Z on Shift+Tab, this is not handled by MC at all, moreover it causes a hang for about a second. This commit teaches this sequence to MC. This is especially useful when no X11 is available, because there Ctrl+Tab is identical to Tab, so the backwards tab feature is not available. With this commit Shift+Tab becomes a backwards tab too on all terminals that emit \e[Z. - When pasting to the editor, Shift+Tab, Ctrl+Tab and Ctrl+Shift+Tab should all insert a tab for the same reason mentioned at the newline. - It would look inconsistent in the keymap files to have logical code such as "backtab" instead of "shift-tab" and friends, hence get rid of KEY_BTAB and use KEY_M_SHIFT | '\t' instead. Signed-off-by: Andrew Borodin <aborodin@vmail.ru> |
||
---|---|---|
.. | ||
button.c | ||
button.h | ||
buttonbar.c | ||
buttonbar.h | ||
check.c | ||
check.h | ||
dialog-switch.c | ||
dialog-switch.h | ||
dialog.c | ||
dialog.h | ||
gauge.c | ||
gauge.h | ||
groupbox.c | ||
groupbox.h | ||
history.c | ||
history.h | ||
hline.c | ||
hline.h | ||
input_complete.c | ||
input_complete.h | ||
input.c | ||
input.h | ||
label.c | ||
label.h | ||
listbox-window.c | ||
listbox-window.h | ||
listbox.c | ||
listbox.h | ||
Makefile.am | ||
menu.c | ||
menu.h | ||
quick.c | ||
quick.h | ||
radio.c | ||
radio.h | ||
widget-common.c | ||
widget-common.h | ||
wtools.c | ||
wtools.h |