basicterm/README.org
2023-11-16 18:44:30 +07:00

1.6 KiB

Basicterm

Linux terminal emulator, written in C. Keyboard input handling and text rendering are done with SDL2 and SDL2_ttf. I got the idea of working on the project by reading through this tutorial.

Another terminal?

This is part of my attempt to gain a deeper understanding of the tools I use on a daily basis.

Status

This is very much a work-in-progress. Work was started last year and initially used Raylib for the rendering, however, an issue with handling keyboard input at the time of implementation meant it wasn't ideal. The project was shelved with a TODO: Switch to SDL2 and I finally got around to making the switch.

Project is now using SDL2 and it renders a bash shell and running commands work for the most part. It's handling backspace but not much else. It has some color escape code parsing in place but the text rendering currently only renders line by line so it's on the TODO list to get that working.

Eventually, I'll revisit this project when I want to learn more about this topic.

Shell support

Currently, Fish and ZSH do not work. Only bash and dash.

Building

You need to install SDL2 and SDL2_ttf, ideally from your distro's package manager. I probably should setup the includes and whatnot properly according to this blog post but I'll leave that for another day.

You can then run make build or make run

LICENSE

Basicterm is licensed under the terms of the MIT license. For more information, see the included LICENSE file.