mirror of
https://github.com/zed-industries/zed.git
synced 2024-09-19 10:29:35 +03:00
WIP
This commit is contained in:
parent
bf8eee26f8
commit
276991fb5f
@ -176,6 +176,11 @@ pub fn init(app: &mut MutableAppContext) {
|
||||
"buffer:select_smaller_syntax_node",
|
||||
Some("BufferView"),
|
||||
),
|
||||
Binding::new(
|
||||
"ctrl-m",
|
||||
"buffer:jump_to_enclosing_bracket",
|
||||
Some("BufferView"),
|
||||
),
|
||||
Binding::new("pageup", "buffer:page_up", Some("BufferView")),
|
||||
Binding::new("pagedown", "buffer:page_down", Some("BufferView")),
|
||||
Binding::new("alt-cmd-[", "buffer:fold", Some("BufferView")),
|
||||
@ -288,6 +293,10 @@ pub fn init(app: &mut MutableAppContext) {
|
||||
"buffer:select_smaller_syntax_node",
|
||||
BufferView::select_smaller_syntax_node,
|
||||
);
|
||||
app.add_action(
|
||||
"buffer:move_to_enclosing_bracket",
|
||||
BufferView::move_to_enclosing_bracket,
|
||||
);
|
||||
app.add_action("buffer:page_up", BufferView::page_up);
|
||||
app.add_action("buffer:page_down", BufferView::page_down);
|
||||
app.add_action("buffer:fold", BufferView::fold);
|
||||
@ -1816,6 +1825,19 @@ impl BufferView {
|
||||
self.select_larger_syntax_node_stack = stack;
|
||||
}
|
||||
|
||||
pub fn move_to_enclosing_bracket(&mut self, _: &(), ctx: &mut ViewContext<Self>) {
|
||||
use super::RangeExt as _;
|
||||
|
||||
let buffer = self.buffer.read(ctx.as_ref());
|
||||
let mut selections = self.selections(ctx.as_ref()).to_vec();
|
||||
for selection in &mut selections {
|
||||
let range = selection.range(buffer).sorted();
|
||||
if let Some((open_range, close_range)) = buffer.enclosing_bracket_ranges(range) {}
|
||||
}
|
||||
|
||||
self.update_selections(selections, true, ctx);
|
||||
}
|
||||
|
||||
fn build_columnar_selection(
|
||||
&mut self,
|
||||
row: u32,
|
||||
|
Loading…
Reference in New Issue
Block a user