"It's not code until it is documented and tested code! and it's not documented-and-tested code until it is thoroughly understood by someone else." --- Software Sam, 2014
Welcome to the home of the

Software Samurai

Samurai Logo Yellow
Copyright © 2021 The Software Samurai Updated:

Software Sam presents Linux software tools, API libraries, well-documented source code, copius examples, online docs, student exercises, bad poetry and fun for geeks of all ages and skill levels.

All code posted on this site is designed for GNU/Linux systems.
GNU/Linux does not just jump out of the box and run; it requires patience, curiosity and determination. Please help the GNU/Linux community move toward an out-of-the-box solution for students, grandmas, Liberal Arts majors and the rest of the vast non-technical world who just need to get useful work done.

If you are developing for that other operating system, shame on you! Unless you have accidentally wandered into this site while looking for porn, you are a software designer, and as such you have super-powers (able to leap tall buildings and so on). Software Sam encourages you to use those powers for Good rather than Evil.

AnsiCmd Library    First public release – (2023-07-16)

This compact library provides console applications easy access to the full set of ANSI escape sequences defined by the ANSI X3.64, (ECMA-48, ISO/IEC 6429) standard. These include foreground/background color selection for 4-bit, 8-bit and RGB colors; text attributes such as bold and italic text; cursor positioning; area erase, and more. The library also provides support for ASCII control codes including capture and management of the Panic Button (Control+C).
The AnsiCmd library is a project that has been in development off-and-on for a few years. It began during the various Covid-19 lockdowns as an experiment in the math behind calculating the distance between GPS (Global Positioning System) coordinates. While that project was an amusing distraction, the mechanics of building a user interface without ncurses quickly drew most of the author's coffee-powered energy. We hope you will enjoy exploring the possibilities as much as we do.

Infodoc HTML Post-Processor Updated!
(updated, 2023-06-26)

The Infodocidpp” HTML post-processor has been updated to support ‘makeinfo’ (texi2any) version 6.8 and above. The makeinfo developers have made some significant changes to the syntax of the HTML code generated from the Texinfo source. These changes are related to the way in which the file header and Table of Contents are constructed.
If your HTML documentation is generated using makeinfo v:6.7, download Infodoc v:0.0.13.
If your documentation is generated using makeinfo v:6.8 or greater, download Infodoc; v:0.0.14.
Happy Documenting!         

NcDialog Application Programming Interface

NcDialog is a full-featured application development library for console-based applications.
Go to the Downloads page to download the API source and documentation,
or Click here to take the tour.
NcDialog Screen Capture

Software Sam is happy to correct any factual errors, distortions and omissions on this site; however, Sam's opinions are based on his massive ego, and are therefore rather difficult to modify.

Technical Note: The static data of this website is constructed using HTML5 and CSS3. All pages have been tested with Firefox 115.0, and Brave(tm) 1.52.130 (Chromium(tm) 114.0.5735.198). Rendering in MS-Edge(tm) is adequate, but no one who cares about security would use Edge (or IE) anyway.
Note that the selection of the browser's default monospaced font may affect the rendering of screenshots within the documentation. (Sam recommends DejaVu Sans Mono.)

GNU/Linux Logo
Developing software for Linux since 1999.
- All posted software source code, libraries and executables released under GNU General Public License GPL3.
- All posted software documentation released under the GNU Free Documentation License FDL1.3.
- Other site contents, all rights reserved (but if you see something you like, we can negotiate.)
- Art Design by Aliza Arts