* feat(keyup): Configure SearchMode for KeyUp invocation #1216 * docs: adjusted search mode documentation * feat: setting search mode on engine * chore: cargo fmt * chore: removed redundant field name
This commit is contained in:
parent
15abf42984
commit
ebef5cdaf0
5 changed files with 28 additions and 4 deletions
|
@ -47,6 +47,11 @@
|
|||
## leave unspecified to use same mode set in "filter_mode"
|
||||
# filter_mode_shell_up_key_binding = "global"
|
||||
|
||||
## which search mode to use when atuin is invoked from a shell up-key binding
|
||||
## the accepted values are identical to those of "search_mode"
|
||||
## leave unspecified to use same mode set in "search_mode"
|
||||
# search_mode_shell_up_key_binding = "fuzzy"
|
||||
|
||||
## which style to use
|
||||
## possible values: auto, full, compact
|
||||
# style = "auto"
|
||||
|
|
|
@ -157,6 +157,7 @@ pub struct Settings {
|
|||
pub search_mode: SearchMode,
|
||||
pub filter_mode: FilterMode,
|
||||
pub filter_mode_shell_up_key_binding: Option<FilterMode>,
|
||||
pub search_mode_shell_up_key_binding: Option<SearchMode>,
|
||||
pub shell_up_key_binding: bool,
|
||||
pub inline_height: u16,
|
||||
pub invert: bool,
|
||||
|
|
|
@ -614,13 +614,19 @@ pub async fn history(
|
|||
let context = current_context();
|
||||
|
||||
let history_count = db.history_count().await?;
|
||||
|
||||
let search_mode = if settings.shell_up_key_binding {
|
||||
settings
|
||||
.search_mode_shell_up_key_binding
|
||||
.unwrap_or(settings.search_mode)
|
||||
} else {
|
||||
settings.search_mode
|
||||
};
|
||||
let mut app = State {
|
||||
history_count,
|
||||
results_state: ListState::default(),
|
||||
update_needed: None,
|
||||
switched_search_mode: false,
|
||||
search_mode: settings.search_mode,
|
||||
search_mode,
|
||||
search: SearchState {
|
||||
input,
|
||||
filter_mode: if settings.workspaces && context.git_root.is_some() {
|
||||
|
@ -634,7 +640,7 @@ pub async fn history(
|
|||
},
|
||||
context,
|
||||
},
|
||||
engine: engines::engine(settings.search_mode),
|
||||
engine: engines::engine(search_mode),
|
||||
results_len: 0,
|
||||
};
|
||||
|
||||
|
|
|
@ -154,6 +154,18 @@ Filter modes can still be toggled via ctrl-r
|
|||
filter_mode = "host"
|
||||
```
|
||||
|
||||
### `search_mode_shell_up_key_binding`
|
||||
|
||||
The default searchmode to use when searching and being invoked from a shell up-key binding.
|
||||
|
||||
Accepts exactly the same options as `search_mode` above
|
||||
|
||||
```
|
||||
search_mode_shell_up_key_binding = "fuzzy"
|
||||
```
|
||||
|
||||
Defaults to the value specified for search_mode.
|
||||
|
||||
### `filter_mode_shell_up_key_binding`
|
||||
|
||||
The default filter to use when searching and being invoked from a shell up-key binding.
|
||||
|
|
|
@ -8,7 +8,7 @@ Atuin does not yet have full key binding customization, though we do allow some
|
|||
|
||||
## Custom up arrow filter mode
|
||||
|
||||
It can be useful to use a different filter mode on the up arrow. For example, you could use ctrl-r for searching globally, but the up arrow for searching history from the current directory only.
|
||||
It can be useful to use a different filter or search mode on the up arrow. For example, you could use ctrl-r for searching globally, but the up arrow for searching history from the current directory only.
|
||||
|
||||
Set your config like this:
|
||||
|
||||
|
|
Loading…
Reference in a new issue