aboutsummaryrefslogtreecommitdiff
path: root/math/oleo/pkg-descr
diff options
context:
space:
mode:
Diffstat (limited to 'math/oleo/pkg-descr')
-rw-r--r--math/oleo/pkg-descr1036
1 files changed, 0 insertions, 1036 deletions
diff --git a/math/oleo/pkg-descr b/math/oleo/pkg-descr
deleted file mode 100644
index 4d59cb1dcae6..000000000000
--- a/math/oleo/pkg-descr
+++ /dev/null
@@ -1,1036 +0,0 @@
-
- How to Use Oleo
-
-This is a brief description of Oleo. It is not a good introduction to
-spreadsheets in general. We hope to provide more complete
-documentation in the future.
-
-
- Cell references:
-
-The case of cell and range letters is ignored. Lowercase letters in
-cell and range letters are silently turned into their uppercase
-equivelents.
-
- Absolute vs Relative references:
-
-A reference to a cell may be either absolute or relative. The only
-difference between them (besides how they are printed) is how they are
-adjusted when a cell is moved or copied.
-
-When an expression containing an absolute reference is moved or copied, the
-reference will still point to the same cell.
-
-When an expression containing a relative reference is moved or copied, the
-reference is changed to point to the cell at the same offset from the
-reference's new position.
-
-So if the expression 'R[+1]C[+1]' is in cell R8C9 it refers to cell R9C10.
-If the same expression is copied into cell R1C1 it will refer to R2C2.
-
-
- Address Syntax:
-
-Oleo supports two syntaxes for cell address, called `a0' and `noa0'.
-To switch between these syntaxes, use the set-option command.
-
- M-x set-option a0
- M-x set-option no a0
-
-
- In 'noa0' mode: (the default)
-
-Absolute cell references have the form R{row_num}C{col_num}, as in R1C1 (the
-topleft cell in the sheet).
-
-Relative ones have the form R[{offset}]C[{offset}], as in R[-1]C[+1] (The
-cell above and to the right of the current cell). An offset of zero, can be
-deleted, along with its square-brackets, as in RC[+1] (the cell to the right
-of the current cell.)
-
-Mixed-mode references also work about the same as you'd
-expect, as in R4C[-1] (the cell in row four that's one left
-of the current cell.)
-
-Ranges are of the form R{row1}:{row2}C{col1}:{col2}, where the row and
-column references may be either absolute or relative. If
-{row2}=={row1} or {col2}=={col1}, the colon and the redundant number
-may be omitted, as in R1:10c2 (Rows one through ten in column two).
-
-Mixed-mode rangers work, and have the syntax you'd expect, as in R2:[-1]c3.
-
-
- In 'a0' mode:
-
-Relative cell reference have the form {col_let}{row_num}, as in A1 (the
-topleft cell in the sheet).
-
-Absolute ones have the form ${col_let}${row_num}, as in $A$1 (The topleft
-cell in the sheet).
-
-Mixed-mode ones work about the way you'd expect, with $A1 having an absolute
-column, but a relative row. . .
-
-Ranges are either {cell_ref}:{cell_ref} or {cell_ref}.{cell_ref}, where the
-cell_refs describe opposite corners of the range. So A1:B2 is the topmost,
-leftmost four cells in the spreadsheet.
-
-Mixed mode rangers work, and have the syntax you'd expect, as in '$A3.$F9.
-
-
-
- Keymaps:
-
-Keymaps may have a 'default map'. If a key is pressed which does not have an
-assigned meaning in that map, the map's default map is checked, and that
-map's default map, until a command is found or there are no more default maps
-to scan.
-
-Here is a list of keymaps, and the keymaps to which they default:
-Oleo normally has five keymaps. They are:
-
- KEYMAP (DEFAULT) USE
- universal The root of all keymaps.
- help (universal) Help commands.
- mouse (universal) Bindings for mouse buttons.
- navigate (universal) Commands that move the cursor.
- trolx-navigate (universal) Navigate commands prefixed by ^X.
- meta-navigate (universal) Navigate commands prefixed by ESC.
- main (navigate) The default keymap.
- trolx (trolx-navigate) Default ^X commands.
- meta (meta-navigate) Default ESC commands.
- digit (main) The numeric prefix keymap.
- edit (universal) The keymap for edditting in the input area.
- meta-edit (universal) Edit commands prefixed by ESC.
- trolx-edit (universal) Edit commands prefixed by ^X.
- ansi (universal) A keymap for ANSI arrows keys.
-
-
-The command write-keys can be used to produce a listing of
-keybindings. Also, the source file init.c lists the default bindings.
-
-
- Input Editing:
-
-When the spreadsheet is reading text input, you can use a few
-text-editing commands. Note that there in no history mechanism and no
-yank command. If you accidentally ^U your text, it is *gone*.
-This will be improved in the future.
-
-While the input area is active, the commands that move the cell cursor
-are disabled. If you want to move the cell cursor, use the
-other-window command (^X-o) to leave and later reenter the input area.
-
-The following editing commands are defined:
-
-Name: Key: What it does:
-
-M-A insert-abs-ref Insert/over-write an absolute reference to the
- current cell/region.
-M-R insert-rel-ref Insert/over-write a relative reference to the
- current cell/region.
-M-E insert-cell-expression Insert/over-write the expression in the
- current cell.
-M-V insert-cell-value Insert/over-write the value of the current
- cell.
-^A cursor-begin-line Move the cursor to the beginning of the text.
-^B cursor-back-char Move the cursor back a character.
-M-B cursor-back-word Move back a word.
-^D delete-next-char Delete the character under the cursor.
-M-D delete-next-word Delete from the cursor to the end of
- the current word.
-^E cursor-end-line Move to the end of the text.
-^F cursor-fwd-charF Move forward a character.
-M-F cursor-fwd-word Move forward a word.
-^H ^? delete-prev-char Delete the character to the left of the cursor.
-^J ^M finish-line Finish editing the text, and execute the
- command you've been typing the text in for.
-^K delete-to-end Delete from the cursor to the end of the text.
-M-O toggle-over-write Toggle between overwrite and insert mode.
-^U ^X delete-to-start (BEWARE!) Deletes from the cursor to the
- beginning of the line.
-^W delete-prev-word Delete the word to the left of the cursor.
-' ' to ~ self-insert These characters are either inserted or
- over-written into the text.
-^X-O other-window Move the cursor into the cell area.
-
- Input Defaults:
-
-Almost all editing commands remember what you typed the last time you used
-that command, and start you up editing a copy of that text. If you want to
-type in something completely new, just type ^X (or ^U) and type in your new
-text.
-
-
- Error Messages:
-
-Error messages are displayed on the input line. If oleo needs to display
-more than one error message at a time, it will display [MORE] at the end of
-the first msg, and will wait for you to type a key before displaying the next
-one. Oleo will also display the [MORE] message if you are entering text in
-the input line, so that you will be able to see the error message.
-
- Info Messages:
-
-Some commands (like format-cell) occasionally display non-error information.
-If the status line is enabled, the message is displayed there, and subsequent
-non-error messages will over-write them without [MORE] prompting. This in
-quite useful if the msg in question concerns how far oleo has gotten through
-some task (like reading a file). If the status line is disabled, the
-messages are displayed in the input line.
-
- The Main Commands:
-
-Key Command Name What it does
-h ^B go-left These commands move the cell-cursor one cell
-j ^N go-down in the appropriate direction.
-k ^P go-up
-l ^F go-right
-y go-upleft
-u go-upright
-b go-downleft
-n go-downright
-
-H ^X-< scroll-left These scroll the current window one screenful
-J M-v scroll-down in the appropriate direction. They try to
-K ^V scroll-up leave the cell cursor in (roughly the same
-L ^X-> scroll-right place in the window, so that an L followed by
-Y scroll-upleft an H will leave the cell cursor back in the
-U scroll-upright original cell, however, since the number of
-B scroll-downleft rows and columns in each screenful varies,
-N scroll-downright this will not always work.
-
-M-H M-b scan-left These commands move to the first/last nonempty cell in
-M-J M-n scan-down the current row/column. If given a repeat count, they
-M-K M-p scan-up go to the N-th most nonempty cell. If there are no
-M-L M-f scan-right cells, the cursor is moved to the leftmost/top cell.
-
-^G break This will abort a partially completed command. If you are
- typing text on the top line, the text you typed will be saved
- and presented as the default the next time you start that
- command.
-
-^L recenter-window This redraws the screen. If the page option
- is not set in this window, it will try to move the current
- cell to the center of the window. If the page option is set,
- this will just redraw the screen.
-
-o set-option This asks for an option to set or reset, and tries to
- do so.
-
-
-d set-defaults This command will change the default alignment, format,
- protection, or width. If the status-line is enabled,
- this will display the current settings there.
-
-Q quit This command exits the spreadsheet and returns you to the
- shell. This may ask for confirmation if oleo thinks you have
- unsaved changes. If you do not save your changes before
- quitting, they will be lost forever.
-
-^R M-^l redraw-screen This redraws the screen. It is most useful if
- line-noise or another program has scribbled on your display.
-
-
-M-U set-user-format Set a user-defined format.
-
-v set-variable This prompts you for a name followed by a cell or
- range that you want to refer to by that name. To
- 'undefine' a variable, use set-variable with just its
- name.
-
-V show-variable
-
-^V show-all-variables This shows the values of all currently defined
- variables.
-
-! recalculate Recalculate the spreadsheet until all the cells whose
- values may have changed have been evaluated. If there are
- circular cell references, the cells in the loop will be
- evaluated at most 40 times (this number subject to change!)
-
-: bind-key This asks for the name of a keymap followed by a
- command name and a key to bind it to. If the 'command' you
- give is a cell or region in the spreadsheet, it is taken as a
- macro, and bound to the key you specify.
-
-; describe-key Have the user press a key, and then describe
- what function that key is bound to.
-
-M-< read-commands This command opens the file you specify reads in each
- line, and executes them as if you'd typed them in to
- execute-command. If any command needs more arguments than are
- included on the line, it will prompt you (interactively) for
- the missing information.
-
-M-> write-keys Write a list of commands to the file that, when
- executed with read-commands, will return the keymaps to their
- current state.
-
-w ^x^s Save the spreadsheet to a file, using the current
- file-format.
-
-r ^x^v visit-spreadsheet Read in a file in the current
- file-format. This erases the current contents of the
- spreadsheet first. This may ask for confirmation.
-
-R ^x^i merge-spreadsheet
- Read in a file and merge its contents into the
- current spreadsheet. Note that some file-formats, (like
- panic-save) won't work with this command.
-
-^X-DEL clear-spreadsheet
- Delete the entire spreadsheet. This may ask
- for confirmation if oleo thinks you may be about to lose
- un-saved work.
-
-c copy-region Copy a region. Takes two ranges, copies the source
- range into the dest range. If the dest range size is a
- multiple of the source range size, the source range is copied
- multiple times. If the dest range is given as a cell, the
- cell is the location of the top-left corner of the dest range.
-
-C copy-values-in-region Copy just the values of one region to another.
-
-F format-region Change the format, alignment, protection,
- or width of a region. If the status line is active, oleo
- will display the current alignment, format, width and
- protection of the top-left cell in the region.
-
-m move-region This is similar to copy-region, except that the two
- ranges must be the same size, and that cells that reference
- the source region may be modified to reference the dest
- region instead. (absolute references are modified, relative
- ones aren't.) Variables whose ranges are inside the source
- region are also adjusted.
-
-p print-region Print a region to a file. Asks for a region
- (to print) and a filename to to write to.
-
-s sort-region Sort a region. This takes the region to sort, a
- region that is the first element of the region, and a list of
- cells that are to be used as the sorting-keys. Here's an
- example. sort-region r1:100c1:10 r1:2c1:10 +r1c2 -r1c3 This
- means: Sort the region R1:100C1:10 in two-row, ten-column
- chunks, sorting on the cell that's in the top-row
- one-column-in. If they are similar, use the cell in the
- top-row two-columns-in, with high values ending up before low
- ones.
-
-^x-w write-region-to-file Write a region of the spreadsheet to a file.
- This command is not allowed with some
- file-formats (like panic-save).
-
-X delete-region Delete {value, formula, format, etc} of a
- region. This DOES NOT ask for confirmation.
-
-M-( start-entering-macro Start storing a keyboard macro. Keyboard
- macros are strings that contain the characters you typed.
-
-M-) stop-entering-macro Finish a keyboard macro, and store it in a
- cell that you specify.
-
-M-X execute-command This will allow you to execute either a
- builtin command, or a macro. For a builtin command, simply
- enter the command's name (and, optionally, any arguments the
- command will want). For a macro, enter its name, or
- the region in the spreadsheet that contains it.
-
- You can create macros with text strings. Command names may
- be enclosed in {CMD}, as in {go-left}. Some commands may
- take arguments, as in {go-up 12} or {goto-cell r1c3}. To
- execute multiple commands, concatenate them. Other
- characters are taken as keystrokes, and act exactly as if you
- had typed them.
-
- When the spreadsheet is executing a macro, it stops when
- 1) It encounters an empty cell, or one which is not a string,
- or which is the empty string "".
- 2) an error occurs while trying to parse a command name, or a
- command's arguments.
- 3) All the cells in the region have been executed.
-
- The top-left cell in a region is executed first, then the one
- below it, down to the bottom cell in the macro, then the one
- to the right of the top-left cell, down to the bottom cell in
- that column, etc. . .
-
- Macros may execute other macros.
-
-g ^xg goto-cell Asks for a cell to go to, and moves the cell cursor
- there. The cell can be either a cell name as in 'R32C96',
- or a variable. This command starts with a default of
- wherever the cursor was the last time this command was used.
- If you type a range, the cursor is placed in the top-left
- corner of the range, and the cell-mark is placed at the
- opposite corner of the region.
-
-^@ mark-cell Mark one corner of a rectangular region to use for
- the next command. (The cell cursor marks the other corner.)
- You can use this while a command is prompting you for a
- region by moving to one corner, typing ^@, moving to the
- other corner, and hitting <RETURN>.
-
-e edit-cell Edit the formula of the current cell.
-
-E edit-value-cell Edit the value of the current cell. Using
- this command will replace the current cell's formula with a
- constant expression.
-
-
-f format-cell Change the format, alignment, or protection of the
- current cell, or the width of the current column. If the
- status line is enabled, the current alignment, format,
- protection, and width will be displayed there.
-
-x delete-cell This deletes the (value, formula, format, etc) of the
- current cell. To delete just the value and formula, use
- <space><return>.
-
-= edit-cell-with-default Enter a formula for the current cell with the
- default text of the last formula you typed.
-
-M-0 digit-0 Repeat the next command [digits] times.
-M-1 digit-1 You can type multiple digits, as in
-M-2 digit-2 M-1 0 0 j
-M-3 digit-3 which will go down 100 cells. This command uses the
-M-4 digit-4 digit-map so that you the second and subsequent digits
-M-5 digit-5 do not need to be meta-ized.
-M-6 digit-6
-M-7 digit-7
-M-8 digit-8
-M-9 digit-9
-
-0-9 enter-text-in-cell Enter a new formula that begins with the
- character typed. Note that this blows away whatever was
- saved as a default from the last time you entered a formula.
-
-O show-options This shows the current state of all the spreadsheet
- options, and also shows the current definitions for all the
- user-defined variables.
-
-^X-2 split-window-vertically
-^X-5 split-window-horizontally
- These commands divide the current window in half.
-^X-0 delete-window
- Delete the current window.
-^X-1 delete-other-windows
- Delete all but the current window.
-^X-o other-window
- Move to the next window. Repeated, this will visit
- all the windows.
-
-M-W open-window This command takes a line beginning with the letter
- 'h' (for horizontal), or 'v' (for vertical), followed by the
- number of lines/columns to leave in the current window.
- The cell cursor is placed in the new window.
-
-M-C close-window This takes the number of a window to close, and makes
- it go away. The surrounding window(s) expand to fill the
- space the window occupied.
-
-M-G goto-window This takes the number of a window to go to, and
- places the cell-cursor in that window.
-
-Oleo uses the character ^\ to prefix mouse commands. The default
-bindings in the mouse map are:
-
-0 mouse-goto
- Move to the pointed to cell.
-1 mouse-mark
- Mark the pointed to cell without moving.
-2 mouse-mark-and-goto
- Mark the current cell, and move to the pointed to cell.
-
-The numbers correspond to X button numbers (usually 0 is the leftmost
-button on the mouse).
-
- Displaying Cell Contents:
-
-If a cell contains a number or string that takes more characters than the
-width of the cell to display, the display may slop over into the cell(s) to the
-right. This does not affect the slopped over cells in any way. Only cells
-that are empty, or have their format set to hidden, will be slopped over.
-
-If there isn't room to display a number, a series of '#', will appear in the
-cell.
-
-If there isn't room to display any other value, only the characters that fit
-(less one, so there'll be a space separating cells) will be displayed.
-
- Numeric formats:
-
-Oleo can display numbers in a variety of formats. In addition to the sixteen
-user-defined formats, you can use:
-
-integer The number is rounded to an integer before being displayed.
-
-float The number is displayed in normal, everyday notation, using
- whatever precision is needed (or fits).
-
-hidden The number is not displayed. It is recalculated, etc as
- normal, but the cell is displayed as if it were empty.
-
-graph The number is displayed as a small graph. If the number is
- close to zero, it will be displayed as '0', If it is positive,
- a row of '+'-es is displayed. If it is negative, a row of
- '-'-es is displayed.
-
-user-1 through These are the sixteen user-defined formats, as described
-user-16 below.
-
-The following formats require a precision. The precision may be a number
-from zero to 14, in which case that number of digits will always be displayed
-after the decimal point (zero-padding or rounding the number as needed), or
-the precision may be 'float', in which case oleo will use as many digits as
-necessary. As examples:
-
- dollar.2 display like ``$1,769.00''
- general.float " " ``1769.00032''
-
-
-
-general This uses either normal or scientific notation, depending on
- the magnitude of the number and the width of the column.
-
-dollar Positive values are preceeded by '$', (so 3 is displayed as
- '$3'). Negative values are parenthasized (so -3 is displayed
- as '($3)'), and all large values have a ',' every three
- digits (so 1000 is displayed as '$1,000'.
-
-comma Positive numbers are not preceede by '$', but this is
- otherwise identical to 'dollar'.
-
-percent The value is multiplied by 100, and is displayed with a
- trailing '%'. Thus .01 displays as '1%', while 1 displays as
- '100%'.
-
-fixed The number is displayed in normal, everyday notation, using
- the precision specified. 'fixed.float' is the same as
- 'float'. 'fixed.0' is the same as 'integer'.
-
-exponent The number is displayed in scientific notation.
-
-
- User-defined numeric formats:
-
-You can set up to sixteen user-defined numeric formats:
-
-The current parts of a format are:
-(Using the 'dollar' format for an example.)
-
- Example: What it is:
- $ What to print before postive numbers.
- ( What to print before negative numbers.
- What to print after positive numbers.
- ) What to print after negative numbers.
- $0 What to print if the number is zero.
- , What to print between the thousands and the
- hundreds, etc.
- . What to print for a decimal point.
-
- 0-14 or float The number of digits to print after the decimal point.
- 'float' means use however many digits are needed, or
- however many will fit, whichever is less. . .
-
- any-number What to multiply the value by before printing.
- Most often this will be one, but it might be 100 if
- you're printing percentages, or .000001 if you're
- printing in megabucks. (Beware of overflow!)
-
-Do not use digits for the headers, trailers, the comma, or the decimal point
-symbol. Using digits will confuse the internal routines and produce
-incomprehensible results. . . (Should the set-user-format command check its
-input for validity?)
-
- Other Cell Formatting Options:
-
-Values in a cell may be displayed aligned flush with either the left or right
-edges of the cell, or centered in the cell. The default is left-aligned.
-
-The width of a column of cells may be set to any non-negative value. A value
-of zero means that cells in that column won't be displayed, and the normal
-cursor-motion commands will skip over those cells. However, you can position
-the cursor on a non-displayed cell by using the goto-cell command.
-
-If the width of a column is wider than the display, it is displayed as if it
-were the width of the display.
-
-
- Currently Supported Options:
-
-(no)a0 In a0 mode, Oleo uses {letters}{digits} style cell-references,
- like some popular spreadsheets.
- In noa0 mode, Oleo uses R{digits}C{digits} style references,
- like some other popular spreadsheets.
-
-(no)auto In auto mode, cells whose values may have chaged are
- automatically recalculated. In noauto mode, cells are only
- recalculated when the recalculate command is used.
-
-(no)background In background mode, automatic recalculation is done while
-(no)bkgrnd the spreadsheet waits for you to type a key (and stops while
- the key is being handled). In nobackground mode, oleo
- performs all its recalculation before listening for
- keystrokes. . .
-
-(no)backup In backup mode, whenever the spreadsheet writes out a file,
- if the file already exists, a backup copy is made (like
- emacs).
-
-(no)bkup_copy In nobackup mode bkup_copy is ignored. In bkup_copy mode,
- backup files are made by copying the original file, instead of
- renaming it.
-
-ticks (number) This value controls how often should rnd(), cell(), my(),
- curcell(), etc cells get updated. This value is in seconds
- (???). The initial value is 10 seconds.
-
-print (number) This is the width of the page for the print command. The
- initial value is the width of the screen.
-
-file (format-name) If -DUSE_DLD was defined, format-name may be any .o file
- that contains definitions for the appropriate functions, or
- 'panic', which is the only file format that oleo will have
- compiled into it. If -DUSE_DLD was not defined, format-name
- must be one of sylk, sc, panic, or list, and oleo will have
- to be re-compiled before any other formats may be used.
-
-load (file-name) This option is only avaliable if oleo was compiled with
- -DUSE_DLD. This option loads in a .o file of spreadsheet
- functions, keyboard commands, and/or keymaps. Spreadsheet
- functions and keyboard commands must be loaded in before they
- can be used in expressiond or bound to keys.
-
-status (number) This option controls which line on the screen is used for
- displaying the status of the current cell. The number may be
- positive, (counting down from the top), negative (counting up
- from the bottom, or zero (disabling the status line).
-
-input (number) This option controls which line on the screen is used for
- reading lines of text. The number may be positive (counting
- down from the top), or negative (counting up from the
- bottom), but not zero.
-
-The following options affect the currently active window:
-
-(no)page Basically, in page mode, whenever a paticular cell is
- displayed in the window, it will always be in the same
- location on the screen. In page mode, the recenter command
- acts just like the redraw-screen command.
-
-(no)pageh These options turns on or off page mode only in
-(no)pagev the horizontal or vertical axis.
-
-link (wnum) This option 'links' the current window with the one
- specified. A window may only be linked to one other window
- at a time. When a window is linked to another one, whenever
- the cell cursor in the first window is moved, the cursor in
- the other window moves as well. (unless the cursor in other
- window is locked from moving in that diretion.)
-
- (Should linking to a window force that window to link
- back? That might make life easier for naive users.)
-
-nolink This removes the link (if any) on the current window.
-unlink
-
-(no)lockh These options prevent the cell cursor in the current window
-(no)lockv from moving in the horizontal or vertical direction, but only
- when the cell cursor is moved in a window that this one is
- linked.
-
-
-(no)edges In edges mode oleo displays Row and Column numbers at the top
- and left edges of the window. Perhaps edges should be split
- into edgeh and edgev?
-
-(no)standout In standout mode, the edges (see (no)edges) are drawn in
- standout mode (reverse video, usually).
-
-
-Options supported by the list file format:
-
-list ch Use the character CH to separate the cell values.
-
-
- File names:
-
-If a file name begins with a '|', the rest of the name is taken as a command,
-which oleo opens a pipe to. So you can use the name '|zcat file.Z' to read
-a compressed spreadsheed, or '|compress > file.Z' to write one.
-
-
- Using Oleo with X11
-
-If your system has libX11, Oleo will be built with X support. If you run
-Oleo with the DISPLAY environment variable set, Oleo will open an X window
-instead of using curses.
-
-Under X, cells are normally displayed in the default font. You can
-change that font using the set-default-font command. The value you
-specify may include wild cards, especially for the point size of the
-font. You can change the font used for specific areas of a
-spreadsheet using the commands `set-cell-font' and `set-region-font'.
-
- Font Specifications
-
-The easiest way to specify a font is to use one of the built in
-short-hand names. These names are `fixed', `times', and `courier'.
-Optionally, these names can be followed by a scale. The scale is the
-ratio of the default point size to the desired point size. For
-example, if the default font is a 10 point font, then `times 1.2'
-refers to a 12 point Times-Roman type font.
-
-Every font has a long name that can also be used in specifications.
-The long name has three parts: an X name, a PostScript(*) name, and a
-scale. The X name and PostScript may be omitted. The shorthand name
-`times 1.2' is the same as the long name:
-
- *times-medium-r-*, Times-Roman, 1.2
-
-Notice that the size is left wildcarded in the X name. This is not
-absolutely necessary, but if it is done Oleo can resize the font
-should the size of the default font change (the command
-set-default-point-size does this).
-
-New short hand names can be defined using the `define-font-name'
-command. Later, if a user uses a shorthand name in a font
-specification, the name is replace by the text of the definition. For
-example, here is a standard definition from init.c:
-
- define-font-name time *times-medium-r-*, Times-Roman
-
-Notice that the scale has been omitted. That is so that
-specifications like `times 1.2' will be properly expanded.
-
- X resources and command line options.
-
-Oleo doesn't yet recognize and .Xdefault resources or X specific
-command line options. It will in a future release.
-
-
-(*) PostScript is a trademark of Adobe Systems Incorporated.
-
-
- PostScript Printing
-
-
-Oleo can generate an embedded postScript redition of any part of a
-spreadsheet. Using the commands outlined in `Using Oleo with X11',
-you can control the fonts used in the printed output.
-
-The command `psprint-region' takes a range and file name as arguments.
-It writes embedded postScript to the file.
-
-Oleo will make the output as large as possible to fit the page. You
-can change the page size using the command `set-page-size'. For
-example, the default setting is `set-page-size 8.5 x 11'. To specify
-a page size in centimeters, use: `set-page-size 20 x 30 c'.
-
-The command `set-default-ps-font' controls the default font for cells.
-For example, the initial value is `set-default-ps-font Times-Roman'.
-
-
- Formulae:
-
-Numbers must be entered in 'general' format:
- [-]digits[.digits][e[-]digits]
-
-Strings are entered surrounded by double-quotes. To include unusual
-characters, you can either use \char (works well for ") or use
-\nnn where nnn is the octal code for the character you want to include.
-
- Magic constants:
-
-Note that oleo automatically converts the names of constants to upper case,
-but they can be entered in any case.
-
-#TRUE The logical TRUE value
-#FALSE The logical FALSE value
-
-#ERROR Various error types.
-#BAD_INPUT
-#NON_NUMBER
-#NON_STRING
-#NON_BOOL
-#NON_RANGE
-#OUT_OF_RANGE
-#NO_VALUES
-#DIV_BY_ZERO
-#BAD_NAME
-#NOT_AVAIL
-#PARSE_ERROR
-#NEED_OPEN
-#NEED_CLOSE
-#NEED_QUOTE
-#UNK_CHAR
-#UNK_FUNC
-
-#INF Various trancendental values. On some machines,
-#INFINITY (like the vax), these may all be the same value.
-#NAN
-#NOT_A_NUMBER
-#NINF
-#MINUS_INFINITY
-
-
- Infix functions:
-
-- num 0-num
-! bool #TRUE if bool is #FALSE
- #FALSE if bool is #TRUE, error otherwise.
-
-num1 ^ num2 Exponentiation This is *right* associative!
-num1 * num2 Multiplication Note that these functions are not as
-num1 / num2 Division good as they should be at detecting
-int1 % int2 Modulus overflow. There *is* code that should
-
-num1 + num2 Addition force integer expressions to become
-num1 - num2 subtraction floating-point if the result wouldn't
- fit in an integer.
-num1 >= num2 Arithmatic greater-or-equal
-num1 > num2 greater-than
-num1 < num2 less-than
-num1 <= num2 less-than-or-equal
-
-val1 = val2 #TRUE if val1 and val2 can be considered equal.
- #FALSE otherwise
-val1 != val2 Equivelent to !(val1=val2)
-
-str1 & str2 Text concatination.
-
-bool ? val1 : val2 if(bool==#TRUE)
- evaluate val1
- else if(bool!=#FALSE)
- error...
- else
- evaluate val2.
-
-( val ) (To override default precedence) Note that since oleo
- stores expressions in a byte-compiled form, excess
- parens will mysteriously vanish.
-
-
- Prefix functions:
-
-In 'a0' mode, all prefix functions have '@' prepended to their names.
-
-if(bool,val1,val2) if(test==#TRUE)
- evaluate val1
- else if(test!=#FALSE)
- error...
- else
- evaluate val2.
-and(bool1,bool2) if(val1==#FALSE)
- #FALSE
- else if(val1!=#TRUE)
- error...
- else val2;
-or(bool1,bool2) if(val1==#TRUE)
- #TRUE
- else if(val1!=#FALSE)
- error...
- else val2;
-pi() 3.14159265358979326848
-row() The row number of the cell the expression is in.
-col() The column number of the cell the expression is in.
-now() The current time in seconds since Jan 1 1970 (?)
-abs(num) The absolute value of num.
-acos(num) The arc-cosine of num (num in radians)
-asin(num) The arc-sine of num (num in radians)
-atan(num) The arc-tangent of num (in radians)
-int(num) Convert to integer (toward zero)
-ceil(num) Convert to integer (round up)
-floor(num) Convert to integer (round down)
-cos(num) The cosine of num (in radians)
-dtr(num) num degrees in radians
-exp(num) The exponential function of num
-log(num) The natural log of num
-log10(num) The log of num to base 10
-rtd(num) num radians in degrees
-sin(num) The sine (in radians) of num
-sqrt(num) The square-root of num
-tan(num) The tangent (in radians) of num
-rnd(num) A random number from 0 to num-1
-negate(num) 0-num
-not(bool) #TRUE if bool is #FALSE
- #FALSE if bool is #TRUE, error otherwise.
-iserr(val) #TRUE if the expression is an error
- else #FALSE
-isnum(val) #TRUE if the expression is a number, or can be
- automatically converted into a number, thus
- isnum("12") is #TRUE, while isnum("12 ") is
- #FALSE. (This might be worth fixing.)
-rows(rng) number of rows in rng.
-cols(rng) number of columns in rng.
-ctime(num) Convert num into a readable date/time string.
-atan2(num1,num2) Two number arctangent
-hypot(num1,num2) use man 2 hypot
-fixed(num1,num2) num1 rounded to num2 decimal places
-
-index(rng,int) the contents of the int-th cell in rng.
-index(rng,num1,num2) The contents of the int1-th down and int2-th
- over cell in rng
-oneof(int,val1,val2,val3...) switch(int) {
- case 1: val1;
- case 2: val2;
- ...
- default: error;
- }
-
-For the following functions, arguments that are ranges are scanned
-for numeric values only. Strings, error values, empty cells, etc, are ignored.
-All these functions except cnt() will give a #NO_VALUES error if it does not
-find any numbers. You can give most of the functions an explicit value if
-you don't want to get a #NO_VALUES error. For example, if you want to add
-up the range r1:20c5, and return 0 if there are no numbers there,
-'sum(0,r1:20c5)' will work.
-
-Strings, etc, that are explicitly given to the functions are subjected to the
-usual conversion.
-
-sum(vr1...) ...
-prod(vr1...) ...
-avg(vr1...) ...
-std(vr1...) The SAMPLE standard deviation. To get the population
- standard deviation, use sqrt(var(...))
-max(vr1...) ...
-min(vr1...) ...
-cnt(vr1...) The number of numeric values found.
-var(vr1...) The POPULATION variance. To get the sample variance,
- use std(...)^2
-
-These functions are in the 'string' package. If oleo is compiled with
--DUSE_DLD, the string package must be loaded before these functions can be
-used. If a spreadsheet that uses these functions is loaded before the
-string package is loaded, things will fail (silently!) (This is probably a
-bug.
-
-len(str) length of string in characters.
-strupr(str) string converted to upper case
-strlwr(str) string converted to lower case
-strcap(str) string with each word capitalized.
-trim(str) string with extra spaces and non-ascii chars
- removed.
-find(str1,str2,int) return the location where str2 appears in
- str1, start looking at character #int
-substr(int1,int2,str) The characters in string from position int1
- to position int2. Positions can be either
- positive (First character is #1, last char is
- #(length of string)) or negative(last
- character is #-1, first character is #-(length
- of string)).
-mid(str,int1,int2) The characters in string from int1 (counting
- from the beginning) continuing for int2 chars.
-edit(str,int1,int2,...) Remove the text from int1 to int2 in string
- and replace it with ... (zero or more strings)
- int1 and int2 are like for substr() above.
-repeat(int,str) str repeated int times, thus repeat(2,"foo")
- returns "foofoo"
-concat(vr1,...) Concatinate strings, ranges, etc.
-
-
-These functions are in the 'cells' package. If oleo is compiled with
--DUSE_DLD, the cells package must be loaded before these functions can be
-used.
-my(str) String: Returns:
- row row()
- column col()
- width The width of the column containing
- this cell.
- lock "locked" or "unlocked"
- protection ditto
- justify "left" "right" "center" or "default"
- alignment ditto
- format "default" "user-1" etc.
- fmt ditto.
- type "error", "boolean", "float",
- "integer", "null", "Unknown",
- etc.
- formula A string of the cell's current
- formula.
- value The cells current value.
- anything-else error--> #BAD_INPUT
-
-curcell(str) Like my(), but for the cell under the
- cell-cursor in the current window.
-
-cell(int1,int2,str) Like my(), but for the cell at Rint1Cint2.
-
-member(rng,val) The number of the first cell in RNG that contains
- VAL, or zero if no cells contain it.
-
-
-These next four functions could probably be replaced by a pair of smart
-regex routines. . .
-
-smember(rng,str) The number of the first cell in RNG that contains a
- substring of STR, or zero if no cell contains one.
-
-members(rng,str) The number of the first cell in RNG whose value is
- a substring of STR.
-
-pmember(rng,str) The number of the first cell in RNG whose value
- equals the first few characters of STR.
-
-memberp(rng,str) The number of the first cell in RNG whose value
- starts with STR.
-
-hlookup(rng,num,int) Scan through the top row of RANGE looking for a
- number which is greater than NUM. Then return the
- value in the cell that is INT rows down from the top
- of the range.
-
-vlookup(rng,num,int) Like hlookup, but scans the left column
- and returns the value in the cell that is INT
- columns over from the left edge of the range.
-
-vlookup_str(rng,num,str)Like vlookup, but scans the left column
- for a string. The column need not be sorted.
-
-These functions are in the 'busi' package. If oleo is compiled with
--DUSE_DLD, the busi package must be loaded before these functions can be
-used.
-
-pmt(p,r,t) Payment per period for a loan of $P at rate R for T
- payments.
-
-pv(pmt,int,term) Present value of an investment that pays $PMT at the
- end of each of TERM periods with a discount rate (interest) of INT.
-
-npv(rng,rate) Net Present Value of an investment which will pay
- uneaven payments. The term is calculated from the number of cells in
- RNG. .
-
-irr(rng,guess) Internal Rate of Return. This function is paticularly
- untested, and should not be trusted.
-
-fv(pmt,int,term) Future Value of an annuity.
-
-rate(fut,pres,term) Interest rate required to turn $PRES into $FUT in
- TERM periods.
-
-term(pmt,int,fut) Number of periods required to collect $FUT in
- payments of $PMT, where depositd payments earn at a rate of INT.
-
-cterm(int,fut,pres) Number of periods required to collect $FUT from a
- single initial deposit of $PRES, at an interest rate of INT.
-
-sln(cost,scrap,life) Straight line depreciation of an asset that cost
- $COST when new, can be sold for $SCRAP, and will last for LIFE
- periods.
-
-syd(cost,scrap,life,per) Sum-of-the-digits depreciation of an asset
- that cost $COST, can be sold for $SCRAP and lasts LIFE, in period PER.
-
-ddb(cost,scrap,life,per) Double-declining-balance deprecion, otherwise
- similar to syd().
-
-anrate(pmt,pres,term)
-anterm(pmt,prin,rate)
-balance(prin,rate,term,period)
-paidint(prin,rate,term,period)
-kint(prin,rate,term,period)
-kprin(prin,rate,term,period)
-compbal(print,rate,term)