Welcome to the C-Menu wiki!
C-Menu is a lightweight, flexible, and easy-to-use suite of applications for creating sophisticated user interfaces for your applications.
Menus, Form, Pick, and View, use a classical text-based terminal interface (TUI) to create stunning frameworks for applications running on Linux and Unix-like operating systems. C-Menu is written in modern C, which means ultra-low overhead and snappy response. It's perfect for
embedded applications, IOT, and headless servers that don't support or don't need a graphical interface. C-Menu can make older hardware seem fast,and it boosts state-of-the-art hardware to light-speed. It's a dream-come-true for impatient developers who plan coffee breaks around
one second delays, you're in for a treat with C-Menu. You may still need to wait on applications, but you won't waste much time waiting on C-Menu. It actually works as fast as you think.
C-Menu currently consists of an easy-to-configure Menu system, Form for data entry and editing, Pick to select objects from lists, and View, an ultra capable viewer, especially suited for files too large to load with Vim or NVim. C-Menu also contains developer tools like CursKeys to diagnose keyboard and mouse issues, lf (list files), a simpler and easier-to-use regular expression alternative to find, and stripansi, to make highlighted files editable with Vim and Nvim, C-Menu view has it all. It translates and displays ANSI escape sequences for TrueColor, XTerm-256 color, and Unicode wide and multi-byte character sets. It works with "bat", tree-sitter, source-highlighter, and comes with its own colorizer for HTML style six-digit hexadecimal color codes. And, if you run into documents that lackluster or difficult-to-read, C-Menu View has 3-channel + grayscale gamma correction to brighten up the most dreary documents.
There are situations in which a graphical interface may not be feasible, or the expense of creating a graphical interface doesn't
best serve the client's objectives. When a client wants an intuitive and user-friendly interface without the complexity and expense of creating a GUI framework, C-Menu may be the answer. With C-Menu, you can easily design and implement menus, forms, pickers, and viewers
that enhance the user experience, streamline interactions between users and computers, and save time and money.
It is true that novices tend to become proficient more quickly using GUIs. That said, expert users generally prefer the speed and
precision of text and command-line interfaces. It's not just that GUI navigation consumes so much time that it throws off the
power-user's rhythm, but a GUI, designed primarily for the first-time user, can quickly become claustrophobic to an experienced user.
Once you have tasted the ultimate freedom of the command-line, there is no going back.
While we do support mouse input, we realize that seasoned professional coders may prefer the blinding speed they can achieve with the
keyboard. That's why we never give the keyboard a back seat, and why we provide navigation with familiar h, j, k, and l, the way God intended. We also support more conventional navigation via arrow keys, page-up, page-down, home, and end keys. The idea is
to provide you and your users with comfortable, intuitive, and convenient navigation.
Don't let the name fool you. C-Menu is not just a menu system, it's a comprehensive user interface framework designed to enhance your
interaction with applications. It provides a structured way to navigate through application hierarchies, manage forms, select objects,
and view data efficiently. And, it does so in style, offering a visually appealing interface that boosts comprehension through color.
Check it out:
[C-Menu Github](https://github.com/billwaller/C-Menu
or
Menu - Navigate Application Hierarchy
Form - Field Entry, Formatting, Validation, and Editing
Pick - Select Objects From Lists and Tables
View - Search, Format, and Display Data
RSH - Expeditious Root Privilege On/Off
CKeys - Diagnose Mouse and Keyboard Issues
lf - Select and List Files Using Regular Expressions