Index: user/docl/tabcompletion.retro =================================================================== --- user/docl/tabcompletion.retro +++ user/docl/tabcompletion.retro @@ -1,20 +1,21 @@ chain: stringBuffer' {{ tib variable: buffer @buffer variable: pointer - : terminate ( - ) 0 @pointer ! ; - : bs? ( c-cf ) dup 8 = ; - : remove ( c- ) drop pointer -- @pointer @buffer name print space ] loop ; + [ getCompletion d->name puts space ] times ; : finishCompletion numCompletions 0; 1 = [ getCompletion d->name tib over getLength 1+ copy endOfBuffer ] [ showCompletions ] if ; variable delimiter : testDelimiter @delimiter = dup [ nip ] ifTrue ; : testTrigger 27 = dup [ nip ] ifTrue ; - : doTrigger findCompletions finishCompletion cr tib print drop ; + : doTrigger findCompletions finishCompletion cr tib puts drop ; : eatLeading ( - ) repeat key dup emit dup @delimiter !if addToBuffer ;then drop again ; : newaccept ( "- ) !delimiter emptyBuffer eatLeading repeat key dup testDelimiter not 0; drop - dup testTrigger [ doTrigger ] [ dup emit addToBuffer ] if + dup testTrigger [ doTrigger ] [ dup emit addToBuffer ] if again ; ---reveal--- : start &newaccept &accept :is ; : finish &accept :devector ; : accept newaccept ;