Ctrl + Enter
This commit is contained in:
@@ -111,7 +111,7 @@ void Command_CreateCursorVertical(View *_view, int direction) {
|
|||||||
MergeCarets(*buffer, &view.carets);
|
MergeCarets(*buffer, &view.carets);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Command_SelectRange(View *view, Range range) {
|
void Command_SelectRangeOneCursor(View *view, Range range) {
|
||||||
Buffer *buffer = GetBuffer(view->buffer_id);
|
Buffer *buffer = GetBuffer(view->buffer_id);
|
||||||
view->carets.len = 1;
|
view->carets.len = 1;
|
||||||
view->carets[0] = MakeCaret(range.min, range.max);
|
view->carets[0] = MakeCaret(range.min, range.max);
|
||||||
@@ -336,9 +336,9 @@ void HandleActiveWindowBindings(Window *window) {
|
|||||||
if (Ctrl() && eval_result.len) {
|
if (Ctrl() && eval_result.len) {
|
||||||
Command_SelectEntireBuffer(&view);
|
Command_SelectEntireBuffer(&view);
|
||||||
Command_Replace(&view, eval_result);
|
Command_Replace(&view, eval_result);
|
||||||
Command_SelectRange(&view, {});
|
Command_SelectRangeOneCursor(&view, {});
|
||||||
Command_Replace(&view, L"\n");
|
Command_Replace(&view, L"\n");
|
||||||
Command_SelectRange(&view, {});
|
Command_SelectRangeOneCursor(&view, {});
|
||||||
} else {
|
} else {
|
||||||
{
|
{
|
||||||
Window *window = GetWindow(GetLastActiveWindow());
|
Window *window = GetWindow(GetLastActiveWindow());
|
||||||
@@ -348,12 +348,15 @@ void HandleActiveWindowBindings(Window *window) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Range range = GetLineRangeWithoutNL(*buffer, 0);
|
Range range = GetLineRangeWithoutNL(*buffer, 0);
|
||||||
Command_SelectRange(&view, range);
|
Command_SelectRangeOneCursor(&view, range);
|
||||||
Command_Replace(&view, {});
|
Command_Replace(&view, {});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (Press(KEY_ENTER)) {
|
if (CtrlPress(KEY_ENTER)) {
|
||||||
|
Command_MoveCursorsToSide(window, DIR_RIGHT);
|
||||||
|
Command_Replace(&view, L"\n");
|
||||||
|
} else if (Press(KEY_ENTER)) {
|
||||||
Command_Replace(&view, L"\n");
|
Command_Replace(&view, L"\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -540,5 +543,5 @@ void ReplaceInfobarData() {
|
|||||||
String s = Format(scratch, "line: %5lld col: %5lld name: %.*s", (long long)xy.line + 1ll, (long long)xy.col + 1ll, FmtString(name));
|
String s = Format(scratch, "line: %5lld col: %5lld name: %.*s", (long long)xy.line + 1ll, (long long)xy.col + 1ll, FmtString(name));
|
||||||
String16 string = ToString16(scratch, s);
|
String16 string = ToString16(scratch, s);
|
||||||
ReplaceText(buffer, {0, buffer->len}, string);
|
ReplaceText(buffer, {0, buffer->len}, string);
|
||||||
Command_SelectRange(view, {});
|
Command_SelectRangeOneCursor(view, {});
|
||||||
}
|
}
|
||||||
@@ -89,7 +89,6 @@ BufferID NullBufferID = {0};
|
|||||||
ViewID NullViewID = {0};
|
ViewID NullViewID = {0};
|
||||||
WindowID CommandWindowID = {0};
|
WindowID CommandWindowID = {0};
|
||||||
WindowID InfoBarWindowID = {0};
|
WindowID InfoBarWindowID = {0};
|
||||||
// WindowID ExecBarWindowID = {0};
|
|
||||||
|
|
||||||
Array<Buffer> Buffers = {};
|
Array<Buffer> Buffers = {};
|
||||||
Array<View> Views = {};
|
Array<View> Views = {};
|
||||||
|
|||||||
Reference in New Issue
Block a user