aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config.def.h5
-rw-r--r--main.c6
-rw-r--r--vis-operators.c26
-rw-r--r--vis.h1
4 files changed, 2 insertions, 36 deletions
diff --git a/config.def.h b/config.def.h
index 55e7924..7c437ba 100644
--- a/config.def.h
+++ b/config.def.h
@@ -171,7 +171,7 @@ static const KeyBinding bindings_operators[] = {
{ "7", ACTION(COUNT) },
{ "8", ACTION(COUNT) },
{ "9", ACTION(COUNT) },
- { "~", ACTION(OPERATOR_CASE_SWAP) },
+ { "~", ALIAS("g~") },
{ "=", ALIAS(":|fmt<Enter>") },
{ "<", ACTION(OPERATOR_SHIFT_LEFT) },
{ ">", ACTION(OPERATOR_SHIFT_RIGHT) },
@@ -179,7 +179,7 @@ static const KeyBinding bindings_operators[] = {
{ "'", ACTION(MARK) },
{ "c", ACTION(OPERATOR_CHANGE) },
{ "d", ACTION(OPERATOR_DELETE) },
- { "g~", ACTION(OPERATOR_CASE_SWAP) },
+ { "g~", ALIAS(":|tr '[:lower:][:upper:]' '[:upper:][:lower:]'<Enter>") },
{ "gp", ACTION(PUT_AFTER_END) },
{ "gP", ACTION(PUT_BEFORE_END) },
{ "gu", ALIAS(":|tr '[:upper:]' '[:lower:]'<Enter>")},
@@ -202,7 +202,6 @@ static const KeyBinding bindings_normal[] = {
{ "@", ACTION(MACRO_REPLAY) },
{ ":", ACTION(PROMPT_SHOW) },
{ ".", ACTION(REPEAT) },
- { "~", ALIAS("<vis-operator-case-swap>ll") },
{ "C", ALIAS("c$") },
{ "<C-b>", ALIAS("<PageUp>") },
{ "<C-c>", ACTION(SELECTIONS_REMOVE_COLUMN) },
diff --git a/main.c b/main.c
index bfbcc6d..efce88e 100644
--- a/main.c
+++ b/main.c
@@ -236,7 +236,6 @@ enum {
VIS_ACTION_OPERATOR_YANK,
VIS_ACTION_OPERATOR_SHIFT_LEFT,
VIS_ACTION_OPERATOR_SHIFT_RIGHT,
- VIS_ACTION_OPERATOR_CASE_SWAP,
VIS_ACTION_COUNT,
VIS_ACTION_INSERT_NEWLINE,
VIS_ACTION_INSERT_TAB,
@@ -777,11 +776,6 @@ static const KeyAction vis_action[] = {
VIS_HELP("Shift right operator")
operator, { .i = VIS_OP_SHIFT_RIGHT }
},
- [VIS_ACTION_OPERATOR_CASE_SWAP] = {
- "vis-operator-case-swap",
- VIS_HELP("Swap case operator")
- operator, { .i = VIS_OP_CASE_SWAP }
- },
[VIS_ACTION_COUNT] = {
"vis-count",
VIS_HELP("Count specifier")
diff --git a/vis-operators.c b/vis-operators.c
index 2a0329b..4a0ba42 100644
--- a/vis-operators.c
+++ b/vis-operators.c
@@ -160,27 +160,6 @@ static size_t op_shift_left(Vis *vis, Text *txt, OperatorContext *c) {
return newpos;
}
-static size_t op_case_change(Vis *vis, Text *txt, OperatorContext *c) {
- size_t len = text_range_size(&c->range);
- char *buf = malloc(len);
- if (!buf)
- return c->pos;
- len = text_bytes_get(txt, c->range.start, len, buf);
- size_t rem = len;
- for (char *cur = buf; rem > 0; cur++, rem--) {
- int ch = (unsigned char)*cur;
- if (isascii(ch)) {
- if (c->arg->i == VIS_OP_CASE_SWAP)
- *cur = islower(ch) ? toupper(ch) : tolower(ch);
- }
- }
-
- text_delete(txt, c->range.start, len);
- text_insert(txt, c->range.start, buf, len);
- free(buf);
- return c->pos;
-}
-
static size_t op_cursor(Vis *vis, Text *txt, OperatorContext *c) {
View *view = vis->win->view;
Filerange r = text_range_linewise(txt, &c->range);
@@ -264,10 +243,6 @@ bool vis_operator(Vis *vis, enum VisOperator id, ...) {
case VIS_OP_MODESWITCH:
vis->action.mode = va_arg(ap, int);
break;
- case VIS_OP_CASE_SWAP:
- vis->action.arg.i = id;
- id = VIS_OP_CASE_SWAP;
- break;
case VIS_OP_CURSOR_SOL:
case VIS_OP_CURSOR_EOL:
vis->action.arg.i = id;
@@ -353,7 +328,6 @@ const Operator vis_operators[] = {
[VIS_OP_PUT_AFTER] = { op_put },
[VIS_OP_SHIFT_RIGHT] = { op_shift_right },
[VIS_OP_SHIFT_LEFT] = { op_shift_left },
- [VIS_OP_CASE_SWAP] = { op_case_change },
[VIS_OP_JOIN] = { op_join },
[VIS_OP_MODESWITCH] = { op_modeswitch },
[VIS_OP_REPLACE] = { op_replace },
diff --git a/vis.h b/vis.h
index 4d999a6..5a31035 100644
--- a/vis.h
+++ b/vis.h
@@ -385,7 +385,6 @@ enum VisOperator {
VIS_OP_MODESWITCH,
VIS_OP_REPLACE,
VIS_OP_CURSOR_SOL,
- VIS_OP_CASE_SWAP,
VIS_OP_INVALID, /* denotes the end of the "real" operators */
/* pseudo operators: keep them at the end to save space in array definition */
VIS_OP_CURSOR_EOL,