[colorforth] My ideal colorForth user interface:
- Subject: [colorforth] My ideal colorForth user interface:
- From: "Robert Patten" <pattenre@xxxxxxxxxxx>
- Date: Wed, 3 Mar 2004 19:20:06 -0800
My ideal colorForth user interface:
ON Robert's wish list. Some ideas have been tested but have not been
integrated into one source. Some ideas are still not compatible with each
other. More ideas avalible. Just ask.
bottom line: the data stack , last word, keyboard icon.
The data stack is light yellow for decimal and darker yellow for
hexadecimal. ( a
yellow word is medium yellow )
The "b key" does "drop" the editor leaves the last block on stack to
use with words
like "edit load copy" I will press "b key" to drop stack data I don't need.
When keys are
appended to the top of data stack the top of data stack and the key map are
displayed in
the current tag color. If I can append " key top characters" the key map
will not be
displayed. The keyboard icon (lower right) will be displayed in the
current tag color with
a four quadrant square icon displaying the current tag bits. The " t
key" will change
upper 2 bits of current tag stepping through the four classes of word (
comment, label, literal, state )
The "y key" will change lower two bit of the current tag ( extenuation
text Cap CAPS,
name make use build, use27Bit make27bit use32bit make32bit, variable user1
user2 key).
The "g key" will repeat the last word. the "h key" will put h on the stack.
"keyboard" is just a pointer into source and show displays next 24 cells
on three rows
of eight cells each any extensions of word displayed in white. "left hand
words" on dark
gray background and "right hand words on black background" taping a key
will place
corresponding cell on data stack. Holding down the key will display the
words
definition then words description as the keyboard map. Taping the " space
bar" will
execute word on top of stack and/or insert at the cursor if editing source.
Holding down
the spacebar will display the stack and the root keyboard map. Taping a
key will select
that keyboard map as current and immediately show it . While the "space
bar" is down
the "n and alt key" will move the keyboard pointer 24 cells +-. When
the " spacebar
is released the current keymap is redisplayed. If no keyboard is
selected while the
spacebar was down the current keyboard will be the last selected keyboard.
Taping "any
unassigned key" on the keyboard will hide the keyboard map and data stack.
and if the
space bar is taped while holding down a key that key number is placed on
stack. When
the keyboard is inactive for a preset time execute " screensaver load ".
When the space
bar is up the "n and alt key" delete and insert words to and from
designated
"clipboard" block
Make the "f tag " a key definition tag that will display the icon in
its position in
the key map and when executed append icon id bits to top of stack. When
leaving the
icon editor leave the text form of this icon "key definition tag" on the
stack, for other words
to modify. For example: change to being a digit in a selected number
base. Or machine
instruction or other icon to be append to top of stack.
Source is displayed on a black background. Text to be moved when the
"space bar "
inserts the word on top of stack, or when word is deleted is displayed on
a dark gray
background. This eliminates the need for a cursor. "Show" just changes
background
color when the word count of the inset pointer is reached. This will also
eliminate special
handling for start of line cursor handling and when cursor is within a
word.
The word " list " takes a cell count and address from stack and
displays source from
address until screen is full or count is reached. Null cells displayed
with icon with a single
dot in center in the current tag color. This will allow complete inspection
of block or
display counted source strings like keyboard maps. "fore" "ground"
"xy" "font" are
variables that "show" can save and restore allowing the keyboard task to
control the
areas of the screen not used by show. This will allow words executed from
the keyboard
to display on portions of the screen not overwritten by show. This is
needed for
teaching, interactive testing and learning how graphics words work.
Word lists are consecutive blocks with the first cell yellow number
indicating the number
of words in the list. The second cell the yellow word " find ". Words in
the list are red
words with the extensions missing. The reaming words are displayed in
orange indicating
that they wore trimmed by "empt" when loaded will do search for label on
stack and
return matching address that will be executed if in program area or
displayed as the
current keyboard if in a source block.
The word "edit" does empty then loads the editor and displays the block .
Then does
a modified load on the block building wordlists with associated source
addresses and
makes them available in the root keyboard map. Also " edit " makes a
undefined label
list that is included in the root keyboard map. The associated address is
the first usage of
the undefined label.
---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@xxxxxxxxxxxxxxxxxx
For additional commands, e-mail: colorforth-help@xxxxxxxxxxxxxxxxxx
Main web page - http://www.colorforth.com