2020-09-22 09:58:07 +02:00
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog ](https://keepachangelog.com/en/1.0.0/ ),
and this project adheres to [Semantic Versioning ](https://semver.org/spec/v2.0.0.html ).
2020-11-21 13:26:41 +01:00
2022-07-10 23:31:34 +02:00
## [Unreleased](https://github.com/lihop/godot-xterm/compare/v2.1.0...HEAD)
2022-08-05 01:20:05 +02:00
### Added
- Added `get_master()` method to PTY node (Linux and macOS only) which returns the
underlying [Pipe ](/addons/godot_xterm/native/src/pipe.cpp ) object of the master
side of the psuedoterminal pair. This can be used to manually call `poll()` on the
pipe in case `_process()` is disabled.
2022-07-10 23:31:34 +02:00
2022-08-05 01:20:05 +02:00
### Fixed
- [#51][i51]: Fixed issue where terminal would lose focus on Tab/Arrow key presses
when in a scene with other input nodes. Thanks [@ConteZero] for reporting.
2022-07-10 23:31:34 +02:00
2022-08-05 01:20:05 +02:00
[i51]: https://github.com/lihop/godot-xterm/issues/51
[@ConteZero]: https://github.com/ConteZero
## [v2.1.0](https://github.com/lihop/godot-xterm/compare/v2.0.0...v2.1.0) - 2022-07-11
2022-05-31 15:14:41 +02:00
### Added
- Support for macOS universal (x86_64/arm64) binaries. The macOS binary
`libgodot-xterm.osx.64.dylib` is now a universal binary that runs natively
on both x86_64 and arm64.
2021-07-25 18:27:21 +02:00
2022-06-01 05:26:03 +02:00
### Changed
- Linux binaries now support systems with older GLIBC versions. By building the
binaries inside a docker container with an older GLIBC version, the minimum
required GLIBC version is now 2.17 which was released in 2012.
2022-06-01 17:39:06 +02:00
- Prevent all editor shortcuts while terminal is focused except for:
- The shortcuts used to switch between terminal tabs (Ctrl+Page up, Ctrl+Page down).
2022-07-10 23:31:34 +02:00
- Shortcuts starting with Ctrl+Shift. This includes the remaining default terminal
2022-06-01 17:39:06 +02:00
panel shortcuts such as 'Copy' (Ctrl+Shift+C) and 'New Terminal' (Ctrl+Shift+T).
2022-07-10 23:31:34 +02:00
- Changed target Godot version from 3.3.2-stable -> 3.4.4-stable.
2022-06-26 19:41:24 +02:00
- Prevent scrollback buffer reset (i.e. scrolling to the bottom of terminal output) when
pressing modifier keys in isolation or when copying text using the shortcut Ctrl+Shift+C.
2022-06-01 05:26:03 +02:00
2022-06-01 06:50:34 +02:00
### Removed
- Removed custom TerminalSettings Resource type.
This Resource was not being used but would still appear in every resource dropdown.
2022-07-10 23:31:34 +02:00
(Related issue [godotengine/godot#24643 ](https://github.com/godotengine/godot/issues/24643 )).
2022-06-01 06:50:34 +02:00
2022-04-30 13:31:24 +02:00
### Fixed
- The `kill()` method of unix PTY node can now be called without error as the underlying
`pipe.close()` method of the gdnative library is now registered.
2022-06-01 12:03:42 +02:00
- Fixed 'Condition "!obj" is true.' error that would often print to console when
closing terminals in the Terminal panel of the editor plugin.
2022-06-23 15:30:27 +02:00
- Fixed leaked instances that would occur when PTY exited but child process was still
running.
2022-06-26 16:01:11 +02:00
- Fixed "Resumed function after yield, but class instance is gone" error that would
2022-07-10 23:31:34 +02:00
sometimes occur when closing a Terminal after calling `write()` but before VisualServer
2022-06-26 16:01:11 +02:00
had finished drawing the current frame.
2022-04-30 13:31:24 +02:00
2022-06-01 06:50:34 +02:00
2022-05-15 05:42:42 +02:00
## [v2.0.0](https://github.com/lihop/godot-xterm/compare/v1.2.1...v2.0.0) - 2021-07-25
2020-11-29 09:45:57 +01:00
### Added
2021-07-25 18:27:21 +02:00
- Terminal editor plugin. Adds integrated terminal to Godot editor.
- Xresources import plugin.
- [#39][i39]: Support for the bell "\u0007" character.
2021-06-07 08:53:43 +02:00
- HTML5 Support.
2021-07-25 18:27:21 +02:00
- [#24][i24]: Support for Windows 32-bit (Terminal node only).
2020-11-29 09:45:57 +01:00
2020-11-29 09:22:34 +01:00
### Changed
2021-07-25 18:27:21 +02:00
- [#44][i44]: Default theme to match Godot's default theme.
2021-06-07 08:53:43 +02:00
- Supported Godot version -> 3.3.2.
2020-11-29 09:22:34 +01:00
- Set a default theme if no theme property has been set.
2021-06-22 16:02:08 +02:00
- Changed default font from Cousine to Hack, which is the same as Godot's script editor, and reduced size from 16 to 14.
2021-07-02 18:58:25 +02:00
- TPut no longer registered as a unique global class (i.e. removed `class_name TPut` ).
2020-11-29 09:22:34 +01:00
2020-11-29 05:48:18 +01:00
### Fixed
2021-07-25 18:27:21 +02:00
- [#40][i40]: Vim related bugs, caused by incorrectly handled control sequences.
2020-11-29 05:49:09 +01:00
- Don't swap red and blue channels of theme colors.
2020-11-29 05:48:18 +01:00
- Use "Light Cyan" color from theme. Previously ignored.
2020-11-23 10:11:59 +01:00
2021-07-25 18:27:21 +02:00
[i24]: https://github.com/lihop/godot-xterm/issues/24
[i39]: https://github.com/lihop/godot-xterm/issues/39
[i40]: https://github.com/lihop/godot-xterm/issues/40
[i44]: https://github.com/lihop/godot-xterm/issues/44
2020-11-23 10:11:59 +01:00
2022-05-15 05:42:42 +02:00
## [v1.2.1](https://github.com/lihop/godot-xterm/compare/v1.2.0...v1.2.1) - 2020-11-23
2020-11-23 10:11:59 +01:00
### Changed
- GitHub Actions workflow now produces both a release and debug zip archive.
2020-11-22 16:16:38 +01:00
### Fixed
2020-11-23 10:11:59 +01:00
- Release binary for Windows 64-bit export.
2020-11-21 13:26:41 +01:00
2022-05-15 05:42:42 +02:00
## [v1.2.0](https://github.com/lihop/godot-xterm/compare/v1.0.0...v1.2.0) - 2020-11-21
2020-11-05 09:42:00 +01:00
### Added
2020-11-21 13:26:41 +01:00
- Support for macOS 64-bit including Pseudoterminal.
- Partial support for Windows 64-bit and compiling on Windows using MSVC. Pseudoterminal not yet supported. 32-bit builds might be possible but not yet built/tested.
2020-11-05 09:42:00 +01:00
2020-10-13 10:20:40 +02:00
### Changed
2020-11-21 13:26:41 +01:00
- Updated build script. On Linux `./build.sh` will create a debug build of the gdnative library for the current platform.
2020-11-06 09:40:29 +01:00
- Removed all pre-compiled binaries using BFG [Repo-Cleaner ](https://rtyley.github.io/bfg-repo-cleaner/ ), thus re-writing git history.
2020-10-05 12:12:15 +02:00
2020-11-07 11:12:31 +01:00
### Fixed
2020-11-21 13:26:41 +01:00
- Fixed bug where incorrect data would sometimes be written to the terminal when passing a string to the Terminal's `write()` method.
- Positioned background rect at 0,0 so it is no longer offset if a margin is added when Terminal is a child of a Container node.
- Passed correct argv to the execvp call of Pseudoterminal. Previously argv[0] was not set to the program's name which caused the Pseudoterminal node not to work on macOS with the zsh shell.
2020-11-07 11:12:31 +01:00
2022-05-15 05:42:42 +02:00
## [v1.0.0](https://github.com/lihop/godot-xterm/releases/tag/v1.0.0) - 2020-10-05
2020-09-22 09:58:07 +02:00
### Added
- Changelog.
2020-09-22 10:31:46 +02:00
- Asciicast importer plugin. Enables the import of .cast ([asciicast files v2](https://github.com/asciinema/asciinema/blob/master/doc/asciicast-v2.md)) that can be made using the [asciinema ](https://asciinema.org/ ) terminal session recorder. See the [asciicast scene ](/examples/asciicast ) for example usage.
2020-10-05 12:33:23 +02:00
- Pre-built binary for x11 platform.
2020-09-22 09:58:07 +02:00
### Changed
- Implementation of Terminal node from GDScript to GDNative using [Aetf's patched version of libtsm ](https://github.com/Aetf/libtsm ).
2020-09-24 12:29:19 +02:00
- Move input handling to the Terminal node itself, rather than handling it in a seperate Control node.
2020-09-25 08:12:31 +02:00
- The Terminal `write()` method now accepts both String and PoolByteArray.