0d4e10f5ab
Most notably: - Reflow is now working. Terminal size will fill the window and cols/rows will be resized/calculated based on window and font size. - Added support for different fonts (i.e. bold, italic, bolditalic). - Enabled blinking characters. - Adde more tests and caught a few subtle bugs. - Removed renderer code (which was part of xterm.js) and just doing naive rendering in terminal.gd, but it seems to perform a lot faster. Still not working completely: - vim (some weirdness going on). - vttest (more weirdness). Todo: - Fix the above. - Draw the cursor! - Improve performance. Performance is still not great. The terminal becomes unusable when running `yes` or `cmatrix -r`. |
||
---|---|---|
addons | ||
scenes | ||
test | ||
.gitignore | ||
.gutconfig.json | ||
.travis.yml | ||
default_env.tres | ||
demo.cast | ||
demo.gif | ||
icon.png | ||
icon.png.import | ||
LICENSE | ||
project.godot | ||
README.md |
GodotXterm
Xterm for Godot. This is still very much a work in progress. Most of the credit goes to the authors of xterm.js as most of this code was taken from that project and translated to GDScript.
Demo
If you are running Linux and have which
, bash
and socat
installed you can run the main scene (demo.tscn
) and it will try
to connect the Terminal node to your system.
Otherwise you can check out the gif below:
Testing
This project uses the awesome Gut (Godot Unit Testing) plugin for testing.
You can run the tests by playing the test scene at res://test/test.tscn
and clicking run.
License
If you contribute code to this project, you are implicitly allowing your code to be distributed under the MIT license. You are also implicitly verifying that all code is your original work, or unoriginal work which is published under a compatible license or waiver.
Copyright (c) 2020, The GodotXterm authors (MIT License)
Copyright (c) 2017-2019, The xterm.js authors (MIT License)
Copyright (c) 2014-2017, SourceLair, Private Company (www.sourcelair.com) (MIT License)
Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)