### Godot version

4.0.2

### System information

Windows 11

### Issue description

Double clicking on `$MyNode` in the script editor will select the whole name including the "$".

But double clicking on `%MyNode` (unique name) will select the name but will not include the "%".

Dragging a node from the scene tree into the script editor brings up the property/method hint list, even though a "." has not been typed. Pressing enter appends "new()" even though this makes no sense as there is no period so it is just appending it directly to the node name: `$MyNodenew()`


### Steps to reproduce

Type `%MyNode` in a script and double click on it.

Type `@onready var x =` in a script, drag a node from the scene tree, then press enter.


### Minimal reproduction project

N/A
if (!is_editable()) {
		return;
	}
	if (has_selection(p_caret)) {
		delete_selection(p_caret);
		return;
	}
	begin_complex_operation();
	Vector<int> caret_edit_order = get_caret_index_edit_order();
	for (const int &i : caret_edit_order) {
		if (p_caret != -1 && p_caret != i) {
			continue;
		}
		int cc = get_caret_column(i);
		int cl = get_caret_line(i);
		if (cc == 0 && cl == 0) {
			continue;
		}
		if (cl > 0 && _is_line_hidden(cl - 1)) {
			unfold_line(get_caret_line(i) - 1);
		}
		int prev_line = cc ? cl : cl - 1;
		int prev_column = cc ? (cc - 1) : (get_line(cl - 1).length());
		merge_gutters(prev_line, cl);
		if (auto_brace_completion_enabled && cc > 0) {