mirror of https://github.com/MidnightCommander/mc
Merge branch '2393_disable_puts_to_clipboard'
* 2393_disable_puts_to_clipboard:
updated mc.keymap.default, mc.keymap.emacs, added new action - 'InputXCut'
Fixed highlighting in command line (was broken: aa9cb6d320
)
Ticket #2393 (no put removed text into clipboard)
This commit is contained in:
commit
5cc0b9166c
|
@ -329,6 +329,7 @@ InputKillWord = alt-d
|
|||
InputBackwardKillWord = alt-backspace
|
||||
InputSetMark =
|
||||
InputKillRegion = ctrl-w
|
||||
InputXCut =
|
||||
InputXStore = alt-w
|
||||
InputXPaste =
|
||||
InputYank = ctrl-y
|
||||
|
|
|
@ -333,6 +333,7 @@ InputKillWord = alt-d
|
|||
InputBackwardKillWord = alt-backspace
|
||||
InputSetMark =
|
||||
InputKillRegion = ctrl-w
|
||||
InputXCut =
|
||||
InputXStore = alt-w
|
||||
InputXPaste =
|
||||
InputYank = ctrl-y
|
||||
|
|
|
@ -253,6 +253,7 @@
|
|||
#define CK_InputKillRegion 4016
|
||||
#define CK_InputKillSave 4017
|
||||
#define CK_InputYank 4018
|
||||
#define CK_InputCopyRegion 4019
|
||||
#define CK_InputKillLine 4020
|
||||
#define CK_InputHistoryPrev 4021
|
||||
#define CK_InputHistoryNext 4022
|
||||
|
|
|
@ -311,7 +311,7 @@ command_new (int y, int x, int cols)
|
|||
const input_colors_t command_colors =
|
||||
{
|
||||
DEFAULT_COLOR,
|
||||
DEFAULT_COLOR,
|
||||
COMMAND_MARK_COLOR,
|
||||
DEFAULT_COLOR,
|
||||
COMMAND_HISTORY_COLOR
|
||||
};
|
||||
|
|
|
@ -491,7 +491,8 @@ static name_keymap_t command_names[] = {
|
|||
{ "InputHistoryNext", CK_InputHistoryNext },
|
||||
{ "InputHistoryShow", CK_InputHistoryShow },
|
||||
{ "InputComplete", CK_InputComplete },
|
||||
{ "InputXStore", CK_InputKillSave },
|
||||
{ "InputXCut", CK_InputKillSave },
|
||||
{ "InputXStore", CK_InputCopyRegion },
|
||||
{ "InputXPaste", CK_InputPaste },
|
||||
{ "InputClearLine", CK_InputClearLine },
|
||||
{ "InputLeftHighlight", CK_InputLeftHighlight },
|
||||
|
|
90
src/widget.c
90
src/widget.c
|
@ -1788,30 +1788,6 @@ backward_word (WInput * in)
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
key_left (WInput * in)
|
||||
{
|
||||
backward_char (in);
|
||||
}
|
||||
|
||||
static void
|
||||
key_ctrl_left (WInput * in)
|
||||
{
|
||||
backward_word (in);
|
||||
}
|
||||
|
||||
static void
|
||||
key_right (WInput * in)
|
||||
{
|
||||
forward_char (in);
|
||||
}
|
||||
|
||||
static void
|
||||
key_ctrl_right (WInput * in)
|
||||
{
|
||||
forward_word (in);
|
||||
}
|
||||
|
||||
static void
|
||||
backward_delete (WInput * in)
|
||||
{
|
||||
|
@ -1878,7 +1854,6 @@ kill_word (WInput * in)
|
|||
new_point = in->point;
|
||||
in->point = old_point;
|
||||
|
||||
copy_region (in, old_point, new_point);
|
||||
delete_region (in, old_point, new_point);
|
||||
in->need_push = 1;
|
||||
in->charpoint = 0;
|
||||
|
@ -1895,36 +1870,10 @@ back_kill_word (WInput * in)
|
|||
new_point = in->point;
|
||||
in->point = old_point;
|
||||
|
||||
copy_region (in, old_point, new_point);
|
||||
delete_region (in, old_point, new_point);
|
||||
in->need_push = 1;
|
||||
}
|
||||
|
||||
static void
|
||||
set_mark (WInput * in)
|
||||
{
|
||||
input_mark_cmd (in, TRUE);
|
||||
}
|
||||
|
||||
static void
|
||||
kill_save (WInput * in)
|
||||
{
|
||||
copy_region (in, in->mark, in->point);
|
||||
}
|
||||
|
||||
static void
|
||||
kill_region (WInput * in)
|
||||
{
|
||||
kill_save (in);
|
||||
delete_region (in, in->point, in->mark);
|
||||
}
|
||||
|
||||
static void
|
||||
clear_region (WInput * in)
|
||||
{
|
||||
delete_region (in, in->point, in->mark);
|
||||
}
|
||||
|
||||
static void
|
||||
yank (WInput * in)
|
||||
{
|
||||
|
@ -1949,6 +1898,17 @@ kill_line (WInput * in)
|
|||
in->charpoint = 0;
|
||||
}
|
||||
|
||||
static void
|
||||
clear_line (WInput * in)
|
||||
{
|
||||
in->need_push = 1;
|
||||
in->buffer[0] = '\0';
|
||||
in->point = 0;
|
||||
in->mark = 0;
|
||||
in->highlight = FALSE;
|
||||
in->charpoint = 0;
|
||||
}
|
||||
|
||||
static void
|
||||
ins_from_clip (WInput * in)
|
||||
{
|
||||
|
@ -2075,19 +2035,19 @@ input_execute_cmd (WInput * in, unsigned long command)
|
|||
break;
|
||||
case CK_InputMoveLeft:
|
||||
case CK_InputLeftHighlight:
|
||||
key_left (in);
|
||||
backward_char (in);
|
||||
break;
|
||||
case CK_InputWordLeft:
|
||||
case CK_InputWordLeftHighlight:
|
||||
key_ctrl_left (in);
|
||||
backward_word (in);
|
||||
break;
|
||||
case CK_InputMoveRight:
|
||||
case CK_InputRightHighlight:
|
||||
key_right (in);
|
||||
forward_char (in);
|
||||
break;
|
||||
case CK_InputWordRight:
|
||||
case CK_InputWordRightHighlight:
|
||||
key_ctrl_right (in);
|
||||
forward_word (in);
|
||||
break;
|
||||
case CK_InputBackwardChar:
|
||||
backward_char (in);
|
||||
|
@ -2132,16 +2092,25 @@ input_execute_cmd (WInput * in, unsigned long command)
|
|||
back_kill_word (in);
|
||||
break;
|
||||
case CK_InputSetMark:
|
||||
set_mark (in);
|
||||
input_mark_cmd (in, TRUE);
|
||||
break;
|
||||
case CK_InputKillRegion:
|
||||
kill_region (in);
|
||||
delete_region (in, in->point, in->mark);
|
||||
break;
|
||||
case CK_InputKillLine:
|
||||
/* clear command line from cursor to the EOL */
|
||||
kill_line (in);
|
||||
break;
|
||||
case CK_InputClearLine:
|
||||
clear_region (in);
|
||||
/* clear command line */
|
||||
clear_line (in);
|
||||
break;
|
||||
case CK_InputCopyRegion:
|
||||
copy_region (in, in->mark, in->point);
|
||||
break;
|
||||
case CK_InputKillSave:
|
||||
kill_save (in);
|
||||
copy_region (in, in->mark, in->point);
|
||||
delete_region (in, in->point, in->mark);
|
||||
break;
|
||||
case CK_InputYank:
|
||||
yank (in);
|
||||
|
@ -2149,9 +2118,6 @@ input_execute_cmd (WInput * in, unsigned long command)
|
|||
case CK_InputPaste:
|
||||
ins_from_clip (in);
|
||||
break;
|
||||
case CK_InputKillLine:
|
||||
kill_line (in);
|
||||
break;
|
||||
case CK_InputHistoryPrev:
|
||||
hist_prev (in);
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue