Lines Matching +full:multi +full:- +full:line
1 //===-- Editline.h ----------------------------------------------*- C++ -*-===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
13 // a) Sometimes text just disappears while editing. In an 80-column editor
40 #include "lldb/lldb-private.h"
107 /// Status used to decide when and how to start editing another line in
108 /// multi-line sessions.
111 /// The default state proceeds to edit the current line.
126 /// The start of the first line in a multi-line edit session.
129 /// The start of the current line in a multi-line edit session.
132 /// The location of the cursor on the current line in a multi-line edit
136 /// The location immediately after the last character in a multi-line edit
154 /// facility. Both single- and multi-line editing are supported.
170 /// Sets a string to be used as a prompt, or combined with a line number to
174 /// Sets an alternate string to be used as a prompt for the second line and
175 /// beyond in multi-line editing scenarios.
184 /// Returns the index of the line currently being edited.
203 /// Register a callback for testing whether multi-line input is complete
208 /// Register a callback for determining the appropriate indentation for a line
233 /// Prompts for and reads a single line of user input.
234 bool GetLine(std::string &line, bool &interrupted);
236 /// Prompts for and reads a multi-line batch of user input.
245 /// Sets the lowest line number for multi-line editing sessions. A value of
246 /// zero suppresses line number printing in the prompt.
250 /// with line numbers as appropriate. The line index is a zero-based index
251 /// into the current multi-line session.
254 /// Sets the current line index between line edits to allow free movement
259 /// to be the same for all lines of the current multi-line session.
263 /// Emacs-based, or false if they are VI-based.
270 /// Helper method used by MoveCursor to determine relative line position.
273 /// Move the cursor from one well-established location to another using
274 /// relative line positioning and absolute column positioning.
278 /// including prompts, optionally starting from a specific line. Lines are
283 /// Counts the number of rows a given line of content will end up occupying,
285 /// occupied by a cursor when at the end of the line.
288 /// Save the line currently being edited.
291 /// Replaces the current multi-line session with the next entry from history.
294 /// Character reading implementation for EditLine that supports our multi-line
301 /// Line break command used when meta+return is pressed in multi-line mode.
304 /// Command used when return is pressed in multi-line mode.
307 /// Delete command used when delete is pressed in multi-line mode.
310 /// Delete command used when backspace is pressed in multi-line mode.
313 /// Line navigation command used when ^P or up arrow are pressed in multi-line
317 /// Line navigation command used when ^N or down arrow are pressed in
318 /// multi-line mode.
322 /// multi-line mode.
326 /// multi-line mode.
329 /// Buffer start command used when Esc < is typed in multi-line emacs mode.
332 /// Buffer end command used when Esc > is typed in multi-line emacs mode.
335 /// Context-sensitive tab insertion or code completion command used when the
345 /// Respond to normal character insertion by fixing line indentation
348 /// Revert line command used when moving between lines.
352 /// single or multi-line editing.
372 #pragma clang diagnostic ignored "-Wdeprecated-declarations"
376 #pragma clang diagnostic ignored "-Wdeprecated-declarations"
389 int m_current_line_rows = -1;