564a3562be 2010-06-02 charlesch: ( RxE :: Extensions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ) 30f94ae870 2010-06-02 charlesch: ( ) 30f94ae870 2010-06-02 charlesch: ( Key Description ) 30f94ae870 2010-06-02 charlesch: ( --- --------------------------------------------------- ) a3e8421a4a 2010-06-05 luke: ( b Pull blank line up to current line ) a3e8421a4a 2010-06-05 luke: ( B Shove blank line to the last non-blank line ) 30f94ae870 2010-06-02 charlesch: ( y Move the current line into the yank buffer ) 30f94ae870 2010-06-02 charlesch: ( Y Copy the yank buffer contents to the current line ) 564a3562be 2010-06-02 charlesch: ( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ) 564a3562be 2010-06-02 charlesch: &rxe::keys open 564a3562be 2010-06-02 charlesch: &rxe::core open 564a3562be 2010-06-02 charlesch: 564a3562be 2010-06-02 charlesch: { 30f94ae870 2010-06-02 charlesch: : isBlank? ( -f ) 30f94ae870 2010-06-02 charlesch: @line (line) 64 for @+ 32 !if drop 0 ;then next drop -1 ; 30f94ae870 2010-06-02 charlesch: : toBlank ( - ) 30f94ae870 2010-06-02 charlesch: repeat line ++ isBlank? if; again ; 564a3562be 2010-06-02 charlesch: : swaplines 564a3562be 2010-06-02 charlesch: @line dup 1- (line) swap (line) 2dup here 64 copy 564a3562be 2010-06-02 charlesch: swap 64 copy here swap 64 copy ; 564a3562be 2010-06-02 charlesch: : pullspace 30f94ae870 2010-06-02 charlesch: @line toBlank repeat @line over =if drop line ++ bounds ;then 564a3562be 2010-06-02 charlesch: swaplines line -- again ; 564a3562be 2010-06-02 charlesch: : shovespace 564a3562be 2010-06-02 charlesch: line -- bounds 564a3562be 2010-06-02 charlesch: @line repeat a3e8421a4a 2010-06-05 luke: line ++ isBlank? swaplines if !line ;then a3e8421a4a 2010-06-05 luke: again ; 564a3562be 2010-06-02 charlesch: 30f94ae870 2010-06-02 charlesch: : $$b pullspace ; &rxe::keys >vocab 564a3562be 2010-06-02 charlesch: : $$B shovespace ; &rxe::keys >vocab 30f94ae870 2010-06-02 charlesch: } 30f94ae870 2010-06-02 charlesch: 30f94ae870 2010-06-02 charlesch: { 30f94ae870 2010-06-02 charlesch: create yib 64 allot 30f94ae870 2010-06-02 charlesch: : this ( -a ) @line (line) ; 30f94ae870 2010-06-02 charlesch: : delete ( - ) this 64 for 32 swap !+ next drop ; 30f94ae870 2010-06-02 charlesch: : $$y ( - ) this yib 64 copy delete ; &rxe::keys >vocab 30f94ae870 2010-06-02 charlesch: : $$Y ( - ) yib this 64 copy ; &rxe::keys >vocab 564a3562be 2010-06-02 charlesch: } 564a3562be 2010-06-02 charlesch: 564a3562be 2010-06-02 charlesch: &rxe::core shut 564a3562be 2010-06-02 charlesch: &rxe::keys shut