CMan 1.6i
This software is Freeware
© 1994-2000 by Paul D. Cardwell

CMAN v2.0 coming soon, all GUI (Late Spring 2000):

CMAN v2.0 is in beta testing stage, a demo may soon appear here.

I am working on the "print" routine and putting final touches on the application. All I can say is if you used CMAN the terminal application, you are in for one heck of a surprise! That and a big smile!!! =)

To apply for being on the beta team send me an e-mail.

Remember: You can remap all the keyboard keys to your liking.

Having problems? Have a Suggestion? -- E-mail me.
Go to Paul Cardwell's Home Page
Available for Platforms
Download CMan 1.6i  Released 09-02-1999  (includes script and fixes, for Linux 2.2+, non-gui version)
Download CMan 1.5i  Released 10-04-1997  Digital Unix (COFF format alpha dynamically linked)
Download CMan 1.5j  Released 05-22-1998  BeOS (R3, Intel) requires ncurses (SHIFT+CLICK to download)
Platforms to be supported and ported to
For version 2.0:

Native versions will be available for: Linux (GTK+ and X11 , Intel), BeOS R4.5 (Intel), Solaris 2.7+ (GTK+ and X11, Sparc)

International users: This release is english only, there will be an international version soon after the release.

Online version of CMan manual below!

Table of Contents
Release date
System requirements
How to register
Copying policy and warranty
Description of CMan
List of features/new additions
How do I use CMan and the philosophy behind it
New file format description
Description of the CMan configuration file(settings)
Example of keyboard definitions in cmanrc file
Changes/Bug Fixes/Version information

Release date:

September 2, 1999.


Ncurses 1.9.x should be pre-installed for Linux users, Digital Unix works fine as is.


If you use this software all I ask is for you to e-mail me.
Register CMan

Copying policy and warranty:

This software is freeware.

No cost, no obligation to buy, no 7 day 24 hour support, but suggestions are welcomed.

This software can be placed on Linux distribution media and internet archives. It cannot be used to cause harm, damage or any unlawful practices. If you include this in a commmercial package, please do not charge for this portion, since it is free!

The source code will not be made available at this time, this does not mean it can't be obtained at the request of the author. Any source code distributed cannot be changed in any way minus getting it ported to another platform.

Description of CMan:

CMan is short for Contact Manager, which is a form of a rolodex. It has the ability to be configurable for various terminals, but is limited. The limit is, the field names themselves cannot be altered, this is changed in an up coming version. The newer version will cost money (cost $10.00 USD). It will not be available through this web site, it will be marketed differently. A non-gui version will be made a later time for the 2.0 release.

Features of CMan:

1. New file format, CMan uses a flat ascii (text) file delimited by ";" semicolons. Look below for a description of the new format.

2. Convert program to convert version 1.1c data files to the new file format. (note: the convert program is called "convert")

3. Support of multiple configuration files, via "-c" command line option. The configuration file is where all settings are kept for CMan. Look below for a detailed description of this file.

4. Support of usernames/accounts for expiration (for ISPs and Administrators). It also has a command line option "-e" to auto- matically expire the data file without going to the interface.

5. Support of Email applications, for instance, if your in the view only mode, you can launch the associated application while your on the Email fields. Note: If you use Netscape, it can use Netscape's Email program.

6. Support of Web Browsers, for instance, if your in the view only mode, you can launch the associated application while your on the Web Site/Page field.

7. Support of FAX software, for instance, if your in the view only mode, you can launch the associated application while your on the Fax field. (note: It can be a shell script, whatever, it will pass the data in the fax field to that program)

8. Customizable keyboard keys and text of: menus, keyboard short cuts and help text.

9. Customizable colors of: menus, text and fields.

10. Arrow key support through-out and yes it works. Look below for custom keyboard definitions.

11. Much improved Find feature. Now you can specify parts of words or phrases in a search. If more than one matches a list will be brought up for you to choose from.

12. Expiration feature. This is very useful for not just Internet Service Providers and system administrators. If you fill in the expiration date only and skip username, etc, it will still expire the data (note: it is marked for expired, doesn't get removed). For instance: If you run a user group and have members that are renewed yearly, just place the date in expires field. When the date comes it will expire it automatically (note: you must run CMan for the expiration logic to take place). Plus, CMan has a command line option of "-e" which if specified will automatically expire the data that needs to be expired without going into the user interface (note: useful for 'cron jobs' or a quick way to expire the data, if need be).

13. It uses the 'Tab' key by default to move between fields. It also uses Ctrl-c to quit without "saving."

14. Help system is available in all screens (windows).

15. Upon reading a data file (specified at runtime) it will check to make sure the data is properly formatted and it *will* stop from running if a field is overrun with data. It will tell you what line and field in the data file it has a problem with.

16. Print/Load/Save features have all been improved. Print no longer uses that bad format anymore.

17. Cycling (moving up/down, moving next/previous) is better, you no longer have to start at the top to get to the bottom item/field.

18. Editing in fields improved and features: Go to end of line, Go to beginning of line, insert mode on/off (defaults off), clear field and start over (press the associated key and then start typing it will clear it), Delete/Backspace works appropriately, arrow keys can be used to move around in a field.

19. Group View features: Use arrow keys (default) to move up/down the list, or press spacebar (default) to toggle which phone number is shown (Office/Home).

20. Lots of problems have been addressed and fixed. This is far more stable than version 1.1c and a heck of a lot better.

How do I use CMan and the philosophy behind it:

CMan was created for the sole purpose of keeping track of groups of people.

First and foremost it had to support multiple configuration files. The reason for multiple configuration (settings) files were due to not all terminals (telnet sessions, physical terminals) support the same features and not everyone speaks the same language. This allows the user to re-define the text on screen for everything minus the actual field names (fixed in an up coming version). The user can re-define what keys to what, what email program to use, what printer to use, what web browser to use and what fax/shell script to use. This was all done to make CMan more understandable by lots of people.

Secondly, CMan had to supply enough fields of information to help leviate the differences amoung groups of people. I tried to make it friendly as possible (limited to time on my part). Certain fields have the ability to fill-in the blanks for you, so you do not need to enter all the fields (mainly: Created Date, Group, Expired and Status fields).

The interface needed to be quick and easy to learn, granted doing text-mode GUIs is not an easy task. For this, CMan is broken up into two main windows and one full screen window. The first two main windows are as such: Command Menu on the Left affects whatever is on the right (down to the cursor position), The right is a list of groups of people. Now the somewhat confusing part, if you select a group it will 'zoom in' on that group and show you the people belonging to it (shows: Last Name, First Name, Middle Name (Initial), and either Home/Office phone number -- which can be toggled).

Once your at this zoomed in level you can then apply the Command Menu options: Show (viewonly), Edit, Delete, Save, Load and Print on them.

Add, Find and Goto commands work on any of these two windows.

The full screen window comes up when you choose: Add, Find, Edit, Delete and Show. From here you can move around and change fields, but 'Show' is viewonly no changes are even allowed. If you can use 'Add' you can use: Find, Edit, Show and Delete.

Special fields are: Fax Line, Email 1, Email 2 and Web Site. These fields are special because you can launch an associated application when your cursor is on (in) these fields. Both text mode applications and graphical applications are supported. So you can use a text-mode emailer/browser or graphical ones, as well as a combo of these.

A built-in Help System is available in all windows (screens). Just press the appropriate key (shown at top of window along the Title bar).

How do you navigate? This is all up to you actually, you can either use the supplied configurations file(s) or make one up for yourself. So have at it, change the keys if they don't work or you'd rather use another one, in fact you can change the help text along with it.

About the Main Menu Commands (note: this may not be in the order you set it up as from the configuration file).

Add a Contact Add a person to a group with their information.
Remove a Contact Remove a person from a group (and group if they are the last person within that group -- or if groupname changes with no-one else in the group).
Edit a Contact Change a persons information belonging to a group.
Show a Contact View a persons information and optionally launch an associated application on "Special Fields."
Find a Contact Search for a person or people in a group, just type in the parts you know and it will return either that person or persons with that information.
Goto Screen If more than one window/screen full of groups/ people are entered use this to go to another window/screen full (it will tell you how many are in each group/people list).
Print Print either all, current group or current person in group to the printer. Press return to abort the little prompt that pops up at bottom of window.
Save Save either all, current group or current person in group to a specified file. Press return to abort the little prompt that pops up at bottom of window.
Load Load up another data file. Press return to abort the little prompt that pops up at bottom of window.
Quit Quit the application and save any changes made, use Ctrl-c to quit without saving.

New File Format description:

There are twenty-seven fields in the new file format.  Yes, twenty-
seven. Fields are seperated (delimited) by a semicolon ";" and here
is the layout and field sizes:

Field Position |  Field Name                |   length
1.                Creation Date MM-DD-YYYY          10
2.                Group                             19
3.                Last Name                         24
4.                First Name                        19
5.                Middle Name (initial only)         1
6.                Home Phone                        19
7.                Office Phone                      19
8.                Fax Line (phone)                  19
9.                Address                           58
10.               City                              29
11.               State                              2
12.               Country                           29
13.               Zip Code                          14
14.               Username                          19
15.               Expires MM-DD-YYYY                11
16.               Expired                            1
17.               Status                             8
18.               Account Type (Temp,Staff,etc)     19
19.               E-mail Address 1                  68
20.               E-mail Address 2                  68
21.               Web Page/Site                     68
22.               Notes Line 1                      68
23.               Notes Line 2                      68
24.               Notes Line 3                      68
25.               Notes Line 4                      68
26.               Notes Line 5                      68
27.               Notes Line 6                      68

Description of the CMan configuration file (settings):

The CMan configuration file is as such, each setting has a particular option(s) for it. Here is a list of setting commands and their options. View either 'cman_dumb' or 'cman_x' for dumb terminals or running CMan in an 'xterm' terminal. Be sure to read the following first:

Before we start, CMan will look in your home directory for a .cmanrc (the old 1.1c version will *not* work, minus color settings). Use the "-c" option from the command line to specify a different configuration (settings) file (example: cman -c pauls.cman datafile). Btw, below is a reference only, look at the example configuration files for more information if the below is of little help.

Note: CMan's configuration file is *case* sensitive!

Command         Options                               Help System
PRINTERCMD      [your system print command]                  None
WEBBROWSER      [full path to your browser, like Netscape]   None
WEBBROWSERNAME  [Must be specified or the webbrowser
                 won't work correctly, if you use Netscape
                 specify it "netscape", do not use
                 "communicator" it won't recognize it.]      None.
EMAILER         [full path to your email program]            None.
FAXSOFTWARE     [full path to your fax software/script]      None.
CURSOR_PROMPT   [character for Group View display]           None.
VISUALMODE      [specify 'u' underline or 'r' reverse video] None.

Color Commands    Options
TITLE_COLOR	  [Color for Title of screens and forms]
MAIN_MENU_COLOR   [Color for the Main Menu items]
HELP_COLOR        [Color for key short cuts on forms screens]
FIELD_COLOR       [Color for the fields/attributes on forms]
CURSOR COLOR      [Color for the cursor (defined by you >,%,etc)]
GROUP_LIST_COLOR  [Color for the Sites/Groups, etc.]
INFO_COLOR        [Color for informational text]

Keyboard Mappings 

1. Regular (plain) characters can be used, such as: A-Z
2. To use the escape key  , specify ESC
3. Functions keys are represented by F1-F12
4. Alt keys are represented by ALT-A .. ALT-Z
5. Ctrl keys are represented by CTRL-A .. CTRL-Z
6. Misc. Keys that can be used : INSERT,DELETE,HOME,END,PAGE-UP,


# format    
KEY_EDIT_RIGHT KEY-RIGHT Right-Arrow Move forward in field
KEY_EDIT_LEFT KEY-LEFT Left-Arrow  Move backward in field
KEY_EDIT_SHOW CTRL-L Ctrl-l      Show group list in group field
KEY_EDIT_DONE1 CTRL-D Ctrl-d      To save/abort
KEY_EDIT_DONE2 CTRL-D Ctrl-d      To Execute Find/abort
KEY_EDIT_SHOWHELP F1 F1  Show Help Information
# Toggle Overwrite/Insert Mode when editing
KEY_EDIT_MODE F2 F2          Toggle Insert/Overwrite Text
# Move to beginning of line
KEY_EDIT_HOME CTRL-A Ctrl-a      Move to beginning of line
# Move to end of line
KEY_EDIT_END CTRL-E Ctrl-e      Move to end of line
# Clear the field of all characters (start over)
KEY_EDIT_CLRFIELD CTRL-F Ctrl-f      Erase contents of Field
KEY_MOVE_UP KEY-UP Up-Arrow    Previous field
KEY_MOVE_DOWN KEY-DOWN Down-Arrow  Next field
# Note: It will use the movement keys from above.
KEY_VIEW_RUN CTRL-X Ctrl-x      Launch associated program (must be in field)
KEY_VIEW_DONE ESC        Go Back To Group View
KEY_VIEW_HELP F1 F1          Go Back To Group View
KEY_VIEW_TOP CTRL-A Ctrl-a          Go To Top of Group View
KEY_VIEW_BOTTOM CTRL-E Ctrl-e          Go Back To Bottom of Group View
KEY_VIEW_PHONE SPACE Spacebar    Toggle View Phone by Home/Office
# Default view mode for Phone number shown
# VIEW_PHONE_MODE   , value can be 0 = Home, 1 = Office
# or for DOS style
# KEY_VIEW_ZOOM RETURN   Press Return   To Zoom in on person, press enter
KEY_VIEW_ZOOM ENTER Enter   To Zoom in on person, press enter

# format   
KEY_MENU_ADD a [A] Add a contact
KEY_MENU_EDIT e [E] Edit a contact
KEY_MENU_DEL d [D] Del a contact
KEY_MENU_SHOW s [S] Show a contact
KEY_MENU_FIND f [F] Find a contact
KEY_MENU_GOTO g [G] Goto Screen
KEY_MENU_HELP F1 [F1] Key Help/Version

# end of cmanrc file

Changes/Bug Fixes/Version information:

Changes in CMan 1.6i release 02, 09-2-1999

1. Updated cman.doc

2. Created a shell script "" to basically take the distributed objects files and link them. This was done for library concerns of Linux distributions.

3. Minor fixes.

Changes in CMan 1.5i release 02, 10-4-1997

User interface improvements, mainly in usability.

1. If you add a person to an already existing group it will fill-in the group-name for you.

2. If you add a person with-in an existing group-name it will keep you on that 'Group -- Zoomed in' view. If you add outside of a group name, you will be left where you were before.

3. If you edit someone in a group it will keep you in that group if your changes remain in the same group-name.

© 1994-2000 Paul D. Cardwell all rights reserved.