Add a way to configure default search options (#17179)
Closes https://github.com/zed-industries/zed/issues/4646 ```json // Search options to enable by default when opening new project and buffer searches. "search": { "whole_word": false, "case_sensitive": false, "include_ignored": false, "regex": false } ``` Release Notes: - Added `search` settings section to configure default options enabled in buffer and project searches ([#4646](https://github.com/zed-industries/zed/issues/4646)) --------- Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
This commit is contained in:
parent
8985fd87c2
commit
65961b80fc
8 changed files with 85 additions and 8 deletions
|
@ -1,8 +1,10 @@
|
|||
use bitflags::bitflags;
|
||||
pub use buffer_search::BufferSearchBar;
|
||||
use editor::SearchSettings;
|
||||
use gpui::{actions, Action, AppContext, IntoElement};
|
||||
use project::search::SearchQuery;
|
||||
pub use project_search::ProjectSearchView;
|
||||
use settings::Settings;
|
||||
use ui::{prelude::*, Tooltip};
|
||||
use ui::{ButtonStyle, IconButton};
|
||||
use workspace::notifications::NotificationId;
|
||||
|
@ -13,6 +15,7 @@ pub mod project_search;
|
|||
pub(crate) mod search_bar;
|
||||
|
||||
pub fn init(cx: &mut AppContext) {
|
||||
SearchSettings::register(cx);
|
||||
menu::init();
|
||||
buffer_search::init(cx);
|
||||
project_search::init(cx);
|
||||
|
@ -93,6 +96,15 @@ impl SearchOptions {
|
|||
options
|
||||
}
|
||||
|
||||
pub fn from_settings(settings: &SearchSettings) -> SearchOptions {
|
||||
let mut options = SearchOptions::NONE;
|
||||
options.set(SearchOptions::WHOLE_WORD, settings.whole_word);
|
||||
options.set(SearchOptions::CASE_SENSITIVE, settings.case_sensitive);
|
||||
options.set(SearchOptions::INCLUDE_IGNORED, settings.include_ignored);
|
||||
options.set(SearchOptions::REGEX, settings.regex);
|
||||
options
|
||||
}
|
||||
|
||||
pub fn as_button(
|
||||
&self,
|
||||
active: bool,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue