From 4e26e5e26855c29e47f4e38f03c0f697af5b8c2d Mon Sep 17 00:00:00 2001 From: Unknown Date: Thu, 3 May 2018 18:03:20 +0100 Subject: Script Editor now displays positional column This solves #17931 and makes the script editor consistent with other text editors(Sublime, Gedit, Vim) in displaying the position rather than the raw number of characters. --- editor/code_editor.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'editor') diff --git a/editor/code_editor.cpp b/editor/code_editor.cpp index 4c7f2f53cc..19bcb28fa5 100644 --- a/editor/code_editor.cpp +++ b/editor/code_editor.cpp @@ -677,7 +677,20 @@ void CodeTextEditor::_reset_zoom() { void CodeTextEditor::_line_col_changed() { line_nb->set_text(itos(text_editor->cursor_get_line() + 1)); - col_nb->set_text(itos(text_editor->cursor_get_column() + 1)); + + String line = text_editor->get_line(text_editor->cursor_get_line()); + + int positional_column = 0; + + for (int i = 0; i < text_editor->cursor_get_column(); i++) { + if (line[i] == '\t') { + positional_column += text_editor->get_indent_size(); //tab size + } else { + positional_column += 1; + } + } + + col_nb->set_text(itos(positional_column + 1)); } void CodeTextEditor::_text_changed() { -- cgit v1.2.3