ui.tools.listener.completion: make sure "USE: vocab <TAB>" works right.

db4
John Benediktsson 2012-07-27 08:47:57 -07:00
parent c26ac5890e
commit 2f93d9dedd
2 changed files with 12 additions and 6 deletions

View File

@ -7,6 +7,8 @@ IN: ui.tools.listener.completion.tests
[ f ] [ { "USE:" "A" "B" } complete-vocab? ] unit-test
[ f ] [ { "USE:" "A" "" } complete-vocab? ] unit-test
[ t ] [ { "USE:" "A" } complete-vocab? ] unit-test
[ t ] [ { "USE:" } complete-vocab? ] unit-test

View File

@ -75,13 +75,17 @@ M: word-completion row-color
M: vocab-completion row-color
drop vocab? COLOR: black COLOR: dark-gray ? ;
: (complete-vocab?) ( str -- ? )
{ "IN:" "USE:" "UNUSE:" "QUALIFIED:" "QUALIFIED-WITH:" }
member? ; inline
: complete-vocab? ( tokens -- ? )
harvest 2 short tail* [ f ] [
[
{ "IN:" "USE:" "UNUSE:" "QUALIFIED:" "QUALIFIED-WITH:" }
member?
] any?
] if-empty ;
dup last empty? [
harvest ?last (complete-vocab?)
] [
harvest 2 short tail*
[ f ] [ [ (complete-vocab?) ] any? ] if-empty
] if ;
: chop-; ( seq -- seq' )
{ ";" } split1-last [ ] [ ] ?if ;