diff --git a/src/backup/todo.txt b/src/backup/todo.txt index 43c7f50..85f4358 100644 --- a/src/backup/todo.txt +++ b/src/backup/todo.txt @@ -2,6 +2,10 @@ ! From a user (novice) point of view, how does it look like? +Use session 3: +- Maybe status view, commit changes (like to buffer name or line) on enter? +- Search over buffer directory, close search, quick enter buffer? Not sure if line, more general purpose + How to go about search/replace, opening code and other considerations - We can use sed + find to search and replace, the automatic reopen should do the job - Maybe also we can List all files recursively instead of opening them, how fast is that??? diff --git a/src/text_editor/commands.cpp b/src/text_editor/commands.cpp index 407dc87..a63cbbe 100644 --- a/src/text_editor/commands.cpp +++ b/src/text_editor/commands.cpp @@ -763,7 +763,6 @@ void Command_Rename() { String Coro_YesNoCancel(mco_coro *co, BSet main, String question) { JumpTempBuffer(&main); NextActiveWindowID = main.window->id; - RawAppendf(main.buffer, R"==( %S diff --git a/src/text_editor/window.cpp b/src/text_editor/window.cpp index 94e134c..0fcfa73 100644 --- a/src/text_editor/window.cpp +++ b/src/text_editor/window.cpp @@ -109,7 +109,7 @@ View *WindowOpenBufferView(Window *new_parent_window, String name) { } Assert(window->active_view.id == view->id.id); - View *result = OpenBufferView(name); + View *result = OpenBufferView(name); new_parent_window->active_view = result->id; return result; } diff --git a/src/text_editor/window_status.cpp b/src/text_editor/window_status.cpp index 42dc59d..a72d7e7 100644 --- a/src/text_editor/window_status.cpp +++ b/src/text_editor/window_status.cpp @@ -78,7 +78,8 @@ void StatusWindowUpdate() { const char *reopen = main.buffer->changed_on_disk ? " :Reopen" : ""; const char *case_sens = SearchCaseSensitive ? " C" : ""; const char *word_bound = SearchWordBoundary ? " W" : ""; - String s = Format(scratch, " %S:%lld:%lld%s%s", main.buffer->name, (long long)xy.line + 1ll, (long long)xy.col + 1ll, case_sens, word_bound, reopen); + const char *dirty = main.buffer->dirty ? " !" : ""; + String s = Format(scratch, " %S:%lld:%lld%s%s%s", main.buffer->name, (long long)xy.line + 1ll, (long long)xy.col + 1ll, dirty, case_sens, word_bound, reopen); For (ActiveProcesses) { if (it.view_id == main.view->id.id) { s = Format(scratch, "%S %lld :KillProcess", s, (long long)it.id);