| IF forw drop (del) ELSE #bell emit THEN 0 ; |
IF forw drop (del) ELSE #bell emit THEN 0 ; |
| : eof 2 pick over or 0= IF bye ELSE <del> THEN ; |
: eof 2 pick over or 0= IF bye ELSE <del> THEN ; |
| |
|
| ' forw ctrl F cells ctrlkeys + ! |
: bindkey ( xt key -- ) cells ctrlkeys + ! ; |
| ' back ctrl B cells ctrlkeys + ! |
|
| ' ?del ctrl H cells ctrlkeys + ! |
' forw ctrl F bindkey |
| ' eof ctrl D cells ctrlkeys + ! |
' back ctrl B bindkey |
| ' <del> ctrl X cells ctrlkeys + ! |
' ?del ctrl H bindkey |
| |
' eof ctrl D bindkey |
| |
' <del> ctrl X bindkey |
| |
|
| ' (ins) IS insert-char |
' (ins) IS insert-char |
| |
|
| |
|
| ' kill-prefix IS everychar |
' kill-prefix IS everychar |
| |
|
| ' next-line ctrl N cells ctrlkeys + ! |
' next-line ctrl N bindkey |
| ' prev-line ctrl P cells ctrlkeys + ! |
' prev-line ctrl P bindkey |
| ' clear-tib ctrl K cells ctrlkeys + ! |
' clear-tib ctrl K bindkey |
| ' first-pos ctrl A cells ctrlkeys + ! |
' first-pos ctrl A bindkey |
| ' end-pos ctrl E cells ctrlkeys + ! |
' end-pos ctrl E bindkey |
| ' (enter) #lf cells ctrlkeys + ! |
' (enter) #lf bindkey |
| ' (enter) #cr cells ctrlkeys + ! |
' (enter) #cr bindkey |
| ' tab-expand #tab cells ctrlkeys + ! |
' tab-expand #tab bindkey |
| |
|
| \ initializing history |
\ initializing history |
| |
|
| 2dup forward^ 2! 2dup backward^ 2! end^ 2! |
2dup forward^ 2! 2dup backward^ 2! end^ 2! |
| ['] next-line ['] prev-line ['] (enter) |
['] next-line ['] prev-line ['] (enter) |
| endif |
endif |
| dup |
dup #lf bindkey |
| [ #lf cells ctrlkeys + ]L ! |
#cr bindkey |
| [ #cr cells ctrlkeys + ]L ! |
ctrl P bindkey |
| [ ctrl P cells ctrlkeys + ]L ! |
ctrl N bindkey |
| [ ctrl N cells ctrlkeys + ]L ! |
|
| ; |
; |
| |
|
| : history-cold ( -- ) |
: history-cold ( -- ) |