The following warnings occurred:
Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 795 - File: showthread.php PHP 7.4.33 (FreeBSD)
File Line Function
/showthread.php 795 errorHandler->error





Post Reply 
newRPL: proposal for Alpha mode
04-30-2015, 04:42 PM
Post: #1
newRPL: proposal for Alpha mode
The blinking cursor in newRPL UI will be a letter. This way it will give back information to the user about the status of the command line/editor.
The command line editor has different modes of operation, which can be identified by the letter shown on the blinking cursor:

D = Direct execution mode. When in the stack, this is the initial mode. In this mode, most calculator keys will attempt to directly perform their actions. If there is text in the command line, it will be compiled first and put on the stack as if the Enter key was pressed, then the requested action will be executed. For example typing a number and pressing the INV key will leave the inverse of the number on the stack, without the need to press Enter first.

P = Programming mode. This mode is entered when the program delimiters are inserted, or the user manually switches into this mode. Most keys in this mode will append their commands to the command line instead of executing the command. This mode is useful for RPL programming.

A = Algebraic mode. This mode is used to enter algebraic expressions. The mode is entered automatically when the symbolic delimiters are typed, or the user manually switches into this mode. In this mode, keys will append the command to the command line without any separation, and commands will be entered as functions.

[[ so far, nothing new, these are the normal, PRG, ALG modes in the 50g, but instead of an annunciator in the status area, the letter in the cursor changes, this intro is needed only to understand what follows ]]

Proposal for the alpha key:
  • A single press and release of the Alpha key will activate/exit Alpha Mode (as in current single alpha-lock feature).
  • When in D, P or A modes, pressing and holding Alpha temporarily switches to Alpha Mode until the Alpha key is released. If no other key is pressed when Alpha is released, then Alpha works as if it was pressed and released, switching to Alpha mode until pressed again.
  • In temporary Alpha mode (while Alpha is being held), all keys will behave as if Alpha mode was active. This is used to quickly enter text when in other mode, without permanently switching to Alpha Mode back and forth (this provides functionality equivalent to single alpha press when double alpha locks is active).
  • When the Alpha Mode is activated, the cursor can be in any of the following modes: L = The keys will enter lowercase characters, C = The keys will enter uppercase characters, G = The keys will enter greek characters, g = The keys will enter lowercase greek letters. Initially, Alpha mode will enter L or C mode (whichever was used last).
  • Long-Pressing and releasing the Alpha key will toggle between L and C modes (or between G and g) (this is new).
  • Pressing and holding Alpha with other keys will temporarily toggle L/C (G/g) mode until released (this basically moves the left-shift functionality to the Alpha key) for the letter keys, may have other uses for other keys, for example for the numbers could insert subscript numbers, like A₁.
  • Pressing and holding Alpha, while pressing SPC will toggle between the latin (L or C modes) and greek (G or g modes) alphabets.
  • Left-Shift in Alpha mode is now free for other uses. For example to use the symbols that are printed on the keyboard like ≠, ≤ and ≥ (which currently cannot be accessed without leaving Alpha mode).

This is of course open to debate and discussion, so feel free to criticize... now is the time to have your voice heard, once this is implemented it will be set in stone.
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
newRPL: proposal for Alpha mode - Claudio L. - 04-30-2015 04:42 PM



User(s) browsing this thread: 9 Guest(s)