Files
godot-docs-l10n/classes/zh_Hant/class_textedit.rst
Rémi Verschelde c3f2364c10 Sync classref with 4.6 branch
Lots of translations invalidated (fuzzied) as we just synced Weblate.
2025-12-19 16:39:51 +01:00

4310 lines
268 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. meta::
:keywords: textarea
.. _class_TextEdit:
TextEdit
========
**繼承:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
**被繼承:** :ref:`CodeEdit<class_CodeEdit>`
多行文字編輯器。
.. rst-class:: classref-introduction-group
說明
----
A multiline text editor. It also has limited facilities for editing code, such as syntax highlighting support. For more advanced facilities for editing code, see :ref:`CodeEdit<class_CodeEdit>`.
While entering text, it is possible to insert special characters using Unicode, OEM or Windows alt codes:
- To enter Unicode codepoints, hold :kbd:`Alt` and type the codepoint on the numpad. For example, to enter the character ``á`` (U+00E1), hold :kbd:`Alt` and type :kbd:`+E1` on the numpad (the leading zeroes can be omitted).
- To enter OEM codepoints, hold :kbd:`Alt` and type the code on the numpad. For example, to enter the character ``á`` (OEM 160), hold :kbd:`Alt` and type ``160`` on the numpad.
- To enter Windows codepoints, hold :kbd:`Alt` and type the code on the numpad. For example, to enter the character ``á`` (Windows 0225), hold :kbd:`Alt` and type :kbd:`0`, :kbd:`2`, :kbd:`2`, :kbd:`5` on the numpad. The leading zero here must **not** be omitted, as this is how Windows codepoints are distinguished from OEM codepoints.
\ **Note:** Most viewport, caret, and edit methods contain a ``caret_index`` argument for :ref:`caret_multiple<class_TextEdit_property_caret_multiple>` support. The argument should be one of the following: ``-1`` for all carets, ``0`` for the main caret, or greater than ``0`` for secondary carets in the order they were created.
\ **Note:** When holding down :kbd:`Alt`, the vertical scroll wheel will scroll 5 times as fast as it would normally do. This also works in the Godot script editor.
.. rst-class:: classref-reftable-group
屬性
----
.. table::
:widths: auto
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` | :ref:`autowrap_mode<class_TextEdit_property_autowrap_mode>` | ``3`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`backspace_deletes_composite_character_enabled<class_TextEdit_property_backspace_deletes_composite_character_enabled>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`caret_blink<class_TextEdit_property_caret_blink>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`caret_blink_interval<class_TextEdit_property_caret_blink_interval>` | ``0.65`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`caret_draw_when_editable_disabled<class_TextEdit_property_caret_draw_when_editable_disabled>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`caret_mid_grapheme<class_TextEdit_property_caret_mid_grapheme>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`caret_move_on_right_click<class_TextEdit_property_caret_move_on_right_click>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`caret_multiple<class_TextEdit_property_caret_multiple>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`CaretType<enum_TextEdit_CaretType>` | :ref:`caret_type<class_TextEdit_property_caret_type>` | ``0`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`context_menu_enabled<class_TextEdit_property_context_menu_enabled>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`custom_word_separators<class_TextEdit_property_custom_word_separators>` | ``""`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`deselect_on_focus_loss_enabled<class_TextEdit_property_deselect_on_focus_loss_enabled>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`drag_and_drop_selection_enabled<class_TextEdit_property_drag_and_drop_selection_enabled>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`draw_control_chars<class_TextEdit_property_draw_control_chars>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`draw_spaces<class_TextEdit_property_draw_spaces>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`draw_tabs<class_TextEdit_property_draw_tabs>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`editable<class_TextEdit_property_editable>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`emoji_menu_enabled<class_TextEdit_property_emoji_menu_enabled>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`empty_selection_clipboard_enabled<class_TextEdit_property_empty_selection_clipboard_enabled>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`FocusMode<enum_Control_FocusMode>` | focus_mode | ``2`` (overrides :ref:`Control<class_Control_property_focus_mode>`) |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`highlight_current_line<class_TextEdit_property_highlight_current_line>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`indent_wrapped_lines<class_TextEdit_property_indent_wrapped_lines>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`language<class_TextEdit_property_language>` | ``""`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`middle_mouse_paste_enabled<class_TextEdit_property_middle_mouse_paste_enabled>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`minimap_draw<class_TextEdit_property_minimap_draw>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`minimap_width<class_TextEdit_property_minimap_width>` | ``80`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`CursorShape<enum_Control_CursorShape>` | mouse_default_cursor_shape | ``1`` (overrides :ref:`Control<class_Control_property_mouse_default_cursor_shape>`) |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`placeholder_text<class_TextEdit_property_placeholder_text>` | ``""`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`scroll_fit_content_height<class_TextEdit_property_scroll_fit_content_height>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`scroll_fit_content_width<class_TextEdit_property_scroll_fit_content_width>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`scroll_horizontal<class_TextEdit_property_scroll_horizontal>` | ``0`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`scroll_past_end_of_file<class_TextEdit_property_scroll_past_end_of_file>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`scroll_smooth<class_TextEdit_property_scroll_smooth>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`scroll_v_scroll_speed<class_TextEdit_property_scroll_v_scroll_speed>` | ``80.0`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`scroll_vertical<class_TextEdit_property_scroll_vertical>` | ``0.0`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`shortcut_keys_enabled<class_TextEdit_property_shortcut_keys_enabled>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` | :ref:`structured_text_bidi_override<class_TextEdit_property_structured_text_bidi_override>` | ``0`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`Array<class_Array>` | :ref:`structured_text_bidi_override_options<class_TextEdit_property_structured_text_bidi_override_options>` | ``[]`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` | :ref:`syntax_highlighter<class_TextEdit_property_syntax_highlighter>` | |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`tab_input_mode<class_TextEdit_property_tab_input_mode>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`text<class_TextEdit_property_text>` | ``""`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`TextDirection<enum_Control_TextDirection>` | :ref:`text_direction<class_TextEdit_property_text_direction>` | ``0`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`use_custom_word_separators<class_TextEdit_property_use_custom_word_separators>` | ``false`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`use_default_word_separators<class_TextEdit_property_use_default_word_separators>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`virtual_keyboard_enabled<class_TextEdit_property_virtual_keyboard_enabled>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`virtual_keyboard_show_on_focus<class_TextEdit_property_virtual_keyboard_show_on_focus>` | ``true`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
| :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` | :ref:`wrap_mode<class_TextEdit_property_wrap_mode>` | ``0`` |
+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
.. rst-class:: classref-reftable-group
方法
----
.. table::
:widths: auto
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`_backspace<class_TextEdit_private_method__backspace>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`_copy<class_TextEdit_private_method__copy>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`_cut<class_TextEdit_private_method__cut>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`_handle_unicode_input<class_TextEdit_private_method__handle_unicode_input>`\ (\ unicode_char\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>`\ ) |virtual| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`_paste<class_TextEdit_private_method__paste>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`_paste_primary_clipboard<class_TextEdit_private_method__paste_primary_clipboard>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`add_caret<class_TextEdit_method_add_caret>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`add_caret_at_carets<class_TextEdit_method_add_caret_at_carets>`\ (\ below\: :ref:`bool<class_bool>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`add_gutter<class_TextEdit_method_add_gutter>`\ (\ at\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`add_selection_for_next_occurrence<class_TextEdit_method_add_selection_for_next_occurrence>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`adjust_carets_after_edit<class_TextEdit_method_adjust_carets_after_edit>`\ (\ caret\: :ref:`int<class_int>`, from_line\: :ref:`int<class_int>`, from_col\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_col\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`adjust_viewport_to_caret<class_TextEdit_method_adjust_viewport_to_caret>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`apply_ime<class_TextEdit_method_apply_ime>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`backspace<class_TextEdit_method_backspace>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`begin_complex_operation<class_TextEdit_method_begin_complex_operation>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`begin_multicaret_edit<class_TextEdit_method_begin_multicaret_edit>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`cancel_ime<class_TextEdit_method_cancel_ime>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`center_viewport_to_caret<class_TextEdit_method_center_viewport_to_caret>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`clear<class_TextEdit_method_clear>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`clear_undo_history<class_TextEdit_method_clear_undo_history>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`collapse_carets<class_TextEdit_method_collapse_carets>`\ (\ from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_column\: :ref:`int<class_int>`, inclusive\: :ref:`bool<class_bool>` = false\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`copy<class_TextEdit_method_copy>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`cut<class_TextEdit_method_cut>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`delete_selection<class_TextEdit_method_delete_selection>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`deselect<class_TextEdit_method_deselect>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`end_action<class_TextEdit_method_end_action>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`end_complex_operation<class_TextEdit_method_end_complex_operation>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`end_multicaret_edit<class_TextEdit_method_end_multicaret_edit>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_caret_column<class_TextEdit_method_get_caret_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_caret_count<class_TextEdit_method_get_caret_count>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Vector2<class_Vector2>` | :ref:`get_caret_draw_pos<class_TextEdit_method_get_caret_draw_pos>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_caret_index_edit_order<class_TextEdit_method_get_caret_index_edit_order>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_caret_line<class_TextEdit_method_get_caret_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_caret_wrap_index<class_TextEdit_method_get_caret_wrap_index>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_first_non_whitespace_column<class_TextEdit_method_get_first_non_whitespace_column>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_first_visible_line<class_TextEdit_method_get_first_visible_line>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_gutter_count<class_TextEdit_method_get_gutter_count>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_gutter_name<class_TextEdit_method_get_gutter_name>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`GutterType<enum_TextEdit_GutterType>` | :ref:`get_gutter_type<class_TextEdit_method_get_gutter_type>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_gutter_width<class_TextEdit_method_get_gutter_width>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`HScrollBar<class_HScrollBar>` | :ref:`get_h_scroll_bar<class_TextEdit_method_get_h_scroll_bar>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_indent_level<class_TextEdit_method_get_indent_level>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_last_full_visible_line<class_TextEdit_method_get_last_full_visible_line>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_last_full_visible_line_wrap_index<class_TextEdit_method_get_last_full_visible_line_wrap_index>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_last_unhidden_line<class_TextEdit_method_get_last_unhidden_line>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_line<class_TextEdit_method_get_line>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Color<class_Color>` | :ref:`get_line_background_color<class_TextEdit_method_get_line_background_color>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Vector2i<class_Vector2i>` | :ref:`get_line_column_at_pos<class_TextEdit_method_get_line_column_at_pos>`\ (\ position\: :ref:`Vector2i<class_Vector2i>`, clamp_line\: :ref:`bool<class_bool>` = true, clamp_column\: :ref:`bool<class_bool>` = true\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_line_count<class_TextEdit_method_get_line_count>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`get_line_gutter_icon<class_TextEdit_method_get_line_gutter_icon>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Color<class_Color>` | :ref:`get_line_gutter_item_color<class_TextEdit_method_get_line_gutter_item_color>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Variant<class_Variant>` | :ref:`get_line_gutter_metadata<class_TextEdit_method_get_line_gutter_metadata>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_line_gutter_text<class_TextEdit_method_get_line_gutter_text>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_line_height<class_TextEdit_method_get_line_height>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Array<class_Array>`\[:ref:`Vector2i<class_Vector2i>`\] | :ref:`get_line_ranges_from_carets<class_TextEdit_method_get_line_ranges_from_carets>`\ (\ only_selections\: :ref:`bool<class_bool>` = false, merge_adjacent\: :ref:`bool<class_bool>` = true\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_line_width<class_TextEdit_method_get_line_width>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = -1\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_line_with_ime<class_TextEdit_method_get_line_with_ime>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_line_wrap_count<class_TextEdit_method_get_line_wrap_count>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_line_wrap_index_at_column<class_TextEdit_method_get_line_wrap_index_at_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`get_line_wrapped_text<class_TextEdit_method_get_line_wrapped_text>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Vector2<class_Vector2>` | :ref:`get_local_mouse_pos<class_TextEdit_method_get_local_mouse_pos>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PopupMenu<class_PopupMenu>` | :ref:`get_menu<class_TextEdit_method_get_menu>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_minimap_line_at_pos<class_TextEdit_method_get_minimap_line_at_pos>`\ (\ position\: :ref:`Vector2i<class_Vector2i>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_minimap_visible_lines<class_TextEdit_method_get_minimap_visible_lines>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_next_composite_character_column<class_TextEdit_method_get_next_composite_character_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Vector2i<class_Vector2i>` | :ref:`get_next_visible_line_index_offset_from<class_TextEdit_method_get_next_visible_line_index_offset_from>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>`, visible_amount\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_next_visible_line_offset_from<class_TextEdit_method_get_next_visible_line_offset_from>`\ (\ line\: :ref:`int<class_int>`, visible_amount\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Vector2i<class_Vector2i>` | :ref:`get_pos_at_line_column<class_TextEdit_method_get_pos_at_line_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_previous_composite_character_column<class_TextEdit_method_get_previous_composite_character_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Rect2i<class_Rect2i>` | :ref:`get_rect_at_line_column<class_TextEdit_method_get_rect_at_line_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_saved_version<class_TextEdit_method_get_saved_version>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_scroll_pos_for_line<class_TextEdit_method_get_scroll_pos_for_line>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_selected_text<class_TextEdit_method_get_selected_text>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_at_line_column<class_TextEdit_method_get_selection_at_line_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`, include_edges\: :ref:`bool<class_bool>` = true, only_selections\: :ref:`bool<class_bool>` = true\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_column<class_TextEdit_method_get_selection_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_from_column<class_TextEdit_method_get_selection_from_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_from_line<class_TextEdit_method_get_selection_from_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_line<class_TextEdit_method_get_selection_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`SelectionMode<enum_TextEdit_SelectionMode>` | :ref:`get_selection_mode<class_TextEdit_method_get_selection_mode>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_origin_column<class_TextEdit_method_get_selection_origin_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_origin_line<class_TextEdit_method_get_selection_origin_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_to_column<class_TextEdit_method_get_selection_to_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_to_line<class_TextEdit_method_get_selection_to_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_sorted_carets<class_TextEdit_method_get_sorted_carets>`\ (\ include_ignored_carets\: :ref:`bool<class_bool>` = false\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_tab_size<class_TextEdit_method_get_tab_size>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_total_gutter_width<class_TextEdit_method_get_total_gutter_width>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_total_visible_line_count<class_TextEdit_method_get_total_visible_line_count>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`VScrollBar<class_VScrollBar>` | :ref:`get_v_scroll_bar<class_TextEdit_method_get_v_scroll_bar>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_version<class_TextEdit_method_get_version>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_visible_line_count<class_TextEdit_method_get_visible_line_count>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_visible_line_count_in_range<class_TextEdit_method_get_visible_line_count_in_range>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_word_at_pos<class_TextEdit_method_get_word_at_pos>`\ (\ position\: :ref:`Vector2<class_Vector2>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_word_under_caret<class_TextEdit_method_get_word_under_caret>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`has_ime_text<class_TextEdit_method_has_ime_text>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`has_redo<class_TextEdit_method_has_redo>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`has_selection<class_TextEdit_method_has_selection>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`has_undo<class_TextEdit_method_has_undo>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`insert_line_at<class_TextEdit_method_insert_line_at>`\ (\ line\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`insert_text<class_TextEdit_method_insert_text>`\ (\ text\: :ref:`String<class_String>`, line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`, before_selection_begin\: :ref:`bool<class_bool>` = true, before_selection_end\: :ref:`bool<class_bool>` = false\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`insert_text_at_caret<class_TextEdit_method_insert_text_at_caret>`\ (\ text\: :ref:`String<class_String>`, caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_caret_after_selection_origin<class_TextEdit_method_is_caret_after_selection_origin>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_caret_visible<class_TextEdit_method_is_caret_visible>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_dragging_cursor<class_TextEdit_method_is_dragging_cursor>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_gutter_clickable<class_TextEdit_method_is_gutter_clickable>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_gutter_drawn<class_TextEdit_method_is_gutter_drawn>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_gutter_overwritable<class_TextEdit_method_is_gutter_overwritable>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_in_mulitcaret_edit<class_TextEdit_method_is_in_mulitcaret_edit>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_line_gutter_clickable<class_TextEdit_method_is_line_gutter_clickable>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_line_wrapped<class_TextEdit_method_is_line_wrapped>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_menu_visible<class_TextEdit_method_is_menu_visible>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_mouse_over_selection<class_TextEdit_method_is_mouse_over_selection>`\ (\ edges\: :ref:`bool<class_bool>`, caret_index\: :ref:`int<class_int>` = -1\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_overtype_mode_enabled<class_TextEdit_method_is_overtype_mode_enabled>`\ (\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`menu_option<class_TextEdit_method_menu_option>`\ (\ option\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`merge_gutters<class_TextEdit_method_merge_gutters>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`multicaret_edit_ignore_caret<class_TextEdit_method_multicaret_edit_ignore_caret>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`paste<class_TextEdit_method_paste>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`paste_primary_clipboard<class_TextEdit_method_paste_primary_clipboard>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`redo<class_TextEdit_method_redo>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`remove_caret<class_TextEdit_method_remove_caret>`\ (\ caret\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`remove_gutter<class_TextEdit_method_remove_gutter>`\ (\ gutter\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`remove_line_at<class_TextEdit_method_remove_line_at>`\ (\ line\: :ref:`int<class_int>`, move_carets_down\: :ref:`bool<class_bool>` = true\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`remove_secondary_carets<class_TextEdit_method_remove_secondary_carets>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`remove_text<class_TextEdit_method_remove_text>`\ (\ from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_column\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Vector2i<class_Vector2i>` | :ref:`search<class_TextEdit_method_search>`\ (\ text\: :ref:`String<class_String>`, flags\: :ref:`int<class_int>`, from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`\ ) |const| |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`select<class_TextEdit_method_select>`\ (\ origin_line\: :ref:`int<class_int>`, origin_column\: :ref:`int<class_int>`, caret_line\: :ref:`int<class_int>`, caret_column\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`select_all<class_TextEdit_method_select_all>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`select_word_under_caret<class_TextEdit_method_select_word_under_caret>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_caret_column<class_TextEdit_method_set_caret_column>`\ (\ column\: :ref:`int<class_int>`, adjust_viewport\: :ref:`bool<class_bool>` = true, caret_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_caret_line<class_TextEdit_method_set_caret_line>`\ (\ line\: :ref:`int<class_int>`, adjust_viewport\: :ref:`bool<class_bool>` = true, can_be_hidden\: :ref:`bool<class_bool>` = true, wrap_index\: :ref:`int<class_int>` = 0, caret_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_gutter_clickable<class_TextEdit_method_set_gutter_clickable>`\ (\ gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_gutter_custom_draw<class_TextEdit_method_set_gutter_custom_draw>`\ (\ column\: :ref:`int<class_int>`, draw_callback\: :ref:`Callable<class_Callable>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_gutter_draw<class_TextEdit_method_set_gutter_draw>`\ (\ gutter\: :ref:`int<class_int>`, draw\: :ref:`bool<class_bool>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_gutter_name<class_TextEdit_method_set_gutter_name>`\ (\ gutter\: :ref:`int<class_int>`, name\: :ref:`String<class_String>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_gutter_overwritable<class_TextEdit_method_set_gutter_overwritable>`\ (\ gutter\: :ref:`int<class_int>`, overwritable\: :ref:`bool<class_bool>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_gutter_type<class_TextEdit_method_set_gutter_type>`\ (\ gutter\: :ref:`int<class_int>`, type\: :ref:`GutterType<enum_TextEdit_GutterType>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_gutter_width<class_TextEdit_method_set_gutter_width>`\ (\ gutter\: :ref:`int<class_int>`, width\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line<class_TextEdit_method_set_line>`\ (\ line\: :ref:`int<class_int>`, new_text\: :ref:`String<class_String>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line_as_center_visible<class_TextEdit_method_set_line_as_center_visible>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line_as_first_visible<class_TextEdit_method_set_line_as_first_visible>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line_as_last_visible<class_TextEdit_method_set_line_as_last_visible>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line_background_color<class_TextEdit_method_set_line_background_color>`\ (\ line\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line_gutter_clickable<class_TextEdit_method_set_line_gutter_clickable>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line_gutter_icon<class_TextEdit_method_set_line_gutter_icon>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, icon\: :ref:`Texture2D<class_Texture2D>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line_gutter_item_color<class_TextEdit_method_set_line_gutter_item_color>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line_gutter_metadata<class_TextEdit_method_set_line_gutter_metadata>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, metadata\: :ref:`Variant<class_Variant>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_line_gutter_text<class_TextEdit_method_set_line_gutter_text>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_overtype_mode_enabled<class_TextEdit_method_set_overtype_mode_enabled>`\ (\ enabled\: :ref:`bool<class_bool>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_search_flags<class_TextEdit_method_set_search_flags>`\ (\ flags\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_search_text<class_TextEdit_method_set_search_text>`\ (\ search_text\: :ref:`String<class_String>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_selection_mode<class_TextEdit_method_set_selection_mode>`\ (\ mode\: :ref:`SelectionMode<enum_TextEdit_SelectionMode>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_selection_origin_column<class_TextEdit_method_set_selection_origin_column>`\ (\ column\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_selection_origin_line<class_TextEdit_method_set_selection_origin_line>`\ (\ line\: :ref:`int<class_int>`, can_be_hidden\: :ref:`bool<class_bool>` = true, wrap_index\: :ref:`int<class_int>` = -1, caret_index\: :ref:`int<class_int>` = 0\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_tab_size<class_TextEdit_method_set_tab_size>`\ (\ size\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_tooltip_request_func<class_TextEdit_method_set_tooltip_request_func>`\ (\ callback\: :ref:`Callable<class_Callable>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`skip_selection_for_next_occurrence<class_TextEdit_method_skip_selection_for_next_occurrence>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`start_action<class_TextEdit_method_start_action>`\ (\ action\: :ref:`EditAction<enum_TextEdit_EditAction>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`swap_lines<class_TextEdit_method_swap_lines>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`tag_saved_version<class_TextEdit_method_tag_saved_version>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`undo<class_TextEdit_method_undo>`\ (\ ) |
+--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-reftable-group
主題屬性
--------
.. table::
:widths: auto
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`background_color<class_TextEdit_theme_color_background_color>` | ``Color(0, 0, 0, 0)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`caret_background_color<class_TextEdit_theme_color_caret_background_color>` | ``Color(0, 0, 0, 1)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`caret_color<class_TextEdit_theme_color_caret_color>` | ``Color(0.875, 0.875, 0.875, 1)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`current_line_color<class_TextEdit_theme_color_current_line_color>` | ``Color(0.25, 0.25, 0.26, 0.8)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`font_color<class_TextEdit_theme_color_font_color>` | ``Color(0.875, 0.875, 0.875, 1)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`font_outline_color<class_TextEdit_theme_color_font_outline_color>` | ``Color(0, 0, 0, 1)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`font_placeholder_color<class_TextEdit_theme_color_font_placeholder_color>` | ``Color(0.875, 0.875, 0.875, 0.6)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`font_readonly_color<class_TextEdit_theme_color_font_readonly_color>` | ``Color(0.875, 0.875, 0.875, 0.5)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`font_selected_color<class_TextEdit_theme_color_font_selected_color>` | ``Color(0, 0, 0, 0)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`search_result_border_color<class_TextEdit_theme_color_search_result_border_color>` | ``Color(0.3, 0.3, 0.3, 0.4)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`search_result_color<class_TextEdit_theme_color_search_result_color>` | ``Color(0.3, 0.3, 0.3, 1)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`selection_color<class_TextEdit_theme_color_selection_color>` | ``Color(0.5, 0.5, 0.5, 1)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Color<class_Color>` | :ref:`word_highlighted_color<class_TextEdit_theme_color_word_highlighted_color>` | ``Color(0.5, 0.5, 0.5, 0.25)`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`int<class_int>` | :ref:`caret_width<class_TextEdit_theme_constant_caret_width>` | ``1`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`int<class_int>` | :ref:`line_spacing<class_TextEdit_theme_constant_line_spacing>` | ``4`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`int<class_int>` | :ref:`outline_size<class_TextEdit_theme_constant_outline_size>` | ``0`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`int<class_int>` | :ref:`wrap_offset<class_TextEdit_theme_constant_wrap_offset>` | ``10`` |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Font<class_Font>` | :ref:`font<class_TextEdit_theme_font_font>` | |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`int<class_int>` | :ref:`font_size<class_TextEdit_theme_font_size_font_size>` | |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`space<class_TextEdit_theme_icon_space>` | |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`tab<class_TextEdit_theme_icon_tab>` | |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_TextEdit_theme_style_focus>` | |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`StyleBox<class_StyleBox>` | :ref:`normal<class_TextEdit_theme_style_normal>` | |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
| :ref:`StyleBox<class_StyleBox>` | :ref:`read_only<class_TextEdit_theme_style_read_only>` | |
+-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
訊號
----
.. _class_TextEdit_signal_caret_changed:
.. rst-class:: classref-signal
**caret_changed**\ (\ ) :ref:`🔗<class_TextEdit_signal_caret_changed>`
Emitted when any caret changes position.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_signal_gutter_added:
.. rst-class:: classref-signal
**gutter_added**\ (\ ) :ref:`🔗<class_TextEdit_signal_gutter_added>`
新增邊欄時發出。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_signal_gutter_clicked:
.. rst-class:: classref-signal
**gutter_clicked**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_signal_gutter_clicked>`
點擊邊欄時發出。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_signal_gutter_removed:
.. rst-class:: classref-signal
**gutter_removed**\ (\ ) :ref:`🔗<class_TextEdit_signal_gutter_removed>`
移除邊欄時發出。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_signal_lines_edited_from:
.. rst-class:: classref-signal
**lines_edited_from**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_signal_lines_edited_from>`
文字改變時立即發出。
新增文字時 ``from_line`` 小於 ``to_line``\ 。移除文字時 ``to_line`` 小於 ``from_line``\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_signal_text_changed:
.. rst-class:: classref-signal
**text_changed**\ (\ ) :ref:`🔗<class_TextEdit_signal_text_changed>`
當文字更改時觸發。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_signal_text_set:
.. rst-class:: classref-signal
**text_set**\ (\ ) :ref:`🔗<class_TextEdit_signal_text_set>`
:ref:`clear()<class_TextEdit_method_clear>` 被呼叫,或 :ref:`text<class_TextEdit_property_text>` 被設定時發出。
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
列舉
----
.. _enum_TextEdit_MenuItems:
.. rst-class:: classref-enumeration
enum **MenuItems**: :ref:`🔗<enum_TextEdit_MenuItems>`
.. _class_TextEdit_constant_MENU_CUT:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_CUT** = ``0``
剪切(複製並刪除)選中的文字。
.. _class_TextEdit_constant_MENU_COPY:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_COPY** = ``1``
複製選中的文字。
.. _class_TextEdit_constant_MENU_PASTE:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_PASTE** = ``2``
將剪貼板上的文字貼上在選定的文字上(或游標的位置)。
.. _class_TextEdit_constant_MENU_CLEAR:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_CLEAR** = ``3``
擦除整個 **TextEdit** 文字。
.. _class_TextEdit_constant_MENU_SELECT_ALL:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SELECT_ALL** = ``4``
選擇整個 **TextEdit** 文字。
.. _class_TextEdit_constant_MENU_UNDO:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_UNDO** = ``5``
撤銷之前的操作。
.. _class_TextEdit_constant_MENU_REDO:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_REDO** = ``6``
重做前一個動作。
.. _class_TextEdit_constant_MENU_SUBMENU_TEXT_DIR:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SUBMENU_TEXT_DIR** = ``7``
“文字書寫方向”子功能表的 ID。
.. _class_TextEdit_constant_MENU_DIR_INHERITED:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_INHERITED** = ``8``
將文字方向設定為繼承。
.. _class_TextEdit_constant_MENU_DIR_AUTO:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_AUTO** = ``9``
將文字方向設定為自動。
.. _class_TextEdit_constant_MENU_DIR_LTR:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_LTR** = ``10``
將文字方向設定為從左至右。
.. _class_TextEdit_constant_MENU_DIR_RTL:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_RTL** = ``11``
將文字方向設定為從右至左。
.. _class_TextEdit_constant_MENU_DISPLAY_UCC:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DISPLAY_UCC** = ``12``
切換控制字元的顯示。
.. _class_TextEdit_constant_MENU_SUBMENU_INSERT_UCC:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SUBMENU_INSERT_UCC** = ``13``
“插入控制字元”子功能表的 ID。
.. _class_TextEdit_constant_MENU_INSERT_LRM:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRM** = ``14``
插入從左至右旗標LRM字元。
.. _class_TextEdit_constant_MENU_INSERT_RLM:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLM** = ``15``
插入從右至左旗標LRM字元。
.. _class_TextEdit_constant_MENU_INSERT_LRE:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRE** = ``16``
插入開始從左至右嵌入LRE字元。
.. _class_TextEdit_constant_MENU_INSERT_RLE:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLE** = ``17``
插入開始從右至左嵌入RLE字元。
.. _class_TextEdit_constant_MENU_INSERT_LRO:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRO** = ``18``
插入開始從左至右強制LRO字元。
.. _class_TextEdit_constant_MENU_INSERT_RLO:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLO** = ``19``
插入開始從右至左嵌入RLE字元。
.. _class_TextEdit_constant_MENU_INSERT_PDF:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_PDF** = ``20``
插入退出方向格式化PDF字元。
.. _class_TextEdit_constant_MENU_INSERT_ALM:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ALM** = ``21``
插入阿拉伯字母標記ALM字元。
.. _class_TextEdit_constant_MENU_INSERT_LRI:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRI** = ``22``
插入從左至右隔離LRI字元。
.. _class_TextEdit_constant_MENU_INSERT_RLI:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLI** = ``23``
插入從右至左隔離RLI字元。
.. _class_TextEdit_constant_MENU_INSERT_FSI:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_FSI** = ``24``
插入第一個強隔離FSI字元。
.. _class_TextEdit_constant_MENU_INSERT_PDI:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_PDI** = ``25``
插入退出方向隔離PDI字元。
.. _class_TextEdit_constant_MENU_INSERT_ZWJ:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ZWJ** = ``26``
插入零寬連接子ZWJ字元。
.. _class_TextEdit_constant_MENU_INSERT_ZWNJ:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ZWNJ** = ``27``
插入零寬非連接子ZWNJ字元。
.. _class_TextEdit_constant_MENU_INSERT_WJ:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_WJ** = ``28``
插入文字連接子WJ字元。
.. _class_TextEdit_constant_MENU_INSERT_SHY:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_SHY** = ``29``
插入軟連字號SHY字元。
.. _class_TextEdit_constant_MENU_EMOJI_AND_SYMBOL:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_EMOJI_AND_SYMBOL** = ``30``
Opens system emoji and symbol picker.
.. _class_TextEdit_constant_MENU_MAX:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_MAX** = ``31``
代表 :ref:`MenuItems<enum_TextEdit_MenuItems>` 列舉的大小。
.. rst-class:: classref-item-separator
----
.. _enum_TextEdit_EditAction:
.. rst-class:: classref-enumeration
enum **EditAction**: :ref:`🔗<enum_TextEdit_EditAction>`
.. _class_TextEdit_constant_ACTION_NONE:
.. rst-class:: classref-enumeration-constant
:ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_NONE** = ``0``
無目前動作。
.. _class_TextEdit_constant_ACTION_TYPING:
.. rst-class:: classref-enumeration-constant
:ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_TYPING** = ``1``
打字動作。
.. _class_TextEdit_constant_ACTION_BACKSPACE:
.. rst-class:: classref-enumeration-constant
:ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_BACKSPACE** = ``2``
向後刪除動作。
.. _class_TextEdit_constant_ACTION_DELETE:
.. rst-class:: classref-enumeration-constant
:ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_DELETE** = ``3``
向前刪除動作。
.. rst-class:: classref-item-separator
----
.. _enum_TextEdit_SearchFlags:
.. rst-class:: classref-enumeration
enum **SearchFlags**: :ref:`🔗<enum_TextEdit_SearchFlags>`
.. _class_TextEdit_constant_SEARCH_MATCH_CASE:
.. rst-class:: classref-enumeration-constant
:ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_MATCH_CASE** = ``1``
搜索時配對大小寫。
.. _class_TextEdit_constant_SEARCH_WHOLE_WORDS:
.. rst-class:: classref-enumeration-constant
:ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_WHOLE_WORDS** = ``2``
搜索時配對整個單詞。
.. _class_TextEdit_constant_SEARCH_BACKWARDS:
.. rst-class:: classref-enumeration-constant
:ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_BACKWARDS** = ``4``
從頭到尾搜索。
.. rst-class:: classref-item-separator
----
.. _enum_TextEdit_CaretType:
.. rst-class:: classref-enumeration
enum **CaretType**: :ref:`🔗<enum_TextEdit_CaretType>`
.. _class_TextEdit_constant_CARET_TYPE_LINE:
.. rst-class:: classref-enumeration-constant
:ref:`CaretType<enum_TextEdit_CaretType>` **CARET_TYPE_LINE** = ``0``
垂直線游標。
.. _class_TextEdit_constant_CARET_TYPE_BLOCK:
.. rst-class:: classref-enumeration-constant
:ref:`CaretType<enum_TextEdit_CaretType>` **CARET_TYPE_BLOCK** = ``1``
方塊游標。
.. rst-class:: classref-item-separator
----
.. _enum_TextEdit_SelectionMode:
.. rst-class:: classref-enumeration
enum **SelectionMode**: :ref:`🔗<enum_TextEdit_SelectionMode>`
.. _class_TextEdit_constant_SELECTION_MODE_NONE:
.. rst-class:: classref-enumeration-constant
:ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_NONE** = ``0``
不選擇。
.. _class_TextEdit_constant_SELECTION_MODE_SHIFT:
.. rst-class:: classref-enumeration-constant
:ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_SHIFT** = ``1``
就像按下 ``shift`` 一樣進行選擇。
.. _class_TextEdit_constant_SELECTION_MODE_POINTER:
.. rst-class:: classref-enumeration-constant
:ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_POINTER** = ``2``
選擇單個字元,就像使用者按一下一樣。
.. _class_TextEdit_constant_SELECTION_MODE_WORD:
.. rst-class:: classref-enumeration-constant
:ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_WORD** = ``3``
選擇整個單詞,就像使用者按兩下一樣。
.. _class_TextEdit_constant_SELECTION_MODE_LINE:
.. rst-class:: classref-enumeration-constant
:ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_LINE** = ``4``
選擇整行文字,就像使用者三擊一樣。
.. rst-class:: classref-item-separator
----
.. _enum_TextEdit_LineWrappingMode:
.. rst-class:: classref-enumeration
enum **LineWrappingMode**: :ref:`🔗<enum_TextEdit_LineWrappingMode>`
.. _class_TextEdit_constant_LINE_WRAPPING_NONE:
.. rst-class:: classref-enumeration-constant
:ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **LINE_WRAPPING_NONE** = ``0``
換行被禁用。
.. _class_TextEdit_constant_LINE_WRAPPING_BOUNDARY:
.. rst-class:: classref-enumeration-constant
:ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **LINE_WRAPPING_BOUNDARY** = ``1``
換行發生在控制項邊界,超出通常可見的範圍。
.. rst-class:: classref-item-separator
----
.. _enum_TextEdit_GutterType:
.. rst-class:: classref-enumeration
enum **GutterType**: :ref:`🔗<enum_TextEdit_GutterType>`
.. _class_TextEdit_constant_GUTTER_TYPE_STRING:
.. rst-class:: classref-enumeration-constant
:ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_STRING** = ``0``
When a gutter is set to string using :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`, it is used to contain text set via the :ref:`set_line_gutter_text()<class_TextEdit_method_set_line_gutter_text>` method.
.. _class_TextEdit_constant_GUTTER_TYPE_ICON:
.. rst-class:: classref-enumeration-constant
:ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_ICON** = ``1``
When a gutter is set to icon using :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`, it is used to contain an icon set via the :ref:`set_line_gutter_icon()<class_TextEdit_method_set_line_gutter_icon>` method.
.. _class_TextEdit_constant_GUTTER_TYPE_CUSTOM:
.. rst-class:: classref-enumeration-constant
:ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_CUSTOM** = ``2``
When a gutter is set to custom using :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`, it is used to contain custom visuals controlled by a callback method set via the :ref:`set_gutter_custom_draw()<class_TextEdit_method_set_gutter_custom_draw>` method.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
屬性說明
--------
.. _class_TextEdit_property_autowrap_mode:
.. rst-class:: classref-property
:ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **autowrap_mode** = ``3`` :ref:`🔗<class_TextEdit_property_autowrap_mode>`
.. rst-class:: classref-property-setget
- |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode<enum_TextServer_AutowrapMode>`\ )
- :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **get_autowrap_mode**\ (\ )
If :ref:`wrap_mode<class_TextEdit_property_wrap_mode>` is set to :ref:`LINE_WRAPPING_BOUNDARY<class_TextEdit_constant_LINE_WRAPPING_BOUNDARY>`, sets text wrapping mode.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_backspace_deletes_composite_character_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **backspace_deletes_composite_character_enabled** = ``false`` :ref:`🔗<class_TextEdit_property_backspace_deletes_composite_character_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_backspace_deletes_composite_character_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_backspace_deletes_composite_character_enabled**\ (\ )
If ``true`` and :ref:`caret_mid_grapheme<class_TextEdit_property_caret_mid_grapheme>` is ``false``, backspace deletes an entire composite character such as ❤️‍🩹, instead of deleting part of the composite character.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_caret_blink:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **caret_blink** = ``false`` :ref:`🔗<class_TextEdit_property_caret_blink>`
.. rst-class:: classref-property-setget
- |void| **set_caret_blink_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_caret_blink_enabled**\ (\ )
如果為 ``true``\ ,則文字游標會閃爍。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_caret_blink_interval:
.. rst-class:: classref-property
:ref:`float<class_float>` **caret_blink_interval** = ``0.65`` :ref:`🔗<class_TextEdit_property_caret_blink_interval>`
.. rst-class:: classref-property-setget
- |void| **set_caret_blink_interval**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_caret_blink_interval**\ (\ )
文字游標的閃爍間隔(單位為秒)。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_caret_draw_when_editable_disabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **caret_draw_when_editable_disabled** = ``false`` :ref:`🔗<class_TextEdit_property_caret_draw_when_editable_disabled>`
.. rst-class:: classref-property-setget
- |void| **set_draw_caret_when_editable_disabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_drawing_caret_when_editable_disabled**\ (\ )
如果為 ``true``\ ,則禁用 :ref:`editable<class_TextEdit_property_editable>` 時游標可見。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_caret_mid_grapheme:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **caret_mid_grapheme** = ``false`` :ref:`🔗<class_TextEdit_property_caret_mid_grapheme>`
.. rst-class:: classref-property-setget
- |void| **set_caret_mid_grapheme_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_caret_mid_grapheme_enabled**\ (\ )
允許在單個複合字元的元件中進行移動游標、選中、刪除的操作。
\ **注意:**\ 倒退鍵 :kbd:`Backspace` 始終按複合字元的元件刪除。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_caret_move_on_right_click:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **caret_move_on_right_click** = ``true`` :ref:`🔗<class_TextEdit_property_caret_move_on_right_click>`
.. rst-class:: classref-property-setget
- |void| **set_move_caret_on_right_click_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_move_caret_on_right_click_enabled**\ (\ )
If ``true``, a right-click moves the caret at the mouse position before displaying the context menu.
If ``false``, the context menu ignores mouse location.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_caret_multiple:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **caret_multiple** = ``true`` :ref:`🔗<class_TextEdit_property_caret_multiple>`
.. rst-class:: classref-property-setget
- |void| **set_multiple_carets_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_multiple_carets_enabled**\ (\ )
If ``true``, multiple carets are allowed. Left-clicking with :kbd:`Alt` adds a new caret. See :ref:`add_caret()<class_TextEdit_method_add_caret>` and :ref:`get_caret_count()<class_TextEdit_method_get_caret_count>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_caret_type:
.. rst-class:: classref-property
:ref:`CaretType<enum_TextEdit_CaretType>` **caret_type** = ``0`` :ref:`🔗<class_TextEdit_property_caret_type>`
.. rst-class:: classref-property-setget
- |void| **set_caret_type**\ (\ value\: :ref:`CaretType<enum_TextEdit_CaretType>`\ )
- :ref:`CaretType<enum_TextEdit_CaretType>` **get_caret_type**\ (\ )
設定要繪製的文字游標的型別。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_context_menu_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **context_menu_enabled** = ``true`` :ref:`🔗<class_TextEdit_property_context_menu_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_context_menu_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_context_menu_enabled**\ (\ )
``true`` 時按右鍵會顯示本文功能表。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_custom_word_separators:
.. rst-class:: classref-property
:ref:`String<class_String>` **custom_word_separators** = ``""`` :ref:`🔗<class_TextEdit_property_custom_word_separators>`
.. rst-class:: classref-property-setget
- |void| **set_custom_word_separators**\ (\ value\: :ref:`String<class_String>`\ )
- :ref:`String<class_String>` **get_custom_word_separators**\ (\ )
The characters to consider as word delimiters if :ref:`use_custom_word_separators<class_TextEdit_property_use_custom_word_separators>` is ``true``. The characters should be defined without separation, for example ``#_!``.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_deselect_on_focus_loss_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **deselect_on_focus_loss_enabled** = ``true`` :ref:`🔗<class_TextEdit_property_deselect_on_focus_loss_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_deselect_on_focus_loss_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_deselect_on_focus_loss_enabled**\ (\ )
如果為 ``true``\ ,則在丟失焦點時會取消選中文字。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_drag_and_drop_selection_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **drag_and_drop_selection_enabled** = ``true`` :ref:`🔗<class_TextEdit_property_drag_and_drop_selection_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_drag_and_drop_selection_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_drag_and_drop_selection_enabled**\ (\ )
If ``true``, allow drag and drop of selected text. Text can still be dropped from other sources.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_draw_control_chars:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **draw_control_chars** = ``false`` :ref:`🔗<class_TextEdit_property_draw_control_chars>`
.. rst-class:: classref-property-setget
- |void| **set_draw_control_chars**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_draw_control_chars**\ (\ )
如果為 ``true``\ ,則會顯示控制字元。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_draw_spaces:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **draw_spaces** = ``false`` :ref:`🔗<class_TextEdit_property_draw_spaces>`
.. rst-class:: classref-property-setget
- |void| **set_draw_spaces**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_drawing_spaces**\ (\ )
如果為 ``true``\ ,“空格”字元將具有可見表示形式。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_draw_tabs:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **draw_tabs** = ``false`` :ref:`🔗<class_TextEdit_property_draw_tabs>`
.. rst-class:: classref-property-setget
- |void| **set_draw_tabs**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_drawing_tabs**\ (\ )
如果為 ``true``\ ,“定位字元”字元將具有可見表示形式。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_editable:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **editable** = ``true`` :ref:`🔗<class_TextEdit_property_editable>`
.. rst-class:: classref-property-setget
- |void| **set_editable**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_editable**\ (\ )
如果為 ``false``\ ,則不能修改現在的文字,也不能新增新文字。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_emoji_menu_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **emoji_menu_enabled** = ``true`` :ref:`🔗<class_TextEdit_property_emoji_menu_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_emoji_menu_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_emoji_menu_enabled**\ (\ )
If ``true``, "Emoji and Symbols" menu is enabled.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_empty_selection_clipboard_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **empty_selection_clipboard_enabled** = ``true`` :ref:`🔗<class_TextEdit_property_empty_selection_clipboard_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_empty_selection_clipboard_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_empty_selection_clipboard_enabled**\ (\ )
If ``true``, copying or cutting without a selection is performed on all lines with a caret. Otherwise, copy and cut require a selection.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_highlight_all_occurrences:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **highlight_all_occurrences** = ``false`` :ref:`🔗<class_TextEdit_property_highlight_all_occurrences>`
.. rst-class:: classref-property-setget
- |void| **set_highlight_all_occurrences**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_highlight_all_occurrences_enabled**\ (\ )
如果為 ``true``\ ,所選文字的所有配對項都將突出顯示。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_highlight_current_line:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **highlight_current_line** = ``false`` :ref:`🔗<class_TextEdit_property_highlight_current_line>`
.. rst-class:: classref-property-setget
- |void| **set_highlight_current_line**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_highlight_current_line_enabled**\ (\ )
如果為 ``true``\ ,則包含游標的行會突出顯示。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_indent_wrapped_lines:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **indent_wrapped_lines** = ``false`` :ref:`🔗<class_TextEdit_property_indent_wrapped_lines>`
.. rst-class:: classref-property-setget
- |void| **set_indent_wrapped_lines**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_indent_wrapped_lines**\ (\ )
If ``true``, all wrapped lines are indented to the same amount as the unwrapped line.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_language:
.. rst-class:: classref-property
:ref:`String<class_String>` **language** = ``""`` :ref:`🔗<class_TextEdit_property_language>`
.. rst-class:: classref-property-setget
- |void| **set_language**\ (\ value\: :ref:`String<class_String>`\ )
- :ref:`String<class_String>` **get_language**\ (\ )
Language code used for line-breaking and text shaping algorithms. If left empty, the current locale is used instead.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_middle_mouse_paste_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **middle_mouse_paste_enabled** = ``true`` :ref:`🔗<class_TextEdit_property_middle_mouse_paste_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_middle_mouse_paste_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_middle_mouse_paste_enabled**\ (\ )
如果為 ``false``\ ,將禁用滑鼠中鍵貼上剪貼板。
\ **注意:**\ 這個方法只在 Linux 上實作。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_minimap_draw:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **minimap_draw** = ``false`` :ref:`🔗<class_TextEdit_property_minimap_draw>`
.. rst-class:: classref-property-setget
- |void| **set_draw_minimap**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_drawing_minimap**\ (\ )
If ``true``, a minimap is shown, providing an outline of your source code. The minimap uses a fixed-width text size.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_minimap_width:
.. rst-class:: classref-property
:ref:`int<class_int>` **minimap_width** = ``80`` :ref:`🔗<class_TextEdit_property_minimap_width>`
.. rst-class:: classref-property-setget
- |void| **set_minimap_width**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_minimap_width**\ (\ )
小地圖的寬度(以圖元為單位)。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_placeholder_text:
.. rst-class:: classref-property
:ref:`String<class_String>` **placeholder_text** = ``""`` :ref:`🔗<class_TextEdit_property_placeholder_text>`
.. rst-class:: classref-property-setget
- |void| **set_placeholder**\ (\ value\: :ref:`String<class_String>`\ )
- :ref:`String<class_String>` **get_placeholder**\ (\ )
**TextEdit** 為空時顯示的文字。它\ **不是** **TextEdit** 的預設值(參見 :ref:`text<class_TextEdit_property_text>`\ )。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_scroll_fit_content_height:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **scroll_fit_content_height** = ``false`` :ref:`🔗<class_TextEdit_property_scroll_fit_content_height>`
.. rst-class:: classref-property-setget
- |void| **set_fit_content_height_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_fit_content_height_enabled**\ (\ )
If ``true``, **TextEdit** will disable vertical scroll and fit minimum height to the number of visible lines. When both this property and :ref:`scroll_fit_content_width<class_TextEdit_property_scroll_fit_content_width>` are ``true``, no scrollbars will be displayed.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_scroll_fit_content_width:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **scroll_fit_content_width** = ``false`` :ref:`🔗<class_TextEdit_property_scroll_fit_content_width>`
.. rst-class:: classref-property-setget
- |void| **set_fit_content_width_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_fit_content_width_enabled**\ (\ )
If ``true``, **TextEdit** will disable horizontal scroll and fit minimum width to the widest line in the text. When both this property and :ref:`scroll_fit_content_height<class_TextEdit_property_scroll_fit_content_height>` are ``true``, no scrollbars will be displayed.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_scroll_horizontal:
.. rst-class:: classref-property
:ref:`int<class_int>` **scroll_horizontal** = ``0`` :ref:`🔗<class_TextEdit_property_scroll_horizontal>`
.. rst-class:: classref-property-setget
- |void| **set_h_scroll**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_h_scroll**\ (\ )
如果有一個水平捲軸,這決定了目前的水平滾動值,單位是圖元。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_scroll_past_end_of_file:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **scroll_past_end_of_file** = ``false`` :ref:`🔗<class_TextEdit_property_scroll_past_end_of_file>`
.. rst-class:: classref-property-setget
- |void| **set_scroll_past_end_of_file_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_scroll_past_end_of_file_enabled**\ (\ )
允許滾動過最後一行,進入“虛擬”空間。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_scroll_smooth:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **scroll_smooth** = ``false`` :ref:`🔗<class_TextEdit_property_scroll_smooth>`
.. rst-class:: classref-property-setget
- |void| **set_smooth_scroll_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_smooth_scroll_enabled**\ (\ )
Scroll smoothly over the text rather than jumping to the next location.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_scroll_v_scroll_speed:
.. rst-class:: classref-property
:ref:`float<class_float>` **scroll_v_scroll_speed** = ``80.0`` :ref:`🔗<class_TextEdit_property_scroll_v_scroll_speed>`
.. rst-class:: classref-property-setget
- |void| **set_v_scroll_speed**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_v_scroll_speed**\ (\ )
設定使用小地圖或當 :ref:`scroll_smooth<class_TextEdit_property_scroll_smooth>` 被啟用時的滾動速度。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_scroll_vertical:
.. rst-class:: classref-property
:ref:`float<class_float>` **scroll_vertical** = ``0.0`` :ref:`🔗<class_TextEdit_property_scroll_vertical>`
.. rst-class:: classref-property-setget
- |void| **set_v_scroll**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_v_scroll**\ (\ )
如果有一個垂直捲動條這就決定了目前的垂直捲動值以行數為單位頂行從0開始。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_selecting_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **selecting_enabled** = ``true`` :ref:`🔗<class_TextEdit_property_selecting_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_selecting_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_selecting_enabled**\ (\ )
如果為 ``true``\ ,文字可以被選擇。
如果為 ``false``\ ,使用者或使用\ :ref:`select()<class_TextEdit_method_select>`\ 或\ :ref:`select_all()<class_TextEdit_method_select_all>`\ 方法都不能選擇文字。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_shortcut_keys_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **shortcut_keys_enabled** = ``true`` :ref:`🔗<class_TextEdit_property_shortcut_keys_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_shortcut_keys_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_shortcut_keys_enabled**\ (\ )
``true`` 時,即使本文選單已被禁用,也會啟用該本文選單的快捷鍵。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_structured_text_bidi_override:
.. rst-class:: classref-property
:ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **structured_text_bidi_override** = ``0`` :ref:`🔗<class_TextEdit_property_structured_text_bidi_override>`
.. rst-class:: classref-property-setget
- |void| **set_structured_text_bidi_override**\ (\ value\: :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>`\ )
- :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **get_structured_text_bidi_override**\ (\ )
為結構化文字設定 BiDi 演算法覆蓋。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_structured_text_bidi_override_options:
.. rst-class:: classref-property
:ref:`Array<class_Array>` **structured_text_bidi_override_options** = ``[]`` :ref:`🔗<class_TextEdit_property_structured_text_bidi_override_options>`
.. rst-class:: classref-property-setget
- |void| **set_structured_text_bidi_override_options**\ (\ value\: :ref:`Array<class_Array>`\ )
- :ref:`Array<class_Array>` **get_structured_text_bidi_override_options**\ (\ )
設定 BiDi 覆蓋的附加選項。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_syntax_highlighter:
.. rst-class:: classref-property
:ref:`SyntaxHighlighter<class_SyntaxHighlighter>` **syntax_highlighter** :ref:`🔗<class_TextEdit_property_syntax_highlighter>`
.. rst-class:: classref-property-setget
- |void| **set_syntax_highlighter**\ (\ value\: :ref:`SyntaxHighlighter<class_SyntaxHighlighter>`\ )
- :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` **get_syntax_highlighter**\ (\ )
The syntax highlighter to use.
\ **Note:** A :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` instance should not be used across multiple **TextEdit** nodes.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_tab_input_mode:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **tab_input_mode** = ``true`` :ref:`🔗<class_TextEdit_property_tab_input_mode>`
.. rst-class:: classref-property-setget
- |void| **set_tab_input_mode**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_tab_input_mode**\ (\ )
If ``true``, :ref:`ProjectSettings.input/ui_text_indent<class_ProjectSettings_property_input/ui_text_indent>` input ``Tab`` character, otherwise it moves keyboard focus to the next :ref:`Control<class_Control>` in the scene.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_text:
.. rst-class:: classref-property
:ref:`String<class_String>` **text** = ``""`` :ref:`🔗<class_TextEdit_property_text>`
.. rst-class:: classref-property-setget
- |void| **set_text**\ (\ value\: :ref:`String<class_String>`\ )
- :ref:`String<class_String>` **get_text**\ (\ )
**TextEdit** 的字串值。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_text_direction:
.. rst-class:: classref-property
:ref:`TextDirection<enum_Control_TextDirection>` **text_direction** = ``0`` :ref:`🔗<class_TextEdit_property_text_direction>`
.. rst-class:: classref-property-setget
- |void| **set_text_direction**\ (\ value\: :ref:`TextDirection<enum_Control_TextDirection>`\ )
- :ref:`TextDirection<enum_Control_TextDirection>` **get_text_direction**\ (\ )
基礎文字書寫方向。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_use_custom_word_separators:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **use_custom_word_separators** = ``false`` :ref:`🔗<class_TextEdit_property_use_custom_word_separators>`
.. rst-class:: classref-property-setget
- |void| **set_use_custom_word_separators**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_custom_word_separators_enabled**\ (\ )
If ``false``, using :kbd:`Ctrl + Left` or :kbd:`Ctrl + Right` (:kbd:`Cmd + Left` or :kbd:`Cmd + Right` on macOS) bindings will use the behavior of :ref:`use_default_word_separators<class_TextEdit_property_use_default_word_separators>`. If ``true``, it will also stop the caret if a character within :ref:`custom_word_separators<class_TextEdit_property_custom_word_separators>` is detected. Useful for subword moving. This behavior also will be applied to the behavior of text selection.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_use_default_word_separators:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **use_default_word_separators** = ``true`` :ref:`🔗<class_TextEdit_property_use_default_word_separators>`
.. rst-class:: classref-property-setget
- |void| **set_use_default_word_separators**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_default_word_separators_enabled**\ (\ )
If ``false``, using :kbd:`Ctrl + Left` or :kbd:`Ctrl + Right` (:kbd:`Cmd + Left` or :kbd:`Cmd + Right` on macOS) bindings will stop moving caret only if a space or punctuation is detected. If ``true``, it will also stop the caret if a character is part of ``!"#$%&'()*+,-./:;<=>?@[\]^`{|}~``, the Unicode General Punctuation table, or the Unicode CJK Punctuation table. Useful for subword moving. This behavior also will be applied to the behavior of text selection.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_virtual_keyboard_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **virtual_keyboard_enabled** = ``true`` :ref:`🔗<class_TextEdit_property_virtual_keyboard_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_virtual_keyboard_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_virtual_keyboard_enabled**\ (\ )
If ``true``, the native virtual keyboard is enabled on platforms that support it.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_virtual_keyboard_show_on_focus:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **virtual_keyboard_show_on_focus** = ``true`` :ref:`🔗<class_TextEdit_property_virtual_keyboard_show_on_focus>`
.. rst-class:: classref-property-setget
- |void| **set_virtual_keyboard_show_on_focus**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_virtual_keyboard_show_on_focus**\ (\ )
If ``true``, the native virtual keyboard is shown on focus events on platforms that support it.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_property_wrap_mode:
.. rst-class:: classref-property
:ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **wrap_mode** = ``0`` :ref:`🔗<class_TextEdit_property_wrap_mode>`
.. rst-class:: classref-property-setget
- |void| **set_line_wrapping_mode**\ (\ value\: :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>`\ )
- :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **get_line_wrapping_mode**\ (\ )
設定要使用的換行模式。
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
方法說明
--------
.. _class_TextEdit_private_method__backspace:
.. rst-class:: classref-method
|void| **_backspace**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`🔗<class_TextEdit_private_method__backspace>`
覆蓋此方法可以定義使用者按下倒退鍵時應該發生什麼。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_private_method__copy:
.. rst-class:: classref-method
|void| **_copy**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`🔗<class_TextEdit_private_method__copy>`
覆蓋此方法可以定義使用者執行複製操作時應該發生什麼。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_private_method__cut:
.. rst-class:: classref-method
|void| **_cut**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`🔗<class_TextEdit_private_method__cut>`
覆蓋此方法可以定義使用者執行剪切操作時應該發生什麼。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_private_method__handle_unicode_input:
.. rst-class:: classref-method
|void| **_handle_unicode_input**\ (\ unicode_char\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`🔗<class_TextEdit_private_method__handle_unicode_input>`
覆蓋此方法可以定義使用者打出所提供的鍵 ``unicode_char`` 時應該發生什麼。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_private_method__paste:
.. rst-class:: classref-method
|void| **_paste**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`🔗<class_TextEdit_private_method__paste>`
覆蓋此方法可以定義使用者執行貼上操作時應該發生什麼。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_private_method__paste_primary_clipboard:
.. rst-class:: classref-method
|void| **_paste_primary_clipboard**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`🔗<class_TextEdit_private_method__paste_primary_clipboard>`
覆蓋此方法可以定義使用者使用滑鼠中鍵執行貼上操作時應該發生什麼。
\ **注意:**\ 此方法僅在 Linux 上實作。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_add_caret:
.. rst-class:: classref-method
:ref:`int<class_int>` **add_caret**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_add_caret>`
在給定的位置新增新的游標。返回新游標的索引,如果位置無效則返回 ``-1``\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_add_caret_at_carets:
.. rst-class:: classref-method
|void| **add_caret_at_carets**\ (\ below\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_TextEdit_method_add_caret_at_carets>`
Adds an additional caret above or below every caret. If ``below`` is ``true`` the new caret will be added below and above otherwise.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_add_gutter:
.. rst-class:: classref-method
|void| **add_gutter**\ (\ at\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_add_gutter>`
為這個 **TextEdit** 註冊一個新的邊欄。請使用 ``at`` 指定邊欄的順序。\ ``-1`` 會將該邊欄追加到右側。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_add_selection_for_next_occurrence:
.. rst-class:: classref-method
|void| **add_selection_for_next_occurrence**\ (\ ) :ref:`🔗<class_TextEdit_method_add_selection_for_next_occurrence>`
選中目前所選內容下一次出現的位置並新增文字游標。如果沒有活動的選中內容,則選中目前游標所處的單詞。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_adjust_carets_after_edit:
.. rst-class:: classref-method
|void| **adjust_carets_after_edit**\ (\ caret\: :ref:`int<class_int>`, from_line\: :ref:`int<class_int>`, from_col\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_col\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_adjust_carets_after_edit>`
**已棄用:** No longer necessary since methods now adjust carets themselves.
This method does nothing.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_adjust_viewport_to_caret:
.. rst-class:: classref-method
|void| **adjust_viewport_to_caret**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_adjust_viewport_to_caret>`
調整視口,讓游標可見。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_apply_ime:
.. rst-class:: classref-method
|void| **apply_ime**\ (\ ) :ref:`🔗<class_TextEdit_method_apply_ime>`
Applies text from the `Input Method Editor <https://en.wikipedia.org/wiki/Input_method>`__ (IME) to each caret and closes the IME if it is open.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_backspace:
.. rst-class:: classref-method
|void| **backspace**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_backspace>`
使用者按下倒退鍵時呼叫。可以用 :ref:`_backspace()<class_TextEdit_private_method__backspace>` 覆蓋。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_begin_complex_operation:
.. rst-class:: classref-method
|void| **begin_complex_operation**\ (\ ) :ref:`🔗<class_TextEdit_method_begin_complex_operation>`
開始一個多部分編輯。在呼叫 :ref:`end_complex_operation()<class_TextEdit_method_end_complex_operation>` 之前,所有編輯都將被視為一個動作。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_begin_multicaret_edit:
.. rst-class:: classref-method
|void| **begin_multicaret_edit**\ (\ ) :ref:`🔗<class_TextEdit_method_begin_multicaret_edit>`
Starts an edit for multiple carets. The edit must be ended with :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>`. Multicaret edits can be used to edit text at multiple carets and delay merging the carets until the end, so the caret indexes aren't affected immediately. :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>` and :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>` can be nested, and the merge will happen at the last :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>`.
::
begin_complex_operation()
begin_multicaret_edit()
for i in range(get_caret_count()):
if multicaret_edit_ignore_caret(i):
continue
# Logic here.
end_multicaret_edit()
end_complex_operation()
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_cancel_ime:
.. rst-class:: classref-method
|void| **cancel_ime**\ (\ ) :ref:`🔗<class_TextEdit_method_cancel_ime>`
Closes the `Input Method Editor <https://en.wikipedia.org/wiki/Input_method>`__ (IME) if it is open. Any text in the IME will be lost.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_center_viewport_to_caret:
.. rst-class:: classref-method
|void| **center_viewport_to_caret**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_center_viewport_to_caret>`
將視口居中在正在編輯的插入符號所在的行上。這也將 :ref:`scroll_horizontal<class_TextEdit_property_scroll_horizontal>` 值重設為 ``0``\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_clear:
.. rst-class:: classref-method
|void| **clear**\ (\ ) :ref:`🔗<class_TextEdit_method_clear>`
執行對 **TextEdit** 的完全重設,包括撤銷歷史。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_clear_undo_history:
.. rst-class:: classref-method
|void| **clear_undo_history**\ (\ ) :ref:`🔗<class_TextEdit_method_clear_undo_history>`
清除撤銷歷史。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_collapse_carets:
.. rst-class:: classref-method
|void| **collapse_carets**\ (\ from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_column\: :ref:`int<class_int>`, inclusive\: :ref:`bool<class_bool>` = false\ ) :ref:`🔗<class_TextEdit_method_collapse_carets>`
Collapse all carets in the given range to the ``from_line`` and ``from_column`` position.
\ ``inclusive`` applies to both ends.
If :ref:`is_in_mulitcaret_edit()<class_TextEdit_method_is_in_mulitcaret_edit>` is ``true``, carets that are collapsed will be ``true`` for :ref:`multicaret_edit_ignore_caret()<class_TextEdit_method_multicaret_edit_ignore_caret>`.
\ :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>` will be called if any carets were collapsed.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_copy:
.. rst-class:: classref-method
|void| **copy**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_copy>`
複製目前選區。可以使用 :ref:`_copy()<class_TextEdit_private_method__copy>` 覆蓋。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_cut:
.. rst-class:: classref-method
|void| **cut**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_cut>`
剪切目前選區。可以使用 :ref:`_cut()<class_TextEdit_private_method__cut>` 覆蓋。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_delete_selection:
.. rst-class:: classref-method
|void| **delete_selection**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_delete_selection>`
刪除選定的文字。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_deselect:
.. rst-class:: classref-method
|void| **deselect**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_deselect>`
取消目前選擇。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_end_action:
.. rst-class:: classref-method
|void| **end_action**\ (\ ) :ref:`🔗<class_TextEdit_method_end_action>`
標記在 :ref:`start_action()<class_TextEdit_method_start_action>` 開始的目前動作中步驟的末尾。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_end_complex_operation:
.. rst-class:: classref-method
|void| **end_complex_operation**\ (\ ) :ref:`🔗<class_TextEdit_method_end_complex_operation>`
結束一個多部分編輯,該多部分編輯從 :ref:`begin_complex_operation()<class_TextEdit_method_begin_complex_operation>` 開始。如果在一個複雜動作之外呼叫,則將目前動作將被壓入撤銷/重做堆疊。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_end_multicaret_edit:
.. rst-class:: classref-method
|void| **end_multicaret_edit**\ (\ ) :ref:`🔗<class_TextEdit_method_end_multicaret_edit>`
Ends an edit for multiple carets, that was started with :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>`. If this was the last :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>` and :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>` was called, carets will be merged.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_caret_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_caret_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_caret_column>`
返回編輯游標所在的列。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_caret_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_caret_count**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_caret_count>`
返回該 **TextEdit** 中的游標數。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_caret_draw_pos:
.. rst-class:: classref-method
:ref:`Vector2<class_Vector2>` **get_caret_draw_pos**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_caret_draw_pos>`
返回游標的圖元繪製位置。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_caret_index_edit_order:
.. rst-class:: classref-method
:ref:`PackedInt32Array<class_PackedInt32Array>` **get_caret_index_edit_order**\ (\ ) :ref:`🔗<class_TextEdit_method_get_caret_index_edit_order>`
**已棄用:** Carets no longer need to be edited in any specific order. If the carets need to be sorted, use :ref:`get_sorted_carets()<class_TextEdit_method_get_sorted_carets>` instead.
返回文字游標索引的列表,使用編輯順序,從下到上進行。編輯順序是 :ref:`insert_text_at_caret()<class_TextEdit_method_insert_text_at_caret>` 等動作的套用順序。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_caret_line:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_caret_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_caret_line>`
返回編輯游標所在的行。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_caret_wrap_index:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_caret_wrap_index**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_caret_wrap_index>`
返回正編輯的文字游標所在的換行索引。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_first_non_whitespace_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_first_non_whitespace_column**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_first_non_whitespace_column>`
Returns the first column containing a non-whitespace character on the given line. If there is only whitespace, returns the number of characters.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_first_visible_line:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_first_visible_line**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_first_visible_line>`
返回第一個可見行。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_gutter_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_gutter_count**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_gutter_count>`
返回註冊的邊欄數量。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_gutter_name:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_gutter_name**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_gutter_name>`
返回給定索引處邊欄的名稱。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_gutter_type:
.. rst-class:: classref-method
:ref:`GutterType<enum_TextEdit_GutterType>` **get_gutter_type**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_gutter_type>`
Returns the type of the gutter at the given index. Gutters can contain icons, text, or custom visuals.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_gutter_width:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_gutter_width**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_gutter_width>`
返回給定索引處邊欄的寬度。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_h_scroll_bar:
.. rst-class:: classref-method
:ref:`HScrollBar<class_HScrollBar>` **get_h_scroll_bar**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_h_scroll_bar>`
設定該 **TextEdit** 所使用的 :ref:`HScrollBar<class_HScrollBar>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_indent_level:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_indent_level**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_indent_level>`
Returns the indent level of the given line. This is the number of spaces and tabs at the beginning of the line, with the tabs taking the tab size into account (see :ref:`get_tab_size()<class_TextEdit_method_get_tab_size>`).
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_last_full_visible_line:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_last_full_visible_line**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_last_full_visible_line>`
返回最後一個可見的行。獲得換行索引的話,使用 :ref:`get_last_full_visible_line_wrap_index()<class_TextEdit_method_get_last_full_visible_line_wrap_index>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_last_full_visible_line_wrap_index:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_last_full_visible_line_wrap_index**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_last_full_visible_line_wrap_index>`
返回最後一個可見行的最後一個可見換行索引。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_last_unhidden_line:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_last_unhidden_line**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_last_unhidden_line>`
返回整個 **TextEdit** 中最後一個未隱藏的行。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_line**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line>`
返回特定行的文字。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_background_color:
.. rst-class:: classref-method
:ref:`Color<class_Color>` **get_line_background_color**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_background_color>`
Returns the custom background color of the given line. If no color is set, returns ``Color(0, 0, 0, 0)``.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_column_at_pos:
.. rst-class:: classref-method
:ref:`Vector2i<class_Vector2i>` **get_line_column_at_pos**\ (\ position\: :ref:`Vector2i<class_Vector2i>`, clamp_line\: :ref:`bool<class_bool>` = true, clamp_column\: :ref:`bool<class_bool>` = true\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_column_at_pos>`
Returns the line and column at the given position. In the returned vector, ``x`` is the column and ``y`` is the line.
If ``clamp_line`` is ``false`` and ``position`` is below the last line, ``Vector2i(-1, -1)`` is returned.
If ``clamp_column`` is ``false`` and ``position`` is outside the column range of the line, ``Vector2i(-1, -1)`` is returned.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_line_count**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_count>`
返回文字中的行數。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_gutter_icon:
.. rst-class:: classref-method
:ref:`Texture2D<class_Texture2D>` **get_line_gutter_icon**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_gutter_icon>`
Returns the icon currently in ``gutter`` at ``line``. This only works when the gutter type is :ref:`GUTTER_TYPE_ICON<class_TextEdit_constant_GUTTER_TYPE_ICON>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_gutter_item_color:
.. rst-class:: classref-method
:ref:`Color<class_Color>` **get_line_gutter_item_color**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_gutter_item_color>`
返回邊欄 ``gutter`` 中,目前位於 ``line`` 行的顏色。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_gutter_metadata:
.. rst-class:: classref-method
:ref:`Variant<class_Variant>` **get_line_gutter_metadata**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_gutter_metadata>`
返回邊欄 ``gutter`` 中,目前位於 ``line`` 行的中繼資料。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_gutter_text:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_line_gutter_text**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_gutter_text>`
Returns the text currently in ``gutter`` at ``line``. This only works when the gutter type is :ref:`GUTTER_TYPE_STRING<class_TextEdit_constant_GUTTER_TYPE_STRING>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_height:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_line_height**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_height>`
返回所有行中行高的最大值。
\ **注意:**\ 返回值受 :ref:`line_spacing<class_TextEdit_theme_constant_line_spacing>`:ref:`font_size<class_TextEdit_theme_font_size_font_size>` 的影響。不會比 ``1`` 小。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_ranges_from_carets:
.. rst-class:: classref-method
:ref:`Array<class_Array>`\[:ref:`Vector2i<class_Vector2i>`\] **get_line_ranges_from_carets**\ (\ only_selections\: :ref:`bool<class_bool>` = false, merge_adjacent\: :ref:`bool<class_bool>` = true\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_ranges_from_carets>`
Returns an :ref:`Array<class_Array>` of line ranges where ``x`` is the first line and ``y`` is the last line. All lines within these ranges will have a caret on them or be part of a selection. Each line will only be part of one line range, even if it has multiple carets on it.
If a selection's end column (:ref:`get_selection_to_column()<class_TextEdit_method_get_selection_to_column>`) is at column ``0``, that line will not be included. If a selection begins on the line after another selection ends and ``merge_adjacent`` is ``true``, or they begin and end on the same line, one line range will include both selections.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_width:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_line_width**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = -1\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_width>`
返回位於 ``line````wrap_index`` 的圖元寬度。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_with_ime:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_line_with_ime**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_with_ime>`
Returns line text as it is currently displayed, including IME composition string.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_wrap_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_line_wrap_count**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_wrap_count>`
返回給定行換行的次數。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_wrap_index_at_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_line_wrap_index_at_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_wrap_index_at_column>`
Returns the wrap index of the given column on the given line. This ranges from ``0`` to :ref:`get_line_wrap_count()<class_TextEdit_method_get_line_wrap_count>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_line_wrapped_text:
.. rst-class:: classref-method
:ref:`PackedStringArray<class_PackedStringArray>` **get_line_wrapped_text**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_line_wrapped_text>`
返回代表各個換行索引的 :ref:`String<class_String>` 陣列。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_local_mouse_pos:
.. rst-class:: classref-method
:ref:`Vector2<class_Vector2>` **get_local_mouse_pos**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_local_mouse_pos>`
返回針對文字方向調整過的局部滑鼠位置。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_menu:
.. rst-class:: classref-method
:ref:`PopupMenu<class_PopupMenu>` **get_menu**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_menu>`
返回該 **TextEdit**:ref:`PopupMenu<class_PopupMenu>`\ 。預設情況下,會在按右鍵 **TextEdit** 時顯示改選單。
你可以新增自訂功能表專案,也可以移除標準功能表專案。請確保你使用的 ID 與標準功能表專案的 ID 不衝突(見 :ref:`MenuItems<enum_TextEdit_MenuItems>`\ )。例如:
.. tabs::
.. code-tab:: gdscript
func _ready():
var menu = get_menu()
# 移除“撤銷”後的所有功能表專案。
menu.item_count = menu.get_item_index(MENU_REDO) + 1
# 新增自訂功能表專案。
menu.add_separator()
menu.add_item("插入日期", MENU_MAX + 1)
# 連接回呼函式。
menu.id_pressed.connect(_on_item_pressed)
func _on_item_pressed(id):
if id == MENU_MAX + 1:
insert_text_at_caret(Time.get_date_string_from_system())
.. code-tab:: csharp
public override void _Ready()
{
var menu = GetMenu();
// 移除“撤銷”後的所有功能表專案。
menu.ItemCount = menu.GetItemIndex(TextEdit.MenuItems.Redo) + 1;
// 新增自訂功能表專案。
menu.AddSeparator();
menu.AddItem("插入日期", TextEdit.MenuItems.Max + 1);
// 新增事件處理器。
menu.IdPressed += OnItemPressed;
}
public void OnItemPressed(int id)
{
if (id == TextEdit.MenuItems.Max + 1)
{
InsertTextAtCaret(Time.GetDateStringFromSystem());
}
}
\ **警告:**\ 這是必要的內部節點,將其移除或釋放會導致當機。如果你想要將其隱藏,或者將其子節點隱藏,請使用對應的 :ref:`Window.visible<class_Window_property_visible>` 屬性。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_minimap_line_at_pos:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_minimap_line_at_pos**\ (\ position\: :ref:`Vector2i<class_Vector2i>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_minimap_line_at_pos>`
返回小地圖 ``position`` 處等價的行。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_minimap_visible_lines:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_minimap_visible_lines**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_minimap_visible_lines>`
返回小地圖上能夠繪製的行數。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_next_composite_character_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_next_composite_character_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_next_composite_character_column>`
Returns the correct column at the end of a composite character like ❤️‍🩹 (mending heart; Unicode: ``U+2764 U+FE0F U+200D U+1FA79``) which is comprised of more than one Unicode code point, if the caret is at the start of the composite character. Also returns the correct column with the caret at mid grapheme and for non-composite characters.
\ **Note:** To check at caret location use ``get_next_composite_character_column(get_caret_line(), get_caret_column())``
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_next_visible_line_index_offset_from:
.. rst-class:: classref-method
:ref:`Vector2i<class_Vector2i>` **get_next_visible_line_index_offset_from**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>`, visible_amount\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_next_visible_line_index_offset_from>`
類似於 :ref:`get_next_visible_line_offset_from()<class_TextEdit_method_get_next_visible_line_offset_from>`\ ,但考慮了換行索引。在返回的向量中,\ ``x`` 是行,\ ``y`` 是換行索引。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_next_visible_line_offset_from:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_next_visible_line_offset_from**\ (\ line\: :ref:`int<class_int>`, visible_amount\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_next_visible_line_offset_from>`
返回從 ``line````line + visible_amount`` 的下一個可見行的計數。也可以倒數計數。例如,如果 **TextEdit** 有 5 行,其中隱藏了第 2 行和第 3 行,使用 ``line = 1, visible_amount = 1`` 呼叫它會返回 3。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_pos_at_line_column:
.. rst-class:: classref-method
:ref:`Vector2i<class_Vector2i>` **get_pos_at_line_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_pos_at_line_column>`
返回給定 ``line````column`` 的局部位置。如果返回的向量的 ``x````y`` 等於 ``-1``\ ,則該位置在該控制項的可視區域之外。
\ **注意:**\ Y 位置對應於行的底部。請使用 :ref:`get_rect_at_line_column()<class_TextEdit_method_get_rect_at_line_column>` 來獲取頂部位置。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_previous_composite_character_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_previous_composite_character_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_previous_composite_character_column>`
Returns the correct column at the start of a composite character like ❤️‍🩹 (mending heart; Unicode: ``U+2764 U+FE0F U+200D U+1FA79``) which is comprised of more than one Unicode code point, if the caret is at the end of the composite character. Also returns the correct column with the caret at mid grapheme and for non-composite characters.
\ **Note:** To check at caret location use ``get_previous_composite_character_column(get_caret_line(), get_caret_column())``
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_rect_at_line_column:
.. rst-class:: classref-method
:ref:`Rect2i<class_Rect2i>` **get_rect_at_line_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_rect_at_line_column>`
返回給定 ``line````column`` 處的字素的局部位置和大小。如果返回的矩形的 ``x````y`` 位置等於 ``-1``\ ,則該位置在該控制項的可視區域之外。
\ **注意:**\ 返回的矩形的 Y 位置對應於該行的頂部,不像 :ref:`get_pos_at_line_column()<class_TextEdit_method_get_pos_at_line_column>` 返回底邊。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_saved_version:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_saved_version**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_saved_version>`
從 :ref:`tag_saved_version()<class_TextEdit_method_tag_saved_version>` 返回最後一個標記的保存版本。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_scroll_pos_for_line:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_scroll_pos_for_line**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_scroll_pos_for_line>`
返回 ``line````wrap_index`` 對應的滾動位置。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selected_text:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_selected_text**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_get_selected_text>`
返回游標所選文字,如果 ``caret_index`` 為預設值 ``-1`` 則為所有游標所選文字。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_at_line_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_at_line_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`, include_edges\: :ref:`bool<class_bool>` = true, only_selections\: :ref:`bool<class_bool>` = true\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_at_line_column>`
Returns the caret index of the selection at the given ``line`` and ``column``, or ``-1`` if there is none.
If ``include_edges`` is ``false``, the position must be inside the selection and not at either end. If ``only_selections`` is ``false``, carets without a selection will also be considered.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_column>`
**已棄用:** Use :ref:`get_selection_origin_column()<class_TextEdit_method_get_selection_origin_column>` instead.
返回選區的原始起始列。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_from_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_from_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_from_column>`
Returns the selection begin column. Returns the caret column if there is no selection.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_from_line:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_from_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_from_line>`
Returns the selection begin line. Returns the caret line if there is no selection.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_line:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_line>`
**已棄用:** Use :ref:`get_selection_origin_line()<class_TextEdit_method_get_selection_origin_line>` instead.
返回選區的原始起始行。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_mode:
.. rst-class:: classref-method
:ref:`SelectionMode<enum_TextEdit_SelectionMode>` **get_selection_mode**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_mode>`
返回目前的選區模式。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_origin_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_origin_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_origin_column>`
Returns the origin column of the selection. This is the opposite end from the caret.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_origin_line:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_origin_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_origin_line>`
Returns the origin line of the selection. This is the opposite end from the caret.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_to_column:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_to_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_to_column>`
Returns the selection end column. Returns the caret column if there is no selection.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_selection_to_line:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_to_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_get_selection_to_line>`
Returns the selection end line. Returns the caret line if there is no selection.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_sorted_carets:
.. rst-class:: classref-method
:ref:`PackedInt32Array<class_PackedInt32Array>` **get_sorted_carets**\ (\ include_ignored_carets\: :ref:`bool<class_bool>` = false\ ) |const| :ref:`🔗<class_TextEdit_method_get_sorted_carets>`
Returns the carets sorted by selection beginning from lowest line and column to highest (from top to bottom of text).
If ``include_ignored_carets`` is ``false``, carets from :ref:`multicaret_edit_ignore_caret()<class_TextEdit_method_multicaret_edit_ignore_caret>` will be ignored.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_tab_size:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_tab_size**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_tab_size>`
返回該 **TextEdit** 的定位字元大小。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_total_gutter_width:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_total_gutter_width**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_total_gutter_width>`
返回所有欄位及內部邊距的總寬度。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_total_visible_line_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_total_visible_line_count**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_total_visible_line_count>`
Returns the total number of lines in the text. This includes wrapped lines and excludes folded lines. If :ref:`wrap_mode<class_TextEdit_property_wrap_mode>` is set to :ref:`LINE_WRAPPING_NONE<class_TextEdit_constant_LINE_WRAPPING_NONE>` and no lines are folded (see :ref:`CodeEdit.is_line_folded()<class_CodeEdit_method_is_line_folded>`) then this is equivalent to :ref:`get_line_count()<class_TextEdit_method_get_line_count>`. See :ref:`get_visible_line_count_in_range()<class_TextEdit_method_get_visible_line_count_in_range>` for a limited range of lines.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_v_scroll_bar:
.. rst-class:: classref-method
:ref:`VScrollBar<class_VScrollBar>` **get_v_scroll_bar**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_v_scroll_bar>`
設定該 **TextEdit** 所使用的 :ref:`StyleBox<class_StyleBox>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_version:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_version**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_version>`
返回該 **TextEdit** 的目前版本。版本是撤銷/重做歷史所記錄操作的計數。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_visible_line_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_visible_line_count**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_get_visible_line_count>`
Returns the number of lines that can visually fit, rounded down, based on this control's height.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_visible_line_count_in_range:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_visible_line_count_in_range**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_visible_line_count_in_range>`
Returns the total number of lines between ``from_line`` and ``to_line`` (inclusive) in the text. This includes wrapped lines and excludes folded lines. If the range covers all lines it is equivalent to :ref:`get_total_visible_line_count()<class_TextEdit_method_get_total_visible_line_count>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_word_at_pos:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_word_at_pos**\ (\ position\: :ref:`Vector2<class_Vector2>`\ ) |const| :ref:`🔗<class_TextEdit_method_get_word_at_pos>`
返回位於 ``position`` 的單詞。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_get_word_under_caret:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_word_under_caret**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| :ref:`🔗<class_TextEdit_method_get_word_under_caret>`
返回一個 :ref:`String<class_String>` 文字,其中包含文字游標位置下的單詞。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_has_ime_text:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **has_ime_text**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_has_ime_text>`
Returns ``true`` if the user has text in the `Input Method Editor <https://en.wikipedia.org/wiki/Input_method>`__ (IME).
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_has_redo:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **has_redo**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_has_redo>`
有“重做”動作可用時返回 ``true``\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_has_selection:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **has_selection**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| :ref:`🔗<class_TextEdit_method_has_selection>`
如果使用者選中了文字,則返回 ``true``\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_has_undo:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **has_undo**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_has_undo>`
有“撤銷”動作可用時返回 ``true``\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_insert_line_at:
.. rst-class:: classref-method
|void| **insert_line_at**\ (\ line\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) :ref:`🔗<class_TextEdit_method_insert_line_at>`
在第 ``line`` 行插入文字為 ``text`` 的新行。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_insert_text:
.. rst-class:: classref-method
|void| **insert_text**\ (\ text\: :ref:`String<class_String>`, line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`, before_selection_begin\: :ref:`bool<class_bool>` = true, before_selection_end\: :ref:`bool<class_bool>` = false\ ) :ref:`🔗<class_TextEdit_method_insert_text>`
Inserts the ``text`` at ``line`` and ``column``.
If ``before_selection_begin`` is ``true``, carets and selections that begin at ``line`` and ``column`` will moved to the end of the inserted text, along with all carets after it.
If ``before_selection_end`` is ``true``, selections that end at ``line`` and ``column`` will be extended to the end of the inserted text. These parameters can be used to insert text inside of or outside of selections.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_insert_text_at_caret:
.. rst-class:: classref-method
|void| **insert_text_at_caret**\ (\ text\: :ref:`String<class_String>`, caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_insert_text_at_caret>`
在游標位置插入指定的文字。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_caret_after_selection_origin:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_caret_after_selection_origin**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_is_caret_after_selection_origin>`
Returns ``true`` if the caret of the selection is after the selection origin. This can be used to determine the direction of the selection.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_caret_visible:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_caret_visible**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`🔗<class_TextEdit_method_is_caret_visible>`
Returns ``true`` if the caret is visible, ``false`` otherwise. A caret will be considered hidden if it is outside the scrollable area when scrolling is enabled.
\ **Note:** :ref:`is_caret_visible()<class_TextEdit_method_is_caret_visible>` does not account for a caret being off-screen if it is still within the scrollable area. It will return ``true`` even if the caret is off-screen as long as it meets **TextEdit**'s own conditions for being visible. This includes uses of :ref:`scroll_fit_content_width<class_TextEdit_property_scroll_fit_content_width>` and :ref:`scroll_fit_content_height<class_TextEdit_property_scroll_fit_content_height>` that cause the **TextEdit** to expand beyond the viewport's bounds.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_dragging_cursor:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_dragging_cursor**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_is_dragging_cursor>`
Returns ``true`` if the user is dragging their mouse for scrolling, selecting, or text dragging.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_gutter_clickable:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_gutter_clickable**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_is_gutter_clickable>`
Returns ``true`` if the gutter at the given index is clickable. See :ref:`set_gutter_clickable()<class_TextEdit_method_set_gutter_clickable>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_gutter_drawn:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_gutter_drawn**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_is_gutter_drawn>`
Returns ``true`` if the gutter at the given index is currently drawn. See :ref:`set_gutter_draw()<class_TextEdit_method_set_gutter_draw>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_gutter_overwritable:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_gutter_overwritable**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_is_gutter_overwritable>`
Returns ``true`` if the gutter at the given index is overwritable. See :ref:`set_gutter_overwritable()<class_TextEdit_method_set_gutter_overwritable>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_in_mulitcaret_edit:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_in_mulitcaret_edit**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_is_in_mulitcaret_edit>`
Returns ``true`` if a :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>` has been called and :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>` has not yet been called.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_line_gutter_clickable:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_line_gutter_clickable**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_is_line_gutter_clickable>`
Returns ``true`` if the gutter at the given index on the given line is clickable. See :ref:`set_line_gutter_clickable()<class_TextEdit_method_set_line_gutter_clickable>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_line_wrapped:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_line_wrapped**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_is_line_wrapped>`
返回給定的行是否換行。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_menu_visible:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_menu_visible**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_is_menu_visible>`
Returns ``true`` if the menu is visible. Use this instead of ``get_menu().visible`` to improve performance (so the creation of the menu is avoided). See :ref:`get_menu()<class_TextEdit_method_get_menu>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_mouse_over_selection:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_mouse_over_selection**\ (\ edges\: :ref:`bool<class_bool>`, caret_index\: :ref:`int<class_int>` = -1\ ) |const| :ref:`🔗<class_TextEdit_method_is_mouse_over_selection>`
Returns ``true`` if the mouse is over a selection. If ``edges`` is ``true``, the edges are considered part of the selection.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_is_overtype_mode_enabled:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_overtype_mode_enabled**\ (\ ) |const| :ref:`🔗<class_TextEdit_method_is_overtype_mode_enabled>`
Returns ``true`` if overtype mode is enabled. See :ref:`set_overtype_mode_enabled()<class_TextEdit_method_set_overtype_mode_enabled>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_menu_option:
.. rst-class:: classref-method
|void| **menu_option**\ (\ option\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_menu_option>`
執行 :ref:`MenuItems<enum_TextEdit_MenuItems>` 列舉中定義的給定操作。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_merge_gutters:
.. rst-class:: classref-method
|void| **merge_gutters**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_merge_gutters>`
Merge the gutters from ``from_line`` into ``to_line``. Only overwritable gutters will be copied. See :ref:`set_gutter_overwritable()<class_TextEdit_method_set_gutter_overwritable>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_merge_overlapping_carets:
.. rst-class:: classref-method
|void| **merge_overlapping_carets**\ (\ ) :ref:`🔗<class_TextEdit_method_merge_overlapping_carets>`
Merges any overlapping carets. Will favor the newest caret, or the caret with a selection.
If :ref:`is_in_mulitcaret_edit()<class_TextEdit_method_is_in_mulitcaret_edit>` is ``true``, the merge will be queued to happen at the end of the multicaret edit. See :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>` and :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>`.
\ **Note:** This is not called when a caret changes position but after certain actions, so it is possible to get into a state where carets overlap.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_multicaret_edit_ignore_caret:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **multicaret_edit_ignore_caret**\ (\ caret_index\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_multicaret_edit_ignore_caret>`
Returns ``true`` if the given ``caret_index`` should be ignored as part of a multicaret edit. See :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>` and :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>`. Carets that should be ignored are ones that were part of removed text and will likely be merged at the end of the edit, or carets that were added during the edit.
It is recommended to ``continue`` within a loop iterating on multiple carets if a caret should be ignored.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_paste:
.. rst-class:: classref-method
|void| **paste**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_paste>`
貼上到目前位置。可以用 :ref:`_paste()<class_TextEdit_private_method__paste>` 覆蓋。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_paste_primary_clipboard:
.. rst-class:: classref-method
|void| **paste_primary_clipboard**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_paste_primary_clipboard>`
貼上主剪貼板。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_redo:
.. rst-class:: classref-method
|void| **redo**\ (\ ) :ref:`🔗<class_TextEdit_method_redo>`
執行重做操作。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_remove_caret:
.. rst-class:: classref-method
|void| **remove_caret**\ (\ caret\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_remove_caret>`
移除給定的文字游標索引。
\ **注意:**\ 可能導致所有其他游標索引的調整。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_remove_gutter:
.. rst-class:: classref-method
|void| **remove_gutter**\ (\ gutter\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_remove_gutter>`
Removes the gutter at the given index.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_remove_line_at:
.. rst-class:: classref-method
|void| **remove_line_at**\ (\ line\: :ref:`int<class_int>`, move_carets_down\: :ref:`bool<class_bool>` = true\ ) :ref:`🔗<class_TextEdit_method_remove_line_at>`
Removes the line of text at ``line``. Carets on this line will attempt to match their previous visual x position.
If ``move_carets_down`` is ``true`` carets will move to the next line down, otherwise carets will move up.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_remove_secondary_carets:
.. rst-class:: classref-method
|void| **remove_secondary_carets**\ (\ ) :ref:`🔗<class_TextEdit_method_remove_secondary_carets>`
移除所有額外的游標。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_remove_text:
.. rst-class:: classref-method
|void| **remove_text**\ (\ from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_column\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_remove_text>`
Removes text between the given positions.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_search:
.. rst-class:: classref-method
:ref:`Vector2i<class_Vector2i>` **search**\ (\ text\: :ref:`String<class_String>`, flags\: :ref:`int<class_int>`, from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_TextEdit_method_search>`
在文字內部進行搜索。搜索旗標可以在 :ref:`SearchFlags<enum_TextEdit_SearchFlags>` 列舉中指定。
在返回的向量中,\ ``x`` 是列,\ ``y`` 是行。如果沒有找到結果,則兩者都等於 ``-1``
.. tabs::
.. code-tab:: gdscript
var result = search("print", SEARCH_WHOLE_WORDS, 0, 0)
if result.x != -1:
# 找到了結果。
var line_number = result.y
var column_number = result.x
.. code-tab:: csharp
Vector2I result = Search("print", (uint)TextEdit.SearchFlags.WholeWords, 0, 0);
if (result.X != -1)
{
// 找到了結果。
int lineNumber = result.Y;
int columnNumber = result.X;
}
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_select:
.. rst-class:: classref-method
|void| **select**\ (\ origin_line\: :ref:`int<class_int>`, origin_column\: :ref:`int<class_int>`, caret_line\: :ref:`int<class_int>`, caret_column\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_select>`
Selects text from ``origin_line`` and ``origin_column`` to ``caret_line`` and ``caret_column`` for the given ``caret_index``. This moves the selection origin and the caret. If the positions are the same, the selection will be deselected.
If :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` is ``false``, no selection will occur.
\ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_select_all:
.. rst-class:: classref-method
|void| **select_all**\ (\ ) :ref:`🔗<class_TextEdit_method_select_all>`
選擇所有文字。
如果 :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>```false``\ ,則不會發生選擇。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_select_word_under_caret:
.. rst-class:: classref-method
|void| **select_word_under_caret**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_TextEdit_method_select_word_under_caret>`
選中游標下的單詞。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_caret_column:
.. rst-class:: classref-method
|void| **set_caret_column**\ (\ column\: :ref:`int<class_int>`, adjust_viewport\: :ref:`bool<class_bool>` = true, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_set_caret_column>`
將游標移動到指定的 ``column`` 索引。
如果 ``adjust_viewport````true``\ ,則視口將在移動發生後以游標位置為中心。
\ **注意:**\ 如果支援多個游標,則不會檢查任何重疊。請參閱 :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_caret_line:
.. rst-class:: classref-method
|void| **set_caret_line**\ (\ line\: :ref:`int<class_int>`, adjust_viewport\: :ref:`bool<class_bool>` = true, can_be_hidden\: :ref:`bool<class_bool>` = true, wrap_index\: :ref:`int<class_int>` = 0, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_set_caret_line>`
Moves the caret to the specified ``line`` index. The caret column will be moved to the same visual position it was at the last time :ref:`set_caret_column()<class_TextEdit_method_set_caret_column>` was called, or clamped to the end of the line.
If ``adjust_viewport`` is ``true``, the viewport will center at the caret position after the move occurs.
If ``can_be_hidden`` is ``true``, the specified ``line`` can be hidden.
If ``wrap_index`` is ``-1``, the caret column will be clamped to the ``line``'s length. If ``wrap_index`` is greater than ``-1``, the column will be moved to attempt to match the visual x position on the line's ``wrap_index`` to the position from the last time :ref:`set_caret_column()<class_TextEdit_method_set_caret_column>` was called.
\ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_gutter_clickable:
.. rst-class:: classref-method
|void| **set_gutter_clickable**\ (\ gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_TextEdit_method_set_gutter_clickable>`
If ``true``, the mouse cursor will change to a pointing hand (:ref:`Control.CURSOR_POINTING_HAND<class_Control_constant_CURSOR_POINTING_HAND>`) when hovering over the gutter at the given index. See :ref:`is_gutter_clickable()<class_TextEdit_method_is_gutter_clickable>` and :ref:`set_line_gutter_clickable()<class_TextEdit_method_set_line_gutter_clickable>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_gutter_custom_draw:
.. rst-class:: classref-method
|void| **set_gutter_custom_draw**\ (\ column\: :ref:`int<class_int>`, draw_callback\: :ref:`Callable<class_Callable>`\ ) :ref:`🔗<class_TextEdit_method_set_gutter_custom_draw>`
Set a custom draw callback for the gutter at the given index. ``draw_callback`` must take the following arguments: A line index :ref:`int<class_int>`, a gutter index :ref:`int<class_int>`, and an area :ref:`Rect2<class_Rect2>`. This callback only works when the gutter type is :ref:`GUTTER_TYPE_CUSTOM<class_TextEdit_constant_GUTTER_TYPE_CUSTOM>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_gutter_draw:
.. rst-class:: classref-method
|void| **set_gutter_draw**\ (\ gutter\: :ref:`int<class_int>`, draw\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_TextEdit_method_set_gutter_draw>`
If ``true``, the gutter at the given index is drawn. The gutter type (:ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`) determines how it is drawn. See :ref:`is_gutter_drawn()<class_TextEdit_method_is_gutter_drawn>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_gutter_name:
.. rst-class:: classref-method
|void| **set_gutter_name**\ (\ gutter\: :ref:`int<class_int>`, name\: :ref:`String<class_String>`\ ) :ref:`🔗<class_TextEdit_method_set_gutter_name>`
Sets the name of the gutter at the given index.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_gutter_overwritable:
.. rst-class:: classref-method
|void| **set_gutter_overwritable**\ (\ gutter\: :ref:`int<class_int>`, overwritable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_TextEdit_method_set_gutter_overwritable>`
If ``true``, the line data of the gutter at the given index can be overridden when using :ref:`merge_gutters()<class_TextEdit_method_merge_gutters>`. See :ref:`is_gutter_overwritable()<class_TextEdit_method_is_gutter_overwritable>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_gutter_type:
.. rst-class:: classref-method
|void| **set_gutter_type**\ (\ gutter\: :ref:`int<class_int>`, type\: :ref:`GutterType<enum_TextEdit_GutterType>`\ ) :ref:`🔗<class_TextEdit_method_set_gutter_type>`
Sets the type of gutter at the given index. Gutters can contain icons, text, or custom visuals.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_gutter_width:
.. rst-class:: classref-method
|void| **set_gutter_width**\ (\ gutter\: :ref:`int<class_int>`, width\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_set_gutter_width>`
Set the width of the gutter at the given index.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line:
.. rst-class:: classref-method
|void| **set_line**\ (\ line\: :ref:`int<class_int>`, new_text\: :ref:`String<class_String>`\ ) :ref:`🔗<class_TextEdit_method_set_line>`
Sets the text for a specific ``line``.
Carets on the line will attempt to keep their visual x position.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line_as_center_visible:
.. rst-class:: classref-method
|void| **set_line_as_center_visible**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_set_line_as_center_visible>`
``line````wrap_index`` 放置在視口的中心。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line_as_first_visible:
.. rst-class:: classref-method
|void| **set_line_as_first_visible**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_set_line_as_first_visible>`
``line````wrap_index`` 放置在視口的頂部。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line_as_last_visible:
.. rst-class:: classref-method
|void| **set_line_as_last_visible**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_set_line_as_last_visible>`
``line````wrap_index`` 放置在視口的底部。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line_background_color:
.. rst-class:: classref-method
|void| **set_line_background_color**\ (\ line\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ ) :ref:`🔗<class_TextEdit_method_set_line_background_color>`
Sets the custom background color of the given line. If transparent, this color is applied on top of the default background color (See :ref:`background_color<class_TextEdit_theme_color_background_color>`). If set to ``Color(0, 0, 0, 0)``, no additional color is applied.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line_gutter_clickable:
.. rst-class:: classref-method
|void| **set_line_gutter_clickable**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_TextEdit_method_set_line_gutter_clickable>`
If ``clickable`` is ``true``, makes the ``gutter`` on the given ``line`` clickable. This is like :ref:`set_gutter_clickable()<class_TextEdit_method_set_gutter_clickable>`, but for a single line. If :ref:`is_gutter_clickable()<class_TextEdit_method_is_gutter_clickable>` is ``true``, this will not have any effect. See :ref:`is_line_gutter_clickable()<class_TextEdit_method_is_line_gutter_clickable>` and :ref:`gutter_clicked<class_TextEdit_signal_gutter_clicked>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line_gutter_icon:
.. rst-class:: classref-method
|void| **set_line_gutter_icon**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, icon\: :ref:`Texture2D<class_Texture2D>`\ ) :ref:`🔗<class_TextEdit_method_set_line_gutter_icon>`
Sets the icon for ``gutter`` on ``line`` to ``icon``. This only works when the gutter type is :ref:`GUTTER_TYPE_ICON<class_TextEdit_constant_GUTTER_TYPE_ICON>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line_gutter_item_color:
.. rst-class:: classref-method
|void| **set_line_gutter_item_color**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ ) :ref:`🔗<class_TextEdit_method_set_line_gutter_item_color>`
將邊欄 ``gutter`` 在第 ``line`` 行的顏色設定為 ``color``\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line_gutter_metadata:
.. rst-class:: classref-method
|void| **set_line_gutter_metadata**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, metadata\: :ref:`Variant<class_Variant>`\ ) :ref:`🔗<class_TextEdit_method_set_line_gutter_metadata>`
將邊欄 ``gutter`` 在第 ``line`` 行的中繼資料設定為 ``metadata``\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_line_gutter_text:
.. rst-class:: classref-method
|void| **set_line_gutter_text**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) :ref:`🔗<class_TextEdit_method_set_line_gutter_text>`
Sets the text for ``gutter`` on ``line`` to ``text``. This only works when the gutter type is :ref:`GUTTER_TYPE_STRING<class_TextEdit_constant_GUTTER_TYPE_STRING>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_overtype_mode_enabled:
.. rst-class:: classref-method
|void| **set_overtype_mode_enabled**\ (\ enabled\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_TextEdit_method_set_overtype_mode_enabled>`
If ``true``, enables overtype mode. In this mode, typing overrides existing text instead of inserting text. The :ref:`ProjectSettings.input/ui_text_toggle_insert_mode<class_ProjectSettings_property_input/ui_text_toggle_insert_mode>` action toggles overtype mode. See :ref:`is_overtype_mode_enabled()<class_TextEdit_method_is_overtype_mode_enabled>`.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_search_flags:
.. rst-class:: classref-method
|void| **set_search_flags**\ (\ flags\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_set_search_flags>`
設定搜索旗標 ``flags``\ 。配合 :ref:`set_search_text()<class_TextEdit_method_set_search_text>` 使用可以高亮被搜索的文字。搜索旗標可以使用 :ref:`SearchFlags<enum_TextEdit_SearchFlags>` 列舉指定。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_search_text:
.. rst-class:: classref-method
|void| **set_search_text**\ (\ search_text\: :ref:`String<class_String>`\ ) :ref:`🔗<class_TextEdit_method_set_search_text>`
設定搜索文字。見 :ref:`set_search_flags()<class_TextEdit_method_set_search_flags>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_selection_mode:
.. rst-class:: classref-method
|void| **set_selection_mode**\ (\ mode\: :ref:`SelectionMode<enum_TextEdit_SelectionMode>`\ ) :ref:`🔗<class_TextEdit_method_set_selection_mode>`
設定目前的選區模式。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_selection_origin_column:
.. rst-class:: classref-method
|void| **set_selection_origin_column**\ (\ column\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_set_selection_origin_column>`
Sets the selection origin column to the ``column`` for the given ``caret_index``. If the selection origin is moved to the caret position, the selection will deselect.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_selection_origin_line:
.. rst-class:: classref-method
|void| **set_selection_origin_line**\ (\ line\: :ref:`int<class_int>`, can_be_hidden\: :ref:`bool<class_bool>` = true, wrap_index\: :ref:`int<class_int>` = -1, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`🔗<class_TextEdit_method_set_selection_origin_line>`
Sets the selection origin line to the ``line`` for the given ``caret_index``. If the selection origin is moved to the caret position, the selection will deselect.
If ``can_be_hidden`` is ``false``, The line will be set to the nearest unhidden line below or above.
If ``wrap_index`` is ``-1``, the selection origin column will be clamped to the ``line``'s length. If ``wrap_index`` is greater than ``-1``, the column will be moved to attempt to match the visual x position on the line's ``wrap_index`` to the position from the last time :ref:`set_selection_origin_column()<class_TextEdit_method_set_selection_origin_column>` or :ref:`select()<class_TextEdit_method_select>` was called.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_tab_size:
.. rst-class:: classref-method
|void| **set_tab_size**\ (\ size\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_set_tab_size>`
設定該 **TextEdit** 使用的定位字元大小。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_set_tooltip_request_func:
.. rst-class:: classref-method
|void| **set_tooltip_request_func**\ (\ callback\: :ref:`Callable<class_Callable>`\ ) :ref:`🔗<class_TextEdit_method_set_tooltip_request_func>`
提供自訂工具提示文字。該回呼函式方法必須接受以下參數:\ ``hovered_word: String``\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_skip_selection_for_next_occurrence:
.. rst-class:: classref-method
|void| **skip_selection_for_next_occurrence**\ (\ ) :ref:`🔗<class_TextEdit_method_skip_selection_for_next_occurrence>`
Moves a selection and a caret for the next occurrence of the current selection. If there is no active selection, moves to the next occurrence of the word under caret.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_start_action:
.. rst-class:: classref-method
|void| **start_action**\ (\ action\: :ref:`EditAction<enum_TextEdit_EditAction>`\ ) :ref:`🔗<class_TextEdit_method_start_action>`
開始一個動作,如果 ``action`` 與目前動作不同,則會終止目前動作。
呼叫 :ref:`end_action()<class_TextEdit_method_end_action>`\ 、觸發 :ref:`ProjectSettings.gui/timers/text_edit_idle_detect_sec<class_ProjectSettings_property_gui/timers/text_edit_idle_detect_sec>` 或者在 :ref:`start_action()<class_TextEdit_method_start_action>`:ref:`end_action()<class_TextEdit_method_end_action>` 之外呼叫可撤銷的操作都會導致動作的終止。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_swap_lines:
.. rst-class:: classref-method
|void| **swap_lines**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) :ref:`🔗<class_TextEdit_method_swap_lines>`
Swaps the two lines. Carets will be swapped with the lines.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_tag_saved_version:
.. rst-class:: classref-method
|void| **tag_saved_version**\ (\ ) :ref:`🔗<class_TextEdit_method_tag_saved_version>`
將目前版本標記為已保存。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_method_undo:
.. rst-class:: classref-method
|void| **undo**\ (\ ) :ref:`🔗<class_TextEdit_method_undo>`
執行撤銷操作。
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
主題屬性說明
------------
.. _class_TextEdit_theme_color_background_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **background_color** = ``Color(0, 0, 0, 0)`` :ref:`🔗<class_TextEdit_theme_color_background_color>`
設定該 **TextEdit** 的背景 :ref:`Color<class_Color>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_caret_background_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **caret_background_color** = ``Color(0, 0, 0, 1)`` :ref:`🔗<class_TextEdit_theme_color_caret_background_color>`
使用區塊游標時,游標下文字的 :ref:`Color<class_Color>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_caret_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **caret_color** = ``Color(0.875, 0.875, 0.875, 1)`` :ref:`🔗<class_TextEdit_theme_color_caret_color>`
游標的 :ref:`Color<class_Color>`\ 。可以設為完全透明的顏色,從而完全隱藏游標。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_current_line_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **current_line_color** = ``Color(0.25, 0.25, 0.26, 0.8)`` :ref:`🔗<class_TextEdit_theme_color_current_line_color>`
游標所在行的背景 :ref:`Color<class_Color>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_font_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **font_color** = ``Color(0.875, 0.875, 0.875, 1)`` :ref:`🔗<class_TextEdit_theme_color_font_color>`
設定字形顏色 :ref:`Color<class_Color>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_font_outline_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **font_outline_color** = ``Color(0, 0, 0, 1)`` :ref:`🔗<class_TextEdit_theme_color_font_outline_color>`
**TextEdit** 的文字輪廓的色調。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_font_placeholder_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **font_placeholder_color** = ``Color(0.875, 0.875, 0.875, 0.6)`` :ref:`🔗<class_TextEdit_theme_color_font_placeholder_color>`
:ref:`placeholder_text<class_TextEdit_property_placeholder_text>` 的字形顏色。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_font_readonly_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **font_readonly_color** = ``Color(0.875, 0.875, 0.875, 0.5)`` :ref:`🔗<class_TextEdit_theme_color_font_readonly_color>`
設定禁用 :ref:`editable<class_TextEdit_property_editable>` 時的字形 :ref:`Color<class_Color>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_font_selected_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **font_selected_color** = ``Color(0, 0, 0, 0)`` :ref:`🔗<class_TextEdit_theme_color_font_selected_color>`
設定所選文字的 :ref:`Color<class_Color>`\ 。如果等於 ``Color(0, 0, 0, 0)``\ ,則該屬性將被忽略。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_search_result_border_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **search_result_border_color** = ``Color(0.3, 0.3, 0.3, 0.4)`` :ref:`🔗<class_TextEdit_theme_color_search_result_border_color>`
與搜索查詢配對的文字周圍的邊框的 :ref:`Color<class_Color>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_search_result_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **search_result_color** = ``Color(0.3, 0.3, 0.3, 1)`` :ref:`🔗<class_TextEdit_theme_color_search_result_color>`
與搜索查詢配對的文字背景的 :ref:`Color<class_Color>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_selection_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **selection_color** = ``Color(0.5, 0.5, 0.5, 1)`` :ref:`🔗<class_TextEdit_theme_color_selection_color>`
設定文字選擇的高亮 :ref:`Color<class_Color>` 顏色。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_color_word_highlighted_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **word_highlighted_color** = ``Color(0.5, 0.5, 0.5, 0.25)`` :ref:`🔗<class_TextEdit_theme_color_word_highlighted_color>`
設定多次出現的高亮 :ref:`Color<class_Color>` 顏色。須啟用 :ref:`highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>`
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_constant_caret_width:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **caret_width** = ``1`` :ref:`🔗<class_TextEdit_theme_constant_caret_width>`
文字游標的圖元寬度。較大的值能夠確保游標易於看到,確保游標與較大的字形保持一致,從而提高可存取性。如果設定為 ``0`` 或更低,游標的寬度將被自動設置為 1 圖元,並乘以顯示縮放係數。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_constant_line_spacing:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **line_spacing** = ``4`` :ref:`🔗<class_TextEdit_theme_constant_line_spacing>`
Additional vertical spacing between lines (in pixels), spacing is added to line descent. This value can be negative.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_constant_outline_size:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **outline_size** = ``0`` :ref:`🔗<class_TextEdit_theme_constant_outline_size>`
文字輪廓的大小。
\ **注意:**\ 如果使用啟用了 :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` 的字形,其 :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` 必須至少設定為 :ref:`outline_size<class_TextEdit_theme_constant_outline_size>` 的\ *兩倍*\ ,輪廓算繪才能看起來正確。否則,輪廓可能會比預期的更早被切斷。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_constant_wrap_offset:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **wrap_offset** = ``10`` :ref:`🔗<class_TextEdit_theme_constant_wrap_offset>`
Sets an additional margin for line wrapping width.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_font_font:
.. rst-class:: classref-themeproperty
:ref:`Font<class_Font>` **font** :ref:`🔗<class_TextEdit_theme_font_font>`
設定預設的字形 :ref:`Font<class_Font>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_font_size_font_size:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **font_size** :ref:`🔗<class_TextEdit_theme_font_size_font_size>`
設定預設的字形大小。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_icon_space:
.. rst-class:: classref-themeproperty
:ref:`Texture2D<class_Texture2D>` **space** :ref:`🔗<class_TextEdit_theme_icon_space>`
為空格文字字元,設定一個自訂 :ref:`Texture2D<class_Texture2D>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_icon_tab:
.. rst-class:: classref-themeproperty
:ref:`Texture2D<class_Texture2D>` **tab** :ref:`🔗<class_TextEdit_theme_icon_tab>`
為定位字元文字字元,設定一個自訂 :ref:`Texture2D<class_Texture2D>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_style_focus:
.. rst-class:: classref-themeproperty
:ref:`StyleBox<class_StyleBox>` **focus** :ref:`🔗<class_TextEdit_theme_style_focus>`
Sets the :ref:`StyleBox<class_StyleBox>` when in focus. The :ref:`focus<class_TextEdit_theme_style_focus>` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_style_normal:
.. rst-class:: classref-themeproperty
:ref:`StyleBox<class_StyleBox>` **normal** :ref:`🔗<class_TextEdit_theme_style_normal>`
設定這個 **TextEdit**:ref:`StyleBox<class_StyleBox>`\ 。
.. rst-class:: classref-item-separator
----
.. _class_TextEdit_theme_style_read_only:
.. rst-class:: classref-themeproperty
:ref:`StyleBox<class_StyleBox>` **read_only** :ref:`🔗<class_TextEdit_theme_style_read_only>`
設定這個 **TextEdit** 在禁用 :ref:`editable<class_TextEdit_property_editable>` 時的 :ref:`StyleBox<class_StyleBox>`\ 。
.. |virtual| replace:: :abbr:`virtual (本方法通常需要使用者覆寫才能生效。)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (本方法沒有副作用。不會修改該實例的任何成員變數。)`
.. |vararg| replace:: :abbr:`vararg (本方法除了這裡描述的參數外,還可以接受任意數量的參數。)`
.. |constructor| replace:: :abbr:`constructor (本方法用於建構一個型別。)`
.. |static| replace:: :abbr:`static (本方法無需實例即可呼叫,因此可以直接使用類別名稱呼叫。)`
.. |operator| replace:: :abbr:`operator (本方法描述將本型別作為左運算元時可用的有效運算子。)`
.. |bitfield| replace:: :abbr:`BitField (此值是由下列旗標組成的位元遮罩整數。)`
.. |void| replace:: :abbr:`void (無回傳值。)`