* Added ability to specify editorPath using environment variable
* Fix indentation
* Build the regex in the idiomatic way
* Add env syntax to configuration descriptions
* Add missing import
---------
Co-authored-by: David Kincaid <daelonsuzuka@gmail.com>
* Change debug_current_file error message
Currently, the error message in debug_current_file doesn't tell the user that the scene file and script file must share the same name. This fixes that
* Change message text
---------
Co-authored-by: David Kincaid <daelonsuzuka@gmail.com>
* Improve scene preview lock behavior
* Add convert_uri_to_resource_path utility function
* Implement relative nodepath dropping
* Prevent a possible error when trying to refresh a scene that doesn't exist
* Fix wrong command name being called (scenePreview.openMainScene has actually never worked)
* Fix **= operator being formatted incorrectly
* Fix variables in get_node()-style function calls not being highlighted
* Move super from builtin_classes to keywords
* Fix uppercase builtin classes being highlighted as constants
* Fix setter and getter highlighting/formatting
* Fix variable as default parameter not highlighted in function declaration
'launch' and 'attach' modes are working with these changes. The root problems were related to the version of the attached project not being detected properly and file paths not being correctly calculated when attached. The networking code that had version-dependent behavior is now a bit more robust and won't break if minor versions were to ever exceed 1 digit.
When using 'attach' mode, the version info wasn't available at all, causing most (all?) network messages to be ignored.
- Redesigned the representation of godot objects to match internal structure of godot server
- Lazy evaluation for the godot objects
- Stack frames now can be switched with variables updated
Fixes for get variables issues
1. Same reference but different variable override fix, which resulted in variables being lost
** Now different GodotVariable instances are used for different variables with same reference
** const replacement = {value: rawObject, sub_values: sub_values } as GodotVariable;
2. 'Signal' type handling crash and string representation fix
** value.sub_values()?.map
3. Empty scopes return fix
** if (this.ongoing_inspections.length === 0 && stackVars.remaining == 0)
4. Various splice from findIndex fixes (where findIndex can return -1)
5. Added variables tests
** updated vscode types to version 1.96 to use `onDidChangeActiveStackItem` for breakpoint hit detection in tests
1 & 3 should fix https://github.com/godotengine/godot-vscode-plugin/issues/779
* Update float syntax rules and formatting
* Add missing export_group annotation
* Moved abstract from an annotation to a keyword
* Add an example of the other type of string interpolation.
* Simplify LSP Client internals
* Streamline control flow between Client, IO, and Buffer classes
* Create canonical, obvious place to implement filters on incoming and outgoing LSP messages
* Remove legacy WS LSP support
* Fix nodepath function highlighting/tokenization
* Reverted dangerous line removal behavior change
* Fix detection of match keyword vs .match() function
* Rearrange formatter options
* Fix option default value
* Add biome linter/formatter config file
* Fix linter errors
* Add system to supply custom config values in tests
* Remove unused variable
* Implement tests for both formatter options
* Clean up formatter option handling
* Fix extra space inserted in list of nodepaths
* Add token rules for square and curly braces
* Fix id being decoded as an signed integer instead of an unsigned integer. (#660)
---------
Co-authored-by: karstensensensen <simonblsoerensen@gmail.com>
* Rename Scene Preview "pinning" to "locking"
* Add "refresh scene preview" command as button
* Expose scene preview commands to command palette
* Add openCurrentScene and openMainScript commands