### Godot version

4.1

### System information

Windows

### Issue description

Being able to have multiple cursors similarly to vscode is a great feature, however it's only possible to add carets, not remove them. By left clicking you can remove all extra cursors but you cannot remove a specific one so after selecting multiple lines a single missclick, you have to reselect them all again. Looking at the original pr there was a remove_caret function added so it would make sense to be able to remove carets when clicking again, like in vscode.

![image](https://github.com/godotengine/godot/assets/19669673/3867c00e-9faa-4429-9c6d-f2d6d3883044)


### Steps to reproduce

- Alt click to add multiple carets
- Alt click on the same position again
- Nothing happens

### Minimal reproduction project

N/A
alt_code = alt_code << 4;
					alt_code += (uint32_t)(k->get_keycode() - Key::KP_0);
				}
				if (k->get_keycode() >= Key::A && k->get_keycode() <= Key::F) {
					alt_code = alt_code << 4;
					alt_code += (uint32_t)(k->get_keycode() - Key::A) + 10;
				}
				return true;
			}
		}
	}
	return false;
}
void TextEdit::gui_input(const Ref<InputEvent> &p_gui_input) {
	ERR_FAIL_COND(p_gui_input.is_null());
	double prev_v_scroll = v_scroll->get_value();
	double prev_h_scroll = h_scroll->get_value();
	Ref<InputEventMouseButton> mb = p_gui_input;
	if (mb.is_valid()) {
		Vector2i mpos = mb->get_position();
		if (is_layout_rtl()) {
			mpos.x = get_size().x - mpos.x;
		}
		if (ime_text.length() != 0) {
			
			return;
		}
		if (mb->is_pressed()) {
			if (mb->get_button_index() == MouseButton::WHEEL_UP && !mb->is_command_or_control_pressed()) {
				if (mb->is_shift_pressed()) {