home | help
ORPIE(1)		 a console-based RPN calculator 		ORPIE(1)

NAME
     orpie is a console-based RPN calculator with an interactive visual stack.

SYNOPSIS
     orpie

QUICK START
     CAUTION: while this manpage should be suitable as a quick reference, it may
     be  subject  to  miscellaneous  shortcomings in typesetting. The definitive
     documentation is the user manual provided with Orpie in PDF format.

     This section describes how to use Orpie in its default configuration. After
     familiarizing yourself with the basic operations as outlined in  this  sec-
     tion,  you  may wish to consult the orpierc(5) manpage to see how Orpie can
     be configured to better fit your needs.

   OVERVIEW
     The interface has two panels. The left panel  combines  status  information
     with  context-sensitive  help;  the right panel represents the calculator's
     stack. (Note that the left panel will be hidden if Orpie is run in a termi-
     nal with less than 80 columns.)

     In general, you perform calculations by  first  entering  data  on  to  the
     stack, then executing functions that operate on the stack data. As an exam-
     ple, you can hit 1<enter>2<enter>+ in order to add 1 and 2.

   ENTERING REAL NUMBERS
     To  enter	a  real  number, just type the desired digits and hit enter. The
     space bar will begin entry of a scientific notation exponent. The	'n'  key
     is used for negation. Here are some examples:

   ENTERING COMPLEX NUMBERS
     Orpie can represent complex numbers using either cartesian (rectangular) or
     polar  coordinates.  See  PERFORMING BASIC COMMAND OPERATIONS to see how to
     change the complex number display mode.

     A complex number is entered by first pressing '(', then entering  the  real
     part,  then pressing ',' followed by the imaginary part. Alternatively, you
     can press '(' followed by the magnitude, then '<' followed by the phase an-
     gle. The angle will be interpreted in degrees or radians, depending on  the
     current  setting  of  the	angle  mode (see PERFORMING BASIC COMMAND OPERA-
     TIONS).  Examples:

   ENTERING MATRICES
     You can enter matrices by pressing '['. The elements of the matrix may then
     be entered as described in the previous sections, and should  be  separated
     using ','. To start a new row of the matrix, press '[' again. On the stack,
     each  row	of the matrix is enclosed in a set of brackets; for example, the
     matrix

     would appear on the stack as [[1, 2][3, 4]].

     Examples of matrix entry:

   ENTERING DATA WITH UNITS
     Real and complex scalars and matrices can optionally be labeled with units.
     After typing in the numeric portion of the data, press '_'  followed  by  a
     units string. The format of units strings is described in the UNITS FORMAT-
     TING section.

     Examples of entering dimensioned data:

   ENTERING EXACT INTEGERS
     An  exact	integer  may  be entered by pressing '#' followed by the desired
     digits. The base of the integer will be assumed to be the same as the  cur-
     rent  calculator  base mode (see PERFORMING BASIC COMMAND OPERATIONS to see
     how to set this mode).  Alternatively, the desired base may be specified by
     pressing space and appending one of {b, o, d, h}, to represent binary,  oc-
     tal,  decimal,  or hexadecimal, respectively. On the stack, the representa-
     tion of the integer will be changed to match the current base  mode.  Exam-
     ples:

     Note  that  exact	integers may have unlimited length, and the basic arith-
     metic operations (addition, subtraction, multiplication, division) will  be
     performed using exact arithmetic when both arguments are integers.

   ENTERING VARIABLE NAMES
     A	variable  name	may  be  entered by pressing '@' followed by the desired
     variable name string.  The  string  may  contain  alphanumeric  characters,
     dashes, and underscores. Example:

     Orpie  also  supports autocompletion of variable names. The help panel dis-
     plays a list of pre-existing variables that partially match the  name  cur-
     rently being entered.  You can press '<tab>' to iterate through the list of
     matching variables.

     As  a  shortcut,  keys <f1>-<f4> will enter the variables (``registers'') @
     r01 through @ r04.

   ENTERING PHYSICAL CONSTANTS
     Orpie includes definitions for a number of fundamental physical  constants.
     To enter a constant, press 'C', followed by the first few letters/digits of
     the  constant's symbol, then hit enter. Orpie offers an autocompletion fea-
     ture for physical constants, so you only need to type enough  of  the  con-
     stant  to identify it uniquely. A list of matching constants will appear in
     the left panel of the display, to assist you in finding the desired choice.

     The following is a list of Orpie's physical constant symbols:

     All physical constants are defined in  the  Orpie	run-configuration  file;
     consult  the orpierc(5) manpage if you wish to define your own constants or
     change the existing definitions.

   ENTERING DATA WITH AN EXTERNAL EDITOR
     Orpie can also parse input entered via an external  editor.  You  may  find
     this  to  be  a convenient method for entering large matrices. Pressing 'E'
     will launch the external editor, and the various data types may be  entered
     as illustrated by the examples below:

     Real  and	complex numbers and matrices may have units appended; just add a
     units string such as ``_N*m/s'' immediately following the	numeric  portion
     of the expression.

     Notice  that  the	complex  matrix input parser is quite flexible; real and
     complex matrix elements may be mixed, and cartesian and polar complex  for-
     mats may be mixed as well.

     Multiple stack entries may be specified in the same file, if they are sepa-
     rated  by whitespace. For example, entering (1, 2) 1.5 into the editor will
     cause the complex value (1, 2) to be placed on the stack, followed  by  the
     real value 1.5.

     The  input  parser  will discard whitespace where possible, so feel free to
     add any form of whitespace between matrix rows, matrix elements,  real  and
     complex components, etc.

   EXECUTING BASIC FUNCTION OPERATIONS
     Once  some  data has been entered on the stack, you can apply operations to
     that data. For example, '+' will add the last two elements on the stack. By
     default, the following keys have been bound to such operations:

     As a shortcut, function operators will automatically enter  any  data  that
     you  were	in  the  process  of  entering. So instead of the sequence 2<en-
     ter>2<enter>+, you could type simply 2<enter>2+ and the second number would
     be entered before the addition operation is applied.

     As an additional shortcut, any variable names used  as  function  arguments
     will be evaluated before application of the function. In other words, it is
     not necessary to evaluate variables before performing arithmetic operations
     on them.

   EXECUTING FUNCTION ABBREVIATIONS
     One could bind nearly all calculator operations to specific keypresses, but
     this  would  rapidly  get confusing since the PC keyboard is not labeled as
     nicely as a calculator keyboard is. For this reason, Orpie includes an  ab-
     breviation syntax.

     To  activate  an abbreviation, press ''' (quote key), followed by the first
     few letters/digits of the abbreviation, then hit enter. Orpie offers an au-
     tocompletion feature for abbreviations, so you only need to type enough  of
     the  operation to identify it uniquely. The matching abbreviations will ap-
     pear in the left panel of the display, to assist you in finding the  appro-
     priate operation.

     To  avoid	interface  conflicts, abbreviations may be entered only when the
     entry buffer (the bottom line of the screen) is empty.

     The following functions are available as abbreviations:

     Entering abbreviations can become tedious when performing repetitive calcu-
     lations.  To save	some  keystrokes,  Orpie  will	automatically  bind  re-
     cently-used  operations  with no prexisting binding to keys <f5>-<f12>. The
     current autobindings can be viewed by pressing 'h'  to  cycle  between  the
     various pages of the help panel.

   EXECUTING BASIC COMMAND OPERATIONS
     In  addition to the function operations listed in the section EXECUTING BA-
     SIC FUNCTION OPERATIONS, a number of basic calculator  commands  have  been
     bound to single keypresses:

   EXECUTING COMMAND ABBREVIATIONS
     In  addition  to  the  function  operations listed in the section EXECUTING
     FUNCTION ABBREVIATIONS, there are a large	number	of  calculator	commands
     that have been implemented using the abbreviation syntax:

   BROWSING THE STACK
     Orpie  offers  a  stack browsing mode to assist in viewing and manipulating
     stack data. Press <up> to enter stack browsing mode; this should  highlight
     the  last	stack  element. You can use the up and down arrow keys to select
     different stack elements. The following keys are useful in  stack	browsing
     mode:

     The  left	and  right  scrolling  option  may prove useful for viewing very
     lengthy stack entries, such as large matrices. The edit option  provides  a
     convenient way to correct data after it has been entered on the stack.

   UNITS FORMATTING
     A	units string is a list of units separated by '*' to indicate multiplica-
     tion and '/' to indicate division. Units may be raised to real-valued  pow-
     ers  using  the  '^'character.  A	contrived example of a valid unit string
     would be "N*nm^2*kg/s/in^-3*GHz^2.34".

     Orpie supports the standard SI prefix set, {y, z, a, f, p, n, u, m,  c,  d,
     da, h, k, M, G, T, P, E, Z, Y} (note the use of 'u' for micro-). These pre-
     fixes may be applied to any of the following exhaustive sets of units:

     Note:  No, Celsius and Fahrenheit will not be supported. Because these tem-
     perature units do not share a common zero point, their behavior is  ill-de-
     fined under many operations.

     Note:  Although  the  lumen is defined by 1_lm = 1_cd * sr, Orpie drops the
     steridian because it is a dimensionless unit and therefore is of  question-
     able use to a calculator.

     All  units are defined in the Orpie run-configuration file; consult the or-
     pierc(5) manpage if you wish to define your own units or change the  exist-
     ing definitions.

LICENSING
     Orpie  is Free Software; you can redistribute it and/or modify it under the
     terms of the GNU General Public License (GPL), Version 3, as  published  by
     the  Free	Software  Foundation. You should have received a copy of the GPL
     along with this program, in the file ``LICENSE.md''.

CONTACT INFO
     Orpie author: Paul Pelzl <pelzlpj@gmail.com>
     Orpie website: https://github.com/pelzlpj/orpie

SEE ALSO
     orpierc(5), orpie-curses-keys(1)

a console-based RPN calculator	 28 August 2018 			ORPIE(1)

home | help