ANSI Printing Library/Collection - afmt

Very cool. There is very much a need for this type of terminal control in Odin. Glad you are working on it. afmt is simply an fmt wrapper for printing simple ACS, with a focus on feeling similar to fmt for ergonomics. I had no intention of tackling a terminal engine like this. Good work.

One thing you may want to be aware of. It seems os2 has now been merged with os. I was not aware of this at first because my original way of cloning Odin, would copy the compiled source into my Odin folder, leaving deprecated files in place. After deleting my entire Odin folder (backed up shared though) and compiling, there is no longer an os2 folder. My feedback below is likely due to this recent change. Please let us know when there is an update for current version of Odin. I’d love to play around some more.

Feedback:

  • git cloning repository creates folder “TermCL”, which I had to rename to “termcl” for imports. Minor thing, but might be better to rename project on git with the import name “termcl” for more streamlined cloning into Odin/shared folder.
  • os2 is gone. I attempted to update all os2 imports to use os. Everything compiled. Some of the weirdness I encountered is likely due to os2 now merged with os.
  • The main example on git home page did not seem to work. Got some terminal errors.
  • Could not quit out of fire example (I might not had found the magic keyboard key). Left cursor hidden after ctrl+c.
  • user_input example seemed to detect ctrl and shift periodically even when not pressed. Also a cursor square flashed periodically near middle to left quarter quadrant.
  • window example flickers.

Edit: In case it matters or helps. I’m on Linux kernel 6.17.0-14, using konsole with xterm and bash. Also use the xterm wrapper/interface (MS thingy) in VSCodium. Both exhibited the same symptoms. System is Kubuntu on Plasma 6 with wayland.