### Godot version

v4.2.beta1.official [b1371806a]

### System information

Godot v4.2.beta1 - macOS 12.7.0 - Vulkan (Forward+) - dedicated AMD Radeon HD - FirePro D300 - Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz (8 Threads)

### Issue description

When creating a plugin with a dot in the name in the project settings and leaving "Script Name" empty fails. Also, when a plugin folder is added via file system which contains a dot, information for that plugin cannot be be updated in the project settings.

Will be solved by: https://github.com/godotengine/godot/pull/83329

### Steps to reproduce

Create new plugin:

- Open project settings
- Click on "Create New Plugin" in the "Plugin" tab
- Choose a name with a dot in it (e.g., "my.plugin") and leave "Script Name" empty
- Create
- It will fail to create the plugin script

Update existing plugin:

- Add a plugin directory with a dot in the folder name (e.g., "my.plugin") in the file system
- Open project settings
- Click on the edit button in the "Plugin" tab for that plugin
- Change "Author" to some name
- Update
- Author was not changed in the table or in "plugin.cfg"

### Minimal reproduction project

[plugin_config_dialog.zip](https://github.com/godotengine/godot/files/12905755/plugin_config_dialog.zip)

#include "plugin_config_dialog.h"
#include "core/io/config_file.h"
#include "core/io/dir_access.h"
#include "core/object/script_language.h"
#include "editor/editor_node.h"
#include "editor/editor_plugin.h"
#include "editor/editor_scale.h"
#include "editor/gui/editor_validation_panel.h"
#include "editor/project_settings_editor.h"
#include "scene/gui/grid_container.h"
void PluginConfigDialog::_clear_fields() {
	name_edit->set_text("");
	subfolder_edit->set_text("");
	desc_edit->set_text("");
	author_edit->set_text("");
	version_edit->set_text("");
	script_edit->set_text("");
}
void PluginConfigDialog::_on_confirmed() {
	String path = "res://addons/" + _get_subfolder();
	if (!_edit_mode) {
		Ref<DirAccess> d = DirAccess::create(DirAccess::ACCESS_RESOURCES);
		if (d.is_null() || d->make_dir_recursive(path) != OK) {
			return;
		}
	}
	int lang_idx = script_option_edit->get_selected();