|
@@ -431,6 +431,10 @@ void ScriptTextEditor::trim_trailing_whitespace() {
|
|
|
code_editor->trim_trailing_whitespace();
|
|
|
}
|
|
|
|
|
|
+void ScriptTextEditor::trim_final_newlines() {
|
|
|
+ code_editor->trim_final_newlines();
|
|
|
+}
|
|
|
+
|
|
|
void ScriptTextEditor::insert_final_newline() {
|
|
|
code_editor->insert_final_newline();
|
|
|
}
|
|
@@ -1427,6 +1431,9 @@ void ScriptTextEditor::_edit_option(int p_op) {
|
|
|
case EDIT_TRIM_TRAILING_WHITESAPCE: {
|
|
|
trim_trailing_whitespace();
|
|
|
} break;
|
|
|
+ case EDIT_TRIM_FINAL_NEWLINES: {
|
|
|
+ trim_final_newlines();
|
|
|
+ } break;
|
|
|
case EDIT_CONVERT_INDENT_TO_SPACES: {
|
|
|
code_editor->set_indent_using_spaces(true);
|
|
|
convert_indent();
|
|
@@ -2299,6 +2306,7 @@ void ScriptTextEditor::_enable_code_editor() {
|
|
|
edit_menu->get_popup()->add_separator();
|
|
|
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("ui_text_completion_query"), EDIT_COMPLETE);
|
|
|
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/trim_trailing_whitespace"), EDIT_TRIM_TRAILING_WHITESAPCE);
|
|
|
+ edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/trim_final_newlines"), EDIT_TRIM_FINAL_NEWLINES);
|
|
|
{
|
|
|
PopupMenu *sub_menu = memnew(PopupMenu);
|
|
|
sub_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/convert_indent_to_spaces"), EDIT_CONVERT_INDENT_TO_SPACES);
|
|
@@ -2484,6 +2492,7 @@ void ScriptTextEditor::register_editor() {
|
|
|
ED_SHORTCUT("script_text_editor/evaluate_selection", TTR("Evaluate Selection"), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::E);
|
|
|
ED_SHORTCUT("script_text_editor/toggle_word_wrap", TTR("Toggle Word Wrap"), KeyModifierMask::ALT | Key::Z);
|
|
|
ED_SHORTCUT("script_text_editor/trim_trailing_whitespace", TTR("Trim Trailing Whitespace"), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::ALT | Key::T);
|
|
|
+ ED_SHORTCUT("script_text_editor/trim_final_newlines", TTR("Trim Final Newlines"), Key::NONE);
|
|
|
ED_SHORTCUT("script_text_editor/convert_indent_to_spaces", TTR("Convert Indent to Spaces"), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::Y);
|
|
|
ED_SHORTCUT("script_text_editor/convert_indent_to_tabs", TTR("Convert Indent to Tabs"), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::I);
|
|
|
ED_SHORTCUT("script_text_editor/auto_indent", TTR("Auto Indent"), KeyModifierMask::CMD_OR_CTRL | Key::I);
|