### Godot version

v4.0.beta.custom_build [cc89fcbd0]

### System information

Linux (Ubuntu 22.04), Vulkan, Radeon RX Vega 64 (eGPU)

### Issue description

The text editor doesn't register in the navigation history the local navigation.

In a large file, the user can CTRL+click on definitions of the same file to navigate quickly to a function or a class in the opened script. When the user clicks on the previous or next buttons, that local navigation seems to be not considered.

See this video for a recreation of the issue:

[Capture vidéo du 2023-01-15 17:57:45.webm](https://user-images.githubusercontent.com/270928/212571752-d05c5d85-cc7f-434b-b020-316f6194ad13.webm)


### Steps to reproduce

1. Open the MRP;
2. Open `main.gd`;
3. CTRL+click on `test()` in `_ready()`;
4. CTRL+click on `Inner` in `test()`;
5. Press on the previous button (or the previous button on your mouse);
6. See that the navigation wasn't registered in the history.

### Minimal reproduction project

[history_local.zip](https://github.com/godotengine/godot/files/10421462/history_local.zip)

if (last_date == date) {
				continue;
			}
			Ref<Script> scr = edited_res;
			if (scr != nullptr) {
				Ref<Script> rel_scr = ResourceLoader::load(scr->get_path(), scr->get_class(), ResourceFormatLoader::CACHE_MODE_IGNORE);
				ERR_CONTINUE(!rel_scr.is_valid());
				scr->set_source_code(rel_scr->get_source_code());
				scr->set_last_modified_time(rel_scr->get_last_modified_time());
				scr->reload(true);
			}
			Ref<TextFile> text_file = edited_res;
			if (text_file != nullptr) {
				Error err;
				Ref<TextFile> rel_text_file = _load_text_file(text_file->get_path(), &err);
				ERR_CONTINUE(!rel_text_file.is_valid());
				text_file->set_text(rel_text_file->get_text());
				text_file->set_last_modified_time(rel_text_file->get_last_modified_time());
			}
		}
		se->reload_text();
	}
	disk_changed->hide();
	_update_script_names();
}
void ScriptEditor::open_script_create_dialog(const String &p_base_name, const String &p_base_path) {
	_menu_option(FILE_NEW);
	script_create_dialog->config(p_base_name, p_base_path);
}
void ScriptEditor::open_text_file_create_dialog(const String &p_base_path, const String &p_base_name) {