DragonFly On-Line Manual Pages
ADD(1) DragonFly General Commands Manual ADD(1)
NAME
add - full-screen editing calculator
USAGE
add [options] [file-specifications]
SYNOPSIS
Add is a fixed-point calculator that operates as a full-screen editor.
DESCRIPTION
Add performs fixed-point computation. It is designed for use as a
checkbook or expense-account balancing tool.
Add maintains a running result for each operation. You may scroll to
any position in the expression list and modify the list. Enter data by
typing numbers (with optional decimal point), separated by operators.
An output transcript may be saved and reloaded for further editing.
Scripts are loaded from left to right (with the "output" processed
first).
OPTIONS
Command line options of add are:
-h Prints the list of options.
-i interval
Sets compounding interval for interest computation.
-o script
Specify file in which to save output transcript.
-p num Sets precision (number of digits after the decimal place).
OPERATIONS
Computations:
The operators are all single-character:
* begins an addition
- begins a subtraction
~ negates the result
* begins a multiplication
/ begins a division
% begins an interest computation (uses interval): rate=number.
$ begins a sales-tax computation: rate=number.
( opening parenthesis. This may enclose a unary '-', more
parentheses, or data (implicit unary '+').
) closing parenthesis, expects another operator, not data.
= flushes out the current number, forces re-computation of the
running result.
w increases the width used for numbers by one column up to a
platform-specific value.
W decreases the width used for numbers by one column, down to a
minimum of 6.
A space flushes out the current number-input, and (by default) sets the
next operator to be the same as the current one. You may repeat the
last arithmetic operation of any type:
a repeats the last '+' (default 0).
s repeats the last '-' (default 0).
n repeats the last '~'.
m repeats the last '*' (default 1).
d repeats the last '/' (default 1).
i repeats the last '%' (default 4).
t repeats the last '$' (default 4).
You may toggle the prefix operator of any number by typing a single
character:
A toggles the operator to '+'.
S toggles the operator to '-'.
N toggles the operator to '~'.
M toggles the operator to '*'.
D toggles the operator to '/'.
I toggles the operator to '%'.
T toggles the operator to '$'.
Editing:
As you enter data, you may edit it. A backspace deletes the last digit
of the current number (if it is visible). Use the arrow keys or vi-
style 'h' and 'l' to move left and right within the line. Other
editing commands include
u undoes the last x/X command (restricted to restoring the current
data only).
x deletes the current data. If the data is null, deletes the
following line.
X deletes the current data. If the data is null, deletes the
preceding line and moves up.
o opens a new line after the current line.
O opens a new line before the current line.
# edit the associated comment.
An "open" permits you to insert a new operator and data into the
expression list. You may type an operator character (e.g., '+'), and
continue with the new data, or an operator-repeat (e.g., 'A'). In
either case, you may edit the new data, just as you would the old data.
A 'u' (or other toggle, such as 'o', 'O', or 'q') typed after an open
will undo the open (and close it).
Scrolling/cursor movement:
H move to the top line on the screen.
M move to the middle line on the screen.
L move to the last line on the screen
CTL/F scroll forward one screen.
CTL/B scroll backward one screen.
j move forward one line.
k move backward one line.
z<CR> move the current line to the top of the screen.
z. move the current line to the middle of the screen.
z- move the current line to the bottom of the screen.
Like vi, add allows you to jump to a particular line with a ":" command
:$ jumps to the last entry
:1 jumps to the first entry.
Scripts:
Transcript files are formatted to permit line-oriented entries:
<operator><value><blank><ignored><blank># comment
The transcripts saved by add contain the running result in the
"ignored" part. To exit without saving a transcript, type 'Q'. A
normal exit, by typing 'q', saves the list of operators, data (and
running result) in the specified file.
You can read and write scripts without leaving add.
:e file
clears the current script and reads a script from the file.
:f shows the current script name.
:r file
reads a script at the current entry
:w file
writes a script to the specified file.
ENVIRONMENT
Add runs in a portable UNIX(R) environment.
FILES
Add is a single binary module, with a help file add.hlp installed in
the same directory.
FUTURE WORK
It would be nice to be able to change the precision within the program.
In particular, the interest and sales tax computations would be more
useful if their precision was independent of the running total.
AUTHOR
Thomas E. Dickey
SEE ALSO
wc (1), vi (1)
ADD(1)
curs_add_wchstr(3X) curs_add_wchstr(3X)
NAME
add_wchstr, add_wchnstr, wadd_wchstr, wadd_wchnstr, mvadd_wchstr,
mvadd_wchnstr, mvwadd_wchstr, mvwadd_wchnstr - add an array of complex
characters (and attributes) to a curses window
SYNOPSIS
#include <ncurses/curses.h>
int add_wchstr(const cchar_t *wchstr);
int add_wchnstr(const cchar_t *wchstr, int n);
int wadd_wchstr(WINDOW * win, const cchar_t *wchstr);
int wadd_wchnstr(WINDOW * win, const cchar_t *wchstr, int n);
int mvadd_wchstr(int y, int x, const cchar_t *wchstr);
int mvadd_wchnstr(int y, int x, const cchar_t *wchstr, int n);
int mvwadd_wchstr(WINDOW *win, int y, int x, const cchar_t *wchstr);
int mvwadd_wchnstr(WINDOW *win, int y, int x, const cchar_t *wchstr, int n);
DESCRIPTION
These functions copy the (null-terminated) array of complex characters
wchstr into the window image structure starting at the current cursor
position. The four functions with n as the last argument copy at most
n elements, but no more than will fit on the line. If n=-1 then the
whole array is copied, to the maximum number of characters that will
fit on the line.
The window cursor is not advanced. These functions work faster than
waddnstr. On the other hand:
o they do not perform checking (such as for the newline, backspace,
or carriage return characters),
o they do not advance the current cursor position,
o they do not expand other control characters to ^-escapes, and
o they truncate the string if it crosses the right margin, rather
than wrapping it around to the new line.
These functions end successfully on encountering a null cchar_t, or
when they have filled the current line. If a complex character cannot
completely fit at the end of the current line, the remaining columns
are filled with the background character and rendition.
RETURN VALUE
All functions return the integer ERR upon failure and OK on success.
X/Open does not define any error conditions. This implementation
returns an error if the window pointer is null.
Functions with a "mv" prefix first perform a cursor movement using
wmove, and return an error if the position is outside the window, or if
the window pointer is null.
NOTES
All functions except wadd_wchnstr may be macros.
PORTABILITY
These entry points are described in the XSI Curses standard, Issue 4.
SEE ALSO
curses(3X), curs_addwstr(3X).
Comparable functions in the narrow-character (ncurses) library are
described in curs_addchstr(3X).
curs_add_wchstr(3X)