MCPcopy Create free account
hub / github.com/Eeive/Evcode-ide / delete_char_backward

Method delete_char_backward

src/editor/buffer.rs:245–265  ·  view source on GitHub ↗
(&mut self)

Source from the content-addressed store, hash-verified

243 }
244
245 pub fn delete_char_backward(&mut self) {
246 if self.delete_selection() {
247 return;
248 }
249 let end = self.cursor_char_idx();
250 if end == 0 {
251 return;
252 }
253 let cursor_before = self.cursor;
254 let start = self.document.previous_grapheme_boundary(end);
255 let deleted = self.document.slice_text(start, end);
256 self.document.remove_char_range(start, end);
257 let (line, column) = self.document.char_to_position(start);
258 self.cursor = self.cursor.set(line, column, &self.document);
259 self.push_undo(UndoRecord {
260 start,
261 inserted: String::new(),
262 deleted,
263 cursor_before,
264 });
265 }
266
267 pub fn delete_current_line(&mut self) {
268 self.delete_line(self.cursor.line);

Calls 8

delete_selectionMethod · 0.80
cursor_char_idxMethod · 0.80
slice_textMethod · 0.80
remove_char_rangeMethod · 0.80
char_to_positionMethod · 0.80
setMethod · 0.80
push_undoMethod · 0.80