mirror of
https://github.com/fish-shell/fish-shell.git
synced 2026-06-02 22:21:15 -03:00
Make control-S begin navigating the pager contents
In addition to showing the search field, actually allow the user to type in it.
This commit is contained in:
@@ -24,6 +24,7 @@
|
|||||||
- exec now behaves properly inside functions (#5449)
|
- exec now behaves properly inside functions (#5449)
|
||||||
- while loops now evaluate to the last executed command in the loop body (or zero if the body was empty), matching POSIX semantics.
|
- while loops now evaluate to the last executed command in the loop body (or zero if the body was empty), matching POSIX semantics.
|
||||||
- fish does not hang on launch when running under Cygwin/MSYS2
|
- fish does not hang on launch when running under Cygwin/MSYS2
|
||||||
|
- The pager-toggle-search binding (by default Control-S) now positions the cursor in the completions list.
|
||||||
|
|
||||||
|
|
||||||
# fish 3.0.0 (released December 28, 2018)
|
# fish 3.0.0 (released December 28, 2018)
|
||||||
|
|||||||
@@ -2728,10 +2728,15 @@ const wchar_t *reader_readline(int nchars) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case R_PAGER_TOGGLE_SEARCH: {
|
case R_PAGER_TOGGLE_SEARCH: {
|
||||||
if (data->is_navigating_pager_contents()) {
|
if (!data->pager.empty()) {
|
||||||
|
// Toggle search, and begin navigating if we are now searching.
|
||||||
bool sfs = data->pager.is_search_field_shown();
|
bool sfs = data->pager.is_search_field_shown();
|
||||||
data->pager.set_search_field_shown(!sfs);
|
data->pager.set_search_field_shown(!sfs);
|
||||||
data->pager.set_fully_disclosed(true);
|
data->pager.set_fully_disclosed(true);
|
||||||
|
if (data->pager.is_search_field_shown() &&
|
||||||
|
!data->is_navigating_pager_contents()) {
|
||||||
|
select_completion_in_direction(direction_south);
|
||||||
|
}
|
||||||
reader_repaint_needed();
|
reader_repaint_needed();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user