### Godot version

4.1.dev (1becfea37c)

### System information

MacOS 13.3 M1 Pro

### Issue description

When you use batch rename you can ask him to rename to invalid node names. it won't raise any warning nor error it will just rename to a valid node names without informing you of the change. For comparison with simple renames this is shown as warning
<img width="452" alt="Capture d’écran 2023-05-02 à 21 49 47" src="https://user-images.githubusercontent.com/66184050/235771076-a2f09307-6c8d-4687-8d31-58234e8e2bf1.png">


### Steps to reproduce

1. create a root Node and two Node children
2. select the two children
3. Batch rename the `e` to `%`
4. See that childrens have been renamed to `Nod_` and `Nod_2` without warning 

### Minimal reproduction project

N/A
String file = files[i];
			String ftype = EditorFileSystem::get_singleton()->get_file_type(file);
			if (ftype != "PackedScene") {
				scene_drop = false;
				break;
			}
		}
		if (scene_drop) {
			tree->set_drop_mode_flags(Tree::DROP_MODE_INBETWEEN | Tree::DROP_MODE_ON_ITEM);
		} else {
			if (files.size() > 1) {
				return false;
			}
			tree->set_drop_mode_flags(Tree::DROP_MODE_ON_ITEM);
		}
		return true;
	}
	if (String(d["type"]) == "script_list_element") {
		ScriptEditorBase *se = Object::cast_to<ScriptEditorBase>(d["script_list_element"]);
		if (se) {
			String sp = se->get_edited_resource()->get_path();
			if (_is_script_type(EditorFileSystem::get_singleton()->get_file_type(sp))) {
				tree->set_drop_mode_flags(Tree::DROP_MODE_ON_ITEM);
				return true;
			}
		}
	}
	return String(d["type"]) == "nodes" && filter.is_empty();
}
void SceneTreeEditor::drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) {