def construct_editor(text): app = qapplication() editor = CodeEditor(parent=None) editor.setup_editor(language='Python') editor.set_text(text) cursor = editor.textCursor() cursor.movePosition(QTextCursor.End) editor.setTextCursor(cursor) return editor
def get_indent_fix(text, indent_chars=" " * 4): app = qapplication() editor = CodeEditor(parent=None) editor.setup_editor(language='Python', indent_chars=indent_chars) editor.set_text(text) cursor = editor.textCursor() cursor.movePosition(QTextCursor.End) editor.setTextCursor(cursor) editor.fix_indent() return to_text_string(editor.toPlainText())
def get_indent_fix(text): app = qapplication() editor = CodeEditor(parent=None) editor.setup_editor(language='Python') editor.set_text(text) cursor = editor.textCursor() cursor.movePosition(QTextCursor.End) editor.setTextCursor(cursor) editor.fix_indent() return to_text_string(editor.toPlainText())
def get_indent_fix(text, indent_chars=" " * 4, tab_stop_width_spaces=4, sol=False, forward=True, language='Python'): """Return text with last line's indentation fixed.""" app = qapplication() editor = CodeEditor(parent=None) editor.setup_editor(language=language, indent_chars=indent_chars, tab_stop_width_spaces=tab_stop_width_spaces) editor.set_text(text) cursor = editor.textCursor() cursor.movePosition(QTextCursor.End) if sol: lines = text.splitlines(True) repeat = len(lines[-1].lstrip()) cursor.movePosition(QTextCursor.Left, n=repeat) editor.setTextCursor(cursor) editor.fix_indent(forward=forward) return to_text_string(editor.toPlainText())