Compare commits
2 commits
1258d76986
...
17be71042b
Author | SHA1 | Date | |
---|---|---|---|
17be71042b | |||
bb71a43233 |
1 changed files with 9 additions and 10 deletions
|
@ -273,8 +273,8 @@ pub const Editor = struct {
|
||||||
pause_undo: bool = false,
|
pause_undo: bool = false,
|
||||||
pause_undo_root: ?Buffer.Root = null,
|
pause_undo_root: ?Buffer.Root = null,
|
||||||
|
|
||||||
cursels: CurSel.List,
|
cursels: CurSel.List = .empty,
|
||||||
cursels_saved: CurSel.List,
|
cursels_saved: CurSel.List = .empty,
|
||||||
selection_mode: SelectMode = .char,
|
selection_mode: SelectMode = .char,
|
||||||
clipboard: ?[]const u8 = null,
|
clipboard: ?[]const u8 = null,
|
||||||
target_column: ?Cursor = null,
|
target_column: ?Cursor = null,
|
||||||
|
@ -291,7 +291,7 @@ pub const Editor = struct {
|
||||||
eol_mode: Buffer.EolMode = .lf,
|
eol_mode: Buffer.EolMode = .lf,
|
||||||
utf8_sanitized: bool = false,
|
utf8_sanitized: bool = false,
|
||||||
} = null,
|
} = null,
|
||||||
matches: Match.List,
|
matches: Match.List = .empty,
|
||||||
match_token: usize = 0,
|
match_token: usize = 0,
|
||||||
match_done_token: usize = 0,
|
match_done_token: usize = 0,
|
||||||
last_find_query: ?[]const u8 = null,
|
last_find_query: ?[]const u8 = null,
|
||||||
|
@ -339,12 +339,14 @@ pub const Editor = struct {
|
||||||
style_cache: ?StyleCache = null,
|
style_cache: ?StyleCache = null,
|
||||||
style_cache_theme: []const u8 = "",
|
style_cache_theme: []const u8 = "",
|
||||||
|
|
||||||
diagnostics: std.ArrayListUnmanaged(Diagnostic),
|
diagnostics: std.ArrayListUnmanaged(Diagnostic) = .empty,
|
||||||
diag_errors: usize = 0,
|
diag_errors: usize = 0,
|
||||||
diag_warnings: usize = 0,
|
diag_warnings: usize = 0,
|
||||||
diag_info: usize = 0,
|
diag_info: usize = 0,
|
||||||
diag_hints: usize = 0,
|
diag_hints: usize = 0,
|
||||||
|
|
||||||
|
completions: std.ArrayListUnmanaged(u8) = .empty,
|
||||||
|
|
||||||
need_save_after_filter: ?struct {
|
need_save_after_filter: ?struct {
|
||||||
then: ?struct {
|
then: ?struct {
|
||||||
cmd: []const u8,
|
cmd: []const u8,
|
||||||
|
@ -452,12 +454,8 @@ pub const Editor = struct {
|
||||||
.animation_lag = get_animation_max_lag(),
|
.animation_lag = get_animation_max_lag(),
|
||||||
.animation_frame_rate = frame_rate,
|
.animation_frame_rate = frame_rate,
|
||||||
.animation_last_time = time.microTimestamp(),
|
.animation_last_time = time.microTimestamp(),
|
||||||
.cursels = .empty,
|
|
||||||
.cursels_saved = .empty,
|
|
||||||
.matches = .empty,
|
|
||||||
.enable_terminal_cursor = tui.config().enable_terminal_cursor,
|
.enable_terminal_cursor = tui.config().enable_terminal_cursor,
|
||||||
.render_whitespace = from_whitespace_mode(tui.config().whitespace_mode),
|
.render_whitespace = from_whitespace_mode(tui.config().whitespace_mode),
|
||||||
.diagnostics = .empty,
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -467,6 +465,7 @@ pub const Editor = struct {
|
||||||
if (self.buffer) |_| self.write_state(meta.writer(self.allocator)) catch {};
|
if (self.buffer) |_| self.write_state(meta.writer(self.allocator)) catch {};
|
||||||
for (self.diagnostics.items) |*d| d.deinit(self.allocator);
|
for (self.diagnostics.items) |*d| d.deinit(self.allocator);
|
||||||
self.diagnostics.deinit(self.allocator);
|
self.diagnostics.deinit(self.allocator);
|
||||||
|
self.completions.deinit(self.allocator);
|
||||||
if (self.syntax) |syn| syn.destroy(tui.query_cache());
|
if (self.syntax) |syn| syn.destroy(tui.query_cache());
|
||||||
self.cursels.deinit(self.allocator);
|
self.cursels.deinit(self.allocator);
|
||||||
self.matches.deinit(self.allocator);
|
self.matches.deinit(self.allocator);
|
||||||
|
@ -5284,6 +5283,7 @@ pub const Editor = struct {
|
||||||
pub fn completion(self: *Self, _: Context) Result {
|
pub fn completion(self: *Self, _: Context) Result {
|
||||||
const file_path = self.file_path orelse return;
|
const file_path = self.file_path orelse return;
|
||||||
const primary = self.get_primary();
|
const primary = self.get_primary();
|
||||||
|
self.completions.clearRetainingCapacity();
|
||||||
return project_manager.completion(file_path, primary.cursor.row, primary.cursor.col);
|
return project_manager.completion(file_path, primary.cursor.row, primary.cursor.col);
|
||||||
}
|
}
|
||||||
pub const completion_meta: Meta = .{ .description = "Language: Show completions at cursor" };
|
pub const completion_meta: Meta = .{ .description = "Language: Show completions at cursor" };
|
||||||
|
@ -5481,11 +5481,10 @@ pub const Editor = struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn add_completion(self: *Self, row: usize, col: usize, is_incomplete: bool, msg: tp.message) Result {
|
pub fn add_completion(self: *Self, row: usize, col: usize, is_incomplete: bool, msg: tp.message) Result {
|
||||||
_ = self;
|
try self.completions.appendSlice(self.allocator, msg.buf);
|
||||||
_ = row;
|
_ = row;
|
||||||
_ = col;
|
_ = col;
|
||||||
_ = is_incomplete;
|
_ = is_incomplete;
|
||||||
_ = msg;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn select(self: *Self, ctx: Context) Result {
|
pub fn select(self: *Self, ctx: Context) Result {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue